summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/browser_titlebar.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/gtk/browser_titlebar.cc')
-rw-r--r--chrome/browser/gtk/browser_titlebar.cc36
1 files changed, 25 insertions, 11 deletions
diff --git a/chrome/browser/gtk/browser_titlebar.cc b/chrome/browser/gtk/browser_titlebar.cc
index 68a4481..c213070d 100644
--- a/chrome/browser/gtk/browser_titlebar.cc
+++ b/chrome/browser/gtk/browser_titlebar.cc
@@ -83,6 +83,10 @@ const int kButtonSpacing = 2;
// Spacing around outside of titlebar buttons.
const int kButtonOuterPadding = 2;
+// Spacing between tabstrip and window control buttons (when the window is
+// maximized).
+const int kMaximizedTabstripPadding = 16;
+
gboolean OnMouseMoveEvent(GtkWidget* widget, GdkEventMotion* event,
BrowserWindowGtk* browser_window) {
// Reset to the default mouse cursor.
@@ -482,20 +486,30 @@ void BrowserTitlebar::UpdateThrobber(TabContents* tab_contents) {
void BrowserTitlebar::UpdateTitlebarAlignment() {
if (browser_window_->browser()->type() == Browser::TYPE_NORMAL) {
- if (using_custom_frame_ && !browser_window_->IsMaximized()) {
- gtk_alignment_set_padding(GTK_ALIGNMENT(titlebar_alignment_),
- kTitlebarHeight, 0, kTabStripLeftPadding, 0);
- } else {
- gtk_alignment_set_padding(GTK_ALIGNMENT(titlebar_alignment_), 0, 0,
- kTabStripLeftPadding, 0);
- }
+ int top_padding = 0;
+ int side_padding = 0;
+ int vertical_offset = kNormalVerticalOffset;
if (using_custom_frame_) {
- browser_window_->tabstrip()->SetVerticalOffset(
- browser_window_->IsMaximized() ? 0 : kNormalVerticalOffset);
- } else {
- browser_window_->tabstrip()->SetVerticalOffset(kNormalVerticalOffset);
+ if (!browser_window_->IsMaximized()) {
+ top_padding = kTitlebarHeight;
+ } else if (using_custom_frame_ && browser_window_->IsMaximized()) {
+ vertical_offset = 0;
+ side_padding = kMaximizedTabstripPadding;
+ }
}
+
+ int right_padding = 0;
+ int left_padding = kTabStripLeftPadding;
+ if (titlebar_right_buttons_hbox_)
+ right_padding = side_padding;
+ if (titlebar_left_buttons_hbox_)
+ left_padding = side_padding;
+
+ gtk_alignment_set_padding(GTK_ALIGNMENT(titlebar_alignment_),
+ top_padding, 0,
+ left_padding, right_padding);
+ browser_window_->tabstrip()->SetVerticalOffset(vertical_offset);
} else {
if (using_custom_frame_ && !browser_window_->IsFullscreen()) {
gtk_alignment_set_padding(GTK_ALIGNMENT(titlebar_alignment_),