New issue
Advanced search Search tips

Issue 779514 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 2
Type: Task



Sign in to add a comment

Use snapshot for stack view transition animations

Project Member Reported by gambard@chromium.org, Oct 30 2017

Issue description

The stack view should use snapshot of the toolbar instead of the toolbar in transition animations.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Nov 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ba34b467c42fc695784a2507025030bb55e81312

commit ba34b467c42fc695784a2507025030bb55e81312
Author: Gauthier Ambard <gambard@chromium.org>
Date: Mon Nov 06 09:06:42 2017

Add snapshot-based animation for the StackView

This CL adds a flag to enable snapshot-based animation when entering and
leaving the StackView.
Having snapshot instead of reparenting the toolbar simplify the code.

Bug:  779514 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Ifd9efed50f57736efa63cd098dccad6d581d07cb
Reviewed-on: https://chromium-review.googlesource.com/743722
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Reviewed-by: Kurt Horimoto <kkhorimoto@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514100}
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/about_flags.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/content_suggestions/content_suggestions_header_view_controller.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ios_chrome_flag_descriptions.cc
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ios_chrome_flag_descriptions.h
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/browser_view_controller.h
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/ntp/google_landing_view_controller.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/ntp/new_tab_page_controller.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/ntp/new_tab_page_header_view.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/stack_view/stack_view_controller.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/stack_view/stack_view_controller_private.h
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/toolbar/public/toolbar_controller_base_feature.h
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/toolbar/public/toolbar_controller_base_feature.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/toolbar/toolbar_coordinator.mm
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/toolbar/toolbar_owner.h
[modify] https://crrev.com/ba34b467c42fc695784a2507025030bb55e81312/ios/chrome/browser/ui/toolbar/toolbar_snapshot_providing.h

Project Member

Comment 2 by bugdroid1@chromium.org, Nov 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/996d9b188fc8d6987fc1129e93aebd8c3ef89635

commit 996d9b188fc8d6987fc1129e93aebd8c3ef89635
Author: Gauthier Ambard <gambard@chromium.org>
Date: Mon Nov 06 09:39:21 2017

Fix rotation issue with StackView toolbar snapshot

This CL makes sure that the snapshot-based animations of the stack view
behave correctly when rotating the device while the user is in the stack
view.
It also adds support for the NTP toolbar.

Bug:  779514 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Ic077c6a7e2aa46af7278637caa66ded9ecfbf40c
Reviewed-on: https://chromium-review.googlesource.com/744014
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514103}
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/content_suggestions/content_suggestions_header_view_controller.mm
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/browser_view_controller.mm
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/ntp/new_tab_page_controller.mm
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/ntp/new_tab_page_header_view.mm
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/stack_view/stack_view_controller.mm
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/toolbar/toolbar_coordinator.mm
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/toolbar/toolbar_snapshot_providing.h
[modify] https://crrev.com/996d9b188fc8d6987fc1129e93aebd8c3ef89635/ios/chrome/browser/ui/uikit_ui_util.mm

Project Member

Comment 3 by bugdroid1@chromium.org, Nov 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5b35d0e9b9a2f54b58ad2535398c22bb8f473532

commit 5b35d0e9b9a2f54b58ad2535398c22bb8f473532
Author: Gauthier Ambard <gambard@chromium.org>
Date: Mon Nov 06 10:24:38 2017

Background color for StackView snapshot animations

This CL adds a background color to the dummy background toolbar used in
the Stack View card animation.
The color of the dummy toolbar is dependant of the screen it is
presented on.

Bug:  779514 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I56ba44ab06a4edf3f9d0c589460e0f70d14d985d
Reviewed-on: https://chromium-review.googlesource.com/746648
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514106}
[modify] https://crrev.com/5b35d0e9b9a2f54b58ad2535398c22bb8f473532/ios/chrome/browser/ui/ntp/new_tab_page_header_view.mm
[modify] https://crrev.com/5b35d0e9b9a2f54b58ad2535398c22bb8f473532/ios/chrome/browser/ui/stack_view/stack_view_controller.mm
[modify] https://crrev.com/5b35d0e9b9a2f54b58ad2535398c22bb8f473532/ios/chrome/browser/ui/toolbar/toolbar_coordinator.mm
[modify] https://crrev.com/5b35d0e9b9a2f54b58ad2535398c22bb8f473532/ios/chrome/browser/ui/toolbar/toolbar_snapshot_providing.h

Project Member

Comment 4 by bugdroid1@chromium.org, Nov 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ced629746545e69abcab4309e08679250d925448

commit ced629746545e69abcab4309e08679250d925448
Author: Gauthier Ambard <gambard@chromium.org>
Date: Tue Nov 07 09:18:39 2017

Crop the toolbar snapshot by 1px

This CL crop the toolbar snapshot by 1px, to prevent a black line from
being shown. This black line comes from the space used by the shadow
below the toolbar.

