Changeset d92b8e8f in mainline for uspace/lib
- Timestamp:
- 2024-03-04T14:12:26Z (17 months ago)
- Branches:
- master
- Children:
- e229148
- Parents:
- ee3b28a9
- git-author:
- Jiri Svoboda <jiri@…> (2024-03-03 18:12:02)
- git-committer:
- Jiri Svoboda <jiri@…> (2024-03-04 14:12:26)
- Location:
- uspace/lib/ui
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/include/ui/menu.h
ree3b28a9 rd92b8e8f 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 59 59 extern ui_evclaim_t ui_menu_pos_event(ui_menu_t *, gfx_coord2_t *, 60 60 pos_event_t *); 61 extern sysarg_t ui_menu_get_idev_id(ui_menu_t *); 61 62 62 63 #endif -
uspace/lib/ui/include/ui/popup.h
ree3b28a9 rd92b8e8f 1 1 /* 2 * Copyright (c) 202 1Jiri Svoboda2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 54 54 extern ui_resource_t *ui_popup_get_res(ui_popup_t *); 55 55 extern gfx_context_t *ui_popup_get_gc(ui_popup_t *); 56 extern sysarg_t ui_popup_get_idev_id(ui_popup_t *); 56 57 57 58 #endif -
uspace/lib/ui/private/menu.h
ree3b28a9 rd92b8e8f 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 70 70 /** Callback argument */ 71 71 void *arg; 72 /** ID of device that activated entry */ 73 sysarg_t idev_id; 72 74 }; 73 75 -
uspace/lib/ui/private/popup.h
ree3b28a9 rd92b8e8f 1 1 /* 2 * Copyright (c) 202 1Jiri Svoboda2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 58 58 /** Placement rectangle */ 59 59 gfx_rect_t place; 60 /** ID of device that sent input event */ 61 sysarg_t idev_id; 60 62 }; 61 63 -
uspace/lib/ui/src/menu.c
ree3b28a9 rd92b8e8f 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 578 578 ui_menu_t *menu = (ui_menu_t *)arg; 579 579 580 menu->idev_id = ui_popup_get_idev_id(menu->popup); 580 581 ui_menu_kbd_event(menu, event); 581 582 } … … 592 593 gfx_coord2_t spos; 593 594 595 menu->idev_id = ui_popup_get_idev_id(menu->popup); 596 594 597 spos.x = 0; 595 598 spos.y = 0; … … 641 644 } 642 645 646 /** Get ID of last device that input event. 647 * 648 * @param menu Menu 649 * @return Input device ID 650 */ 651 sysarg_t ui_menu_get_idev_id(ui_menu_t *menu) 652 { 653 return menu->idev_id; 654 } 655 643 656 /** @} 644 657 */ -
uspace/lib/ui/src/popup.c
ree3b28a9 rd92b8e8f 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 190 190 } 191 191 192 /** Get ID of device that sent the last position event. 193 * 194 * @param popup Popup window 195 * @return Input device ID 196 */ 197 sysarg_t ui_popup_get_idev_id(ui_popup_t *popup) 198 { 199 return popup->idev_id; 200 } 201 192 202 /** Handle close event in popup window. 193 203 * … … 214 224 ui_popup_t *popup = (ui_popup_t *)arg; 215 225 226 /* Remember ID of device that sent the last event */ 227 popup->idev_id = event->kbd_id; 228 216 229 if (popup->cb != NULL && popup->cb->kbd != NULL) 217 230 popup->cb->kbd(popup, popup->arg, event); … … 229 242 ui_popup_t *popup = (ui_popup_t *)arg; 230 243 244 /* Remember ID of device that sent the last event */ 245 popup->idev_id = event->pos_id; 246 231 247 if (popup->cb != NULL && popup->cb->pos != NULL) 232 248 popup->cb->pos(popup, popup->arg, event);
Note:
See TracChangeset
for help on using the changeset viewer.