c33f18c4d5
1) fix restacking log warning 2) use connectObject API
2024-04-10 09:26:25 -04:00
f57f805dd5
Update indicator on current-realm property change
...
...even if WorkspaceContext does not change.
2024-04-10 09:24:32 -04:00
7453b968f5
don't use deprecated clutter container api
2024-04-10 09:23:24 -04:00
9a3d0d6df0
Convert to use ESM modules
...
See: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1499
2024-04-05 11:14:39 -04:00
f270082ca9
Refactor how workspaces are tracked upon workspace context change.
2024-04-05 11:14:39 -04:00
c6af4171e8
Change to use Promise API instead of callbacks
2024-04-05 11:14:39 -04:00
4fcc777362
Use connectObject() and adopt to style in search.js
2024-04-05 11:14:39 -04:00
8250b4203b
Avoid negative page values
2024-04-05 11:14:39 -04:00
ac472d0373
Map windows to realms by calling realmsd pid lookup method
2024-04-05 11:14:39 -04:00
a59498b198
Don't display label on full-screen windows
2024-04-05 11:14:39 -04:00
a7ef08bd4b
Ensure that Main.overview._overview exists before accessing it.
2024-04-05 11:14:39 -04:00
2d2fb72c0d
Citadel changes to gnome-shell
2024-04-05 11:14:25 -04:00
Sebastian Keller
04fd3a4277
keyboard: Specify anchor when deleting characters via timeout
...
6e80f858c dropped the second cursor argument used as anchor when calling
the delete function from the timeout. This was causing the early check
that was trying to detect when deleting from the beginning of the text
to fail, because anchor was now undefined.
Fixes: 6e80f858c ("keyboard: Move backspace key handling to KeyboardController")
Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7484
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3239 >
2024-03-15 11:52:37 +01:00
Sebastian Keller
8616ec00a0
magnifier: Stop using Clutter.StaticColor
...
This was removed from mutter in commit 72c2d8913. Instead of manually
creating a white color, we can just rely on ClutterTextureNode creating
one for us when passing null.
Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7480
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3237 >
2024-03-13 22:01:39 +00:00
Joan Torres
5d58e41cbc
loginDialog: Fix conflicting session notification
...
The internal notification API changed between the time the
code was originally written and the time the change was
merged. Belatedly adapt to those changes.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3236 >
2024-03-13 17:32:28 +00:00
Julian Sparber
fd58294ec3
messageTray: Ensure that a notification is removed from Source correctly
...
We need to make sure that we always emit the `notification-removed`
signal on the source object when a notification is removed or
destroyed.
Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7463
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3229 >
2024-03-13 11:21:35 +00:00
Jonas Dreßler
a64424864b
Revert "main: Only restore key focus on pop when modal actor is still focused"
...
This one caused a regression and now keys appear to get stuck while raising
the screenShield, so revert it. Hopefully we can fix the original problem in
a better way next cycle by tracking key focus changes internally in
ClutterGrab.
https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7446
This reverts commit 4d544d7b5614cd33bf60c1b610f8b81546955fbb.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3231 >
2024-03-08 19:45:20 +00:00
Aleksandr Mezin
e1db7e368f
messageList: Fix TypeError
in Message.useBodyMarkup
setter
...
Setting `useBodyMarkup` to `true` fails with:
JS ERROR: TypeError: this.setBody is not a function
set useBodyMarkup@resource:///org/gnome/shell/ui/messageList.js:585:14
Fixes: f0e863f529 "messageList: Use GObject properties for Message"
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3232 >
2024-03-08 19:36:50 +00:00
Jonas Dreßler
fc58f6f053
keyboard: Don't fall back to next model after we found a valid one
...
The fallback for creating models is to try the next one in case the current
one can not be created, until we fall all the way back to the US layout.
Obviously we shouldn't fall back in case creating the model actually worked,
so break out of the loop and then use the new model.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3230 >
2024-03-07 12:02:10 +00:00
Carlos Garnacho
a60d454cca
endSessionDialog: Disconnect signal from the right object
...
This signal id comes from a signal handler on self, use the right
object when disconnecting it. Spotted by Eugene Popov at
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2140#note_2039721 .
Fixes: b3f5fdcb6 ("endSessionDialog: Connect to events in the dialog itself")
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3225 >
2024-03-06 11:35:35 +01:00
Julian Sparber
262fb191b1
notification: Allow expanding notification in calendar drawer
...
This adds a button to expand a notification. This makes most of
the body readable (limited to 6 lines) and the action buttons available
to the user.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
dc4e2e8114
messageList: Always show close button when message is closable
...
Once we add a expand button, which we want to show always, the close
button would look odd if it hides automatically.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
274d8be7b9
messageList: Use single actor to display message body
...
Using two actor to display collapsed and expanded body creates a small
flicker when switching between the actors, since we can resize the actor
we can just use one actor and resize it.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
9bf280bbd2
messageTray: Drop 'update()' from MessageTray.Notification
...
Since MessageTray.Notification now uses GObject properties we use
`Object.set()` to update multiple properties and the `update()` method
isn't needed anymore.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
3ef86b279a
messageTray: Always play sound when a notification is updated
...
We had a policy (see [1]) to replay sound for updated notification only
when the sound changed. But this behavior never worked because of a bug
in the code. Since nobody noticed in years, let's remove it and always
allow the sound to be played.
[1] https://bugzilla.gnome.org/show_bug.cgi?id=642831#c37
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
cc60ce7f94
notification: Stop using 'update()' from MessageTray.Notification
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
b746ab05b3
notification: Use full potential of MessageTray.Notification properties
...
Since MessageTray.Notification now uses GObject properties we can use
property bindings and specific notify signals.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
f0e863f529
messageList: Use GObject properties for Message
...
This will allow us to use property bindings.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
ffaec5615a
messageList: Directly take an GioIcon as image for a message
...
There is pretty much no value gained by allowing to use any actor to display
an image, so just don't allow it since it simplifies the code and CSS.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
cb1b54b954
notification: Remove old setter methods of MessageTray.Notification
...
We now have nice GObject properties for the properties that can be set
with in different ways, since we already changing the API so much let's
drop the old setter methods.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
1d1d9806f3
notification: Stop using old setter methods of MessageTray.Notification
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
9ac4c7da53
messageTray: Automatically update Notification's datetime on property changes
...
Setting the `datetime` property whenever a notification is updated is
tedious and error-prone. Therefore, whenever properties, other then
`acknowledged` and `datetime`, of a notification change update the
`datetime` property to the current time.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
d54219c098
messageTray: Only take params in Notification
constructor
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
251a5e9d20
messageTray: Use GObject properties for Notification
...
This will allow us to use property bindings, and it's much clear which
properties a `Notification` has.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
34f05b075b
messageTray: Let the tray decide whether to show a banner
...
Always use the same code path to add new messages to a source, and
let the `MessageTray` decide whether it shows a banner.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
940b658071
messageTray: Drop NotificationBanner
...
We want to have the same widget used to display the notification in the
calendar popover as in the messageTray, so let's actually use the same
widget.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
83ea818a0a
messageTray: Drop createBanner()
...
This removes the `createBanner()` method on `Notification` and `Source`.
Since we want to use the same widget for the calendar and the banner,
let's not allow to create custom widgets just for the banner.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
d44adf3b78
notifications: Add buttons to Calendar.NotificationMessage via actions
...
Since we also want to show the buttons in the calendar move the
code to add buttons/actions from `MessageTray.NotificationBanner` to
`Calendar.NotificationMessage`.
As nothing uses custom buttons that aren't backed by actions anymore,
remove that bit of the public API.
Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7099
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
7ff5f4ea51
messageTray: Add action-added/action-removed signals to Notification
...
Add signals so that the message actor can update the it's action when
they change.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
6d6ac1372a
components/autorunManager: Use notification actions API
...
Stop using custom buttons for notification actions. The only reason to
use custom buttons was so that we could add icons next to the button
label, if we really need the icons next to the label we can add icons to
the notification API.
By using the actions API we can ensure that buttons always look the
same without additional work.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
050e4e9a6e
messageTray: Use new notification-removed
signal to cleanup notifications
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
ec5bbfe319
messageTray: Add notification-removed
signal to Source
...
This allows us to drop the `destroy` signal handler for each
notification in MessageTray.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
b1d2a5bac8
FdoNotificationDaemon: Actually associate a Source with an app
...
Actually link a notification source with an app instead of just to
its app name and PID, which in many cases don't really identify an
app. E.g. for portal applications the PID points to the
xdg-desktop-portal.
Use the app when ever possible but keep using the app name and PID
as a fallback.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
d63013f075
messageTray: Rename bannerBodyMarkup to useBodyMarkup in Notification object
...
I think the new name better reflects the effect of the property.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
00c292733d
messageTray: Rename bannerBodyText to body in Notification object
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
e4c44fd1ed
messageTray: Add object holding sound for a notification
...
A notification can have two ways to specify a sound, via a name of a
sound in the sound theme and/or a file. Therefore introduce an object
that can hold both properties and creates an abstraction over the
different source. This reduces the number of properties for a
notification, which will make it simpler to port it to GObject
properties.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
f8567bb1a7
messageList: Drop methods to customize the body of a message
...
Since only the telepathy client needed a special actor as expanded body
we can now drop the methods for it.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Julian Sparber
c5ec3e45e4
components: Drop telepathy client
...
The telepathy client component has been unmaintained for a long time.
Now that we rework the notifications massively it's time to drop the
support for it.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173 >
2024-03-03 01:33:16 +00:00
Florian Müllner
e1c454bd21
userWidget: Stop expand flags from propagating
...
Since commit 9c2da01a9, the avatar's child is expanded to account
for the new St.Bin behavior. However as expand flags are propagated
up, this now results in avatar actor getting unintentionally expanded
in places like the end-session dialog.
Stop this by explicitly setting the avatar actor to not expand.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3221 >
2024-03-01 23:58:36 +01:00
Jonas Dreßler
723c0a6e61
status/network: Sync active connections again on connection-added
...
NetworkManagers NmClient has a bug for wireguard connections where the
notify::active-connections and connection-added are emitted in the wrong order:
When a wireguard connection gets activated, notify::active-connections is
emitted first, then connection-added happens.
We currently expect these signals to emitted in the correct order, so our VPN
toggle is not actually updated when a wireguard connection is established.
Until this bug is fixed in NetworkManager, work it around by calling
_syncActiveConnections() manually after we see ::connection-added.
NM issue: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1483
Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6656
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3219 >
2024-03-01 17:32:07 +01:00