Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 8a99c7e in mainline for uspace/srv/hid/console/console.c


Ignore:
Timestamp:
2012-08-15T14:13:25Z (9 years ago)
Author:
Martin Sucha <sucha14@…>
Branches:
lfn, master
Children:
1499564
Parents:
a987832
Message:

Add basic support for absolute mouse/pointing devices.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hid/console/console.c

    ra987832 r8a99c7e  
    383383       
    384384        fb_pointer_update(fb_sess, mouse.x, mouse.y, true);
     385}
     386
     387static void cons_mouse_abs_move(sysarg_t x, sysarg_t y,
     388    sysarg_t max_x, sysarg_t max_y)
     389{
     390        if (max_x && max_y) {
     391                mouse.x = limit(x * xres / max_x, 0, xres);
     392                mouse.y = limit(y * yres / max_y, 0, yres);
     393               
     394                fb_pointer_update(fb_sess, mouse.x, mouse.y, true);
     395        }
    385396}
    386397
     
    503514                        async_answer_0(callid, EOK);
    504515                        break;
     516                case INPUT_EVENT_ABS_MOVE:
     517                        cons_mouse_abs_move(IPC_GET_ARG1(call), IPC_GET_ARG2(call),
     518                            IPC_GET_ARG3(call), IPC_GET_ARG4(call));
     519                        async_answer_0(callid, EOK);
     520                        break;
    505521                case INPUT_EVENT_BUTTON:
    506522                        /* Got pointer button press/release event */
Note: See TracChangeset for help on using the changeset viewer.