Commit graph

33 commits

Author SHA1 Message Date
Hari Rana
ff832004a8 search: Add tooltip 2023-03-15 13:28:59 +00:00
Hari Rana
e8afa43dec
primary-menu: Rename to Main Menu
This renames the accessibility label of the primary menu to "Main Menu", and adds a tooltip text under that name, per https://developer.gnome.org/hig/patterns/controls/menus.html#primary-menus
2023-02-14 15:33:32 -05: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
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
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
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
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
6aa1361a5d cc-window.ui: Remove .view from sidebar
Sidebars should be the same color as window content
now.
2021-12-17 21:36:54 +00:00
Georges Basile Stavracas Neto
3f322e8553 shell: Allow panels set custom titlebars
This will be used by the Display panel to add a different
titlebar when confirming a new display configuration.
2021-12-14 22:34:21 -03:00
Georges Basile Stavracas Neto
30dcd1f973 window: Port to GTK4
- Inherit AdwApplicationWindow
 - GtkHeaderBar → AdwHeaderBar
 - Simplify the widget tree structure [1]
 - Drop custom key handler, use bindings instead

[1] It used to have a big messy chain of leaflets, headers,
and whatnot. Now it's simplified as:

 AdwLeaflet
 + ---------------- + --------------------------------- +
 |   AdwHeaderBar   |           AdwHeaderBar            |
 + ---------------- + --------------------------------- +
 |   GtkSearchBar   |                                   |
 + ---------------- +                                   |
 |                  |                                   |
 |                  |                                   |
 |                  |                                   |
 |                  |             GtkStack              |
 |   CcPanelList    |                                   |
 |                  |                                   |
 |                  |                                   |
 |                  |                                   |
 |                  |                                   |
 + ---------------- + --------------------------------- +
2021-12-14 22:34:21 -03:00
Adrien Plazas
0c9b828d6f window: Use HdyLeaflet:folded
Replace the dropped fold enum property by the folded boolean one, and
directly bind booleans in UI files where possible.
2020-07-20 08:05:45 +02:00
Adrien Plazas
080e145e23 window: Use HdyHeaderGroup:decorate-all
Replace the dropped focus property by the decorate-all boolean one.
2020-07-20 08:04:28 +02:00
Adrien Plazas
3f20b9b572 window: Use HdyLeaflet:transition-type
Replace the dropped mode and child specific transition type properties
by the unified one.
2020-07-20 08:04:28 +02:00
Robert Ancell
bb9fe942d1 window: Connect signals in swapped form 2019-09-23 14:00:42 +00:00
Robert Ancell
d843802f98 window: Remove unused variables 2019-09-23 14:00:42 +00:00
Robert Ancell
c2567b9c3e window: Replace child names with widget references
Using child names can cause code to be broken if a name is changed - this wont
be picked up as an error in the compiler.
2019-09-23 14:00:42 +00:00
Mohammed Sadiq
661df1b683 window: Disable selection when panel list is folded
When the panel list is folded, either the panel items list or the
panel itself is shown, not both.  And when the list is shown it
doesn’t mean anything for an item to be marked as selected.
2019-08-27 13:26:21 +00:00
Georges Basile Stavracas Neto
75f150d5a2 shell: Add position to cc_shell_embed_widget_in_header()
So we can control where the widget should be added to. The
main window only supports left and right positions.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/528
2019-05-21 12:59:36 -03:00
Adrien Plazas
638dc94a8d window: Use a HdyLeaflet
This allows the window to be folded to show either the sidebar or the
panel when not enough space is available.

This reverts commit 2854669f5c8280a32d0b5fa6c5399cc391ef06f3.
2019-03-29 18:33:36 +00:00
Adrien Plazas
f9d0decc3a shell: Bump the right panel width request to 360
This will help ensuring the shell's leaflets fold consistently for all
panels by setting a more reasonable minimum size constraint for the
right panel, so that more panels can meet it.
2019-03-29 18:12:03 +00:00
Adrien Plazas
5cc5a85bf9 window: Stop using HdyLeaflet
It is safer to not make the shell adaptive until all panels are, so this
drops usage of HdyLeaflet to make the shell adaptive.

This mostly reverts commit 0ca61a5bde.

Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/issues/375.
2019-02-21 11:35:35 +00:00
Adrien Plazas
90dd7651cd window: Ensure a constant minimum panel width
Ensure all panels take at least 300pt of width to ensure a minimum of
usability, readability of the panels and consistency of when the shell
folds itself.
2019-01-21 21:53:21 +00:00
Adrien Plazas
0ca61a5bde window: Use a HdyLeaflet
This allows the window to be folded to show either the sidebar or the
panel when not enough space is available.
2019-01-21 21:53:21 +00:00
Adrien Plazas
64ac458804 window: Use the sidebar style class on sidebar separators
This adds the sidebar style class to the sidebar separators to keep them
styled correctly.
2019-01-21 21:53:21 +00:00
Adrien Plazas
63dda56329 window: Use a HdyTitleBar
This will be needed for sliding animations to work well as we are going
to use HdyLeaflet in the titlebar.
2019-01-21 21:53:21 +00:00
Adrien Plazas
77aece9920 shell: Synchronize the separators
This will help the separators to behave properly with leaflets, as we
are going to introduce some in some following commits.
2019-01-21 21:53:21 +00:00
Adrien Plazas
4c813fa1d8 shell: Synchronize the right panel width
This will help the right panel to behave properly with leaflets, as we
are going to introduce some in some following commits.
2019-01-21 21:53:21 +00:00
Adrien Plazas
9d9c547649 shell: Use a HdyHeaderGroup
Handle the header bars' decoration layouts with a HdyHeaderGroup to
simplify the code.
2019-01-21 21:53:21 +00:00
Georges Basile Stavracas Neto
8d2265c6b9
window: Properly update headebar buttons and title
With the new sidebar view in place, a new problem arose: we
need the current panel to be configured to update the title,
but cc_panel_list_add_sidebar_widget() changes the view while
activating the panel. That makes Settings crash.

Fix that by explicitly updating the headerbar widget, instead
of using notify::view of the panel list.
2018-11-16 19:25:13 -02:00
Robert Ancell
c0f41daff0 shell: Remove the lock button from the shell
Only the date time panel used it, all other panels add their own shell using
cc_shell_embed_widget_in_header which was added after the date time panel was
written. Update the date time panel to use this method.
2018-10-18 00:25:40 +00:00
Robert Ancell
58d5c9411d shell: Remove AppMenu
https://wiki.gnome.org/Initiatives/GnomeGoals/AppMenuRetirement
2018-10-17 22:14:27 +00:00
Robert Ancell
f3e642da56 shell: Drop unused no-show-all properties 2018-10-11 22:21:34 +00:00
Georges Basile Stavracas Neto
a8673b06c7 shell: Rename .ui files to match .c files
To keep it clean and well organized, rename the .ui files
(window.ui and panel-list.ui) to have the 'cc-' prefix and
match their .c counterparts.
2018-07-18 21:34:09 +00:00
Renamed from shell/window.ui (Browse further)