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

Issue 1103323002: Reland performance fixes for StatusBubbleMac. (Closed)

Created:
5 years, 8 months ago by rohitrao (ping after 24h)
Modified:
5 years, 8 months ago
Reviewers:
erikchen
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Reland performance fixes for StatusBubbleMac. This reverts commit 7a15c8173fca5413fe61113b82185fe721ce0b98, bringing back the following changes: [Mac] Always sets the status bubble to 1pt wide when hidden. When the status bubble is in state kBubbleHidden, its width is now always 1pt. This prevents us from wasting time resizing and redrawing a hidden bubble. [Mac] Cleans up the StatusBubbleMac code. This CL reduces unnecessary work in StatusBubbleMac and replaces it with some logging to track down when invariants are violated. (The presumed invariant here is that we set kWindowSizeDeterminedLater once, when state is set to kBubbleHidden, and the size stays that way until the bubble transitions to a different state. If that invariant held, then we wouldn't need to constantly re-set the size for a hidden bubble. This invariant is being violated on the GPU bots, so the logging is in place to try to find and fix the cause.) BUG=454502 BUG=467998 TEST=No visible impact. Status bubble should continue to show when hovering over links and resize properly when the window size is changed. TEST=No visible impact. Status bubble should continue to show, expand, and hide properly. Committed: https://crrev.com/da19048a6cd7ebd52e77510d0e787e2ef458b833 Cr-Commit-Position: refs/heads/master@{#327191}

Patch Set 1 #

Patch Set 2 : Hacky fix. #

Patch Set 3 : Simpler fix/ #

Total comments: 2

Patch Set 4 : Remove unnecessary coordinate conversion. #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+101 lines, -12 lines) Patch
M chrome/browser/ui/cocoa/status_bubble_mac.mm View 1 2 3 8 chunks +85 lines, -12 lines 1 comment Download
M chrome/browser/ui/cocoa/status_bubble_mac_unittest.mm View 1 chunk +16 lines, -0 lines 0 comments Download

Messages

Total messages: 16 (4 generated)
rohitrao (ping after 24h)
Not for a real review. Delta between PS1 and PS2 shows the problem and a ...
5 years, 8 months ago (2015-04-27 19:29:54 UTC) #2
rohitrao (ping after 24h)
https://codereview.chromium.org/1103323002/diff/40001/chrome/browser/ui/cocoa/status_bubble_mac.mm File chrome/browser/ui/cocoa/status_bubble_mac.mm (right): https://codereview.chromium.org/1103323002/diff/40001/chrome/browser/ui/cocoa/status_bubble_mac.mm#newcode788 chrome/browser/ui/cocoa/status_bubble_mac.mm:788: frame.origin = [parent_ convertBaseToScreen:([parent_ frame].origin)]; I realized that the ...
5 years, 8 months ago (2015-04-27 22:26:09 UTC) #3
erikchen
On 2015/04/27 22:26:09, rohitrao wrote: > https://codereview.chromium.org/1103323002/diff/40001/chrome/browser/ui/cocoa/status_bubble_mac.mm > File chrome/browser/ui/cocoa/status_bubble_mac.mm (right): > > https://codereview.chromium.org/1103323002/diff/40001/chrome/browser/ui/cocoa/status_bubble_mac.mm#newcode788 > ...
5 years, 8 months ago (2015-04-27 22:30:59 UTC) #4
erikchen
https://codereview.chromium.org/1103323002/diff/40001/chrome/browser/ui/cocoa/status_bubble_mac.mm File chrome/browser/ui/cocoa/status_bubble_mac.mm (right): https://codereview.chromium.org/1103323002/diff/40001/chrome/browser/ui/cocoa/status_bubble_mac.mm#newcode789 chrome/browser/ui/cocoa/status_bubble_mac.mm:789: [window_ setFrame:frame display:YES]; display:YES forces a redraw, even if ...
5 years, 8 months ago (2015-04-27 22:33:26 UTC) #5
rohitrao (ping after 24h)
https://codereview.chromium.org/1103323002/diff/60001/chrome/browser/ui/cocoa/status_bubble_mac.mm File chrome/browser/ui/cocoa/status_bubble_mac.mm (right): https://codereview.chromium.org/1103323002/diff/60001/chrome/browser/ui/cocoa/status_bubble_mac.mm#newcode789 chrome/browser/ui/cocoa/status_bubble_mac.mm:789: [window_ setFrame:frame display:NO]; Updated to not force a display. ...
5 years, 8 months ago (2015-04-27 23:29:48 UTC) #6
rohitrao (ping after 24h)
Updated to fix a bug and stop forcing a display.
5 years, 8 months ago (2015-04-27 23:30:25 UTC) #8
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1103323002/60001
5 years, 8 months ago (2015-04-27 23:30:31 UTC) #9
erikchen
lgtm
5 years, 8 months ago (2015-04-27 23:33:11 UTC) #10
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 8 months ago (2015-04-28 00:10:24 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1103323002/60001
5 years, 8 months ago (2015-04-28 00:27:34 UTC) #14
commit-bot: I haz the power
Committed patchset #4 (id:60001)
5 years, 8 months ago (2015-04-28 00:28:51 UTC) #15
commit-bot: I haz the power
5 years, 8 months ago (2015-04-28 00:29:47 UTC) #16
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/da19048a6cd7ebd52e77510d0e787e2ef458b833
Cr-Commit-Position: refs/heads/master@{#327191}

Powered by Google App Engine
This is Rietveld 408576698