Commit graph

274 commits

Author SHA1 Message Date
Automeris naranja
d811b0d9de mouse: Add mnemonics to all widgets
Partially fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2541

Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/2004>
2023-11-06 17:46:25 +00:00
Marco Melorio
dccaf98135 mouse-panel: Increase AdwBreakpoint width to avoid videos being blurry
When reducing the window width, CCSplitRow won't have enough width
to display videos without blurriness. This change increases the
AdwBreakpoint width so CCSplitRow shows vertically before that problem
described earlier happens.

See also: https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1960#note_1869031

Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1960>

Partially fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2631
2023-10-20 10:24:27 +00:00
Felipe Borges
358a952f70 mouse: Fix linked style of primary mouse button in RTL
Commit d980e0ffee fixed an issue when the "Left" button would appear
at the right side for RTL languages given that GtkBox would reorder
its horizontal children to RTL direction.

The solution at the time was to force the primary-button box to stay
in LTR direction when the rest of the interface is shown in RTL.
This introduced a regression where the CSS "linked" style of the
buttons used was the LTR one, breaking the "linked" styling.

This fix will manually reorder the Left/Right buttons rather than
calling gtk_widget_set_direction on the primary-button-box.

Fixes #2649
2023-10-03 09:00:47 +00:00
Alice Mikhaylenko
a24e177e3f mouse: Ellipsize the test button 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
f145e1497a mouse: Make adaptive 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
4680f362f3 Port to AdwNavigationSplitView 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
67022edc28 mouse: Stop leaking the test window 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
7ceb1834ae mouse: Port test dialog to AdwToolbarView 2023-08-25 08:00:43 +00:00
Alice Mikhaylenko
0aa15fb286 mouse: Port to AdwToolbarView 2023-08-25 08:00:43 +00:00
sunflowerskater
266c55715a general: Add tooltips to headerbar controls
Acc. HIG, "controls in the header bars of primary windows should all have tooltips".

https://developer.gnome.org/hig/patterns/feedback/tooltips.html
2023-06-06 13:27:00 +00:00
Felipe Borges
e97429f0f6 Make dialogs close when pressing the Escape key
Fixes #2503
2023-05-25 23:24:00 +00:00
Pablo Correa Gómez
7f7b65545c all: meson: do not specify resources from gresource files as dependencies
Meson extracts them by itself and add them as dependencies for the target.
It means one less location to keep track of files, and a lot less boilerplate
around the meson files
2023-05-24 08:34:14 +00:00
Markus Göllnitz
98c47cee10 mouse: ensure type CcListRowInfoButton is available to GtkBuilder
The newly introduced CcListRowInfoButton is not available
to GtkBuilder and henceforth building the mouse panel
currently fails.

Therefore, it CcListRowInfoButton has to be declared to
be a type that needs to be available to this panel.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2023-05-16 20:49:28 +02:00
Felipe Borges
b2d5e78934 mouse: Use CcListRowInfoButton for mouse_aceleration row 2023-05-16 13:32:21 +00:00
Felipe Borges
e0dc75bcfc mouse: Hide entire "Touchpad" row when touchpad cannot be disabled
The touchpad row has a switch suffix that allows enabling/disabling
touchpad.

To prevent users from being left with no pointer device, we were
hiding the suffix switch of the touchpad row, making the row look
weird with a label and no action.

Let's hide the entire row instead, as suggested by designers in
comment https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1649#note_1643002

Fixes #1649
2023-04-20 14:09:04 +00:00
Chris Mayo
92c4b6a706 Fix panel crashes due to unknown types in UI descriptions
Error building template class 'CcSearchPanel' for an instance of type 'CcSearchPanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcDisplayPanel' for an instance of type 'CcDisplayPanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcMousePanel' for an instance of type 'CcMousePanel': .:0:0 Invalid object type 'CcIllustratedRow'

Error building template class 'CcKeyboardPanel' for an instance of type 'CcKeyboardPanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcRegionPanel' for an instance of type 'CcRegionPanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcUaPanel' for an instance of type 'CcUaPanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcUserPanel' for an instance of type 'CcUserPanel': .:0:0 Invalid object type 'CcAvatarChooser'
Error building template class 'CcUserPanel' for an instance of type 'CcUserPanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcDateTimePanel' for an instance of type 'CcDateTimePanel': .:0:0 Invalid object type 'CcTzDialog'
cc_tz_dialog_get_selected_location: assertion 'CC_IS_TZ_DIALOG (self)' failed
dumped core
Error building template class 'CcDateTimePanel' for an instance of type 'CcDateTimePanel': .:0:0 Invalid object type 'CcListRow'

