diff options
author | Christian Persch <chpe@cvs.gnome.org> | 2006-12-18 20:35:02 +0800 |
---|---|---|
committer | Christian Persch <chpe@src.gnome.org> | 2006-12-18 20:35:02 +0800 |
commit | bf6e7073bb05741c865cf9efee9ec387acdee4b9 (patch) | |
tree | 75422120e4a01aae82d4e337024df589b10981b1 /lib/widgets/ephy-location-entry.c | |
parent | 436f6e9686a7ae31883c8bd2e30cf76853141a9a (diff) | |
download | gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.tar gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.tar.gz gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.tar.bz2 gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.tar.lz gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.tar.xz gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.tar.zst gsoc2013-epiphany-bf6e7073bb05741c865cf9efee9ec387acdee4b9.zip |
Show favicons in location entry drop-down. Bug #112748, patch by Diego
2006-12-18 Christian Persch <chpe@cvs.gnome.org>
* lib/widgets/ephy-location-entry.c:
(ephy_location_entry_set_completion):
* lib/widgets/ephy-location-entry.h:
* src/ephy-completion-model.c:
(ephy_completion_model_get_column_type), (init_favicon_col),
(ephy_completion_model_get_value):
* src/ephy-completion-model.h:
* src/ephy-location-action.c: (connect_proxy):
Show favicons in location entry drop-down. Bug #112748, patch by Diego
Escalante Urrelo.
Diffstat (limited to 'lib/widgets/ephy-location-entry.c')
-rw-r--r-- | lib/widgets/ephy-location-entry.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/widgets/ephy-location-entry.c b/lib/widgets/ephy-location-entry.c index 77f5d7514..0455786ea 100644 --- a/lib/widgets/ephy-location-entry.c +++ b/lib/widgets/ephy-location-entry.c @@ -40,6 +40,7 @@ #include <gtk/gtkentry.h> #include <gtk/gtkwindow.h> #include <gtk/gtkcellrenderertext.h> +#include <gtk/gtkcellrendererpixbuf.h> #include <gtk/gtkcelllayout.h> #include <gtk/gtktreemodelsort.h> #include <gtk/gtkstock.h> @@ -76,6 +77,7 @@ struct _EphyLocationEntryPrivate guint keywords_col; guint relevance_col; guint extra_col; + guint favicon_col; guint hash; @@ -999,18 +1001,20 @@ ephy_location_entry_set_completion (EphyLocationEntry *le, guint action_col, guint keywords_col, guint relevance_col, - guint extra_col) + guint extra_col, + guint favicon_col) { EphyLocationEntryPrivate *priv = le->priv; GtkTreeModel *sort_model; GtkEntryCompletion *completion; - GtkCellRenderer *cell, *extracell; + GtkCellRenderer *cell, *extracell, *iconcell; le->priv->text_col = text_col; le->priv->action_col = action_col; le->priv->keywords_col = keywords_col; le->priv->relevance_col = relevance_col; le->priv->extra_col = extra_col; + le->priv->favicon_col = favicon_col; sort_model = gtk_tree_model_sort_new_with_model (model); g_object_unref (model); @@ -1027,6 +1031,13 @@ ephy_location_entry_set_completion (EphyLocationEntry *le, g_signal_connect_after (completion, "action-activated", G_CALLBACK (action_activated_after_cb), le); + iconcell = gtk_cell_renderer_pixbuf_new (); + + gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (completion), + iconcell, FALSE); + gtk_cell_layout_add_attribute (GTK_CELL_LAYOUT (completion), + iconcell, "pixbuf", favicon_col); + cell = gtk_cell_renderer_text_new (); g_object_set (cell, "ellipsize", PANGO_ELLIPSIZE_END, |