summaryrefslogtreecommitdiffstats
path: root/src/display/sp-canvas.cpp
diff options
context:
space:
mode:
authorAlex Valavanis <valavanisalex@gmail.com>2012-06-09 20:37:17 +0000
committerAlex Valavanis <valavanisalex@gmail.com>2012-06-09 20:37:17 +0000
commitb2af0a86aa6b60f28fe6a9051f67e19df1b467ac (patch)
treec70d5c2a4315b0b9deef34b2655bfb47659ab04e /src/display/sp-canvas.cpp
parentGtk+ 3 drawing for sp-color-slider (diff)
downloadinkscape-b2af0a86aa6b60f28fe6a9051f67e19df1b467ac.tar.gz
inkscape-b2af0a86aa6b60f28fe6a9051f67e19df1b467ac.zip
Don't use GtkColormap in Gtk+ 3
(bzr r11480)
Diffstat (limited to 'src/display/sp-canvas.cpp')
-rw-r--r--src/display/sp-canvas.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/display/sp-canvas.cpp b/src/display/sp-canvas.cpp
index 5e13bc57f..d53394593 100644
--- a/src/display/sp-canvas.cpp
+++ b/src/display/sp-canvas.cpp
@@ -1369,8 +1369,12 @@ void SPCanvasImpl::realize(GtkWidget *widget)
attributes.width = allocation.width;
attributes.height = allocation.height;
attributes.wclass = GDK_INPUT_OUTPUT;
- attributes.visual = gdk_rgb_get_visual ();
- attributes.colormap = gdk_rgb_get_cmap ();
+ attributes.visual = gdk_visual_get_system();
+
+#if !GTK_CHECK_VERSION(3,0,0)
+ attributes.colormap = gdk_colormap_get_system();
+#endif
+
attributes.event_mask = (gtk_widget_get_events (widget) |
GDK_EXPOSURE_MASK |
GDK_BUTTON_PRESS_MASK |
@@ -1385,7 +1389,12 @@ void SPCanvasImpl::realize(GtkWidget *widget)
GDK_ENTER_NOTIFY_MASK |
GDK_LEAVE_NOTIFY_MASK |
GDK_FOCUS_CHANGE_MASK);
+
+#if GTK_CHECK_VERSION(3,0,0)
+ gint attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL;
+#else
gint attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP;
+#endif
GdkWindow *window = gdk_window_new (gtk_widget_get_parent_window (widget), &attributes, attributes_mask);
gtk_widget_set_window (widget, window);