Error building template class 'CcInfoOverviewPanel' for an instance of type 'CcInfoOverviewPanel': .:0:0 Invalid object type 'CcHostnameEntry'
2023-04-17 12:14:58 +00:00
Automeris naranja
fe5257bc9e general: Remove a11y labels when they aren't needed
A11y labels aren't needed when using the "activatable-widget"
property, because the relation is set automatically:

https://gitlab.gnome.org/GNOME/libadwaita/-/blob/main/src/adw-action-row.c#L661
2023-04-12 18:34:20 -03:00
Marco Trevisan (Treviño)
7f97d9eb54 panels/mouse: Simplify binding of touchpad sensitive widgets
Instead of creating multiple and more complex GSetting bindings for the
sensitive state, just bind the sensitivity of the touchpad widgets to the
active state of the touchpad toggle switch
2023-03-22 13:49:20 +00:00
Marco Trevisan (Treviño)
087d2b8955 panels/mouse: Do not bind sensitivity to touchpad settings
If doing so, these options may be marked as sensitive by GSettingsBind,
ignoring the send-events global setting binding; and causing the widgets
to be always sensitive regardless the touchpad state.
2023-03-22 13:49:20 +00:00
Marco Trevisan (Treviño)
c20ed729f7 mouse: Prevent infinite loop on settings changes
We may get an infinite loop on mouse panel startup, in fact the scroll
method changed event emits a gsettings change that also leads to a
notify::use-default emission that again tries to writes to settings,
leading to another change: infinitely.

Closes: #2405
2023-03-17 16:42:50 +00:00
Markus Göllnitz
98f7a40d24 multiple panels: show start title buttons in header bar
The start title buttons of the main window should be displayed if and
only if the end title buttons are. Only the left-most header bar should have
the start title button set and only right-most header bar the end title buttons.

Therefore, the title buttons property should be bound to the leaflet state:
When unfolded the start title buttons of the sidebar's header bar are
the only ones visible then, and not a second pair in the panel's header bar.
Likewise, in a folded state of the leaflet, the panel's header bar displays
all availble title buttons – start and end – as the panel is the only widget
displaying a header bar.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2023-03-16 13:18:37 +00:00
Felipe Borges
0e7ad06da3 mouse: Rename "Pointer Assistance" to "Mouse Acceleration"
This is the popular term  for this feature and we would be confusing
users by inserting new terminology.
2023-03-02 15:51:22 +00:00
Markus Göllnitz
0754e1ef13 mouse: add title to header bar
The header bar of the mouse panel can display a title, when
the stack only contains the mouse and the touchscreen subpanel.

This header bar, however, does not inherit the title widget from
the common CcPanel, as it contains the view switcher.

It is needed to add the correct title as a property to the switcher
to let it display this title, if no switcher is.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2023-03-01 14:34:09 +00:00
Markus Göllnitz
8b4fbef678 mouse panel: add navigate back button
The mouse panel currently does not show a button to navigate back,
but should do so if the window is folded.

fixes #2363

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2023-03-01 13:58:19 +00:00
Felipe Borges
4e10ccb9ea mouse: Toggle visibility of Touchpad page based on device detection
Fixes #2355
2023-02-28 14:17:37 +00:00
Felipe Borges
5b4c9e16a8 mouse: Don't set arbitrary dimensions for mouse test window
As long as the picture's scrolled window can be larger than 440,
everything else should fit within the window's default size.

Fixes #2356
2023-02-28 14:16:49 +00:00
Jakub Steiner
2e9e87ad40 mouse: Update mouse video assets
- slight adjustments to layout and sizing of individual elements
- based on discussions with Allan & Tobias
2023-02-17 02:09:50 +00:00
Felipe Borges
573428d006 mouse: Update mouse video assets
as of https://gitlab.gnome.org/Teams/Design/settings-mockups/-/commit/ad52c2617
2023-02-17 02:09:50 +00:00
Alexander Mikhaylenko
e911f7defd mouse: Fix swapped scroll direction videos
It was showing the opposite direction for each of them.
2023-02-14 23:11:01 +04:00
Felipe Borges
ff6e104033 mouse: Redesign Mouse Test dialog
Per mockups
https://gitlab.gnome.org/Teams/Design/settings-mockups/-/raw/0fa58be/mouse-and-touchpad/test-window.png
2023-02-14 18:10:46 +00:00
Felipe Borges
9e0e6253e4 mouse: Move Mouse Test into its own window
Per discussion at
https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2250#note_1631136

