summaryrefslogtreecommitdiff
path: root/shell
Commit message (Collapse)AuthorAgeFilesLines
* object-cache: Avoid use after free of task errorBarnabás Pőcze2022-10-191-1/+1
| | | | | | | | | | | | | | 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)`. (cherry picked from commit f00fd653cb7b8bc33cc84615b1c75ff878c847b0)
* panel-list: Select panel iff non-folded when search is cancelledMohammed Sadiq2022-08-171-3/+13
| | | | | If the window is folded, the previous panel shouldn’t be shown when search is cancelled. The panel selection list should be shown instead.
* shell: Remove no longer used iconMohammed Sadiq2022-08-172-3/+0
|
* Panels: Rename lock panel into screen panelMarco Trevisan (Treviño)2022-07-281-2/+2
| | | | | | | | | | 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
* firmware-security: Hide the panel when using a VMRichard Hughes2022-07-211-1/+2
| | | | Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1972
* Add Firmware Security panelKate Hsuan2022-06-272-0/+3
| | | | | | | | | | | | | | | 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
* shell: Deactivate old panel before creating new oneBenjamin Berg2022-06-203-0/+12
| | | | | | | | | | | 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
* Make the presentation of the main panel list a little bit nicer by adding an ↵Lukáš Tyrychtr2022-06-191-0/+3
| | | | a11y label
* info-overview-panel: Use the external link icon for the updates linkAdrien Plazas2022-05-122-0/+3
| | | | | This makes it explicit it opens another application to perform the action.
* online-accounts: Rename panel class to match filenameRobert Ancell2022-05-111-2/+2
|
* shell: Initialise locale earlyBastien Nocera2022-05-111-0/+3
| | | | | | | | | | | | | | | | | | | | 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
* appdata: Correct name of launchableSimon McVittie2022-04-151-1/+1
| | | | | | 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>
* appdata: Update screenshotsSophie Herold2022-03-189-8/+4
|
* user-accounts: Port to gtk4/libadwaita implementing the new designFelipe Borges2022-02-081-2/+2
| | | | https://gitlab.gnome.org/Teams/Design/settings-mockups/-/raw/master/users/users.png
* Rename app-id to org.gnome.SettingsGeorges Basile Stavracas Neto2022-01-2111-15/+15
| | | | | | | | | | 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
* window: Improve transition between panelsGeorges Basile Stavracas Neto2022-01-202-5/+27
| | | | | | | | | | 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.
* window: Remove unnecessary calls to gtk_widget_showGeorges Basile Stavracas Neto2022-01-201-2/+0
| | | | | Widgets are visible by default on GTK4, and we certainly don't hide panels by default, so remove them.
* window: Install action to navigate main leafletGeorges Basile Stavracas Neto2022-01-202-0/+15
| | | | | This allows implementing the back button of panel titlebars trivially, which is also done in this commit.
* window: Remove panel headerbar widgetryGeorges Basile Stavracas Neto2022-01-202-67/+0
| | | | | Now that panels handle their own titlebars, remove the corresponding widgetry from CcWindow.
* shell: Remove cc_shell_set_custom_titlebarGeorges Basile Stavracas Neto2022-01-203-41/+0
| | | | This is now unused.
* shell: Remove cc_shell_embed_widget_in_headerGeorges Basile Stavracas Neto2022-01-203-91/+0
| | | | It is now unused.
* panel: Remove cc_panel_get_title_widgetGeorges Basile Stavracas Neto2022-01-203-21/+0
| | | | This is now unused.
* panel: Add titlebar to panelsGeorges Basile Stavracas Neto2022-01-203-2/+165
| | | | | | | | | | 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.
* panel: Add empty UI template fileGeorges Basile Stavracas Neto2022-01-203-0/+10
| | | | | The UI file currently has nothing, but we'll increment it soon with the headerbar.
* panel: Add "title" propertyGeorges Basile Stavracas Neto2022-01-204-1/+19
| | | | Will be used by the panel titlebar to have the proper title.
* panel: Add 'folded' propertyGeorges Basile Stavracas Neto2022-01-204-6/+82
| | | | | | This property keeps track of whether the panel is folded into the main leaflet. Will be used when moving headerbars into the panel themselves.
* window: Cleanup UI fileGeorges Basile Stavracas Neto2022-01-201-7/+0
| | | | | Remove visible=True properties, receives-default, and an outdated GTK version declaration.
* window: Remove unused struct fieldGeorges Basile Stavracas Neto2022-01-201-2/+0
| | | | We don't use panel_box anywhere.
* online-accounts: Port to GTK4Georges Basile Stavracas Neto2022-01-171-2/+2
| | | | | | | 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.
* meson: drop unused argument for i18n.merge_file()Jan Beich2022-01-072-2/+0
| | | | | | | | | 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. [...]
* cc-window: Use AdwLeaflet's navigation APIChristopher Davis2022-01-071-17/+6
| | | | This should be preferred over `set_visible_child ()`
* cc-window: Enable leaflet navigationChristopher Davis2022-01-071-7/+11
| | | | | This enables touchpad/touchscreen gestures, alt+arrows, and mouse buttons.
* wwan: Port to GTK4Mohammed Sadiq2022-01-061-3/+3
|
* cc-window: Re-enable type-to-searchChristopher Davis2022-01-051-0/+1
| | | | | | | 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
* cc-window: Enable scroll-to-focus on panel listChristopher Davis2022-01-051-4/+9
| | | | | GTK4 doesn't do this by default, so we need to make sure to specify it on our GtkViewport.
* cc-panel-list: Adjust margins for sidebar rowsChristopher Davis2021-12-172-4/+4
| | | | This matches the mockups and Patterns.
* cc-panel-list: Remove use of `sidebar-icon` styleChristopher Davis2021-12-172-8/+0
| | | | Generally sidebar icons aren't dimmed anymore.
* cc-window.ui: Remove .view from sidebarChristopher Davis2021-12-171-3/+0
| | | | | Sidebars should be the same color as window content now.
* network: Port to GTK4Georges Basile Stavracas Neto2021-12-141-5/+5
| | | | | | | | | | | | | | Boy this was hard. To ease the pain of porting wireless-security to GTK4, add a new WsFileChooserButton class that mimics the behavior of a button that triggers a filechooser, as per the migration guide suggests. There were lots of GtkGrids, so the diff is particularly horrendous. Sorry. This needs serious testing before landing.
* wacom: Port to GTK4Georges Basile Stavracas Neto2021-12-141-3/+3
| | | | | | | | | | | | | | | | | | | Many part of this commit were made by Carlos Garnacho <carlosg@gnome.org> WIP wacom: Port to GTK4 Lots of stuff missing and probably broken. wacom: Port CcDrawingArea input to gestures We have a handy GtkGestureStylus to use here, which avoids direct handling of GdkEvents. wacom: Update current stylus tracking to GtkGestureStylus Use the ::proximity signal to notice when we are being hovered with a tablet stylus, and look up the tool from there.
* display: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
|
* shell: Allow panels set custom titlebarsGeorges Basile Stavracas Neto2021-12-144-30/+80
| | | | | This will be used by the Display panel to add a different titlebar when confirming a new display configuration.
* [WIP] color: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | | This is very rough still. The calibration code is entirely untested.
* background: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | | CcBackgroundPreview required some layout changes, but overall a pretty easy port.
* region: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | An uneventful port.
* datetime: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | | Of particular relevance, the timezone map was massively cleaned up. It is much more pleasant to use now.
* keyboard: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | Drop the wm-common insanity.
* printers: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | | | | Fortunately for us GtkTreeView still operates pretty much exactly like in GTK3. Other than that, it's a dense junction of all that we've done so far to port other panels.
* bluetooth: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | This needs libgnome-bluetooth-2.0, which was recently merged.
* thunderbolt: Port to GTK4Georges Basile Stavracas Neto2021-12-141-2/+2
| | | | | The C code of this panel is just so. damn. good. Porting it was a breeze.