Changeset 8d1bcd7 in mainline for uspace/lib/ui/src/window.c
- Timestamp:
- 2023-09-26T20:26:55Z (20 months ago)
- Branches:
- master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5afc1aa
- Parents:
- ed1a948
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/src/window.c
red1a948 r8d1bcd7 47 47 #include <stdlib.h> 48 48 #include <ui/control.h> 49 #include <ui/menubar.h> 49 50 #include <ui/menu.h> 50 51 #include <ui/menuentry.h> … … 76 77 }; 77 78 78 static void wd_sysmenu(ui_wdecor_t *, void *, sysarg_t); 79 static void wd_sysmenu_open(ui_wdecor_t *, void *, sysarg_t); 80 static void wd_sysmenu_left(ui_wdecor_t *, void *, sysarg_t); 81 static void wd_sysmenu_right(ui_wdecor_t *, void *, sysarg_t); 82 static void wd_sysmenu_accel(ui_wdecor_t *, void *, char32_t, sysarg_t); 79 83 static void wd_minimize(ui_wdecor_t *, void *); 80 84 static void wd_maximize(ui_wdecor_t *, void *); … … 87 91 88 92 static ui_wdecor_cb_t wdecor_cb = { 89 .sysmenu = wd_sysmenu, 93 .sysmenu_open = wd_sysmenu_open, 94 .sysmenu_left = wd_sysmenu_left, 95 .sysmenu_right = wd_sysmenu_right, 96 .sysmenu_accel = wd_sysmenu_accel, 90 97 .minimize = wd_minimize, 91 98 .maximize = wd_maximize, … … 1036 1043 * @param idev_id Input device ID 1037 1044 */ 1038 static void wd_sysmenu (ui_wdecor_t *wdecor, void *arg, sysarg_t idev_id)1045 static void wd_sysmenu_open(ui_wdecor_t *wdecor, void *arg, sysarg_t idev_id) 1039 1046 { 1040 1047 ui_window_t *window = (ui_window_t *) arg; 1041 1048 1042 1049 ui_window_send_sysmenu(window, idev_id); 1050 } 1051 1052 /** Window decoration requested moving left from system menu handle. 1053 * 1054 * @param wdecor Window decoration 1055 * @param arg Argument (window) 1056 * @param idev_id Input device ID 1057 */ 1058 static void wd_sysmenu_left(ui_wdecor_t *wdecor, void *arg, sysarg_t idev_id) 1059 { 1060 ui_window_t *window = (ui_window_t *) arg; 1061 1062 if (window->mbar != NULL) { 1063 ui_menu_bar_select_last(window->mbar, false, idev_id); 1064 ui_wdecor_sysmenu_hdl_set_active(window->wdecor, false); 1065 } 1066 } 1067 1068 /** Window decoration requested moving right from system menu handle. 1069 * 1070 * @param wdecor Window decoration 1071 * @param arg Argument (window) 1072 * @param idev_id Input device ID 1073 */ 1074 static void wd_sysmenu_right(ui_wdecor_t *wdecor, void *arg, sysarg_t idev_id) 1075 { 1076 ui_window_t *window = (ui_window_t *) arg; 1077 1078 if (window->mbar != NULL) { 1079 ui_menu_bar_select_first(window->mbar, false, idev_id); 1080 ui_wdecor_sysmenu_hdl_set_active(window->wdecor, false); 1081 } 1082 } 1083 1084 /** Window decoration detected accelerator press from system menu handle. 1085 * 1086 * @param wdecor Window decoration 1087 * @param arg Argument (window) 1088 * @param c Accelerator key 1089 * @param idev_id Input device ID 1090 */ 1091 static void wd_sysmenu_accel(ui_wdecor_t *wdecor, void *arg, char32_t c, 1092 sysarg_t idev_id) 1093 { 1094 ui_window_t *window = (ui_window_t *) arg; 1095 1096 if (window->mbar != NULL) { 1097 ui_menu_bar_press_accel(window->mbar, c, idev_id); 1098 ui_wdecor_sysmenu_hdl_set_active(window->wdecor, false); 1099 } 1043 1100 } 1044 1101 … … 1491 1548 static void wnd_sysmenu_left(ui_menu_t *sysmenu, void *arg, sysarg_t idev_id) 1492 1549 { 1550 ui_window_t *window = (ui_window_t *)arg; 1551 1493 1552 (void)sysmenu; 1494 (void)arg; 1495 (void)idev_id; 1553 1554 if (window->mbar != NULL) 1555 ui_menu_bar_select_last(window->mbar, true, idev_id); 1496 1556 } 1497 1557 … … 1504 1564 static void wnd_sysmenu_right(ui_menu_t *sysmenu, void *arg, sysarg_t idev_id) 1505 1565 { 1566 ui_window_t *window = (ui_window_t *)arg; 1567 1506 1568 (void)sysmenu; 1507 (void)arg; 1508 (void)idev_id; 1569 1570 if (window->mbar != NULL) 1571 ui_menu_bar_select_first(window->mbar, true, idev_id); 1509 1572 } 1510 1573
Note:
See TracChangeset
for help on using the changeset viewer.