New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 778750 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 1
Type: Bug



Sign in to add a comment

Rotating from landscape fullscreen to portrait does not update the alpha of the Toolbar's subviews.

Project Member Reported by jif@chromium.org, Oct 26 2017

Issue description

Prerequisite:
Enable the "Safe Area Compatible Toolbar" flag.
 
FS.mov
3.2 MB Download

Comment 1 by jif@chromium.org, Oct 26 2017

Labels: -Pri-3 ReleaseBlock-Stable Pri-1
Components: UI>Browser>FullScreen
Components: UI>Browser>Toolbar
Cc: kkhorimoto@chromium.org sczs@chromium.org
Owner: jif@chromium.org
Status: Assigned (was: Available)
This no longer reproduces, but the toolbar is no longer completely hidden when scrolling in landscape mode.  Reassigning to jif, who has been working on toolbar safe area layout guide stuff.

With respect to the original bug: the alpha of toolbar buttons is changed due to the ToolbarViewFrameDelegate |-frameDidChangeFrame:fromFrame:| function.  I think what was happening before was that the constraints updated the layout but did not go through ToolbarView's |-setFrame:|, so we missed the update.  If I'm not mistaken, I think that both paths would go through |-layoutSubviews:|, so updating the toolbar code to listen for layout events rather than frame changes should fix the issue.

Comment 5 by jif@chromium.org, Oct 30 2017

Cc: -kkhorimoto@chromium.org jif@chromium.org
Owner: kkhorimoto@chromium.org
> the toolbar is no longer completely hidden when scrolling in landscape mode
Weird. Did you enable the "Safe Area Compatible Toolbar" flag?

Re-assign to me if you did enable the flag.
Status: Started (was: Assigned)
Whoops, did not enable the flag.  This repros for me, and I'm working on a fix now.
Project Member

Comment 8 by bugdroid1@chromium.org, Oct 31 2017

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

commit cd6ceee5322b9a3fce70e1fdae83264def9e2153
Author: Kurt Horimoto <kkhorimoto@chromium.org>
Date: Tue Oct 31 18:06:05 2017

[iOS] Check for toolbar frame updates after each layout pass.

When safe area inset usage is enabled, the constraint system bypasses
|-setFrame:| when updating the view upon rotation, so the omnibox's and
buttons' opacities were not updated properly.  This CL changes the
delegate protocol to wait for layout events rather than frame setting.

Bug:  778750 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I0cbd3bf66f0c53a156da269ed510fcad71ed87ec
Reviewed-on: https://chromium-review.googlesource.com/745723
Commit-Queue: Kurt Horimoto <kkhorimoto@chromium.org>
Reviewed-by: Kurt Horimoto <kkhorimoto@chromium.org>
Reviewed-by: Sergio Collazos <sczs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#512874}
[modify] https://crrev.com/cd6ceee5322b9a3fce70e1fdae83264def9e2153/ios/chrome/browser/ui/toolbar/BUILD.gn
[delete] https://crrev.com/3a08bf90195cfd35db085cf65b94aaae304cd8df/ios/chrome/browser/ui/toolbar/toolbar_frame_delegate.h
[modify] https://crrev.com/cd6ceee5322b9a3fce70e1fdae83264def9e2153/ios/chrome/browser/ui/toolbar/toolbar_view.h
[modify] https://crrev.com/cd6ceee5322b9a3fce70e1fdae83264def9e2153/ios/chrome/browser/ui/toolbar/toolbar_view.mm
[add] https://crrev.com/cd6ceee5322b9a3fce70e1fdae83264def9e2153/ios/chrome/browser/ui/toolbar/toolbar_view_delegate.h
[modify] https://crrev.com/cd6ceee5322b9a3fce70e1fdae83264def9e2153/ios/chrome/browser/ui/toolbar/web_toolbar_controller.h
[modify] https://crrev.com/cd6ceee5322b9a3fce70e1fdae83264def9e2153/ios/chrome/browser/ui/toolbar/web_toolbar_controller.mm

Labels: Merge-Request-63
Status: Fixed (was: Started)
Project Member

Comment 10 by sheriffbot@chromium.org, Oct 31 2017

Labels: -Merge-Request-63 Merge-Review-63 Hotlist-Merge-Review
This bug requires manual review: M63 has already been promoted to the beta branch, so this requires manual review
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), gkihumba@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Hotlist-Merge-Review -Merge-Review-63 Merge-Approved-63
Project Member

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

Labels: -merge-approved-63 merge-merged-3239
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26e73aad50160fa9c317df46b2c4ad4d32357a62

commit 26e73aad50160fa9c317df46b2c4ad4d32357a62
Author: Kurt Horimoto <kkhorimoto@chromium.org>
Date: Mon Nov 06 18:06:31 2017

[iOS] Check for toolbar frame updates after each layout pass.

When safe area inset usage is enabled, the constraint system bypasses
|-setFrame:| when updating the view upon rotation, so the omnibox's and
buttons' opacities were not updated properly.  This CL changes the
delegate protocol to wait for layout events rather than frame setting.

TBR=kkhorimoto@chromium.org

(cherry picked from commit cd6ceee5322b9a3fce70e1fdae83264def9e2153)

Bug:  778750 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I0cbd3bf66f0c53a156da269ed510fcad71ed87ec
Reviewed-on: https://chromium-review.googlesource.com/745723
Commit-Queue: Kurt Horimoto <kkhorimoto@chromium.org>
Reviewed-by: Kurt Horimoto <kkhorimoto@chromium.org>
Reviewed-by: Sergio Collazos <sczs@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#512874}
Reviewed-on: https://chromium-review.googlesource.com/755017
Cr-Commit-Position: refs/branch-heads/3239@{#389}
Cr-Branched-From: adb61db19020ed8ecee5e91b1a0ea4c924ae2988-refs/heads/master@{#508578}
[modify] https://crrev.com/26e73aad50160fa9c317df46b2c4ad4d32357a62/ios/chrome/browser/ui/toolbar/BUILD.gn
[delete] https://crrev.com/1d4c7bd46771face53a4413cfc064a4cb9fb8c2b/ios/chrome/browser/ui/toolbar/toolbar_frame_delegate.h
[modify] https://crrev.com/26e73aad50160fa9c317df46b2c4ad4d32357a62/ios/chrome/browser/ui/toolbar/toolbar_view.h
[modify] https://crrev.com/26e73aad50160fa9c317df46b2c4ad4d32357a62/ios/chrome/browser/ui/toolbar/toolbar_view.mm
[add] https://crrev.com/26e73aad50160fa9c317df46b2c4ad4d32357a62/ios/chrome/browser/ui/toolbar/toolbar_view_delegate.h
[modify] https://crrev.com/26e73aad50160fa9c317df46b2c4ad4d32357a62/ios/chrome/browser/ui/toolbar/web_toolbar_controller.h
[modify] https://crrev.com/26e73aad50160fa9c317df46b2c4ad4d32357a62/ios/chrome/browser/ui/toolbar/web_toolbar_controller.mm

Status: Verified (was: Fixed)
https://drive.google.com/a/google.com/file/d/1eUU3AjktsGt5t1ZxbNAv80z-Gab6e08J/view?usp=sharing
Verified on iPhone X iOS 11.0.1 on build 64.0.3261.0Canary

Sign in to add a comment