]> Dogcows Code - chaz/openbox/blobdiff - plugins/menu/client_menu.c
put the render theme into a struct
[chaz/openbox] / plugins / menu / client_menu.c
index 2578129ec393a3933ab959154ebb555e0d0a402c..7e15f3f9c5db0978995a009675abdfad91bab5ca 100644 (file)
@@ -7,6 +7,8 @@
 
 #include "kernel/frame.h"
 
+#include "render/theme.h"
+
 static char *PLUGIN_NAME = "client_menu";
 
 static Menu *send_to_menu;
@@ -45,14 +47,15 @@ void client_menu_show(Menu *self, int x, int y, Client *client)
     g_assert(!self->invalid);
     g_assert(client);
     
-    newy = client->frame->area.y + client->frame->a_focused_title->area.height;
+    newy = MAX(client->frame->area.y + client->frame->size.top, y);
+    newy -= ob_rr_theme->bwidth;
     
-    XMoveWindow(ob_display, self->frame, 
-               MIN(x, screen_physical_size.width - self->size.width), 
-               MIN(newy, screen_physical_size.height - self->size.height));
     POINT_SET(self->location, 
-             MIN(x, screen_physical_size.width - self->size.width), 
-             MIN(newy, screen_physical_size.height - self->size.height));
+             MIN(x, screen_physical_size.width - self->size.width -
+                  ob_rr_theme->bwidth * 2), 
+             MIN(newy, screen_physical_size.height - self->size.height -
+                  ob_rr_theme->bwidth * 2));
+    XMoveWindow(ob_display, self->frame, self->location.x, self->location.y);
 
     if (!self->shown) {
        XMapWindow(ob_display, self->frame);
@@ -91,6 +94,8 @@ void *plugin_create() /* TODO: need config */
                                      action_from_string("toggleshade")));
     menu_add_entry(m, menu_entry_new("Omnipresent",
                                      action_from_string("toggleomnipresent")));
+    menu_add_entry(m, menu_entry_new("Decorations",
+                                     action_from_string("toggledecorations")));
     menu_add_entry(m, menu_entry_new_submenu("Layers",
                                              layer_menu));
     layer_menu->parent = m;
This page took 0.022739 seconds and 4 git commands to generate.