Fixes #2250
2023-02-14 18:10:46 +00:00
Felipe Borges
b5ce0f08b9 mouse: Redesign Mouse panel
See
https://gitlab.gnome.org/Teams/Design/settings-mockups/-/raw/master/mouse-and-touchpad/mouse-and-touchpad.png
2023-02-14 13:31:23 -03:00
Felipe Borges
7ba1afc647 mouse: Add mouse "acceleration profile" row
Fixes #94
2023-02-14 12:13:30 +01:00
Felipe Borges
bcbfe838e0 mouse: Overlay test button on top of artwork
Fixes #2215
2023-01-03 13:57:53 +00:00
sunflowerskater
93e1a20125 mouse-touchpad: Mark some a11y labels as translatable
The a11y labels from Touchpad Speed and Mouse Speed aren't marked as translatable.

This commit marks these labels as translatable.
2023-01-03 13:45:43 +00:00
sunflowerskater
883794fcde mouse-touchpad: Include marks in the mouse/touchpad speed scales
Currently, the mouse/touchpad speed scales lacks slow, default and fast marks.

This commit adds the necessary marks.

Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1681
2023-01-03 13:45:43 +00:00
Marco Melorio
de00794e1a mouse: Remove deprecated gtk_widget_show/hide usage 2023-01-02 22:10:39 +00:00
TheEvilSkeleton
20378fc9a4 mouse: Set rows as activatable widgets 2022-12-20 09:20:29 +00:00
Gotam Gorabh
09e76cb1e3 mouse: Rename "Test Your Settings" button to "Test Settings"
This code changes rename the Test Your Settings button to
Test Settings to reduce the button width size.
By reducing button size it also impact the position of panel title to more centric.

Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2123
2022-11-29 20:52:49 +00:00
Jake Dane
89443fe550 desktop: Remove obsolete Bugzilla entries
The `X-GNOME-Bugzilla-*` entries were for use by bug-buddy, a GNOME 2
technology that's been gone for over a decade. These entries are
obsolete and can be removed from all desktop files.

The `X-GNOME-Settings-Panel` entry is also obsolete as far as I can
tell and only these panels had it in their desktop file: notifications,
sharing, sound and user-accounts. These entries can also be removed.

After removing the `X-GNOME-Bugzilla-*` entries, the desktop files have
no more variables in them. The meson `configure_file` step is therefor
pointless—there are no variables to configure. As such the
`*.desktop.in.in` files are renamed to `*.desktop.in` to reflect this
and `meson.build` files are modified to remove `configure_file` step.
2022-10-20 13:20:09 +00:00
Lukáš Tyrychtr
91b13f4283 Add a few a11y labels to the switches 2022-05-09 13:33:57 +02:00
Jakub Steiner
13376ecb8b Add individual app icons 2022-01-31 14:08:22 +00:00
Georges Basile Stavracas Neto
4300a4a290 panels: Use new CcPanel helpers for title widgets
This should significantly simplify these panels, by not forcing
them to override GObject.constructed all the time. Most panels
were quite straightfoward.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
0ab20af9ba panels: Switch to CcPanel content
Start porting panels to the new panel format. This commit
temporarily makes panels have two titlebar, which will be
fixed soon.
2022-01-20 02:23:42 +00:00
Christopher Davis
7aae515cf6 mouse: Use AdwPreferencesGroup's listboxes
We don't need our own listboxes, because our rows
here aren't dynamic.
2022-01-18 09:51:01 +00:00
Christopher Davis
d99269182d mouse: Remove useless GtkGrid
Also move the margins to the box itself and remove the
horizontal margins.
2022-01-18 09:51:01 +00:00
Christopher Davis
891d745302 mouse: Remove all haligns
We can rely on the alignment of AdwActionRow suffixes.
2022-01-18 09:51:01 +00:00
Christopher Davis
a066efd14c mouse: Remove activatable=False
ActionRows aren't activatable by default.
2022-01-18 09:51:01 +00:00
Christopher Davis
0d79f99ae6 mouse: Remove width request and halign from scales
The width request prevented this panel from getting smaller,
and the halign caused the scales to use the minimum possible
width.
2022-01-18 09:51:01 +00:00
Jan Beich
37b29c32cb meson: drop unused argument for i18n.merge_file()
Ignored in Meson < 0.60.0, deprecated since 0.60.1 and fatal since 0.61.0.

panels/applications/meson.build:10:5: ERROR: Function does not take positional arguments.
panels/background/meson.build:10:5: ERROR: Function does not take positional arguments.
panels/camera/meson.build:10:5: ERROR: Function does not take positional arguments.
[...]
2022-01-07 17:22:43 +00:00