On Wed, Jul 14, 2010 at 8:41 PM, Peter Hutterer <[email protected]> wrote: > On 15/07/10 13:37 , Ping Cheng wrote: >> >> On Wed, Jul 14, 2010 at 6:04 PM, Peter Hutterer >> <[email protected]> wrote: >>> >>> This fixes a hang caused by wcmEmitKeySyms(). XkbGetCoreMap() allocates >>> memory and doing so in the signal handler (i.e. event processing) may >>> hang >>> the machine. Instead, get the core keymap after initialising the key >>> class >>> and save it in the device. >>> >>> Side-effect: if the keyboard layout is set after device initialization, >>> the >>> keycodes sent by the wacom device are almost certainly wrong. >>> >>> Note: while we asked for the keysyms rec on X servers with an ABI< 7 we >>> never actually initialised it. The ifdef for the ABI check was removed in >>> this patch since the call to XkbGetCoreMap is already inside the ABI>= 7 >>> check. >>> >>> Signed-off-by: Peter Hutterer<[email protected]> >> >> Acked-by: Ping Cheng<[email protected]> >> >>> --- >>> I don't have a good answer to how to update the keymap when it changes >>> yet. >> >> Maybe we can add a new xsetwacom property so clients/users can inform >> the driver when keyboard layout changed. Driver then convert the >> existing keys into the new form (I don't know if this is >> possible/doable or not though). > > if we're going down that route it'd be better to load the keycodes into the > driver only and let the clients update them as the keysyms change. of course > this requires updating xsetwacom and every client that sets the key actions > but it'd be the right implementation, the driver should not care about XKB > maps.
This is a sensible choice. I think there would be no xsetwacom user interface changes. The code change is between xsetwacom and the driver, which would not affect end users, interface-wise. All they needed is to update their keystrokes when keyboard layout is changed. Ping ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ Linuxwacom-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel
