summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk
diff options
context:
space:
mode:
authortc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-07 21:52:23 +0000
committertc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-07 21:52:23 +0000
commit358cc678ff4490526bd6d93eb098518b28a19632 (patch)
tree999ff46bd20de7ff23d40b3063235bcb9898eccd /chrome/browser/gtk
parent3754c3c6b52658585c02e50ef7a8d8e88afeb6c6 (diff)
downloadchromium_src-358cc678ff4490526bd6d93eb098518b28a19632.zip
chromium_src-358cc678ff4490526bd6d93eb098518b28a19632.tar.gz
chromium_src-358cc678ff4490526bd6d93eb098518b28a19632.tar.bz2
Work around a bug in KWin where the window shape doesn't get
removed when we maximize/go full screen. BUG=15317 Review URL: http://codereview.chromium.org/155169 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20089 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk')
-rw-r--r--chrome/browser/gtk/browser_window_gtk.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/chrome/browser/gtk/browser_window_gtk.cc b/chrome/browser/gtk/browser_window_gtk.cc
index 57d18c6..b8b5fd6 100644
--- a/chrome/browser/gtk/browser_window_gtk.cc
+++ b/chrome/browser/gtk/browser_window_gtk.cc
@@ -1123,8 +1123,12 @@ void BrowserWindowGtk::UpdateWindowShape(int width, int height) {
gtk_alignment_set_padding(GTK_ALIGNMENT(window_container_), 1,
kFrameBorderThickness, kFrameBorderThickness, kFrameBorderThickness);
} else {
- // Disable rounded corners.
- gdk_window_shape_combine_region(GTK_WIDGET(window_)->window, NULL, 0, 0);
+ // Disable rounded corners. Simply passing in a NULL region doesn't
+ // seem to work on KWin, so manually set the shape to the whole window.
+ GdkRectangle rect = { 0, 0, width, height };
+ GdkRegion* mask = gdk_region_rectangle(&rect);
+ gdk_window_shape_combine_region(GTK_WIDGET(window_)->window, mask, 0, 0);
+ gdk_region_destroy(mask);
gtk_alignment_set_padding(GTK_ALIGNMENT(window_container_), 0, 0, 0, 0);
}
}