GNOME Bugzilla – Bug 87124
gkb applet on Intel causes "Enter" key to lose function
Last modified: 2009-08-15 18:40:50 UTC
Tested CVS build from 19th June in Intel Solaris (Dell Optiplex GX110) The gkb applet causes the "Return" key to lose its function on a Dell Optiplex GX110 machine - the function of "carriage return" is moved from the "Return" key to the "#" (hash) key (for anand it was moved to the \ key). This is only present on the Dell Optiplex GX110 - I also tried it on a gateway 2000 machine with no problems... What would cause this? What machine specific features does gkb applet depend on?
also see bug #78288 for more info
I believe that we dont have the appropriate keymap for the Dell m/c keyboard. We probably need the keymaps for the Sun PC keytables. Shane if i am correct, you are facing this only on switching to the US keyboard layout. Shane: Can you verify my observation by executing "kbd -t". If my guess is correct you would be getting "PC" as the output. The output of "xmodmap -pke" would also be useful, without the gkb- applet loaded (i.e, when the keyboard functionality is still the same)
Attaching the xmodmap files for Sun PC/AT 101 keyboards for countries Spain, France, Hungary, UK and US. Also attaching the changes to the Makefile.am in descs/ and xmodmap/ directories. Shane: Just verified on a Dell m/c running on Solaris Intel. The problem was that the xmodmap files for the keyboard is not present. On applying the patches you add the keyboard layout for you keyboard by Preferences->Add->English->United States->US PC/AT 101 keyboard.
Created attachment 9641 [details] tar.gz file which contains the keprop.in files and the xmodmap files
Created attachment 9642 [details] [review] Makefile changes for the new files
wow - sorry for not replying on this bug for ages - I must have missed it. What's the situation now?
Shane: can you paste the output to the commands that Shivram suggested?
Adding cc..
Hi shivram, kbd -t returned: PC xmodmap -pke returned: keycode 8 = grave asciitilde keycode 9 = 1 exclam keycode 10 = 2 at keycode 11 = 3 numbersign currency keycode 12 = 4 dollar currency keycode 13 = 5 percent keycode 14 = 6 asciicircum keycode 15 = 7 ampersand keycode 16 = 8 asterisk keycode 17 = 9 parenleft keycode 18 = 0 parenright keycode 19 = minus underscore keycode 20 = equal plus keycode 21 = keycode 22 = BackSpace keycode 23 = Tab keycode 24 = Q keycode 25 = W keycode 26 = e E currency keycode 27 = R keycode 28 = T keycode 29 = Y keycode 30 = U keycode 31 = I keycode 32 = O keycode 33 = P keycode 34 = bracketleft braceleft keycode 35 = bracketright braceright keycode 36 = backslash bar brokenbar keycode 37 = Caps_Lock keycode 38 = A keycode 39 = S keycode 40 = D keycode 41 = F keycode 42 = G keycode 43 = H keycode 44 = J keycode 45 = K keycode 46 = L keycode 47 = semicolon colon keycode 48 = apostrophe quotedbl keycode 49 = keycode 50 = Return keycode 51 = Shift_L keycode 52 = keycode 53 = Z keycode 54 = X keycode 55 = C keycode 56 = V keycode 57 = B keycode 58 = N keycode 59 = M keycode 60 = comma less keycode 61 = period greater keycode 62 = slash question keycode 63 = keycode 64 = Shift_R keycode 65 = Control_L keycode 66 = Meta_L keycode 67 = Alt_L keycode 68 = space keycode 69 = Alt_R keycode 70 = Meta_R keycode 71 = Control_R keycode 72 = Menu keycode 73 = keycode 74 = keycode 75 = keycode 76 = keycode 77 = keycode 78 = keycode 79 = keycode 80 = keycode 81 = keycode 82 = Insert keycode 83 = Delete keycode 84 = keycode 85 = keycode 86 = Left keycode 87 = Home keycode 88 = End keycode 89 = keycode 90 = Up keycode 91 = Down keycode 92 = Prior keycode 93 = Next keycode 94 = keycode 95 = keycode 96 = Right keycode 97 = Num_Lock keycode 98 = Home KP_7 KP_7 keycode 99 = Left KP_4 KP_4 keycode 100 = End KP_1 KP_1 keycode 101 = keycode 102 = KP_Divide keycode 103 = Up KP_8 KP_8 keycode 104 = KP_5 KP_5 KP_5 keycode 105 = Down KP_2 KP_2 keycode 106 = KP_Insert KP_0 KP_0 keycode 107 = KP_Multiply keycode 108 = Prior KP_9 KP_9 keycode 109 = Right KP_6 KP_6 keycode 110 = Next KP_3 KP_3 keycode 111 = Delete KP_Decimal KP_Decimal keycode 112 = KP_Subtract keycode 113 = KP_Add keycode 114 = keycode 115 = KP_Enter keycode 116 = keycode 117 = Escape keycode 118 = keycode 119 = F1 keycode 120 = F2 keycode 121 = F3 keycode 122 = F4 keycode 123 = F5 keycode 124 = F6 keycode 125 = F7 keycode 126 = F8 keycode 127 = F9 keycode 128 = F10 keycode 129 = SunF36 keycode 130 = SunF37 keycode 131 = Print SunSys_Req keycode 132 = Scroll_Lock keycode 133 = Pause Break keycode 134 = keycode 135 = Multi_key keycode 136 = Mode_switch
Like i guessed, you have a Sun US PC 101 keyboard. I had attached to this bug xmodmap files for countries Spain, France, Hungary, UK and US to start with. Applying the Makefile changes and copying the keyprop.in and xmodmap files to the appropriate directories fixes the problem. Attaching a consolidated patch ( for new files i diff with /dev/null). A single patch command should patch everything.
Created attachment 10066 [details] [review] consolidated patch
will this patch make it into cvs?
Shivram! This is cool, please commit.
Committed the patch in CVS. Shane could you verify and close this bug.
Shivram: did you commit to both HEAD and the gnome-2-0 branch? This fix should probably go into the stable gnome-2-0 branch also.
Kevin: I had only committed to HEAD. Committing to gnome-2-0 branch may break UI/String freeze. The preferences ui Add tree changes with the addition of new keyboard layouts. If this is ok, i'll commit to gnome-2-0 branch too.
The addition of the PC AT 101 keyboard to menus has fixed the missing <CR> problem. However there still exists another problem, in that if the user accidently selects a wrong keyboard e.g. US 105, the pipe symbol ( ' | ' ) loses it's keymapping. Once this happens selecting the correct keyboard (PCAT 101) will not fix it. The user must select the correct keymap, logoff and login again for it to be recovered.
Bob has opened a new bug for the above problem - see bug #91248 for details - am closing this as fixed.