GNOME Bugzilla – Bug 668546
Wacom control panel needs ability to map tablets to specific outputs
Last modified: 2012-02-16 18:42:12 UTC
Display tablets such as the Cintiq provide automatic mapping to an output but no method is provided for mapping non-display tablets such as the Intuos4. This functionality is exposed through xsetwacom and would be useful to have a GUI for.
Created attachment 205931 [details] [review] wacom: Bring over updates from gnome-settings-daemon Brings in NULL pointer fixes from gnome-settings-daemon (bug 668545).
Created attachment 205932 [details] [review] wacom: Make 'set_display_by_output' public and rename Makes the 'set_display_by_output' function public so that callers who know exactly which output they want to map the output to can easily do so. Function is renamed to 'gsd_wacom_device_set_display' to match the public naming scheme.
Created attachment 205933 [details] [review] wacom: Barebones mapping panel implementation Provides a barebones implementation of a panel for selecting the display to map a tablet to. This implementation uses a combo box instead of the Display-panel-like UI specified by the mockup since my Cairo and GTK-fu are weak.
Created attachment 205934 [details] [review] wacom: Add a gsd-wacom-mapping-panel to each tablet page Allows users to set the output mapping for tablets connected to their system. As with the prior patch, this is not the final UI. This exposes the functionality for testing while the interface specified by the mockup is built.
I still don't like the idea of using the GnomeRR API for anything but what's really required, and I certainly don't like seeing it in the GsdWacomDevice API. Could we use monitor indexes instead? This will also make drawing the desktop much easier.
Created attachment 206020 [details] [review] Update attached patches based on review
Created attachment 206021 [details] [review] wacom: Bring over updates from gnome-settings-daemon Brings in NULL pointer fixes from gnome-settings-daemon (bug 668545).
Created attachment 206022 [details] [review] wacom: Add public 'gsd_wacom_device_set_display' function Provides a way for callers to set the 'display' key, without requring them to know details of the how its stored. All that is required is the monitor number.
Created attachment 206023 [details] [review] wacom: Barebones mapping panel implementation Provides a barebones implementation of a panel for selecting the display to map a tablet to. This implementation uses a combo box instead of the Display-panel-like UI specified by the mockup since my Cairo and GTK-fu are weak.
Created attachment 206024 [details] [review] wacom: Add a gsd-wacom-mapping-panel to each tablet page Allows users to set the output mapping for tablets connected to their system. As with the prior patch, this is not the final UI. This exposes the functionality for testing while the interface specified by the mockup is built.
Comment on attachment 206021 [details] [review] wacom: Bring over updates from gnome-settings-daemon No need to add those as separate patches, it's now a single make call.
Comment on attachment 206022 [details] [review] wacom: Add public 'gsd_wacom_device_set_display' function Did commit something like that in g-s-d, as mentioned on github. See: http://git.gnome.org/browse/gnome-settings-daemon/commit/?id=3e94c6e03316aa1c92f2a1ef4e8fada7d3f27a73
For the 2 other patches, given the work that you've tried to achieve wrt reusing parts of display panel, I think we're better taking another tack on solving the problem. Similarly to your cc-wacom-mapping-panel.[ch] code, create a button widget to replace the tablet image on the left. When clicked, have it pop up a dialog with 2 main options: ---------------------------------- | (*) Map to entire desktop | | | | ( ) Map to specific monitors | | [ ] Monitor #1 | | [ ] Monitor #2 | | [ ] Monitor #3 | | | | [Cancel] [OK] | ---------------------------------- This is the same functionality as presented in the mockup, but with a design that's implementable straight away. Then we can work on reusing parts of the display panel, probably moving those bits to gnome-desktop where the rest of the XRandR stuff happens. Only caveat with the above is making sure that only contiguous monitors can be selected. Will you have time to work on that?
Created attachment 207517 [details] [review] bug fixes Bug fixes and a test app for the stand-alone dialogue.
Comment on attachment 206023 [details] [review] wacom: Barebones mapping panel implementation Committed! Thanks for the patch!
Comment on attachment 206024 [details] [review] wacom: Add a gsd-wacom-mapping-panel to each tablet page I added those to a separate dialogue instead.
Comment on attachment 207517 [details] [review] bug fixes We went a different way here.
We have a simple display mapping dialogue now. It allows mapping a tablet to the whole desktop, or to one particular screen, using a combobox. In the future, we'll want to change the UI to match the mockups.