summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorStefano Karapetsas <[email protected]>2014-04-21 20:33:12 +0200
committerStefano Karapetsas <[email protected]>2014-04-21 20:33:12 +0200
commit42c63250abf2b4c7b1c704c907301bb5a5920b6e (patch)
treec14e36dbaef8495619006a6aa8bae92917194f07 /src/core
parentd07a3960e9b81aaf9864902e5398eadf801a531b (diff)
downloadmarco-42c63250abf2b4c7b1c704c907301bb5a5920b6e.tar.bz2
marco-42c63250abf2b4c7b1c704c907301bb5a5920b6e.tar.xz
Tell to GTK3 that marco support _GTK_FRAME_EXTENTS hint
Also if marco doesnt support it, but this currently fixes ugly dialog windows with GTK 3.12
Diffstat (limited to 'src/core')
-rw-r--r--src/core/atomnames.h1
-rw-r--r--src/core/screen.c1
-rw-r--r--src/core/window-props.c9
3 files changed, 11 insertions, 0 deletions
diff --git a/src/core/atomnames.h b/src/core/atomnames.h
index 756626c5..4893f270 100644
--- a/src/core/atomnames.h
+++ b/src/core/atomnames.h
@@ -70,6 +70,7 @@ item(MULTIPLE)
item(TIMESTAMP)
item(VERSION)
item(ATOM_PAIR)
+item(_GTK_FRAME_EXTENTS)
/* Oddities: These are used, and we need atoms for them,
* but when we need all _NET_WM hints (i.e. when we're making
diff --git a/src/core/screen.c b/src/core/screen.c
index f52f382c..1804df94 100644
--- a/src/core/screen.c
+++ b/src/core/screen.c
@@ -102,6 +102,7 @@ set_supported_hint (MetaScreen *screen)
#include "atomnames.h"
#undef item
#undef EWMH_ATOMS_ONLY
+ screen->display->atom__GTK_FRAME_EXTENTS,
};
XChangeProperty (screen->display->xdisplay, screen->xroot,
diff --git a/src/core/window-props.c b/src/core/window-props.c
index 08cc6630..0b51d4ba 100644
--- a/src/core/window-props.c
+++ b/src/core/window-props.c
@@ -216,6 +216,14 @@ reload_kwm_win_icon (MetaWindow *window,
}
static void
+reload_gtk_frame_extents (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ return;
+}
+
+static void
reload_struts (MetaWindow *window,
MetaPropValue *value,
gboolean initial)
@@ -1507,6 +1515,7 @@ meta_display_init_window_prop_hooks (MetaDisplay *display)
{ XA_WM_HINTS, META_PROP_VALUE_WM_HINTS, reload_wm_hints },
{ XA_WM_TRANSIENT_FOR, META_PROP_VALUE_WINDOW, reload_transient_for },
{ display->atom__NET_WM_USER_TIME_WINDOW, META_PROP_VALUE_WINDOW, reload_net_wm_user_time_window },
+ { display->atom__GTK_FRAME_EXTENTS, META_PROP_VALUE_CARDINAL_LIST, reload_gtk_frame_extents },
{ 0 },
};