From 4f88ccdfed31eb06cfc0d362dc2cb8358bb65e34 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Tue, 12 Apr 2016 10:47:23 +0100 Subject: Bump ifdefs to 3.8 (now ifdefs say 3.0 instead of 3.2 or 3.8) (bzr r14788) --- src/widgets/eek-preview.cpp | 5 +++-- src/widgets/ruler.cpp | 7 ------- 2 files changed, 3 insertions(+), 9 deletions(-) (limited to 'src/widgets') diff --git a/src/widgets/eek-preview.cpp b/src/widgets/eek-preview.cpp index 19dbb04ab..de14caa12 100644 --- a/src/widgets/eek-preview.cpp +++ b/src/widgets/eek-preview.cpp @@ -239,7 +239,7 @@ static gboolean eek_preview_draw(GtkWidget *widget, cairo_t *cr) { - GtkStyle *style = gtk_widget_get_style(widget); + EekPreview *preview = EEK_PREVIEW(widget); EekPreviewPrivate *priv = EEK_PREVIEW_GET_PRIVATE(preview); @@ -284,7 +284,8 @@ gboolean eek_preview_draw(GtkWidget *widget, 0, 0, allocation.width, allocation.height); #else - GdkWindow* window = gtk_widget_get_window(widget); + GtkStyle *style = gtk_widget_get_style(widget); + GdkWindow *window = gtk_widget_get_window(widget); gtk_paint_flat_box( style, window, diff --git a/src/widgets/ruler.cpp b/src/widgets/ruler.cpp index 3a5e76277..0b473f173 100644 --- a/src/widgets/ruler.cpp +++ b/src/widgets/ruler.cpp @@ -284,17 +284,10 @@ sp_ruler_init (SPRuler *ruler) priv->font_scale = DEFAULT_RULER_FONT_SCALE; #if GTK_CHECK_VERSION(3,0,0) - #if GTK_CHECK_VERSION(3,8,0) const gchar *str = "SPRuler {\n" " background-color: @theme_bg_color;\n" "}\n"; - #else - const gchar *str = - "SPRuler {\n" - " background-color: @bg_color;\n" - "}\n"; - #endif GtkCssProvider *css = gtk_css_provider_new (); gtk_css_provider_load_from_data (css, str, -1, NULL); gtk_style_context_add_provider (gtk_widget_get_style_context (GTK_WIDGET (ruler)), -- cgit v1.2.3 From 3ee1ba1e9a8019e98012bc77ff3953363b2fa17a Mon Sep 17 00:00:00 2001 From: Tavmjong Bah Date: Tue, 12 Apr 2016 12:28:18 +0200 Subject: Add option for larger icons (useful for 4K display). (bzr r14789) --- src/widgets/icon.cpp | 8 ++++++++ src/widgets/toolbox.cpp | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'src/widgets') diff --git a/src/widgets/icon.cpp b/src/widgets/icon.cpp index 542d16797..f998cd66d 100644 --- a/src/widgets/icon.cpp +++ b/src/widgets/icon.cpp @@ -257,6 +257,14 @@ gboolean IconImpl::draw(GtkWidget *widget, cairo_t* cr) image = gtk_render_icon_pixbuf(gtk_widget_get_style_context(widget), source, (GtkIconSize)-1); + + // gtk_render_icon_pixbuf deprecated, replaced by: + // GtkIconTheme *icon_theme = gtk_icon_theme_get_default(); + // image = gtk_icon_theme_load_icon (icon_theme, + // name, + // 32, + // 0, + // NULL); #else image = gtk_style_render_icon(gtk_widget_get_style(widget), source, gtk_widget_get_direction(widget), diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index 3389f82f9..0697ff0fb 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -127,7 +127,8 @@ Inkscape::IconSize ToolboxFactory::prefToSize( Glib::ustring const &path, int ba static Inkscape::IconSize sizeChoices[] = { Inkscape::ICON_SIZE_LARGE_TOOLBAR, Inkscape::ICON_SIZE_SMALL_TOOLBAR, - Inkscape::ICON_SIZE_MENU + Inkscape::ICON_SIZE_MENU, + Inkscape::ICON_SIZE_DIALOG }; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); int index = prefs->getIntLimited( path, base, 0, G_N_ELEMENTS(sizeChoices) ); -- cgit v1.2.3 From a907096a990015010ec1171cd8997d33951f28a2 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 12 Apr 2016 11:35:15 +0100 Subject: Hackfest 2016: un-obfuscate the SPCanvas widget. (bzr r14790) --- src/widgets/desktop-widget.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'src/widgets') diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 1fdd3ca6d..3fa607820 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -564,7 +564,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) /* Canvas */ dtw->canvas = SP_CANVAS(SPCanvas::createAA()); #if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) - dtw->canvas->enable_cms_display_adj = prefs->getBool("/options/displayprofile/enable"); + dtw->canvas->_enable_cms_display_adj = prefs->getBool("/options/displayprofile/enable"); #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) gtk_widget_set_can_focus (GTK_WIDGET (dtw->canvas), TRUE); @@ -746,8 +746,8 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) Glib::ustring id = Inkscape::CMSSystem::getDisplayId( 0, 0 ); bool enabled = false; - dtw->canvas->cms_key = id; - enabled = !dtw->canvas->cms_key.empty(); + dtw->canvas->_cms_key = id; + enabled = !dtw->canvas->_cms_key.empty(); cms_adjust_set_sensitive( dtw, enabled ); } #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) @@ -1035,7 +1035,7 @@ sp_desktop_widget_event (GtkWidget *widget, GdkEvent *event, SPDesktopWidget *dt // current item on the canvas, because item events and all mouse events are caught // and passed on by the canvas acetate (I think). --bb if ((event->type == GDK_KEY_PRESS || event->type == GDK_KEY_RELEASE) - && !dtw->canvas->current_item) { + && !dtw->canvas->_current_item) { return sp_desktop_root_handler (NULL, event, dtw->desktop); } } @@ -1054,9 +1054,9 @@ void sp_dtw_color_profile_event(EgeColorProfTracker */*tracker*/, SPDesktopWidge gint monitor = gdk_screen_get_monitor_at_window(screen, window); Glib::ustring id = Inkscape::CMSSystem::getDisplayId( screenNum, monitor ); bool enabled = false; - dtw->canvas->cms_key = id; + dtw->canvas->_cms_key = id; dtw->requestCanvasUpdate(); - enabled = !dtw->canvas->cms_key.empty(); + enabled = !dtw->canvas->_cms_key.empty(); cms_adjust_set_sensitive( dtw, enabled ); } #else @@ -1092,8 +1092,8 @@ void cms_adjust_toggled( GtkWidget */*button*/, gpointer data ) SPDesktopWidget *dtw = SP_DESKTOP_WIDGET(data); bool down = SP_BUTTON_IS_DOWN(dtw->cms_adjust); - if ( down != dtw->canvas->enable_cms_display_adj ) { - dtw->canvas->enable_cms_display_adj = down; + if ( down != dtw->canvas->_enable_cms_display_adj ) { + dtw->canvas->_enable_cms_display_adj = down; dtw->requestCanvasUpdate(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setBool("/options/displayprofile/enable", down); -- cgit v1.2.3 From adb2151187f3ce389feca24c34d2c5581a8fe417 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Tue, 12 Apr 2016 12:20:09 +0100 Subject: Latest gtk3 cleanup (bzr r14791) --- src/widgets/eek-preview.cpp | 29 +++++++++++++++++++++-------- src/widgets/ruler.cpp | 14 ++++++++++++-- 2 files changed, 33 insertions(+), 10 deletions(-) (limited to 'src/widgets') diff --git a/src/widgets/eek-preview.cpp b/src/widgets/eek-preview.cpp index de14caa12..9951a8957 100644 --- a/src/widgets/eek-preview.cpp +++ b/src/widgets/eek-preview.cpp @@ -496,14 +496,11 @@ gboolean eek_preview_draw(GtkWidget *widget, otherArea.y = possible.y + (possible.height - otherArea.height) / 2; } #if GTK_CHECK_VERSION(3,0,0) - gtk_paint_diamond( style, - cr, - gtk_widget_get_state (widget), - GTK_SHADOW_ETCHED_OUT, - widget, - NULL, - otherArea.x, otherArea.y, - otherArea.width, otherArea.height ); + // This should be a diamond too? + gtk_render_check(context, + cr, + otherArea.x, otherArea.y, + otherArea.width, otherArea.height ); #else gtk_paint_diamond( style, window, @@ -550,7 +547,11 @@ static gboolean eek_preview_enter_cb( GtkWidget* widget, GdkEventCrossing* event EekPreviewPrivate *priv = EEK_PREVIEW_GET_PRIVATE(preview); priv->within = TRUE; +#if GTK_CHECK_VERSION(3,0,0) + gtk_widget_set_state_flags( widget, priv->hot ? GTK_STATE_FLAG_ACTIVE : GTK_STATE_FLAG_PRELIGHT, false ); +#else gtk_widget_set_state( widget, priv->hot ? GTK_STATE_ACTIVE : GTK_STATE_PRELIGHT ); +#endif } return FALSE; @@ -563,7 +564,11 @@ static gboolean eek_preview_leave_cb( GtkWidget* widget, GdkEventCrossing* event EekPreviewPrivate *priv = EEK_PREVIEW_GET_PRIVATE(preview); priv->within = FALSE; +#if GTK_CHECK_VERSION(3,0,0) + gtk_widget_set_state_flags( widget, GTK_STATE_FLAG_NORMAL, false ); +#else gtk_widget_set_state( widget, GTK_STATE_NORMAL ); +#endif } return FALSE; @@ -588,7 +593,11 @@ static gboolean eek_preview_button_press_cb( GtkWidget* widget, GdkEventButton* if ( priv->within ) { +#if GTK_CHECK_VERSION(3,0,0) + gtk_widget_set_state_flags( widget, GTK_STATE_FLAG_ACTIVE, false ); +#else gtk_widget_set_state( widget, GTK_STATE_ACTIVE ); +#endif } } } @@ -603,7 +612,11 @@ static gboolean eek_preview_button_release_cb( GtkWidget* widget, GdkEventButton EekPreviewPrivate *priv = EEK_PREVIEW_GET_PRIVATE(preview); priv->hot = FALSE; +#if GTK_CHECK_VERSION(3,0,0) + gtk_widget_set_state_flags( widget, GTK_STATE_FLAG_NORMAL, false ); +#else gtk_widget_set_state( widget, GTK_STATE_NORMAL ); +#endif if ( priv->within && (event->button == PRIME_BUTTON_MAGIC_NUMBER || diff --git a/src/widgets/ruler.cpp b/src/widgets/ruler.cpp index 0b473f173..fe851d592 100644 --- a/src/widgets/ruler.cpp +++ b/src/widgets/ruler.cpp @@ -286,7 +286,7 @@ sp_ruler_init (SPRuler *ruler) #if GTK_CHECK_VERSION(3,0,0) const gchar *str = "SPRuler {\n" - " background-color: @theme_bg_color;\n" + " background-color: @bg_color;\n" "}\n"; GtkCssProvider *css = gtk_css_provider_new (); gtk_css_provider_load_from_data (css, str, -1, NULL); @@ -1418,7 +1418,6 @@ sp_ruler_get_pos_rect (SPRuler *ruler, gdouble position) { GtkWidget *widget = GTK_WIDGET (ruler); - GtkStyle *style = gtk_widget_get_style (widget); SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler); GtkAllocation allocation; gint width, height; @@ -1433,8 +1432,19 @@ sp_ruler_get_pos_rect (SPRuler *ruler, gtk_widget_get_allocation (widget, &allocation); +#if GTK_CHECK_VERSION(3,0,0) + GtkStyleContext *context = gtk_widget_get_style_context (widget); + GtkBorder padding; + + gtk_style_context_get_border(context, static_cast(0), &padding); + + xthickness = padding.left + padding.right; + ythickness = padding.top + padding.bottom; +#else + GtkStyle *style = gtk_widget_get_style (widget); xthickness = style->xthickness; ythickness = style->ythickness; +#endif if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) { -- cgit v1.2.3 From feafa28eb3e6c8e3370ed7a6e1f74a4c653ce272 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Tue, 12 Apr 2016 12:56:42 +0100 Subject: Replace xthickness and ythickness with Gtk Context padding. (bzr r14792) --- src/widgets/button.cpp | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) (limited to 'src/widgets') diff --git a/src/widgets/button.cpp b/src/widgets/button.cpp index 1776e28c4..54f073c01 100644 --- a/src/widgets/button.cpp +++ b/src/widgets/button.cpp @@ -96,7 +96,6 @@ static void sp_button_dispose(GObject *object) static void sp_button_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width) { GtkWidget *child = gtk_bin_get_child(GTK_BIN(widget)); - GtkStyle *style = gtk_widget_get_style(widget); if (child) { gtk_widget_get_preferred_width(GTK_WIDGET(child), minimal_width, natural_width); @@ -105,14 +104,18 @@ static void sp_button_get_preferred_width(GtkWidget *widget, gint *minimal_width *natural_width = 0; } - *minimal_width += 2 + 2 * MAX(2, style->xthickness); - *natural_width += 2 + 2 * MAX(2, style->xthickness); + GtkStyleContext *context = gtk_widget_get_style_context (widget); + GtkBorder padding; + + gtk_style_context_get_border(context, static_cast(0), &padding); + + *minimal_width += 2 + 2 * MAX(2, padding.left + padding.right); + *natural_width += 2 + 2 * MAX(2, padding.left + padding.right); } static void sp_button_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height) { GtkWidget *child = gtk_bin_get_child(GTK_BIN(widget)); - GtkStyle *style = gtk_widget_get_style(widget); if (child) { gtk_widget_get_preferred_height(GTK_WIDGET(child), minimal_height, natural_height); @@ -121,8 +124,13 @@ static void sp_button_get_preferred_height(GtkWidget *widget, gint *minimal_heig *natural_height = 0; } - *minimal_height += 2 + 2 * MAX(2, style->ythickness); - *natural_height += 2 + 2 * MAX(2, style->ythickness); + GtkStyleContext *context = gtk_widget_get_style_context (widget); + GtkBorder padding; + + gtk_style_context_get_border(context, static_cast(0), &padding); + + *minimal_height += 2 + 2 * MAX(2, padding.top + padding.bottom); + *natural_height += 2 + 2 * MAX(2, padding.top + padding.bottom); } #else static void sp_button_size_request(GtkWidget *widget, GtkRequisition *requisition) -- cgit v1.2.3