Commit Graph

57 Commits

Author SHA1 Message Date
Jente Hidskes
6e240c5e36 WelcomePerspective: add context on the same string 2017-08-24 07:06:04 +10:00
Jente Hidskes
19f6e1e7c0 ButtonDialog: s/left-handedness/left-handed 2017-08-24 07:06:04 +10:00
Peter Hutterer
10a7663696 data: make the Welcome title translatable 2017-08-23 19:08:56 +10:00
Peter Hutterer
e0db4749d9 data: make the "Oh Oh" title translatable 2017-08-23 19:08:56 +10:00
Peter Hutterer
f04a0e94a5 ui: limit the length of macros displayed in the option box
Otherwise it stretches the whole GUI
2017-08-23 09:50:38 +02:00
Jente Hidskes
0d54a60df2 Add context where needed for translators 2017-08-23 12:38:51 +10:00
Jente Hidskes
b7dd69df53 ButtonDialog: match "Send Keystroke" label with that in the .ui file 2017-08-23 12:38:51 +10:00
Jente Hidskes
8795e7dd5f ButtonDialog: break lines after max character width 2017-08-23 09:09:36 +10:00
Peter Hutterer
8001b74c6d ButtonDialog: when pressing Apply, make sure we commit the current macro 2017-08-23 09:06:59 +10:00
Peter Hutterer
52c70acfbf ui: reconnect the radio button signal handler for left/right handed
Lost in 2965979484
2017-08-22 14:04:59 +02:00
Jente Hidskes
2965979484 ButtonDialog: move handedness to its separate stack page 2017-08-21 12:50:44 +02:00
Jente Hidskes
6dc3a54f71 ButtonDialog: add a search entry to search mappings
Fixes #77.
2017-08-21 12:50:44 +02:00
Jente Hidskes
2c522002e6 ButtonDialog.ui: do not track links in labels 2017-08-21 11:06:38 +02:00
Jente Hidskes
c16fbb51c7 UI files: consistently use (untranslatable) placeholder labels 2017-08-21 11:06:38 +02:00
Jente Hidskes
cd6c528608 UI files: unmark placeholder strings as translatable 2017-08-21 11:06:38 +02:00
Jente Hidskes
d19895c380 Remove old piper code from the tree 2017-08-21 10:58:36 +02:00
Jente Hidskes
f17e341dbe ResolutionRow: add label to highlight the active resolution
Fixes #80, #81.
2017-08-21 16:27:24 +10:00
Jente Hidskes
182f44ed40 MousePerspective: do not use show_all()
This again interferes with hiding widgets on purpose.
2017-08-17 09:50:52 +02:00
Jente Hidskes
d41b2ce547 ResolutionRow: rename title_label to dpi_label 2017-08-17 09:50:46 +02:00
Jente Hidskes
3c432d3c63 ButtonDialog: fix the tooltip for the macro row 2017-08-17 09:49:47 +02:00
Jente Hidskes
f74deb9cc9 ButtonDialog: do not track visited links 2017-08-17 09:49:47 +02:00
Jente Hidskes
31c6fc1c76 ButtonDialog: only allow swapping for left- and right buttons
Fixes #82.
2017-08-17 09:49:47 +02:00
Jente Hidskes
7fd66be80f MousePerspective: change button icon to text
Fixes #69.
2017-08-11 13:30:25 +01:00
Jente Hidskes
55e10bdfc8 ResolutionsPage: reduce width of the controls 2017-08-11 11:10:01 +01:00
Jente Hidskes
fb130e6719 MousePerspective: highlight the commit button when a profile gets dirty 2017-08-11 11:07:58 +01:00
Jente Hidskes
16256230be ResolutionRow: block the scale's value changed handler when initialising
This prevents the profile from becoming dirty while the MousePerspective
is initialising itself on a new device
2017-08-11 11:07:58 +01:00
Jente Hidskes
bdc11e2578 Window: request a default size
This size is determined to be the best one with the current set of
device SVGs in libratbag. It is set to ensure that the jump in size
caused by the MousePerspective populating itself when switched to is
minimal and the least disturbing. We can't populate the MousePerspective
in advance because we need to know the device.
2017-08-09 19:17:45 +01:00
Jente Hidskes
9d46dcb89a Add a WelcomePerspective if there is more than 1 device 2017-08-09 19:17:45 +01:00
Jente Hidskes
50205fbc46 Add an ErrorPerspective according to the empty state pattern
See https://developer.gnome.org/hig/stable/empty-placeholder.html.en and
https://github.com/gnome-design-team/gnome-mockups/tree/master/empty-app-states
2017-08-09 19:17:45 +01:00
Jente Hidskes
52bb5e3781 Introduce perspectives to manage different screens
The welcome and error screens both require a different "perspective"
into Piper, while being in the same window. For this reason, we
introduce a titlebar and a regular stack and the concept of a
"perspective", which is defined as a certain view into Piper.

