]> Dogcows Code - chaz/openbox/blobdiff - openbox/menuframe.c
cache pipe menus until the menus close
[chaz/openbox] / openbox / menuframe.c
index 813354cdb03b29b385f024c70411315f7f7fafec..fa9e8e9d9ab1ab59e1c93a9670f2615c663232e2 100644 (file)
@@ -499,8 +499,8 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
             self->entry->data.normal.icon_width;
         self->a_icon->texture[0].data.rgba.height =
             self->entry->data.normal.icon_height;
-        /* XXX determine this from iconic window */
-        self->a_icon->texture[0].data.rgba.width = 0xff;
+        self->a_icon->texture[0].data.rgba.alpha =
+            self->entry->data.normal.icon_alpha;
         self->a_icon->texture[0].data.rgba.data =
             self->entry->data.normal.icon_data;
         self->a_icon->surface.parent = item_a;
@@ -1058,6 +1058,8 @@ void menu_frame_hide_all()
     }
     if ((it = g_list_last(menu_frame_visible)))
         menu_frame_hide(it->data);
+
+    menu_clear_pipe_caches();
 }
 
 void menu_frame_hide_all_client(ObClient *client)
@@ -1068,6 +1070,8 @@ void menu_frame_hide_all_client(ObClient *client)
         if (f->client == client)
             menu_frame_hide(f);
     }
+
+    menu_clear_pipe_caches();
 }
 
 
This page took 0.024088 seconds and 4 git commands to generate.