mirror of
https://github.com/labwc/labwc.git
synced 2026-02-20 01:40:22 -05:00
Add window menu
This commit is contained in:
parent
4bc8726abd
commit
759b26b5c1
12 changed files with 108 additions and 11 deletions
16
src/cursor.c
16
src/cursor.c
|
|
@ -183,7 +183,15 @@ process_cursor_motion(struct server *server, uint32_t time)
|
|||
process_cursor_resize(server, time);
|
||||
return;
|
||||
} else if (server->input_mode == LAB_INPUT_STATE_MENU) {
|
||||
menu_set_selected(server->rootmenu,
|
||||
struct menu *menu = NULL;
|
||||
if (server->rootmenu->visible) {
|
||||
menu = server->rootmenu;
|
||||
} else if (server->windowmenu->visible) {
|
||||
menu = server->windowmenu;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
menu_set_selected(menu,
|
||||
server->seat.cursor->x, server->seat.cursor->y);
|
||||
damage_all_outputs(server);
|
||||
return;
|
||||
|
|
@ -615,7 +623,11 @@ cursor_button(struct wl_listener *listener, void *data)
|
|||
}
|
||||
|
||||
if (server->input_mode == LAB_INPUT_STATE_MENU) {
|
||||
menu_action_selected(server, server->rootmenu);
|
||||
if (server->rootmenu->visible) {
|
||||
menu_action_selected(server, server->rootmenu);
|
||||
} else if (server->windowmenu->visible) {
|
||||
menu_action_selected(server, server->windowmenu);
|
||||
}
|
||||
server->input_mode = LAB_INPUT_STATE_PASSTHROUGH;
|
||||
cursor_rebase(&server->seat, event->time_msec);
|
||||
return;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue