Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(212)

Issue 593223002: Mac: Don't relayout tabs if the tab strip's frame didn't change. (Closed)

Created:
6 years, 3 months ago by Andre
Modified:
6 years, 3 months ago
Reviewers:
Robert Sesek
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Mac: Don't relayout tabs if the tab strip's frame didn't change. When we reshow the find bar after dropping a tab into a new window, -[BrowserWindowController layoutSubviews] is called which causes a relayout of the tabs (without animation). In this case, a tab is in the beginning of being animated to a new position and this relayout interrupted it by calling setFrame on the tab view, but the tab frame ended up being the animator's target frame instead of the relayout setFrame. This seems like an AppKit bug because it behaves as expected on 10.9. It is undesirable for layoutSubviews to force tabs relayout when the tap strip's frame did not change, because it will interrupt tab animations in progress. This change compares the old and new tab strip frame and skips tabs relayout if the frame did not change. BUG=415093 Committed: https://crrev.com/96003d8405aa0f715a6ebf48f25d5cfcbd715107 Cr-Commit-Position: refs/heads/master@{#296479}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Fix for rsesek #

Unified diffs Side-by-side diffs Delta from patch set Stats (+10 lines, -3 lines) Patch
M chrome/browser/ui/cocoa/browser_window_controller_private.mm View 1 2 chunks +10 lines, -3 lines 0 comments Download

Messages

Total messages: 9 (2 generated)
Andre
Robert, please review.
6 years, 3 months ago (2014-09-23 18:44:35 UTC) #2
Robert Sesek
https://codereview.chromium.org/593223002/diff/1/chrome/browser/ui/cocoa/browser_window_controller_private.mm File chrome/browser/ui/cocoa/browser_window_controller_private.mm (right): https://codereview.chromium.org/593223002/diff/1/chrome/browser/ui/cocoa/browser_window_controller_private.mm#newcode263 chrome/browser/ui/cocoa/browser_window_controller_private.mm:263: if (!NSEqualRects(tabStripFrame, [tabStripView frame])) { I'd copy part of ...
6 years, 3 months ago (2014-09-24 17:23:31 UTC) #3
Andre
https://codereview.chromium.org/593223002/diff/1/chrome/browser/ui/cocoa/browser_window_controller_private.mm File chrome/browser/ui/cocoa/browser_window_controller_private.mm (right): https://codereview.chromium.org/593223002/diff/1/chrome/browser/ui/cocoa/browser_window_controller_private.mm#newcode263 chrome/browser/ui/cocoa/browser_window_controller_private.mm:263: if (!NSEqualRects(tabStripFrame, [tabStripView frame])) { On 2014/09/24 17:23:30, rsesek ...
6 years, 3 months ago (2014-09-24 17:59:38 UTC) #4
Robert Sesek
LGTM
6 years, 3 months ago (2014-09-24 18:02:09 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/593223002/20001
6 years, 3 months ago (2014-09-24 18:05:34 UTC) #7
commit-bot: I haz the power
Committed patchset #2 (id:20001) as fff2d165cb5e97fb321ff33ee18eedef3d2015f9
6 years, 3 months ago (2014-09-24 18:48:08 UTC) #8
commit-bot: I haz the power
6 years, 3 months ago (2014-09-24 18:49:42 UTC) #9
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/96003d8405aa0f715a6ebf48f25d5cfcbd715107
Cr-Commit-Position: refs/heads/master@{#296479}

Powered by Google App Engine
This is Rietveld 408576698