Changes in uspace/srv/hid/display/seat.c [1543d4c:3e7e226] in mainline
- File:
-
- 1 edited
-
uspace/srv/hid/display/seat.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/display/seat.c
r1543d4c r3e7e226 88 88 seat->client_cursor = display->cursor[dcurs_arrow]; 89 89 seat->wm_cursor = NULL; 90 seat->focus = ds_display_first_window(display);91 90 92 91 *rseat = seat; … … 205 204 206 205 /* Find alternate window that is neither system nor minimized */ 207 nwnd = ds_window_find_ prev(wnd, ~(wndf_minimized | wndf_system));206 nwnd = ds_window_find_alt(wnd, ~(wndf_minimized | wndf_system)); 208 207 209 208 if (nwnd == NULL) { 210 209 /* Find alternate window that is not minimized */ 211 nwnd = ds_window_find_ prev(wnd, ~wndf_minimized);210 nwnd = ds_window_find_alt(wnd, ~wndf_minimized); 212 211 } 213 212 … … 224 223 ds_window_t *nwnd; 225 224 226 if (seat->focus != NULL) { 227 /* Find alternate window that is not a system window */ 228 nwnd = ds_window_find_next(seat->focus, ~wndf_system); 229 } else { 230 /* Currently no focus. Focus topmost window. */ 231 nwnd = ds_display_first_window(seat->display); 232 } 225 /* Find alternate window that is not a system window */ 226 nwnd = ds_window_find_alt(seat->focus, ~wndf_system); 233 227 234 228 /* Only switch focus if there is another window */ … … 515 509 wnd = ds_display_window_by_pos(seat->display, &seat->pntpos); 516 510 511 /* Click outside popup window */ 512 if (event->type == POS_PRESS && wnd != seat->popup) { 513 /* Close popup window */ 514 ds_seat_set_popup(seat, NULL); 515 } 516 517 517 /* Deliver event to popup window. */ 518 if (seat->popup != NULL && event->type != POS_PRESS) {518 if (seat->popup != NULL) { 519 519 rc = ds_window_post_pos_event(seat->popup, event); 520 520 if (rc != EOK) … … 540 540 * to the same window above. 541 541 */ 542 if (wnd != seat->popup || event->type == POS_PRESS) {542 if (wnd != seat->popup) { 543 543 rc = ds_window_post_pos_event(wnd, event); 544 544 if (rc != EOK) … … 550 550 } 551 551 552 /* Click outside popup window */553 if (event->type == POS_PRESS && wnd != seat->popup) {554 /* Close popup window */555 ds_seat_set_popup(seat, NULL);556 }557 558 552 return EOK; 559 553 }
Note:
See TracChangeset
for help on using the changeset viewer.
