Commit graph

772 commits

Author SHA1 Message Date
Mohammed Sadiq
717cc3e0fc log: Show logs from Bluetooth panel
Logs from Bluetooth panel have "Bluetooth" as G_LOG_DOMAIN.
Show them by default on -v
2023-01-25 09:55:34 +00:00
Jake Dane
37a579b6b0 Replace "application" with "app"
This is part of an initiative to use "app" instead of "applications",
see: https://gitlab.gnome.org/Teams/Design/initiatives/-/issues/123

Redo of !1539 that was closed by a ghosting user.

Replaces "application" with "app" in user facing strings in these
panels:

- applications
- camera, location, microphone
- default-apps
- multitasking
- notifications
- removable-media
- search
- usage
- user-accounts

Fixes: #2208.
2023-01-23 11:10:28 +00:00
Bastien Nocera
727a88a3bd shell: Let libX11 initialise threads itself
Require a version of libX11 new enough that it will initialise threads
support itself.

See afcdb6fb00
2023-01-23 11:04:36 +00:00
Georges Basile Stavracas Neto
20a010d0f6 Revert "panel-list: Switch to main list if custom sidebar is not set"
This reverts commit bc919b82c0.
2023-01-09 16:40:55 -03:00
sunflowerskater
0dd780f1b7 cc-window: Don't trigger main search when pressing CTRL+S
CTRL+S is reserved for the "Save" action. HIG recommends to use CTRL+F to trigger search:
https://developer.gnome.org/hig/reference/keyboard.html?highlight=Find

Since CTRL+F already triggers main search, this commit just removes the CTRL+S shortcut.

Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2280
2023-01-06 21:19:02 -03:00
Mohammed Sadiq
bc919b82c0 panel-list: Switch to main list if custom sidebar is not set
If the previously shown panel had a custom sidebar, we were not switching
back to the main list if the currently shown panel doesn't have one.

This will result in the sidebar having empty content.

Fix it by always switching to main sidebar view if no custom sidebar widget
is set.

Fixes #2261
2023-01-06 12:37:45 +00:00
Felipe Borges
294156c0f9 Drop most uses of deprecated gtk_style_context_add/remove_class
GtkStyleContext will be deprecated in gtk 4.10.
https://docs.gtk.org/gtk4/class.StyleContext.html

This preserves code blocks where additional GtkStyleContext operations
were used, such as gtk_style_context_save/restore.
2023-01-05 18:55:51 +00:00
Felipe Borges
22b5686943 thunderbolt: Hide panel if there's no thunderbolt hardware
Same logic as the Wacom tablet panel.

Fixes #612
2022-12-15 14:02:02 +01:00
Mohammed Sadiq
3b121805ed log: Improve logging
The 'tracing' build option is no longer needed.  And the verbosity
of logs can be set by providing '-v' multiple times.
2022-12-01 11:44:17 +00:00
sabriunal
a1192adc9f help-overlay: remove visible property names
Due to widgets are visible by default on GTK4
remove visible property names.

Source: https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkwidget.c#L1275
2022-11-30 12:57:29 +00:00
sabriunal
d73ec42d39 help-overlay: Add missing shortcuts
This patch adds two missing shortcuts to help-overlay

- Help (F1)
- Keyboard Shortcuts (CTRL+?)

Fixes: #839
2022-11-29 20:21:29 +00:00
Felipe Borges
142318eede flatpak, shell: Make desktop file honor "Devel" app_id 2022-11-24 14:16:47 +01: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
Barnabás Pőcze
f00fd653cb object-cache: Avoid use after free of task error
The error should not be touched after passing it to
`g_task_return_error()` as noted by its documentation:

  Note that since the task takes ownership of @error, and since the
  task may be completed before returning from g_task_return_error(),
  you cannot assume that @error is still valid after calling this.

However, previously, the code did try to free error since the
`local_error` was defined with `g_autoptr(GError)`.
2022-10-19 19:52:21 +02:00
Mohammed Sadiq
2dbc195d77 panel-list: Select panel iff non-folded when search is cancelled
If the window is folded, the previous panel shouldn’t be shown when search
is cancelled. The panel selection list should be shown instead.
2022-08-17 09:34:16 +00:00
Mohammed Sadiq
e6aa605bd0 shell: Remove no longer used icon 2022-08-17 08:09:15 +00:00
Marco Trevisan (Treviño)
b327301951 Panels: Rename lock panel into screen panel
This was designed some time ago [1] but never actually implemented, so:
 - Change the screen lock section to "screen"
 - Move the screen section up, so it's next to the other types of
   hardware
 - Added a Screen lock section in there

[1] https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/909#note_737827
2022-07-28 22:47:14 +00:00
Richard Hughes
e11929e0c1 firmware-security: Hide the panel when using a VM
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1972
2022-07-21 13:21:12 +01:00
Kate Hsuan
69598b9e08 Add Firmware Security panel
The Firmware Security panel exposes the host security levels
and details. The information is generated by fwupd. The panel
also exposes hardware configuration changes to pinpoint the
configuration changing time.

Currently this panel shows:

 - HSI and secure boot status
 - Details of HSI and secure boot
 - Configuration changelog
 - Digested security level
 - Extended protection
2022-06-27 13:53:30 -03:00
Benjamin Berg
cfc5fdb7c6 shell: Deactivate old panel before creating new one
We need to cancel internal operations before starting to create a new
panel, otherwise panels might be creating the same object for the cache
in parallel and this is not supported by the object cache.

