Merge lp:~bratsche/appmenu-gtk/icons into lp:appmenu-gtk/0.4
Proposed by
Cody Russell
Status: | Merged | ||||
---|---|---|---|---|---|
Merged at revision: | 53 | ||||
Proposed branch: | lp:~bratsche/appmenu-gtk/icons | ||||
Merge into: | lp:appmenu-gtk/0.4 | ||||
Diff against target: |
145 lines (+114/-0) 1 file modified
src/bridge.c (+114/-0) |
||||
To merge this branch: | bzr merge lp:~bratsche/appmenu-gtk/icons | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Ted Gould (community) | Approve | ||
Review via email: mp+29147@code.launchpad.net |
To post a comment you must log in.
The only thing that I'd say is that for the bug, I think we need to menuitem_ property_ set_image( ). I'm not sure if we want all
handle bitmap items as well. That can be done with using
dbusmenu_
that in one merge request or not, I'll let you choose :)
review approve
On Sat, 2010-07-03 at 13:31 +0000, Cody Russell wrote: /bugs.launchpad .net/bugs/ 598528 get_ancestor (GTK_WIDGET (image), IMAGE_MENU_ ITEM); get_settings (item); menu_item_ get_always_ show_image (GTK_IMAGE_ MENU_ITEM (item)); val_if_ fail (GTK_IS_IMAGE (widget), FALSE); get_storage_ type (image) != GTK_IMAGE_STOCK) >data.stock. stock_id, &stock); menuitem_ property_ set (menuitem, MENUITEM_ PROP_ICON_ NAME, data.stock. stock_id) ; menuitem_ property_ remove (menuitem, MENUITEM_ PROP_ICON_ NAME); menuitem_ property_ get (menuitem, MENUITEM_ PROP_LABEL) ; menuitem_ property_ set (menuitem, MENUITEM_ PROP_LABEL, get_storage_ type (image) != GTK_IMAGE_ ICON_NAME) menuitem_ property_ set (menuitem, MENUITEM_ PROP_ICON_ NAME,
> Cody Russell has proposed merging lp:~bratsche/appmenu-gtk/icons into lp:appmenu-gtk.
>
> Requested reviews:
> Canonical Desktop Experience Team (canonical-dx-team)
> Related bugs:
> #598528 doesn't display icons
> https:/
>
> differences between files attachment (review-diff.txt)
> === modified file 'src/bridge.c'
> --- src/bridge.c 2010-07-02 18:03:46 +0000
> +++ src/bridge.c 2010-07-03 13:31:27 +0000
> @@ -372,6 +372,93 @@
> }
> }
>
> +static gboolean
> +should_show_image (GtkImage *image)
> +{
> + GtkWidget *item;
> +
> + item = gtk_widget_
> + GTK_TYPE_
> +
> + if (item)
> + {
> + GtkSettings *settings;
> + gboolean gtk_menu_images;
> +
> + settings = gtk_widget_
> +
> + g_object_get (settings, "gtk-menu-images", >k_menu_images, NULL);
> +
> + if (gtk_menu_images)
> + return TRUE;
> +
> + return gtk_image_
> + }
> +
> + return FALSE;
> +}
> +
> +static gboolean
> +update_stock_item (DbusmenuMenuitem *menuitem,
> + GtkWidget *widget)
> +{
> + GtkStockItem stock;
> + GtkImage *image;
> +
> + g_return_
> +
> + image = GTK_IMAGE (widget);
> +
> + if (gtk_image_
> + return FALSE;
> +
> + gtk_stock_lookup (image-
> +
> + if (should_show_image (image))
> + dbusmenu_
> + DBUSMENU_
> + image->
> + else
> + dbusmenu_
> + DBUSMENU_
> +
> + const gchar * label = dbusmenu_
> + DBUSMENU_
> +
> + if (stock.label != NULL && label != NULL)
> + {
> + dbusmenu_
> + DBUSMENU_
> + stock.label);
> +
> + return TRUE;
> + }
> +
> + return FALSE;
> +}
> +
> +static void
> +update_icon_name (DbusmenuMenuitem *menuitem,
> + GtkWidget *widget)
> +{
> + GtkImage *image;
> +
> + g_return_if_fail (GTK_IS_IMAGE (widget));
> +
> + image = GTK_IMAGE (widget);
> +
> + if (gtk_image_
> + return;
> +
> + if (should_show_image (image))
> + dbusmenu_
> + DBUSMENU_
> + ...