From 9d904f9a856a6734c02655a313b836d4d077085c Mon Sep 17 00:00:00 2001 From: "Jasper St. Pierre" Date: Mon, 3 Dec 2012 14:58:13 -0500 Subject: [PATCH] Increase typical icon size to 96 Since we want nice alt-tab applications for gnome-shell, we should up the limit to 96. In the future, we probably want to get rid of the icon-cache, and allow looking up a correctly sized icon directly from the window. To prevent app breakage, set the legacy WM_HINTS pixmap size directly to 32x32. https://bugzilla.gnome.org/show_bug.cgi?id=689651 --- src/core/screen.c | 15 +++++++++++---- src/core/window.c | 2 +- src/meta/common.h | 4 ++-- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/core/screen.c b/src/core/screen.c index 65a5d1d7d..d6885b8e7 100644 --- a/src/core/screen.c +++ b/src/core/screen.c @@ -311,13 +311,20 @@ set_wm_icon_size_hint (MetaScreen *screen) #define N_VALS 6 gulong vals[N_VALS]; + /* We've bumped the real icon size up to 96x96, but + * we really should not add these sorts of constraints + * on clients still using the legacy WM_HINTS interface. + */ +#define LEGACY_ICON_SIZE 32 + /* min width, min height, max w, max h, width inc, height inc */ - vals[0] = META_ICON_WIDTH; - vals[1] = META_ICON_HEIGHT; - vals[2] = META_ICON_WIDTH; - vals[3] = META_ICON_HEIGHT; + vals[0] = LEGACY_ICON_SIZE; + vals[1] = LEGACY_ICON_SIZE; + vals[2] = LEGACY_ICON_SIZE; + vals[3] = LEGACY_ICON_SIZE; vals[4] = 0; vals[5] = 0; +#undef LEGACY_ICON_SIZE XChangeProperty (screen->display->xdisplay, screen->xroot, screen->display->atom_WM_ICON_SIZE, diff --git a/src/core/window.c b/src/core/window.c index e99411bb4..7a9afdcf5 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -366,7 +366,7 @@ meta_window_class_init (MetaWindowClass *klass) PROP_ICON, g_param_spec_object ("icon", "Icon", - "32 pixel sized icon", + "96 pixel sized icon", GDK_TYPE_PIXBUF, G_PARAM_READABLE)); diff --git a/src/meta/common.h b/src/meta/common.h index 80fbb09b2..3d8dfa8f7 100644 --- a/src/meta/common.h +++ b/src/meta/common.h @@ -298,8 +298,8 @@ struct _MetaFrameBorders void meta_frame_borders_clear (MetaFrameBorders *self); /* should investigate changing these to whatever most apps use */ -#define META_ICON_WIDTH 32 -#define META_ICON_HEIGHT 32 +#define META_ICON_WIDTH 96 +#define META_ICON_HEIGHT 96 #define META_MINI_ICON_WIDTH 16 #define META_MINI_ICON_HEIGHT 16