diff options
| -rw-r--r-- | src/eom-scroll-view.c | 23 | ||||
| -rw-r--r-- | src/eom-scroll-view.h | 8 | 
2 files changed, 30 insertions, 1 deletions
| diff --git a/src/eom-scroll-view.c b/src/eom-scroll-view.c index 53fda38..fc87b5a 100644 --- a/src/eom-scroll-view.c +++ b/src/eom-scroll-view.c @@ -184,9 +184,12 @@ static void view_on_drag_data_get_cb (GtkWidget *widget,  #define EOM_SCROLL_VIEW_GET_PRIVATE(object) \  	(G_TYPE_INSTANCE_GET_PRIVATE ((object), EOM_TYPE_SCROLL_VIEW, EomScrollViewPrivate)) +#if GTK_CHECK_VERSION (3, 4, 0) +G_DEFINE_TYPE (EomScrollView, eom_scroll_view, GTK_TYPE_GRID) +#else  G_DEFINE_TYPE (EomScrollView, eom_scroll_view, GTK_TYPE_TABLE) +#endif -  /*===================================      widget size changing handler &          util functions @@ -2535,6 +2538,18 @@ eom_scroll_view_init (EomScrollView *view)  	g_signal_connect (G_OBJECT (priv->display), "drag-begin",  			  G_CALLBACK (view_on_drag_begin_cb), view); +#if GTK_CHECK_VERSION (3, 4, 0) +	gtk_grid_attach (GTK_GRID (view), priv->display, +					 0, 0, 1, 1); +	gtk_widget_set_hexpand (priv->display, TRUE); +	gtk_widget_set_vexpand (priv->display, TRUE); +	gtk_grid_attach (GTK_GRID (view), priv->hbar, +					 0, 1, 1, 1); +	gtk_widget_set_hexpand (priv->hbar, TRUE); +	gtk_grid_attach (GTK_GRID (view), priv->vbar, +					 1, 0, 1, 1); +	gtk_widget_set_vexpand (priv->vbar, TRUE); +#else  	gtk_table_attach (GTK_TABLE (view), priv->display,  			  0, 1, 0, 1,  			  GTK_EXPAND | GTK_FILL, @@ -2549,6 +2564,7 @@ eom_scroll_view_init (EomScrollView *view)  			  1, 2, 0, 1,  			  GTK_FILL, GTK_FILL,  			  0, 0); +#endif  	g_settings_bind (settings, EOM_CONF_VIEW_USE_BG_COLOR, view,  			 "use-background-color", G_SETTINGS_BIND_DEFAULT); @@ -2869,9 +2885,14 @@ eom_scroll_view_new (void)  	widget = g_object_new (EOM_TYPE_SCROLL_VIEW,  			       "can-focus", TRUE, +#if GTK_CHECK_VERSION (3, 4, 0) +			       "row-homogeneous", FALSE, +			       "column-homogeneous", FALSE, +#else  			       "n_rows", 2,  			       "n_columns", 2,  			       "homogeneous", FALSE, +#endif  			       NULL); diff --git a/src/eom-scroll-view.h b/src/eom-scroll-view.h index 7ed6181..24ad306 100644 --- a/src/eom-scroll-view.h +++ b/src/eom-scroll-view.h @@ -18,13 +18,21 @@ typedef struct _EomScrollViewPrivate EomScrollViewPrivate;  struct _EomScrollView { +#if GTK_CHECK_VERSION (3, 4, 0) +	GtkGrid base_instance; +#else  	GtkTable  widget; +#endif  	EomScrollViewPrivate *priv;  };  struct _EomScrollViewClass { +#if GTK_CHECK_VERSION (3, 4, 0) +	GtkGridClass parent_class; +#else  	GtkTableClass parent_class; +#endif  	void (* zoom_changed) (EomScrollView *view, double zoom);  }; | 
