Commit graph

21113 commits

Author SHA1 Message Date
Georges Basile Stavracas Neto
00cb6386e4 applications: Properly protect against NULL app_id
The 'app_id' variable can be NULL, and g_str_has_prefix() does
not particularly enjoy that.
2022-01-20 18:55:03 -03:00
Georges Basile Stavracas Neto
de26f9a8f5 applications: Remove CcActionRow
This class is now unused.
2022-01-20 17:30:45 -03:00
Georges Basile Stavracas Neto
750c4fc5a6 applications: Add descriptions to permission rows
As per mockups.
2022-01-20 17:30:45 -03:00
Georges Basile Stavracas Neto
53d3b9a70e applications: Merge permissions and integration sections
As per mockups
2022-01-20 17:30:45 -03:00
Georges Basile Stavracas Neto
25e0605f54 applications: Polish the Storage dialog
As per mockups, make the headerbar flat, add more spacings
and margins.
2022-01-20 17:30:45 -03:00
Georges Basile Stavracas Neto
4bd4a6e1fe applications: Split file & link handlers
As per mockups, split file and link handlers in the dialog.
2022-01-20 17:30:45 -03:00
Georges Basile Stavracas Neto
28212c77a7 applications: Move handlers section into a dialog
Add a new row in the usage section, like Built-in and Disk
Usage. Move the file handler widgetry into this new dialog.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
e1088495d0 applications: Remove integration_list and usage_list
Now that the rows are derivated from AdwPreferencesRow, we can
add them directly into the corresponding preferences groups.

Other groups can't benefit from this cleanup yet because they
have custom widgets.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
795cdfd06d applications: Remove section titles
Latest  mockups don't have them. There's still some more
shuffling to do, so let's remove the titles now to help
with that.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
1b0d1566c6 applications: Add header with app icon, name, and buttons
This moves the header button into the Applications panel itself,
and adds some fancy header information.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
c6b35b7732 applications: Set subtitle of storage row
Set the subtitle of the storage row, instead of the secondary
label, as per latest designs.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
187a6f6d48 applications: Set subtitle in built-in row
As per latest design.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
dc4d8e262f applications: Group built-in row with storage
As per latest mockup
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
9e38b89752 applications: Make CcInfoRow subclass AdwActionRow
Same case as previous commit
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
0bab8a6217 applications: Make CcToggleRow subclass AdwActionRow
Makes paddings, margins, behavior consistent with other panels.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
1b42b854c2 applications: Remove CSS file
It is now unused
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
20bb6d8046 applications: Switch to AdwPreferencesPage & family
This brings a good cleanup in the UI file.
2022-01-20 17:24:25 -03:00
Georges Basile Stavracas Neto
f7d6c102c9 applications: Use AdwStatusPage for the empty page
Make it streamlined with other panels
2022-01-20 17:24:25 -03:00
Yosef Or Boczko
0b0b699c20 Update Hebrew translation 2022-01-20 19:13:08 +00:00
Mohammed Sadiq
99d4947c63 wifi: Use Paintables for QR code
This fixes showing qr code when the window is scaled.
2022-01-20 19:06:22 +05:30
Georges Basile Stavracas Neto
45c7207cc3 window: Improve transition between panels
Moving the headerbar to the panels accentuated a pre-existing
problem: transitioning between panels is flickery because we
immediately remove the old panel, while the new panel fades
in.

Improve this transition by delaying the removal of the old
panel to after the stack transition finishes.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
b11ea45a95 window: Remove unnecessary calls to gtk_widget_show
Widgets are visible by default on GTK4, and we certainly don't
hide panels by default, so remove them.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
2c3477176c applications: Switch ti AdwWindowTitle
It's generally a better widget to use in the headerbar, as
it takes care of styling for us.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
82c87578cd window: Install action to navigate main leaflet
This allows implementing the back button of panel titlebars
trivially, which is also done in this commit.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
4209c510da window: Remove panel headerbar widgetry
Now that panels handle their own titlebars, remove the corresponding
widgetry from CcWindow.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
bcd969f052 shell: Remove cc_shell_set_custom_titlebar
This is now unused.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
5017f3b21e shell: Remove cc_shell_embed_widget_in_header
It is now unused.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
4073c881d1 panel: Remove cc_panel_get_title_widget
This is now unused.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
b756f1e07a display: Rework titlebar handling entirely
Move all titlebars to the panel itself. Add an overlay with
the apply titlebar, which shows the apply / cancel titlebar
above whatever current titlebar is visible.