The alternative to this would be to handle this inside the object
store to allow parallel creation of the same key.

Fixes: #1685
2022-06-20 03:18:30 +00:00
Lukáš Tyrychtr
ab852ca63c Make the presentation of the main panel list a little bit nicer by adding an a11y label 2022-06-19 23:02:54 +00:00
Adrien Plazas
d548309f34 info-overview-panel: Use the external link icon for the updates link
This makes it explicit it opens another application to perform the
action.
2022-05-12 23:04:51 +00:00
Robert Ancell
7d4c8346ca online-accounts: Rename panel class to match filename 2022-05-11 14:04:18 +12:00
Bastien Nocera
95de2049c7 shell: Initialise locale early
Otherwise glib will make internal calls before setlocale is called:
** (process:1124144): WARNING **: 10:16:58.983: dcgettext("(null)", "", 5) called before setlocale()

 #0  0x00007ffff7c80f77 in g_logv () at /lib64/libglib-2.0.so.0
 #1  0x00007ffff7c81233 in g_log () at /lib64/libglib-2.0.so.0
 #2  0x00007ffff7fbb6c6 in dcgettext (__domainname=<optimized out>, __msgid=0x7ffff7ce6c5a "", __category=<optimized out>) at ../../../../Projects/jhbuild/gettext-pseudolocale/gettext-pseudolocale.c:194
 #3  0x00007ffff7c6478e in _g_dgettext_should_translate () at /lib64/libglib-2.0.so.0
 #4  0x00007ffff7c6484b in g_dgettext () at /lib64/libglib-2.0.so.0
 #5  0x00007ffff7e98974 in g_application_class_intern_init () at /lib64/libgio-2.0.so.0
 #6  0x00007ffff7d9cfb8 in g_type_class_ref () at /lib64/libgobject-2.0.so.0
 #7  0x00007ffff7d9cc95 in g_type_class_ref () at /lib64/libgobject-2.0.so.0
 #8  0x00007ffff7d9cc95 in g_type_class_ref () at /lib64/libgobject-2.0.so.0
 #9  0x00007ffff7d9cc95 in g_type_class_ref () at /lib64/libgobject-2.0.so.0
 #10 0x00007ffff7d8671a in g_object_new_valist () at /lib64/libgobject-2.0.so.0
 #11 0x00007ffff7d867fd in g_object_new () at /lib64/libgobject-2.0.so.0
 #12 0x0000000000449bcc in cc_application_new () at ../../../../Projects/jhbuild/gnome-control-center/shell/cc-application.c:294
 #13 0x0000000000448fa6 in main (argc=1, argv=0x7fffffffd138) at ../../../../Projects/jhbuild/gnome-control-center/shell/main.c:55
2022-05-11 00:36:27 +02:00
Simon McVittie
d27d3df268 appdata: Correct name of launchable
Fixes: acd59aec "Rename app-id to org.gnome.Settings"
Resolves: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1766
Signed-off-by: Simon McVittie <smcv@debian.org>
2022-04-15 10:50:05 +00:00
Sophie Herold
6624179102 appdata: Update screenshots 2022-03-18 10:33:22 +00:00
Felipe Borges
7f8e90a966 user-accounts: Port to gtk4/libadwaita implementing the new design
https://gitlab.gnome.org/Teams/Design/settings-mockups/-/raw/master/users/users.png
2022-02-08 13:29:56 +00:00
Georges Basile Stavracas Neto
acd59aec65 Rename app-id to org.gnome.Settings
Rename the app-id to org.gnome.Settings since this is what
we've been calling it for many years now. Adjust all files
that derive from the app-id, such as the desktop file, D-Bus
service file names, search providers, GSettings schemas, to
match that.

Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/344
2022-01-21 13:08:50 +00:00
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
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
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
Georges Basile Stavracas Neto
946417990c online-accounts: Port to GTK4
This is a massive rewrite of the panel. Because we can't have
nice things and WebKit2GTK for GTK4 won't be ready in time,
rework the panel to spawn a new subprocess with a dialog that
handles online accounts - both creation and editing.
2022-01-17 19:42:10 -03: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
Christopher Davis
617341591b cc-window: Use AdwLeaflet's navigation API
This should be preferred over `set_visible_child ()`
2022-01-07 13:43:50 +00:00
Christopher Davis
494f8a0f14 cc-window: Enable leaflet navigation
This enables touchpad/touchscreen gestures, alt+arrows,
and mouse buttons.
2022-01-07 13:43:50 +00:00
Mohammed Sadiq
fbb2f98c44 wwan: Port to GTK4 2022-01-06 15:04:28 +00:00
Christopher Davis
4e2706fc6f cc-window: Re-enable type-to-search
This was lost in the GTK4 port. This commit uses
GtkSearchBar's API to capture events.

See https://gnome.pages.gitlab.gnome.org/gtk/gtk4/method.SearchBar.set_key_capture_widget.html
2022-01-05 22:31:17 +00:00
Christopher Davis
f1d5a0e71e cc-window: Enable scroll-to-focus on panel list
GTK4 doesn't do this by default, so we need to make sure
to specify it on our GtkViewport.
2022-01-05 22:31:17 +00:00
Christopher Davis
58e3d7873a cc-panel-list: Adjust margins for sidebar rows
This matches the mockups and Patterns.
2021-12-17 21:36:54 +00:00
Christopher Davis
d72d23a1cd cc-panel-list: Remove use of sidebar-icon style
Generally sidebar icons aren't dimmed anymore.
2021-12-17 21:36:54 +00:00