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

Issue 900613003: Mac: Make it easier for views to correctly draw with a theme. (Closed)

Created:
5 years, 10 months ago by Andre
Modified:
5 years, 10 months ago
CC:
chromium-reviews, asanka, tfarina, benjhayden+dwatch_chromium.org, noyau+watch_chromium.org, erikchen, rohitrao (ping after 24h)
Base URL:
https://chromium.googlesource.com/chromium/src.git@gyp
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Mac: Make it easier for views to correctly draw with a theme. Views that draw using the window's theme need to redraw when the theme changed and when the window's active state changed. Create a protocol ThemedWindowDrawing that views can adopt and easily update in response to theme and active state changes. Reduce inefficient use of cr_recursivelySetNeedsDisplay to minimize the amount of redraw we do. TabView, BookmarkButton, DownloadItemButton, and DownloadShowAllButton were previously relying on BackgroundGradientView calling cr_recursivelySetNeedsDisplay. Update them to adopt the new protocol. BUG=453996 Committed: https://crrev.com/7463e29b710429f78383a36adc1175169fa40188 Cr-Commit-Position: refs/heads/master@{#314446}

Patch Set 1 #

Total comments: 8
Unified diffs Side-by-side diffs Delta from patch set Stats (+144 lines, -62 lines) Patch
M chrome/browser/ui/cocoa/background_gradient_view.h View 1 chunk +3 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/background_gradient_view.mm View 2 chunks +13 lines, -32 lines 1 comment Download
M chrome/browser/ui/cocoa/bookmarks/bookmark_button.h View 2 chunks +2 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/bookmarks/bookmark_button.mm View 1 chunk +10 lines, -0 lines 0 comments Download
M chrome/browser/ui/cocoa/browser_window_controller.mm View 2 chunks +17 lines, -15 lines 2 comments Download
M chrome/browser/ui/cocoa/download/download_item_button.h View 1 chunk +3 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/download/download_item_button.mm View 1 chunk +10 lines, -0 lines 0 comments Download
M chrome/browser/ui/cocoa/download/download_show_all_button.h View 1 chunk +3 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/download/download_show_all_button.mm View 1 chunk +10 lines, -0 lines 0 comments Download
M chrome/browser/ui/cocoa/floating_bar_backing_view.h View 1 chunk +3 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/floating_bar_backing_view.mm View 1 chunk +10 lines, -0 lines 0 comments Download
M chrome/browser/ui/cocoa/tabs/tab_strip_view.h View 2 chunks +2 lines, -2 lines 1 comment Download
M chrome/browser/ui/cocoa/tabs/tab_strip_view.mm View 3 chunks +13 lines, -3 lines 1 comment Download
M chrome/browser/ui/cocoa/tabs/tab_view.h View 2 chunks +2 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/tabs/tab_view.mm View 3 chunks +13 lines, -3 lines 0 comments Download
M chrome/browser/ui/cocoa/themed_window.h View 2 chunks +13 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm View 2 chunks +8 lines, -0 lines 3 comments Download
M ui/base/cocoa/nsview_additions.h View 1 chunk +3 lines, -0 lines 0 comments Download
M ui/base/cocoa/nsview_additions.mm View 1 chunk +6 lines, -0 lines 0 comments Download

Messages

Total messages: 14 (3 generated)
Andre
Robert, PTAL. https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/browser_window_controller.mm File chrome/browser/ui/cocoa/browser_window_controller.mm (left): https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/browser_window_controller.mm#oldcode624 chrome/browser/ui/cocoa/browser_window_controller.mm:624: [[self window] setViewsNeedDisplay:YES]; I think there's a ...
5 years, 10 months ago (2015-02-03 19:00:21 UTC) #2
Robert Sesek
I think Avi may be a better reviewer for this CL, since he did a ...
5 years, 10 months ago (2015-02-03 19:02:27 UTC) #4
Andre
https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/tabs/tab_strip_view.h File chrome/browser/ui/cocoa/tabs/tab_strip_view.h (right): https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/tabs/tab_strip_view.h#newcode20 chrome/browser/ui/cocoa/tabs/tab_strip_view.h:20: @interface TabStripView : NSView<ThemedWindowDrawing, URLDropTarget> { See https://codereview.chromium.org/867273003/ for ...
5 years, 10 months ago (2015-02-03 19:13:20 UTC) #5
Andre
https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/background_gradient_view.mm File chrome/browser/ui/cocoa/background_gradient_view.mm (right): https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/background_gradient_view.mm#newcode114 chrome/browser/ui/cocoa/background_gradient_view.mm:114: - (void)viewDidMoveToWindow { Views usually call [[self window] isMainWindow] ...
5 years, 10 months ago (2015-02-03 19:20:37 UTC) #6
Avi (use Gerrit)
I'm not sure I understand the need for both methods in the protocol. Are there ...
5 years, 10 months ago (2015-02-03 21:53:34 UTC) #7
Andre
On 2015/02/03 21:53:34, Avi wrote: > I'm not sure I understand the need for both ...
5 years, 10 months ago (2015-02-03 22:34:05 UTC) #8
Andre
https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm File chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm (right): https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm#newcode58 chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm:58: On 2015/02/03 21:53:34, Avi wrote: > Don't you need ...
5 years, 10 months ago (2015-02-03 22:34:16 UTC) #9
Avi (use Gerrit)
On 2015/02/03 22:34:16, Andre wrote: > https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm > File chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm (right): > > https://codereview.chromium.org/900613003/diff/1/chrome/browser/ui/cocoa/toolbar/toolbar_view_cocoa.mm#newcode58 > ...
5 years, 10 months ago (2015-02-04 00:20:50 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/900613003/1
5 years, 10 months ago (2015-02-04 00:29:36 UTC) #12
commit-bot: I haz the power
Committed patchset #1 (id:1)
5 years, 10 months ago (2015-02-04 00:33:16 UTC) #13
commit-bot: I haz the power
5 years, 10 months ago (2015-02-04 00:34:18 UTC) #14
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/7463e29b710429f78383a36adc1175169fa40188
Cr-Commit-Position: refs/heads/master@{#314446}

Powered by Google App Engine
This is Rietveld 408576698