diff options
author | Benjamin Otte <otte@redhat.com> | 2016-10-06 16:02:39 +0200 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2016-10-16 18:17:21 +0200 |
commit | 662001b60adc6171ff8351e2146c6fa1ba383f75 (patch) | |
tree | 8065a6ea7fbc29e5e4202c16eadb74feeea58d46 /gdk | |
parent | 380494c1d7a154e19af362756b1aaef490c60aaa (diff) | |
download | gtk+-662001b60adc6171ff8351e2146c6fa1ba383f75.tar.gz |
API: Remove ability to set visuals on windows
And with it, gtk_widget_get_visual() and gtk_widget_set_visual() are
gone.
We now always use the RGBA visual (if available) and otherwise fall back
to the system visual.
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/gdkwindow.c | 10 | ||||
-rw-r--r-- | gdk/gdkwindow.h | 7 | ||||
-rw-r--r-- | gdk/wayland/gdkdevice-wayland.c | 3 | ||||
-rw-r--r-- | gdk/wayland/gdkdnd-wayland.c | 3 | ||||
-rw-r--r-- | gdk/win32/gdkwindow-win32.c | 9 | ||||
-rw-r--r-- | gdk/x11/gdkdnd-x11.c | 5 |
6 files changed, 9 insertions, 28 deletions
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index a7201816c6..ba64a65f43 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -1340,11 +1340,6 @@ gdk_window_new (GdkWindow *parent, return NULL; } - if (attributes_mask & GDK_WA_VISUAL) - { - g_return_val_if_fail (gdk_visual_get_screen (attributes->visual) == screen, NULL); - } - display = gdk_screen_get_display (screen); window = _gdk_display_create_window (display); @@ -1418,9 +1413,8 @@ gdk_window_new (GdkWindow *parent, return NULL; } - if (attributes_mask & GDK_WA_VISUAL) - window->visual = attributes->visual; - else + window->visual = gdk_screen_get_rgba_visual (screen); + if (window->visual == NULL) window->visual = gdk_screen_get_system_visual (screen); window->event_mask = attributes->event_mask; diff --git a/gdk/gdkwindow.h b/gdk/gdkwindow.h index 319d8367c2..d3b3240dff 100644 --- a/gdk/gdkwindow.h +++ b/gdk/gdkwindow.h @@ -91,7 +91,6 @@ typedef enum * @GDK_WA_TITLE: Honor the title field * @GDK_WA_X: Honor the X coordinate field * @GDK_WA_Y: Honor the Y coordinate field - * @GDK_WA_VISUAL: Honor the visual field * @GDK_WA_NOREDIR: Honor the override_redirect field * @GDK_WA_TYPE_HINT: Honor the type_hint field * @@ -107,9 +106,8 @@ typedef enum GDK_WA_TITLE = 1 << 1, GDK_WA_X = 1 << 2, GDK_WA_Y = 1 << 3, - GDK_WA_VISUAL = 1 << 4, - GDK_WA_NOREDIR = 1 << 5, - GDK_WA_TYPE_HINT = 1 << 6 + GDK_WA_NOREDIR = 1 << 4, + GDK_WA_TYPE_HINT = 1 << 5 } GdkWindowAttributesType; /* Size restriction enumeration. @@ -352,7 +350,6 @@ struct _GdkWindowAttr gint width; gint height; GdkWindowWindowClass wclass; - GdkVisual *visual; GdkWindowType window_type; gboolean override_redirect; GdkWindowTypeHint type_hint; diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c index fd39676740..f453df5b4d 100644 --- a/gdk/wayland/gdkdevice-wayland.c +++ b/gdk/wayland/gdkdevice-wayland.c @@ -4512,9 +4512,8 @@ create_foreign_dnd_window (GdkDisplay *display) attrs.width = attrs.height = 1; attrs.wclass = GDK_INPUT_OUTPUT; attrs.window_type = GDK_WINDOW_TEMP; - attrs.visual = gdk_screen_get_system_visual (screen); - mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL; + mask = GDK_WA_X | GDK_WA_Y; return gdk_window_new (gdk_screen_get_root_window (screen), &attrs, mask); } diff --git a/gdk/wayland/gdkdnd-wayland.c b/gdk/wayland/gdkdnd-wayland.c index adc33a4bc2..817b72e15f 100644 --- a/gdk/wayland/gdkdnd-wayland.c +++ b/gdk/wayland/gdkdnd-wayland.c @@ -508,9 +508,8 @@ create_dnd_window (GdkScreen *screen) attrs.wclass = GDK_INPUT_OUTPUT; attrs.window_type = GDK_WINDOW_TEMP; attrs.type_hint = GDK_WINDOW_TYPE_HINT_DND; - attrs.visual = gdk_screen_get_system_visual (screen); - mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_TYPE_HINT; + mask = GDK_WA_X | GDK_WA_Y | GDK_WA_TYPE_HINT; return gdk_window_new (gdk_screen_get_root_window (screen), &attrs, mask); } diff --git a/gdk/win32/gdkwindow-win32.c b/gdk/win32/gdkwindow-win32.c index 6a5a7dca68..0adb9074b1 100644 --- a/gdk/win32/gdkwindow-win32.c +++ b/gdk/win32/gdkwindow-win32.c @@ -672,7 +672,6 @@ RegisterGdkClass (GdkWindowType wtype, GdkWindowTypeHint wtype_hint) * except for toplevel window where OS/Window Manager placement * is used. * - * The visual parameter, is based on GDK_WA_VISUAL if set already. * From attributes the only things used is: colormap, title, * wmclass and type_hint. [1]. We are checking redundant information * and complain if that changes, which would break this implementation @@ -734,9 +733,9 @@ _gdk_win32_display_create_window_impl (GdkDisplay *display, remaining_mask &= ~GDK_WA_NOREDIR; } - if ((remaining_mask & ~(GDK_WA_VISUAL|GDK_WA_TITLE|GDK_WA_TYPE_HINT)) != 0) + if ((remaining_mask & ~(GDK_WA_TITLE|GDK_WA_TYPE_HINT)) != 0) g_warning ("_gdk_window_impl_new: uexpected attribute 0x%X", - remaining_mask & ~(GDK_WA_VISUAL|GDK_WA_TITLE|GDK_WA_TYPE_HINT)); + remaining_mask & ~(GDK_WA_TITLE|GDK_WA_TYPE_HINT)); hparent = GDK_WINDOW_HWND (real_parent); @@ -744,10 +743,6 @@ _gdk_win32_display_create_window_impl (GdkDisplay *display, impl->wrapper = GDK_WINDOW (window); window->impl = GDK_WINDOW_IMPL (impl); - if (attributes_mask & GDK_WA_VISUAL) - g_assert ((gdk_screen_get_system_visual (screen) == attributes->visual) || - (gdk_screen_get_rgba_visual (screen) == attributes->visual)); - impl->override_redirect = override_redirect; impl->layered = FALSE; impl->layered_opacity = 1.0; diff --git a/gdk/x11/gdkdnd-x11.c b/gdk/x11/gdkdnd-x11.c index bb322c4c10..16685510fd 100644 --- a/gdk/x11/gdkdnd-x11.c +++ b/gdk/x11/gdkdnd-x11.c @@ -2001,11 +2001,8 @@ create_drag_window (GdkScreen *screen) attrs.wclass = GDK_INPUT_OUTPUT; attrs.window_type = GDK_WINDOW_TEMP; attrs.type_hint = GDK_WINDOW_TYPE_HINT_DND; - attrs.visual = gdk_screen_get_rgba_visual (screen); - if (!attrs.visual) - attrs.visual = gdk_screen_get_system_visual (screen); - mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_TYPE_HINT; + mask = GDK_WA_X | GDK_WA_Y | GDK_WA_TYPE_HINT; return gdk_window_new (gdk_screen_get_root_window (screen), &attrs, mask); } |