Add titlebars to the Night Light, and display settings pages.
2022-01-20 02:23:42 +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
Georges Basile Stavracas Neto
d2d3669d34 panel: Add titlebar to panels
Make CcPanel override GtkBuildable, and special-case two types
of children: "content" for the main content, and "titlebar" for
the titlebar. Those two child types exist merely for convenience,
since it's still possible to override the entire panel with
adw_bin_set_child().

For now, no panel is using any of these conveniences.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
3d06a71b38 panel: Add empty UI template file
The UI file currently has nothing, but we'll increment it soon
with the headerbar.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
48a9141bed panel: Add "title" property
Will be used by the panel titlebar to have the proper title.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
7476bef815 panel: Add 'folded' property
This property keeps track of whether the panel is folded
into the main leaflet. Will be used when moving headerbars
into the panel themselves.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
11d721b29d window: Cleanup UI file
Remove visible=True properties, receives-default, and an
outdated GTK version declaration.
2022-01-20 02:23:42 +00:00
Georges Basile Stavracas Neto
e225f8042f window: Remove unused struct field
We don't use panel_box anywhere.
2022-01-20 02:23:42 +00:00
Aleksandr Melman
1c8d819948 Update Russian translation 2022-01-19 17:24:35 +00:00
Hugo Carvalho
866ee64f0e Update Portuguese translation 2022-01-19 15:44:34 +00:00
Bastien Nocera
38cb514d56 ci: Rebuild CI image for gnome-bluetooth library changes
The gnome-bluetooth libraries got split in
https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/merge_requests/103
so we need to rebuild the CI image to integrate those changes.
2022-01-19 13:46:43 +01:00
Bastien Nocera
701de89ef3 bluetooth: Use the new Bluetooth UI library
Which only exports the Settings widget and nothing else.

See https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/merge_requests/103
2022-01-19 13:46:43 +01:00
Kukuh Syafaat
ca89ccf747 Update Indonesian translation 2022-01-19 09:34:02 +00:00
Robert Mader
375bbc333c display: Always show refresh rate
Refresh rates are an important information for users, even if they
can't change them.
This is especially true for cases where knowledge of the refresh
rate may influence the decission about the resolution to use.
Consider the example where a display may support `3840x2160@60Hz`
and `2560x1440@144Hz`. When choosing `3840x2160` as resolution,
the refresh rate will likely get hidden, making the user unaware
of the fact that they will maybe not get what they want (potentially
144Hz).

So follow the example of e.g. the sound panel where input and output
devices are listed in dropdowns, even if they are the only options
selectable.

Note: while this is a design change, for a big group of users this
won't actually change the default experience as Mutter until recently
had a bug to duplicate 60Hz modes in many cases. So most laptop users
already saw the refresh rate panel in previous Gnome versions,
dispite it having little use.

See also:
fb9564b87b
2022-01-18 23:48:42 +01:00
Yuri Chornoivan
68e9dbd447 Update Ukrainian translation 2022-01-18 21:24:58 +00:00
Georges Basile Stavracas Neto
9d324452c5 display: Use AdwLeaflet in CcDisplayPanel
This makes the transition between the main page, night light,
and display preferences more inline with other GNOME apps
using GTK4.
2022-01-18 17:03:14 +00:00
Georges Basile Stavracas Neto
06caebd0ba display: Remove SINGLE mode
We control monitors individually now, making the SINGLE mode
unnecessary.

Remove the SINGLE monitor mode, and replace it with JOIN if
required.
2022-01-18 17:03:14 +00:00
Georges Basile Stavracas Neto
1d6bab12cf display: Add enabled switch to CcDisplaySettings
This allow enabling and disabling each display individually.
2022-01-18 17:03:14 +00:00
Georges Basile Stavracas Neto
ec2632de92 display: Make CcDisplaySettings subclass GtkBox
We'll need more widgets under it soon.
2022-01-18 17:03:14 +00:00
Georges Basile Stavracas Neto
de758cc962 display: Show monitor settings in main page when single
When there's only one display, there's no need to redirect
users to another page. In this case, simply move the settings
widget to the main page.
2022-01-18 17:03:14 +00:00
Georges Basile Stavracas Neto
67e8c7f5c6 display: Add monitor rows to display settings group
They allow selecting a monitor to config, and navigating to
the monitor settings page.
2022-01-18 17:03:14 +00:00