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

Issue 150176: GTK: First draft of using native themes, partially based on evan's CL 118358. (Closed)

Created:
11 years, 5 months ago by Elliot Glaysher
Modified:
9 years, 7 months ago
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

GTK: Initial implementation of using GTK themes, partially based on evan's CL 118358. A lot of stuff works: - Colors are picked out of the GTK theme. - Buttons use the current GTK button theme. - We use the user's icon theme. A lot of stuff doesn't: - We could do a better job of picking colors for the skylines. - The omnibox hasn't been touched. - UI that's not part of the toolbar hasn't been touched. - We currently fail on themes like HighContrastInverse. TEST=Under Options>Personal Stuff, click GTK Theme. Colors and widgets should be rendered with the current GTK theme stuff. TEST=With chrome open and in GTK Theme mode, change your GTK theme or icon theme. chrome should pick up on the change immediately and reimport the colors and images. http://crbug.com/13967 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=19868

Patch Set 1 #

Patch Set 2 : Clear out stray marks and bad merges #

Patch Set 3 : Lint fixes #

Patch Set 4 : Redo browser themes, so constants are exposed. #

Patch Set 5 : Get rid of themes:: #

Patch Set 6 : Deal with different themes. #

Patch Set 7 : Reverts the eventbox changes to browser toolbar/bookmark bar by prerendering image #

Total comments: 1

Patch Set 8 : Fix eraseRGB for glen #

Patch Set 9 : And the codereview tool is back. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+665 lines, -143 lines) Patch
M chrome/app/chrome_dll_main.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/browser_theme_provider.h View 1 2 3 4 5 6 7 8 6 chunks +100 lines, -19 lines 1 comment Download
M chrome/browser/browser_theme_provider.cc View 1 2 3 4 5 6 7 8 4 chunks +82 lines, -64 lines 0 comments Download
M chrome/browser/gtk/back_forward_button_gtk.h View 1 2 3 chunks +6 lines, -3 lines 0 comments Download
M chrome/browser/gtk/back_forward_button_gtk.cc View 2 chunks +9 lines, -1 line 0 comments Download
M chrome/browser/gtk/bookmark_bar_gtk.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/gtk/bookmark_bar_gtk.cc View 1 2 3 4 5 6 6 chunks +32 lines, -2 lines 0 comments Download
M chrome/browser/gtk/browser_titlebar.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/gtk/browser_toolbar_gtk.h View 1 2 3 4 5 6 2 chunks +5 lines, -1 line 0 comments Download
M chrome/browser/gtk/browser_toolbar_gtk.cc View 1 2 3 4 5 6 6 chunks +25 lines, -5 lines 0 comments Download
M chrome/browser/gtk/browser_window_gtk.cc View 1 2 3 4 5 6 7 8 4 chunks +7 lines, -3 lines 0 comments Download
M chrome/browser/gtk/custom_button.h View 4 chunks +20 lines, -6 lines 0 comments Download
M chrome/browser/gtk/custom_button.cc View 1 2 3 4 5 6 7 8 3 chunks +40 lines, -17 lines 0 comments Download
M chrome/browser/gtk/find_bar_gtk.cc View 1 2 3 4 5 6 7 8 2 chunks +4 lines, -2 lines 0 comments Download
M chrome/browser/gtk/gtk_chrome_button.h View 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/gtk/gtk_chrome_button.cc View 5 chunks +41 lines, -13 lines 0 comments Download
A chrome/browser/gtk/gtk_theme_provider.h View 1 2 3 4 5 6 7 8 1 chunk +61 lines, -0 lines 0 comments Download
A chrome/browser/gtk/gtk_theme_provider.cc View 1 2 3 4 5 6 7 8 1 chunk +154 lines, -0 lines 0 comments Download
M chrome/browser/gtk/location_bar_view_gtk.cc View 1 2 3 4 5 6 7 8 2 chunks +12 lines, -4 lines 0 comments Download
M chrome/browser/gtk/options/content_page_gtk.h View 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/gtk/options/content_page_gtk.cc View 2 chunks +14 lines, -0 lines 0 comments Download
M chrome/browser/gtk/tabs/tab_renderer_gtk.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/gtk/tabs/tab_strip_gtk.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/profile.h View 2 chunks +4 lines, -0 lines 0 comments Download
M chrome/browser/profile.cc View 1 2 3 4 5 6 7 8 5 chunks +20 lines, -0 lines 1 comment Download
M chrome/chrome.gyp View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/common/pref_names.h View 1 2 3 4 5 6 7 8 2 chunks +5 lines, -0 lines 1 comment Download
M chrome/common/pref_names.cc View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -0 lines 1 comment Download
M chrome/test/testing_profile.h View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
Elliot Glaysher
11 years, 5 months ago (2009-07-01 21:10:52 UTC) #1
James Hawkins
lg on my end.
11 years, 5 months ago (2009-07-01 21:22:31 UTC) #2
Evan Martin
maybe tony is a good reviewer?
11 years, 5 months ago (2009-07-01 21:55:35 UTC) #3
Glen Murphy
non-GTK code LGTM
11 years, 5 months ago (2009-07-02 00:16:20 UTC) #4
Glen Murphy
gtk_theme_provider also LG with one note. http://codereview.chromium.org/150176/diff/125/141 File chrome/browser/gtk/gtk_theme_provider.cc (right): http://codereview.chromium.org/150176/diff/125/141#newcode73 Line 73: SkCanvas canvas(*bitmap); ...
11 years, 5 months ago (2009-07-02 00:31:47 UTC) #5
Elliot Glaysher
ping tony or evan for review.
11 years, 5 months ago (2009-07-02 00:55:13 UTC) #6
Elliot Glaysher
@estade: > 2. I think the custom button gtk paint changes will break the manual ...
11 years, 5 months ago (2009-07-02 20:11:28 UTC) #7
Evan Stade
On 2009/07/02 20:11:28, Elliot Glaysher wrote: > @estade: > > 2. I think the custom ...
11 years, 5 months ago (2009-07-02 20:13:55 UTC) #8
Evan Stade
LGTM
11 years, 5 months ago (2009-07-02 20:16:58 UTC) #9
tony
11 years, 5 months ago (2009-07-07 19:47:05 UTC) #10
Some late nits.  Feel free to ignore them.

http://codereview.chromium.org/150176/diff/2001/3003
File chrome/browser/browser_theme_provider.h (right):

http://codereview.chromium.org/150176/diff/2001/3003#newcode23
Line 23: namespace themes {
:( The style guide says the namespaces name should be chrome_browser. 
Alternately you could just make these class statics in BrowserThemeProvider
which might get rid of the need to prefix them in GtkThemeProvider.

http://codereview.chromium.org/150176/diff/2001/3024
File chrome/browser/profile.cc (right):

http://codereview.chromium.org/150176/diff/2001/3024#newcode937
Line 937: scoped_refptr<BrowserThemeProvider> themes(new GtkThemeProvider);
Nit: Maybe make a static ::Create method to avoid this #if?

http://codereview.chromium.org/150176/diff/2001/3027
File chrome/common/pref_names.cc (right):

http://codereview.chromium.org/150176/diff/2001/3027#newcode252
Line 252: #if defined(OS_LINUX)
same thing about #if.

http://codereview.chromium.org/150176/diff/2001/3028
File chrome/common/pref_names.h (right):

http://codereview.chromium.org/150176/diff/2001/3028#newcode94
Line 94: #if defined(OS_LINUX)
Nit: I would probably not bother with putting platform specific prefs behind
#ifs.  In theory if it's not used on a platform, the linker will drop it.

Powered by Google App Engine
This is Rietveld 408576698