Commit Graph

1545 Commits

Author SHA1 Message Date
Carlos Garnacho
c609ffe0b5 data: Move extra keys to JSON files
Have these defined in the JSON files themselves, instead of trying
to add them from JS while minding the differences in number of levels
and rows.

This means more redundant data in the JSON files, but simplifies
OSK layout creation significantly, and allows finer control over the
appearance without quirks.

As a result, importing data from CLDR is no longer as straightforward
as running an script. After initial import, manual editions will be
required to add missing keys, assign key widths, and so on.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2278>
2022-08-10 17:11:26 +00:00
Carlos Garnacho
a2674c1166 keyboard: Read key width from model
Handle a "width" property to key structs in the JSON files, and
use that (so far) to give the right width to space keys in layouts.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2278>
2022-08-10 17:11:26 +00:00
Carlos Garnacho
6898522e63 data: Remove double space key in Persian OSK layout
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2278>
2022-08-10 17:11:26 +00:00
Carlos Garnacho
915a31578e data: Update OSK JSON files to new format
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2278>
2022-08-10 17:11:26 +00:00
Carlos Garnacho
86457c3bb3 data: Update cldr2json script to new format
We want to extend the data model with additional keys, actions,
and properties. We need keys to be a map instead of a plain array
of strings.

Adapt the script to dump data in this new format, so it generates
a decent base to manually complete the work.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2278>
2022-08-10 17:11:26 +00:00
Florian Müllner
a4134e1559 panel: Remove aggregate menu
The menu has served us well over the years, but it is finally time
to retire it.

         τετέλεσται

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2408>
2022-08-10 16:37:15 +00:00
Florian Müllner
dcc54c041f style: Force symbolic icons in quick settings
The icon for the Settings toggle comes from the .desktop file,
so isn't symbolic by default. Enforce that via the -st-icon-style
property, like the .aggregate-menu style did.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2419>
2022-08-10 16:25:38 +00:00
Georges Basile Stavracas Neto
341cad764e appDisplay: Remove style of page indicators
As per feedback, remove the visible styling of the page indicators.
They're still used to layout and detect drag hovering, so the actors
are still in place, but they're completely transparent now.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2335>
2022-08-10 15:16:36 +00:00
Georges Basile Stavracas Neto
ca9a19dfbe style: Theme pagination arrows as per mockups
The style is essentially a copy of %osd_button, but adapted to
style the inner icon instead of the whole button.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2335>
2022-08-10 15:16:36 +00:00
Georges Basile Stavracas Neto
892fa6581c appDisplay: Turn navigation arrows into StButtons
Make the next and previous page arrows be StButtons, with their
'icon-name' property matching the current StIcon icon name, and
use the 'clicked' signal to switch pages.

Remove the 'button-press' callback the scroll view, since the
buttons take over this functionality.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2335>
2022-08-10 15:16:36 +00:00
Georges Basile Stavracas Neto
3281c03aea appDisplay: Make page previews fill allocation
Instead of hardcoding the width of the page previous, allow them
to fill the allocated space.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2335>
2022-08-10 15:16:36 +00:00
Florian Müllner
50671a78ec status/network: Replace wi-fi selection dialog
Now that wi-fi devices will be handled by a separate menu toggle
instead of as part of a combined system menu, there is no longer
a need of delegating network selection to a separate dialog.

To keep the menu from growing too much, the (sorted) list of
displayed networks is kept at a limit of eight. There is always
Settings for a complete list…

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2407>
2022-08-10 12:17:19 +00:00
Robert Ancell
04d4d70988 dbus-interfaces: Add names to introspection data for notifications
This makes it easier to use via gdbus/d-feet.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2398>
2022-08-09 11:55:46 +00:00
Daniel van Vugt
436fd81cfc css: Add a special chroma key color and use it on .workspace-background
There's no visible change here since we're just moving from the
default transparent black to transparent other. But the latter can
be used as a special value to indicate to the rendering code when a
background is expected to be always occluded.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1915>
2022-08-09 07:11:44 +00:00
Sam Hewitt
5de3491df3 style: CSS follow ups for quicksettings
- some padding adjustments
- add proper focus style for :checked buttons
- popover radii adjustments

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2401>
2022-08-08 11:27:58 +00:00
Florian Müllner
ce19849c09 status/power: Merge with system indicator
Now that the old system menu has been ported over, we can move
the power toggle to its intended place. The main difference to
the stand-alone toggle is that the button now uses its natural
size rather than the fixed size of regular quick items.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
ea00da7fd7 status/system: Port to quick settings
This port is a bit messier than the previous ones, because the
existing menu section translates less directly to the new UI,
which uses a row of individual toggles for settings, lock and
shutdown.

