Bastien Nocera said the following on 06/06/2012 03:02 PM: > On Tue, 2012-06-05 at 15:09 +0200, Olivier Fourdan wrote: >> The libwacom API does not provide any way for client applications to >> get the buttons order as this may differ from the actual button >> definition. >> >> For example, the Bamboo Fun Pen&Touch tablet maps buttons from top to >> bottom (with pad on the left) as A, D, C, B instead of A, B, C, D as >> expected, thus breaking the logic used to number the buttons in client >> apps such as GNOME Wacom settings panel. > Not only does this require system level applications like > gnome-settings-daemon and gnome-control-center to have code to > specifically handle it, it will also break enumeration for the users > (shouldn't button A be before button B which would be before button C?).
That's precisely the goal, enumeration does not work now for all devices. As for gnome-settings-daemon and gnome-control-center, well yes, they would need some code to take advantage of the possible different order, that's the purpose, but they would work without needing changing as well. > This should be fixed in the driver. libwacom is a place to define things > that drivers cannot, not to work around hardware differences like this. > > Big NAK. It's not just to work around an issue with the Bamboo tablet. Let's say you want to create some sort of a graphical representation of all the buttons (to show what button does what, in an OSD window for example). Let's take for example a Intuos 5 M. It has, from top to bottom 4 buttons, then the touch ring with its modeswitch, then 4 more buttons. Definition gives: [Buttons] Left=A;B;C;D;E;F;G;H;I Ring=A RingNumModes=4 If button A is before button B, then that means that touchring button is first, while it's not, it's in the middle With the proposed patch, the definition would then be: [Buttons] Left=B;C;D;E;A;F;G;H;I Ring=A RingNumModes=4 That would allow a program to list the buttons in their actual physical order. The tablet definition for the Cintiq 21UX2 already has something like this: Left=B;C;D;E;A;F;G;H;I But this cannot be used unless we give access to the order, somehow (granted, this might be an accident, as most definition do not care about orders, but knowing how buttons are ordered on the device would be a plus). Cheers, Olivier. -- əɔıʌəp əɯos ɥʇıʍ əɹəɥʍəɯos ɯoɹɟ ʇuəs ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Linuxwacom-devel mailing list Linuxwacom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel