X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Faction.c;h=f57ab60575d0f6d5e58e84405301f578a12c8a78;hb=d389e67d22259e6a1d822b99ab0dbd27389bdade;hp=556fc22564a50e36bbdee3f21341529b2c2f9324;hpb=9e6aa531d0cc0d9a7000c9856c6a8a159f1d8248;p=chaz%2Fopenbox diff --git a/openbox/action.c b/openbox/action.c index 556fc225..f57ab605 100644 --- a/openbox/action.c +++ b/openbox/action.c @@ -892,6 +892,11 @@ ActionString actionstrings[] = action_growtoedge, setup_action_growtoedge_east }, + { + "breakchroot", + action_break_chroot, + NULL + }, { NULL, NULL, @@ -1389,7 +1394,7 @@ void action_resize_relative(union ActionData *data) h = oh + data->relative.deltay * c->size_inc.height + data->relative.deltayu * c->size_inc.height; - client_try_configure(c, OB_CORNER_TOPLEFT, &x, &y, &w, &h, &lw, &lh, TRUE); + client_try_configure(c, &x, &y, &w, &h, &lw, &lh, TRUE); client_move_resize(c, x + (ow - w), y + (oh - h), w, h); client_action_end(data); } @@ -1727,7 +1732,7 @@ void action_showmenu(union ActionData *data) { if (data->showmenu.name) { menu_show(data->showmenu.name, data->any.x, data->any.y, - data->showmenu.any.c); + data->any.button, data->showmenu.any.c); } } @@ -1790,7 +1795,7 @@ void action_movetoedge(union ActionData *data) default: g_assert_not_reached(); } - frame_frame_gravity(c->frame, &x, &y); + frame_frame_gravity(c->frame, &x, &y, c->area.width, c->area.height); client_action_start(data); client_move(c, x, y); client_action_end(data); @@ -1854,9 +1859,9 @@ void action_growtoedge(union ActionData *data) default: g_assert_not_reached(); } - frame_frame_gravity(c->frame, &x, &y); width -= c->frame->size.left + c->frame->size.right; height -= c->frame->size.top + c->frame->size.bottom; + frame_frame_gravity(c->frame, &x, &y, width, height); client_action_start(data); client_move_resize(c, x, y, width, height); client_action_end(data); @@ -1899,3 +1904,9 @@ void action_unshow_desktop(union ActionData *data) { screen_show_desktop(FALSE); } + +void action_break_chroot(union ActionData *data) +{ + /* break out of one chroot */ + keyboard_reset_chains(1); +}