A perspective needs to implement an interface of sorts of two methods:
one to retrieve its string name, and another to retrieve its widget titlebar.

Different scenarios can then show different perspectives, that have full
control over the main widget and the titlebar displayed. This commit
introduces the MousePerspective, which is a perspective showing the
mouse configuration. Future commits will add an ErrorPerspective and a
WelcomePerspective, and even further into the future we can add a
KeyboardPerspective as well.
2017-08-09 19:17:45 +01:00
Jente Hidskes
d452c50e6b 404: remove caption and resize 2017-08-09 19:17:45 +01:00
Jente Hidskes
ee6f91bd49 ResolutionRow: do not display frame label "Resolution"
See #79
2017-08-04 08:49:42 +01:00
Jente Hidskes
83e215f08f ResolutionRow: remove "Resolution x"
See #75 and #79
2017-08-04 08:49:42 +01:00
Jente Hidskes
da3efd0374 Window: add profile switch popover
This commits adds the necessary bits in the UI to switch between
popovers. Following commits will propagate profile changes through the
rest of Piper so that all control widgets update corresponding to
profile changes.
2017-08-01 16:39:30 +01:00
Jente Hidskes
fc9d9bffc6 Keystroke: remove clear, add cancel 2017-08-01 10:22:34 +01:00
Jente Hidskes
e874c81c69 Merge key mappings with macros 2017-08-01 10:22:34 +01:00
Jente Hidskes
510e3b6b31 ButtonDialog: merge all stack pages into a list
For the user anyway, all different mappings will look the same. It makes
no sense to make this more complicated for them by separating them into
different concepts.
2017-08-01 10:22:34 +01:00
Jente Hidskes
334f3bf27e ButtonDialog: add special mapping page 2017-08-01 10:22:34 +01:00
Jente Hidskes
847d8fcf3a ButtonDialog: add key mapping stack page
ratbag's key mapping signature is forcing us to treat modifiers
different from regular keys. To detect them, we need several workarounds
over Gdk.EventKey which makes the code uglier than it could be. Perhaps
we should just skip this altogether and implement macros only; since
they don't differentiate between modifiers and regular keys all these
workaround can then be removed while providing the same functionality.
2017-08-01 10:22:34 +01:00
Jente Hidskes
0773bbcbca ButtonDialog: add button map page 2017-08-01 10:22:34 +01:00
Jente Hidskes
96a77f024b Add ButtonsPage to configure buttons
This commit adds the initial buttons page and a skeleton configuration
dialog to configure button mappings.
2017-08-01 10:22:34 +01:00
Jente Hidskes
67ffb25e64 Window.ui: let Glade move things around 2017-07-27 09:36:42 +02:00
Jente Hidskes
b78aade8aa data/ui: add tooltips to control widgets
Every control widget should have a tooltip to explain its purpose.

Fixes #40
2017-07-27 09:36:42 +02:00
Jente Hidskes
ee07784a28 Add LED page to configure LEDs 2017-07-27 09:36:42 +02:00
Jente Hidskes
4aa36cfab7 OptionButton: a Gtk.Button with a cog 2017-07-27 09:36:41 +02:00
Jente Hidskes
fa5c72c8c0 data: move ui files into subdirs
It's getting quite messy to let's put in some structure.
2017-07-27 09:36:41 +02:00
Jente Hidskes
4679c9f3fa Window: extract resolution code into ResolutionsPage class 2017-07-27 09:36:41 +02:00
Jente Hidskes
518f3b412d ResolutionRow: snap resolution values to multiples of 50
Mice don't do anything more fine-grained than this
2017-07-27 09:36:40 +02:00
Jente Hidskes
ec718cf314 ResolutionRow: remove support for separate x/y resolutions 2017-07-27 09:36:40 +02:00
Jente Hidskes
78137cf108 Window: block the scroll event on the scales
Without this, when scrolling through the list over a scale, the scale
will steal the scroll event.
2017-07-27 09:36:40 +02:00