[gtk+] GtkWindow: Get the correct shadow width even before window is realized
- From: Jonas Ådahl <jadahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] GtkWindow: Get the correct shadow width even before window is realized
- Date: Wed, 6 May 2015 11:56:57 +0000 (UTC)
commit b1e5ad469c753ea3eed967056ca814ecb0117c7b
Author: Jonas Ådahl <jadahl gmail com>
Date: Wed Apr 29 15:08:44 2015 +0800
GtkWindow: Get the correct shadow width even before window is realized
The window state 'client_decorated' will only be set the window is being
realized. If anyone tries to get the shadow size before that it'd get
the with as if there always was no shadow.
This avoids negative sized opaque regions caused by the allocation being
smaller than shadow.
https://bugzilla.gnome.org/show_bug.cgi?id=748615
gtk/gtkwindow.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 5a57b77..2a85f1f 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -6529,7 +6529,8 @@ static void
get_shadow_width (GtkWidget *widget,
GtkBorder *shadow_width)
{
- GtkWindowPrivate *priv = GTK_WINDOW (widget)->priv;
+ GtkWindow *window = GTK_WINDOW (widget);
+ GtkWindowPrivate *priv = window->priv;
GtkBorder border = { 0 };
GtkBorder d = { 0 };
GtkBorder margin;
@@ -6541,7 +6542,8 @@ get_shadow_width (GtkWidget *widget,
*shadow_width = border;
if (!priv->decorated ||
- !priv->client_decorated)
+ !gtk_window_should_use_csd (window) ||
+ !gtk_window_supports_client_shadow (window))
return;
if (priv->maximized ||
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]