Summary of changes
- Set background in overview
- Allow to unfullscreen fullscreen apps from the overview
- Handle Cell broadcast messages. Shown as system modal dialog
(needs yet unreleased ModemManger / libmm-glib)
- Use AdwPreferencesDialog for prefs plugins giving more mobile
friendly dialogs
- Notification style fixes
- Animate hiding notification banners
- Internal cleanups and fixes
- Issues fixed:
- Contributors:
- Gotam Gorabh
- Guido Günther
- Gotam Gorabh
i18n updates
- UI translations:
- Alexandre Franke (fr)
- Ekaterine Papava (ka)
- Hugo Carvalho (pt)
- Jordi Mas i Hernandez (ca)
- Pierre Michel Augustin (ht)
- Tim Sabsch (de)
- Yaron Shahrabani (he)
- twlvnn kraftwerk (bg)
- Alexandre Franke (fr)
Detailed changes
phosh (0.44.0) experimental; urgency=medium
.
[ Guido Günther ]
* notification: Port to PhoshAnimation.
This simplifies the code and will make adding a slide-up animation more
straight forward.
We move the start of the animation to the map vfunc as PhoshAnimation
requires the widget to be mapped.
* app-grid-base-button: Fix indent
* system-modal-dialog: Don't process key event directly.
Less code and helps the GTK4 migration. Also makes sure we don't
interfere with other event handling.
Can be reworked to use gtk_widget_class_add_binding_action then.
* top-panel: Don't process key event directly.
Less code and helps the GTK4 migration. As we don't have a "closed"
signal we'll use "activated" which is enough to make `PhoshShell` toggle
fold.
Can be reworked to use gtk_widget_class_add_binding_action then.
* top-panel: Move settings upwards.
As we don't have a dedictated "close" signal "activate" will do.
This allows us to drop the `packaging` elements which eases the reading
flow and eases the GTK4 transition.
* app-grid-base-button: Make abstract.
It can only serve as base class for other buttons
* app-grid-base-button: Remove css name.
We style the derived classes.
* app-grid-button: Use alpha on activation and search too.
Amends df0f30580 ("app-grid-button: Use alpha when focused")
* app-grid-folder-button: Let style match the app-grid-button.
We use a slightly darker style to make the activation visible
Amends df0f30580 ("app-grid-button: Use alpha when focused")
* app-grid: Add outline around selected search item.
Makes it easier to identify when using a background
* build: Make cell-broadcast headers private
* shell: Drop unused header
* packaging: Lower phoc dependency.
0.40~rc1 is recent enough
* ticket-box: Port prefs to GtkFileDialog.
This gives us the portal which is adaptive.
* splash-manager: Use GDesktop's enum.
It has been released a while ago.
* mode-manager: Drop unused defines
* home: Indicate transitioning state.
Indicate when the home is transitioning between folded and unfolded.
* top-panel: Set background on top bar.
This avoids showing regular windows under the top bar which can be
confusing.
While this is not very visible in auto-maximize mode it can be seen in
floating mode or when e.g. revealing the shell over fullscreen windows.
We add an outer container with background to the top bar so we can keep
setting the margins on the top-bar itself.
The alternatives (using padding or to setting the marign on the inner
elements) are more complicated as we move elements around due to notch
avoidance and the margin also changes due to that. We would thus need to
generate style classes on the fly or determine the elements dynamically
which is more fragile.
We can make things slightly nicer by setting the solid
background a bit later (when the splash closes) but let's do that with
when zooming in the splash
(https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1264)
as this will supply the necessary plumbing to phosh shell.
.
[ Gotam Gorabh ]
* notification-banner: Add slide-up animation to banner.
Add slide-up animation to the notification-banner so that
it will disappear with slide-up animation.
Closes: https://gitlab.gnome.org/World/Phosh/phosh/-/issues/377
* notification-frame: Don't return bool for notify signal handler
.
[ Hugo Carvalho ]
* Update Portuguese translation
.
[ Alexandre Franke ]
* Update French translation
.
[ twlvnn kraftwerk ]
* Update Bulgarian translation
Required versions of related projects
- glib >= 2.72.0
- gtk3 >= 3.24.40
- gtk4 >= 4.14
- phoc >= 0.43.0
- squeekboard >= 1.43.0
- feedbackd >= 0.5.0
- gnome-calls >= 46.3 for location based emergency calls and feedbackd fix
- wl-clipboar >= 2.2.1
- pipewire: >= 0.3.73 for proper audio icons
- xdg-desktop-portal >= 1.17.1 to honor portal configuration
- xdg-desktop-portal-phosh >= 0.43.0 for accent colors in apps
- phosh-mobile-settings >= 0.43.0
- phosh-tour >= 0.41.0
- gnome-settings-daemon >= 46 to not show the sleep notification on phones
- gsettings-desktop-schemas >= 47 for accent colors
Required patches that are merged upstream but not yet in a released version:
Required patches that aren't merged upstream yet:
- wlroots (>= 0.12.0): Layer shell restrictions. See https://source.puri.sm/Librem5/phosh/-/issues/422. Otherwise phosh will fail to start.
- gtk: xdg-activation-0-serial. Otherwise startup splash always times out
- gnome-keyring: Accessing login keyring after first login fails
Recommended patches on other projects
Patches that are merged upstream but not yet in a released version:
(none)
Patches that aren't merged upstream yet:
- linux: HKS support (not yet submitted): https://source.puri.sm/Librem5/linux-next/-/merge_requests/77
- gtk4 adaptiveness (not yet submitted): https://source.puri.sm/Librem5/debs/gtk4/-/tree/pureos/byzantium/debian/patches/pureos/adaptive
(Not needed for phosh itself but to make GTK4 applications adapt better)
- gtk3 adaptiveness (not yet submitted): https://source.puri.sm/Librem5/debs/gtk/-/tree/pureos/byzantium/debian/patches/pureos/adaptive
(Not needed for phosh itself but to make GTK3 applications adapt better)
- gnome-screenshot adaptiveness: https://gitlab.gnome.org/GNOME/gnome-screenshot/-/merge_requests/69
(Not needed for phosh itself but to make screenshots easier)
- vte: Ignore menu key: https://gitlab.gnome.org/guidog/vte/-/commit/11b29ca2aa2f1715579519699ec17245a411ee0e . See https://gitlab.gnome.org/GNOME/vte/-/issues/2644 (as project doesn't allow merge requests) (Not needed for phosh itself but to get copy/paste menu in e.g. gnome-console)
- gnome-clocks: Feedbackd support https://gitlab.gnome.org/guidog/gnome-clocks/-/tree/lfb
See meson.build and debian/control for build-time and run-time dependencies.
For older releases
These are only some of the required/recommended patches. If in doubt please use the released versions above:
- gtk3: Better touch accuracy (affects phosh, phosh-osk-stub, etc): https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6668 (contained in 3.24.40)
- gnome-text-editor: Hint word completion (so e.g. OSKs know its sensible to use it): https://gitlab.gnome.org/GNOME/gnome-text-editor/-/merge_requests/132 (contained in 46)
- gtk4: Touch DND fixes: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6608 (contained in 4.14)
- gnome-clocks: Allow for lockscreen actions: https://gitlab.gnome.org/GNOME/gnome-clocks/-/merge_requests/277 . Needed to turn off alarms on the lock screen.
- glib (contained in 2.72.0): Notification categories
- gnome-settings-daemon: Claim light sensor async as otherwise screen unblank can take a noticable amount of time
- gsettings-desktop-data (contained in 42): Dark theme toggle
- gnome-control-center (contained in 42): display: Use ComboBox when folded. Otherwise fractional scaling doesn't show all values.
- gnome-control-center (contained in 42): connection-editor: Allow dialog to resize
- gtk4 (contained in 4.6.2): xdg-activation
- gtk4 (contained in 4.6.2): osk unfold
- gtk4 (contained in 4.6.2): osk unfold
- gtk3 (contained in 3.24.30):gtkapplication-dbus: Fetch inital screen saver state async. Otherwise gnome-calls and phosh will block on each other on startup blocking the whole UI.
- geoclue (contained in 2.6.0): Add phosh
- wlroots (contained in 0.16.0): xdg-activation: Allow to submit tokens. Needed for launch splash.
- wlroots (contained in 0.16.0): cancel touches
- xdg-desktop-portal-wlr (contained in 0.6.0): For screen sharing: https://github.com/emersion/xdg-desktop-portal-wlr/pull/192
- pipewire: Add icon_name properties to ucm: https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1646
- wl-clipboard: Don't require gtk_shell >= 4
- gnome-settings-daemon: Drop sleep notification, otherwise suspend might fail. See https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/issues/656