Mouseemu swallows events for extended keyboard keys, e.g. multimedia keys

Bug #362500 reported by Vitaly Zawullon Katraev
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
mouseemu (Ubuntu)
Confirmed
Undecided
Lissanro Rayen

Bug Description

Hardware:
Intel iMac (2007,1)
Two Wireless Keyboard+Mouse devices (Genius LuxeMate 3000 and Genius TwinTouch LuxeMate Pro)

Multimedia keys works status:
Ubuntu 9.04 - not works on clean install
Ubuntu 8.10 - not works before replug reciver on clean install, but works propertly after ubgrade from 8.04
Ubuntu 8.04 and older - works propertly

Solution: remove mouseemu package (installed by default). After this all multimedia keys works propertly.

hal-devise output for mouseemu:
7: udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_4'
  info.capabilities = { 'input', 'input.keyboard', 'input.keypad', 'input.keys', 'button' } (string list)
  input.x11_driver = 'evdev' (string)
  input.xkb.variant = ',' (string)
  info.callouts.add = { 'debian-setup-keyboard' } (string list)
  info.category = 'input' (string)
  input.xkb.options = 'grp:alt_shift_toggle,grp_led:scroll' (string)
  linux.sysfs_path = '/sys/devices/virtual/input/input10/event10' (string)
  info.product = 'Mouseemu virtual keyboard' (string)
  info.parent = '/org/freedesktop/Hal/devices/computer' (string)
  info.subsystem = 'input' (string)
  info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_4' (string)
  input.device = '/dev/input/event10' (string)
  input.product = 'Mouseemu virtual keyboard' (string)
  info.addons.singleton = { 'hald-addon-input' } (string list)
  input.xkb.rules = 'evdev' (string)
  linux.device_file = '/dev/input/event10' (string)
  input.xkb.model = 'pc105' (string)
  linux.hotplug_type = 2 (0x2) (int)
  linux.subsystem = 'input' (string)
  input.xkb.layout = 'us,ru' (string)

lsusb for TwinTouch LuxeMate Pro:
  Bus 004 Device 002: ID 0458:0048 KYE Systems Corp. (Mouse Systems)

Tags: patch
affects: ubuntu → mouseemu (Ubuntu)
Revision history for this message
Jo Shields (directhex) wrote :

It appears that this bug is indeed the case - perhaps there needs to be some copypasta from the "support all mouse buttons" code Colin recently added so Mouseemu can support all keyboard buttons?

Changed in mouseemu (Ubuntu):
status: New → Confirmed
summary: - Multimedia keys not works on iMac with Genius Wireless Keyboard+Mouse
+ Mouseemu swallows events for extended keyboard keys, e.g. multimedia
+ keys
Revision history for this message
Jo Shields (directhex) wrote :
Download full text (7.8 KiB)

Oh, interesting, it's not *quite* the same bug

Can one of the reporters please paste the contents of /proc/bus/input/devices ? On this Logitech keyboard, there's a slightly odd scenario:

There are TWO devices, event3 and event4.