In order to not complicate the grid layout further by supporting
rows with a different number of columns than the overall grid and
children at their natural size, create a custom, non-reactive
SystemItem item that spans an entire row, and contains the individual
toggles.

This works quite well, even with the shutdown item that uses a menu
for the various actions.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
c2e8f41bdf quickSettings: Add QuickSlider
Between input/output volume and brightness, we have enough use
cases for a common slider QuickSettingsItem, in particular as
the items can have a menu.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
4b9dcb3f89 quickSettings: Add QuickMenuToggle
This is a convenience subclass for a quick toggle with a menu.

The menu can be disabled dynamically and if enabled, an arrow
is displayed that allows opening the menu.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
3ce3034fdd quickSettings: Color header icon if checked
... as requested by the design team.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
a0436d4b48 quickSettings: Add header to QuickToggleMenu
All menus in the mockups spot a header, and as we are using a
custom menu type anyway, just add some API there.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
e0c61f53f1 quickSettings: Add menu support to items
Now that the QuickSettingsMenu supports child menus, it is time
to add menu support to quick toggles.

Do that by introducing a QuickSettingsItem parent class with a
construct-only :has-menu property, as that will allow including
menus in items that aren't following the standard icon+label
pattern of QuickToggle (yes, we'll have some of those).

A common parent class also allows us to control the type of
menu that is created. That's important, as we need another
custom menu type to

- constrain the menu's y position to place it underneath
  the source actor

- use open/close animations taylored for this use case

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2393>
2022-08-03 12:41:05 +00:00
Florian Müllner
d87950da55 style: Add generic .icon-button class
The class is meant for buttons that only contain an icon, as
found in many GTK apps.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2397>
2022-08-02 18:00:08 +00:00
Florian Müllner
a3a886f185 status/darkMode: Add dark mode toggle
The aggregate menu with its submenus isn't well-suited for simple
on-off actions, so we didn't expose the global color-scheme support
that was introduced last cycle.

Quick settings on the other hand are a natural fit for actions like
this, so add a corresponding toggle.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2392>
2022-08-02 16:05:28 +00:00
Florian Müllner
e5d4984c1b quickSettings: Add QuickToggle
Most quick settings items are just buttons with icon, label, and
a particular style. While that's easy enough, a dedicated class
with corresponding properties is more convenient.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2392>
2022-08-02 16:05:28 +00:00
Florian Müllner
47cb354e6c quickSettings: Introduce QuickSettingsMenu
The quick settings menu is a popover that arranges items in a
reflowing, homogeneous grid. Grid children may span multiple
columns, but not rows.

For now the QuickSettingsMenu that contains the grid is just a
convenience wrapper around the layout manager that does the heavy
lifting. The two will become more intertwined when we add support
for menu toggles though, so the custom menu type is unfortunately
needed.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2392>
2022-08-02 16:05:28 +00:00
Florian Müllner
7ab7df739a status/remote-access: Split out screen sharing indicator
The latest mockups move the screen sharing indicator into a
separate control, similar to the existing indicator for built-in
screen recordings.

As this removes the submenu and only keeps the top bar icon (for
external screen recordings), this will smooth the transition to
quick settings.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2391>
2022-08-01 12:33:36 +00:00
Florian Müllner
4f155d3757 status/powerProfiles: Remember last selected non-default profile
When we move to quick settings, this will allow us to toggle
between two profiles even where more profiles are available.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2391>
2022-08-01 12:33:36 +00:00
Sam Hewitt
9e40e14c34 style: Make menuitems less bright when in checked state
Fixes #5665

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2388>
2022-07-27 12:55:54 +00:00
Florian Müllner
e062e96ae6 rfkill: Consider HasAirplaneMode
`ShouldShowAirplaneMode` only considers whether airplane mode
should be shown for the form factor, not whether there are
any actual kill switches available.

That's tracked in a separate property, `HasAirplaneMode`.

Take that into account for our `:show-airplane-mode` property,
so that it reflects when airplane mode should and *can* be shown.

Right now we only show airplane mode when it is enabled (and
therefore available), but this will change in the future.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2385>
2022-07-19 13:27:39 +00:00
Georges Basile Stavracas Neto
694693af48 theme: Center access dialog text
Makes the now fully visible label match the rest of the dialog's
labels.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2377>
2022-07-14 16:51:52 +00:00
Evert Provoost
47a499bdc4 osk-layouts: Use AZERTY in Belgian layout
The regular `be` layout uses AZERTY like `fr`, so it makes sense
to follow that in the on-screen layout instead of copying the
Dutch layout.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2336>
2022-07-02 00:45:36 +00:00
Sam Hewitt
98ff66ddba style: Fix margin and color problems in the close buttons
- align the screenshot close button better
- use color changes consistent with other elements

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
ec571eb86f style: Add missing transition timings
- fixes #5211

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
68653d5e61 nm-dialog: Fix icon spacing issue
- fixes #4928

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
01287f6a19 style: Remove shadow on switch users button
- removes a dropshadow from the switch users button on the lockscreen

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
bdbbb782e8 style: Fix rtl oversight on lockscreen notifications
- Fixes #5152

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
2fac6f12ec style: Neutral style for hotcorner ripple
- fixes #5443

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
995e0c1086 style: Adjust close button style
- fixes #5481

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2309>
2022-06-20 07:43:31 +00:00
Sam Hewitt
8713f9d878 style: High-contrast fixes and color adjustments
- pull in the palette changes to the HC css
- adjust the color definitions for HC
- address some of the problems with hover states in HC
- reworked drawing functions for HC

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2284>
2022-06-08 05:26:02 +00:00
Jakub Steiner
caebb5a35e theme: Hardcode osd bg color
- osd needs to work for both light & dark contexts

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5537

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2315>
2022-06-03 15:41:04 +00:00
Florian Müllner
65831f783e Js: Use new :icon-name property
Now that we have the new convenience property, apply it to all
icon-only buttons.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2254>
2022-05-06 13:39:40 +00:00
Jonas Dreßler
d52508a29e theme/calendar: Use em instead of px for calendar day sizes
The layout manager of the calendar/notifications popup is using the
calendar width to determine the width of the whole right area of the
calendar popup. When enabling large text, this means the cards used for
world clocks, weather etc. get larger, while the calender doesn't get
larger, leading to the cards getting clipped.

Make sure the calendar grows in size just as the cards do when large
text is enabled and define its size in em's instead of pixels.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5392

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2282>
2022-04-29 18:51:42 +00:00
Jakub Steiner
f4e03aa440 style: Sync default colors with libadwaita
- include GNOME HIG color palette
- sync warning, error, success and destructive colors with libadwaita,
  improving contrast for dark theme

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2280
2022-04-25 14:43:12 +02:00
Sam Hewitt
cb2ee0cf1f osd: Restyle OSD display popup
- remove class from label box
- new style for label itself

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2277>
2022-04-24 18:19:16 +02:00
Florian Müllner
908156f4bd Osk-layouts: Add Austrian German layout
The 'at' layout is identical to 'de', but as it is implemented as
a different layout rather than a variant, we can only fall back
to 'us'.

To fix that, copy the existing German layout into a new Austrian
one (with the 'name' and 'locale' keys adjusted accordingly).

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5372

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2274>
2022-04-21 12:26:54 +00:00
Florian Müllner
b9b96e2b5b osk-layouts: Fix Swiss layouts
Commit fe3a80ab9f added layouts for both Swiss French and Swiss
French, but as neither name matches the XKB layout code, they are
not used and the OSK falls back to the US layout.

The correct names are 'ch' (for Switch German) and 'ch+fr', so
rename the layout definitions accordingly.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5372

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2273>
2022-04-21 11:53:05 +00:00
Sam Hewitt
e4b80117b5 theme: Minor screenshot UI fixes
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2215>
2022-03-20 20:51:19 +00:00
Cenk Uluisik
b832324ede introspect: Add WindowsChanged signal
The screencast portal supports recording a single window,
and presents a list of open windows when that option is
selected. To allow updating that list when windows are
opened or closed, add a new "WindowsChanged" signal that
the portal can listen to.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2229>
2022-03-08 16:31:20 +00:00
Sam Hewitt
96df498450 theme: Fixes for oversights in :rtl
- fix padding issue uncovered in #5123
  - fix RTL padding and margin quirks in popovers
  - fix incorrect padding in RTL in message list notifications

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2212>
2022-03-04 13:10:38 +00:00