diff options
author | tc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-06 21:00:13 +0000 |
---|---|---|
committer | tc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-06 21:00:13 +0000 |
commit | cc65ed864542d486654269b7ac72ecf8a0fef2cf (patch) | |
tree | 1af39af4d58ab6a7d51f9c717ad4262e54630ada /chrome/browser/gtk/tabs/tab_renderer_gtk.cc | |
parent | 41d59a808a1ca4084a8c5e0ce8ea2098ce110c57 (diff) | |
download | chromium_src-cc65ed864542d486654269b7ac72ecf8a0fef2cf.zip chromium_src-cc65ed864542d486654269b7ac72ecf8a0fef2cf.tar.gz chromium_src-cc65ed864542d486654269b7ac72ecf8a0fef2cf.tar.bz2 |
More theme fixes.
1) Fix the bookmark bar to draw the same as the toolbar (tile the background
image and have a transparent background).
2) Fix the tab backgrounds to be offset correctly rather than always drawing
as if we're the first tab.
Some small code cleanup in views/tabs/tab_renderer.h.
Review URL: http://codereview.chromium.org/165078
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22660 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/tabs/tab_renderer_gtk.cc')
-rw-r--r-- | chrome/browser/gtk/tabs/tab_renderer_gtk.cc | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/chrome/browser/gtk/tabs/tab_renderer_gtk.cc b/chrome/browser/gtk/tabs/tab_renderer_gtk.cc index 9980cf4..d9e96a5 100644 --- a/chrome/browser/gtk/tabs/tab_renderer_gtk.cc +++ b/chrome/browser/gtk/tabs/tab_renderer_gtk.cc @@ -28,6 +28,7 @@ const int kLeftPadding = 16; const int kTopPadding = 6; const int kRightPadding = 15; const int kBottomPadding = 5; +const int kDropShadowHeight = 2; const int kFavIconTitleSpacing = 4; const int kTitleCloseButtonSpacing = 5; const int kStandardTitleWidth = 175; @@ -596,6 +597,10 @@ void TabRendererGtk::PaintTab(GdkEventExpose* event) { // coordinate event->area. Translate by these offsets so we can render at // (0,0) to match Windows' rendering metrics. canvas.TranslateInt(event->area.x, event->area.y); + + // Save the original x offset so we can position background images properly. + background_offset_x_ = event->area.x; + Paint(&canvas); } @@ -680,7 +685,7 @@ void TabRendererGtk::PaintInactiveTabBackground(gfx::Canvas* canvas) { // The tab image needs to be lined up with the background image // so that it feels partially transparent. - int offset = 1; + int offset = background_offset_x_; int tab_id = is_otr ? IDR_THEME_TAB_BACKGROUND_INCOGNITO : IDR_THEME_TAB_BACKGROUND; @@ -723,7 +728,7 @@ void TabRendererGtk::PaintInactiveTabBackground(gfx::Canvas* canvas) { } void TabRendererGtk::PaintActiveTabBackground(gfx::Canvas* canvas) { - int offset = 1; + int offset = background_offset_x_; SkBitmap* tab_bg = theme_provider_->GetBitmapNamed(IDR_THEME_TOOLBAR); @@ -745,9 +750,10 @@ void TabRendererGtk::PaintActiveTabBackground(gfx::Canvas* canvas) { // Draw center. canvas->TileImageInt(*tab_bg, - offset + tab_active_.l_width, 2, - tab_active_.l_width, 2, - width() - tab_active_.l_width - tab_active_.r_width, height() - 2); + offset + tab_active_.l_width, kDropShadowHeight, + tab_active_.l_width, kDropShadowHeight, + width() - tab_active_.l_width - tab_active_.r_width, + height() - kDropShadowHeight); canvas->DrawBitmapInt(*tab_active_.image_l, 0, 0); canvas->TileImageInt(*tab_active_.image_c, tab_active_.l_width, 0, |