Event3:
Input device name: "Logitech Logitech Illuminated Keyboard"
Supported events:
  Event type 0 (Sync)
  Event type 1 (Key)
    Event code 1 (Esc)
    Event code 2 (1)
    Event code 3 (2)
    Event code 4 (3)
    Event code 5 (4)
    Event code 6 (5)
    Event code 7 (6)
    Event code 8 (7)
    Event code 9 (8)
    Event code 10 (9)
    Event code 11 (0)
    Event code 12 (Minus)
    Event code 13 (Equal)
    Event code 14 (Backspace)
    Event code 15 (Tab)
    Event code 16 (Q)
    Event code 17 (W)
    Event code 18 (E)
    Event code 19 (R)
    Event code 20 (T)
    Event code 21 (Y)
    Event code 22 (U)
    Event code 23 (I)
    Event code 24 (O)
    Event code 25 (P)
    Event code 26 (LeftBrace)
    Event code 27 (RightBrace)
    Event code 28 (Enter)
    Event code 29 (LeftControl)
    Event code 30 (A)
    Event code 31 (S)
    Event code 32 (D)
    Event code 33 (F)
    Event code 34 (G)
    Event code 35 (H)
    Event code 36 (J)
    Event code 37 (K)
    Event code 38 (L)
    Event code 39 (Semicolon)
    Event code 40 (Apostrophe)
    Event code 41 (Grave)
    Event code 42 (LeftShift)
    Event code 43 (BackSlash)
    Event code 44 (Z)
    Event code 45 (X)
    Event code 46 (C)
    Event code 47 (V)
    Event code 48 (B)
    Event code 49 (N)
    Event code 50 (M)
    Event code 51 (Comma)
    Event code 52 (Dot)
    Event code 53 (Slash)
    Event code 54 (RightShift)
    Event code 55 (KPAsterisk)
    Event code 56 (LeftAlt)
    Event code 57 (Space)
    Event code 58 (CapsLock)
    Event code 59 (F1)
    Event code 60 (F2)
    Event code 61 (F3)
    Event code 62 (F4)
    Event code 63 (F5)
    Event code 64 (F6)
    Event code 65 (F7)
    Event code 66 (F8)
    Event code 67 (F9)
    Event code 68 (F10)
    Event code 69 (NumLock)
    Event code 70 (ScrollLock)
    Event code 71 (KP7)
    Event code 72 (KP8)
    Event code 73 (KP9)
    Event code 74 (KPMinus)
    Event code 75 (KP4)
    Event code 76 (KP5)
    Event code 77 (KP6)
    Event code 78 (KPPlus)
    Event code 79 (KP1)
    Event code 80 (KP2)
    Event code 81 (KP3)
    Event code 82 (KP0)
    Event code 83 (KPDot)
    Event code 85 (Zenkaku/Hankaku)
    Event code 86 (102nd)
    Event code 87 (F11)
    Event code 88 (F12)
    Event code 89 (RO)
    Event code 90 (Katakana)
    Event code 91 (HIRAGANA)
    Event code 92 (Henkan)
    Event code 93 (Katakana/Hiragana)
    Event code 94 (Muhenkan)
    Event code 95 (KPJpComma)
    Event code 96 (KPEnter)
    Event code 97 (RightCtrl)
    Event code 98 (KPSlash)
    Event code 99 (SysRq)
    Event code 100 (RightAlt)
    Event code 102 (Home)
    Event code 103 (Up)
    Event code 104 (PageUp)
    Event code 105 (Left)
    Event code 106 (Right)
    Event code 107 (End)
    Event code 108 (Down)
    Event code 109 (PageDown)
    Event code 110 (Insert)
    Event code 111 (Delete)
    Event code 113 (Mute)
    Event code 114 (VolumeDown)
    Event code 115 (VolumeUp)
    Event code ...

Read more...

Revision history for this message
Jo Shields (directhex) wrote :

To confirm, this behaviour is identical on a "Microsoft Natural� Ergonomic Keyboard 4000", right down to having two /dev/input/event* device nodes where the second one (which mouseemu doesn't touch) handles all advanced key presses

Revision history for this message
Lissanro Rayen (lissanro) wrote :

I have attached dpatch to fix this bug. If you want to use it you need to put it in debian/patches and add the patch to 00list then run dpkg-buildpackage -b.

This patch adds real support for multimedia keys, so you actually can use them for right or middle-click for example (or use them as usually). Now I finally can use my large button-less touchpad only and forget about mouse. My problem was that my touchpad is unable to send middle-click or perform right-click-drag'n'drop and this motivated me to fix this bug. Now I can use multimedia key on my keyboard for sending middle-click and another multimedia key for right-click (for doing drag'n'drop with right "mouse" button). And of course use all other multimedia keys, mouseemu does not "swollow" them anymore (with my patch applied).

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "Not all keyboards have EV_REP set so ignore it" of this bug report has been identified as being a patch. The ubuntu-reviewers team has been subscribed to the bug report so that they can review the patch. In the event that this is in fact not a patch you can resolve this situation by removing the tag 'patch' from the bug report and editing the attachment so that it is not flagged as a patch. Additionally, if you are member of the ubuntu-reviewers team please also unsubscribe the team from this bug report.

[This is an automated message performed by a Launchpad user owned by Brian Murray. Please contact him regarding any issues with the action taken in this bug report.]

tags: added: patch
Changed in mouseemu (Ubuntu):
assignee: nobody → L. Rayhen (research-c)
Revision history for this message
Lissanro Rayen (lissanro) wrote :

The bug is still present. Is there anything wrong with the patch or ubuntu-reviewers team just missed it?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.