From 9e26fa9a42d0cb9ae55f630497d2a0a051da7d55 Mon Sep 17 00:00:00 2001 From: Paolo Borelli Date: Sun, 5 Jul 2015 10:48:40 +0200 Subject: [PATCH] entry: add css letter-spacing --- gtk/gtkentry.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c index d8a6496bea..af876dbca4 100644 --- a/gtk/gtkentry.c +++ b/gtk/gtkentry.c @@ -47,6 +47,7 @@ #include "gtkmarshalers.h" #include "gtkmenu.h" #include "gtkmenuitem.h" +#include "gtkpango.h" #include "gtkseparatormenuitem.h" #include "gtkselection.h" #include "gtksettings.h" @@ -6250,7 +6251,9 @@ gtk_entry_create_layout (GtkEntry *entry, { GtkEntryPrivate *priv = entry->priv; GtkWidget *widget = GTK_WIDGET (entry); + GtkStyleContext *context; PangoLayout *layout; + PangoAttrList *style_attrs; PangoAttrList *tmp_attrs; gboolean placeholder_layout; @@ -6261,11 +6264,18 @@ gtk_entry_create_layout (GtkEntry *entry, gchar *display_text; guint n_bytes; + context = gtk_widget_get_style_context (widget); + layout = gtk_widget_create_pango_layout (widget, NULL); pango_layout_set_single_paragraph_mode (layout, TRUE); - tmp_attrs = priv->attrs ? pango_attr_list_ref (priv->attrs) - : pango_attr_list_new (); + style_attrs = _gtk_style_context_get_pango_attributes (context); + tmp_attrs = style_attrs ? style_attrs : pango_attr_list_new (); + + if (priv->attrs) + { + _gtk_pango_attr_list_merge (tmp_attrs, priv->attrs); + } placeholder_layout = show_placeholder_text (entry); if (placeholder_layout)