Bug:  779514 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I5a946dbb8ebc0f9c0b1076dcfab57dbc55f739fc
Reviewed-on: https://chromium-review.googlesource.com/753345
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514426}
[modify] https://crrev.com/ced629746545e69abcab4309e08679250d925448/ios/chrome/browser/ui/stack_view/stack_view_controller.mm

Project Member

Comment 5 by bugdroid1@chromium.org, Nov 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/27ad3afc3cc073d361f1e62bada45cf6b1412ef2

commit 27ad3afc3cc073d361f1e62bada45cf6b1412ef2
Author: Gauthier Ambard <gambard@chromium.org>
Date: Wed Nov 08 14:37:04 2017

Add fake safe area constraints to toolbar

When taking a snapshot of the toolbar to display it during stack view
animations, the snapshot should respect the safe area. This might not
work if a rotation was performed.
This CL adds a method to force the safe area to respect a fake safe
area.

Bug:  779514 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I5af04badb8a2382161a7013228c159a1bf04e090
Reviewed-on: https://chromium-review.googlesource.com/758358
Reviewed-by: Mark Cogan <marq@chromium.org>
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514824}
[modify] https://crrev.com/27ad3afc3cc073d361f1e62bada45cf6b1412ef2/ios/chrome/browser/ui/ntp/new_tab_page_header_view.mm
[modify] https://crrev.com/27ad3afc3cc073d361f1e62bada45cf6b1412ef2/ios/chrome/browser/ui/stack_view/stack_view_controller.mm
[modify] https://crrev.com/27ad3afc3cc073d361f1e62bada45cf6b1412ef2/ios/chrome/browser/ui/toolbar/toolbar_controller.h
[modify] https://crrev.com/27ad3afc3cc073d361f1e62bada45cf6b1412ef2/ios/chrome/browser/ui/toolbar/toolbar_controller.mm
[modify] https://crrev.com/27ad3afc3cc073d361f1e62bada45cf6b1412ef2/ios/chrome/browser/ui/toolbar/toolbar_coordinator.mm
[modify] https://crrev.com/27ad3afc3cc073d361f1e62bada45cf6b1412ef2/ios/chrome/browser/ui/toolbar/toolbar_snapshot_providing.h

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ae4ba9a87fca14f9c20f2b064eee790e3303514c

commit ae4ba9a87fca14f9c20f2b064eee790e3303514c
Author: Gauthier Ambard <gambard@chromium.org>
Date: Wed Nov 08 17:08:44 2017

Enable the snapshot-based animation by default

This CL enable the the flag to use snapshot of the toolbar when
entering/leaving the stack view.

Bug:  779514 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Ie8e8d3a3dc264bc6997aa9499d8f22d740c29b79
Reviewed-on: https://chromium-review.googlesource.com/758239
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Reviewed-by: Olivier Robin <olivierrobin@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514862}
[modify] https://crrev.com/ae4ba9a87fca14f9c20f2b064eee790e3303514c/ios/chrome/browser/metrics/tab_usage_recorder_egtest.mm
[modify] https://crrev.com/ae4ba9a87fca14f9c20f2b064eee790e3303514c/ios/chrome/browser/ui/toolbar/public/toolbar_controller_base_feature.mm

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/276307e53588c8bbc852283cff8659a1f2124fdf

commit 276307e53588c8bbc852283cff8659a1f2124fdf
Author: Gauthier Ambard <gambard@chromium.org>
Date: Tue Nov 14 09:29:14 2017

Remove StackView old animation

This CL removes the code used by the StackView to do the previous
animation when entering/leaving.

Bug:  779514 ,  778226 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: If0b4b0207fcad38c95bb1b46d895354ce623a0d0
Reviewed-on: https://chromium-review.googlesource.com/747421
Reviewed-by: Mark Cogan <marq@chromium.org>
Reviewed-by: Kurt Horimoto <kkhorimoto@chromium.org>
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#516246}
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/about_flags.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/content_suggestions/content_suggestions_header_view_controller.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ios_chrome_flag_descriptions.cc
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ios_chrome_flag_descriptions.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/browser_view_controller.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/ntp/google_landing_view_controller.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/ntp/new_tab_page_controller.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/ntp/new_tab_page_header_view.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/omnibox/omnibox_text_field_ios.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/omnibox/omnibox_text_field_ios.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/stack_view/stack_view_controller.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/stack_view/stack_view_controller_private.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/public/toolbar_controller_base_feature.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/public/toolbar_controller_base_feature.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/public/toolbar_controller_constants.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/public/toolbar_controller_constants.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/toolbar_controller+protected.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/toolbar_controller.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/toolbar_controller.mm
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/toolbar_owner.h
[modify] https://crrev.com/276307e53588c8bbc852283cff8659a1f2124fdf/ios/chrome/browser/ui/toolbar/web_toolbar_controller.mm

Status: Fixed (was: Assigned)

Sign in to add a comment