Commit Graph

18169 Commits

Author SHA1 Message Date
Carlos Garnacho
08f3ad3835 keyboard: Reset latched levels on string commit on all situations
The _commitAction() paths have early returns, which made resetting the
latched mode inconsistent depending on the paths taken to commit the
string. This made latched modes not return to normal on e.g. Shell
entries.

Make this happen outside the function, and after the only calling
point, so that the level is correctly reset on all situations.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2945>
2023-09-08 19:42:38 +00:00
Florian Müllner
671df28a50 screenshot: Only handle mode-switch shortcut when supported
We currently handle the 'v' key to switch between recording- and
screenshot mode regardless of whether screen recordings are
supported.

This is clearly wrong, don't do that.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6990

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2944>
2023-09-07 18:23:29 +02:00
Florian Müllner
521525948e screenshot: Do not wrongly enable window button
The window button is disabled when
 - there are no windows
 - we are in screen-recording mode
 - the session mode doesn't allow windows

However the last condition is only taken into account when
opening the dialog, but not when switching from recording-
to screenshot mode.

Address this by updating the button's sensitivity in a separate
function, so the different conditions are considered consistently.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6990

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2944>
2023-09-07 18:23:29 +02:00
Anders Jonsson
8e30158c46 Update Swedish translation 2023-09-06 22:11:10 +00:00
Florian Müllner
f83dae197f Bump version to 45.rc
Update NEWS.
2023-09-06 13:55:22 +02:00
Florian Müllner
d8014090fd workspaceThumbnail: Expose maxThumbnailScale as property
Some extensions want to modify the value of the MAX_THUMBNAIL_SCALE
constant. That is no longer possible, as exports are always read-only
from the outside.

Make this possible again by exposing the scale as a property on the
object itself, so extensions can override it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2939>
2023-09-06 11:35:10 +00:00
Bruce Cowan
08eaf83141 Update British English translation 2023-09-06 11:04:14 +00:00
Bryan Ricker
9ce7c81ef3 st/icon: Fix documentation typo
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2940>
2023-09-05 18:31:07 -07:00
Balázs Úr
2c28db8482 Update Hungarian translation 2023-09-05 17:28:33 +00:00
Florian Müllner
2bc4215d1d status/backgroundApps: Filter out unknown apps
While extremely rare, flatpak apps are not guaranteed to provide
a .desktop file.

We don't have anything to represent the app in that case, but at
least we shouldn't break when trying to access properties on null,
so filter out these entries.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6913

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2938>
2023-09-05 16:06:24 +00:00
Milo Casagrande
8ece56b5c2 Update Italian translation 2023-09-05 11:35:55 +00:00
Alan Mortensen
f6a9434947 Update Danish translation 2023-09-04 05:42:41 +00:00
Fran Dieguez
61d13df5f0 Update Galician translation 2023-09-03 19:40:06 +00:00
Nathan Follens
6439713a7f Update Dutch translation 2023-09-03 13:43:45 +00:00
Baurzhan Muftakhidinov
87e521ba9d Update Kazakh translation 2023-09-03 03:20:51 +00:00
aliriza
d94f7dae1d appDisplay: Add Pardus apps to default folder list
Those are distro-specific apps like YaST on Suse.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2875>
2023-09-02 16:55:36 +00:00
A S Alam
01f2a65fe6 Update Punjabi translation 2023-09-02 15:56:41 +00:00
Florian Müllner
b45e75c4b9 st/types: Remove StAlign
The last code that used the type was removed in commit 0ab34fe21f
over three years ago, whoops.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2936>
2023-09-02 09:19:24 +00:00
Changwoo Ryu
fd2c00583e Update Korean translation 2023-09-02 06:12:01 +00:00
Lukáš Tyrychtr
c97825e832 popupMenu: Allow to use the up and down arrows to wrap around
This aligns the keyboard navigation behavior with similar menus in
other desktop environments and with GTK itself.

It allows the users to move in the menu using already known patterns
and makes the operation quicker in some cases, especially as many
users don't know about the tab and shift+tab behavior.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6017

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2525>
2023-09-01 21:50:12 +00:00
Florian Müllner
c7208df8b3 panel: Switch workspaces when scrolling over activities
The activities button now shows workspace indicators instead
of a label. Adding the ability to switch workspaces without
entering the overview seems like a logical extension.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6928

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2933>
2023-09-01 15:07:22 +00:00
Florian Müllner
b3ce7be8f3 ci: Bump mutter image
Mutter bumped its libei requirement.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2934>
2023-09-01 16:47:38 +02:00
Florian Müllner
8f919adbc2 doc: Add looking glass documentation
Looking glass is not just helpful for development, but also when
asking users to provide relevant information.

Having it in-tree makes it easy to reference, and ensures that
the documentation is still in a maintained place when plans to
retire the wiki go head.

The content is based on the [wiki-page] with updated code samples,
small sections on added features, and outdated references removed
(anyone remember project looking glass?).

[wiki-page]: https://wiki.gnome.org/Projects/GnomeShell/LookingGlass

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2932>
2023-09-01 15:11:59 +02:00
Florian Müllner
56103edc0e status/bluetooth: Show immediate feedback on toggle
Since commit 6a23e8ee0f, we use the adapter state (that includes
transitional state) to indicate progress when a state change takes
a long time.

However on many systems, the delay happens on the rfkill side,
before a change request even reaches the adapter.

Address this by temporarily overriding the adapter-state with the
expected transitional state, until an actual adapter state change
occurs.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5773

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2815>
2023-09-01 11:37:04 +00:00
Florian Müllner
8c57eab5e6 status/bluetooth: Only show when rfkill is available
We currently show the bluetooth toggle when Bluetooth can be
toggled via rfkill, or when there is a powered adapter.

While the latter condition is obvious - if there is a working
Bluetooth adapter, then Bluetooth is available - it does impose
a problem: We rely on rfkill for turning Bluetooth off, so if
rfkill is missing, the toggle is stuck.

We could handle that case and power off the adapter ourselves
when necessary, but then the toggle would just disappear when
turned off.

Instead, only show the toggle when rfkill is available, so we
can assume that turning Bluetooth on and off will work.

This is also consistent with Settings, which shows Bluetooth
as unavailable in this case.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2815>
2023-09-01 11:37:04 +00:00
Daniel Rusek
f5292fd024 Update Czech translation 2023-09-01 08:57:09 +00:00
Florian Müllner
f1317f07db environment: Add Meta.Rectangle compatibility
Meta.Rectangle was replaced by Mtk.Rectangle. Mutter defines a
typedef for compatibility, but it turns out that gjs fails to
pick it up.

Work around that by adding a small compatibility function
that prints a deprecation warning and returns the expected
Mtk.Rectangle.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2930>
2023-08-31 22:05:32 +00:00
Florian Müllner
d9bc474dea layout: Fix missing switch to MTK
This bit was missed, probably because it uses the cairo type
instead of Meta.Rectangle.

Fixes 80237b1082
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6970

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2930>
2023-08-31 22:05:32 +00:00
Florian Müllner
8538a42943 windowMenu: Use NONE ornament by default
We now hide ornaments by default. As some of the items in the
window menu can be checked, that means that they will now shift
horizontally, and no longer align with other menu items when
checked.

That's quite bad, and as the items in question don't form a
distinctive group/section, adding back the spacing only to
those two items would still look fairly awkward.

So revert back to the previous behavior for this particular menu,
and default to the NONE ornament.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6962

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2926>
2023-08-31 21:35:23 +00:00
Aurimas Černius
11fa0301d5 Update Lithuanian translation 2023-08-31 20:09:12 +00:00
Fran Dieguez
ea298f3ac1 Update Galician translation 2023-08-31 19:13:50 +00:00
Quentin PAGÈS
dd5426f94e Update Occitan translation 2023-08-31 19:07:00 +00:00
Sabri Ünal
48c33f6b62 Update Turkish translation 2023-08-31 18:56:10 +00:00
Carlos Garnacho
52182e6493 st: Drop explicit Clutter grab in StButton
Nowadays, Clutter knows what an implicit grab is, which gives
us already the feel that we are after with buttons (e.g. press
and drag on the button will not enter other actors meanwhile).

ClutterGrab was only added to provide that feel meanwhile, and
it's also slightly more intense (e.g. altering keyboard focus,
or triggering leave events on all parents of the button) which
may trigger side effects.

An example is the IBus candidates popup, where the pagination
buttons may indirectly trigger dismissing of the entire popup
when interacted, by stealing the keyboard focus to the
client/actor doing IM.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2497
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/2244
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2924>
2023-08-31 14:17:16 +00:00
Florian Müllner
3a393738ea status/network: Don't show OWE networks as secure
The OWE protocol is used by public networks to provide some
form of encryption, but without authentication. That makes
them more secure than unencrypted public networks, but still
significantly less secure than "proper" encryption types like
WPA.

The are not shown as secure by Settings' network panel, so we
shouldn't do so either.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6918

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2927>
2023-08-31 11:54:51 +00:00
Florian Müllner
3c6c8a40ae status/network: Use connection name with hidden AP
When connected to an OWE transition network, NetworkManager
reports the connected API with a hidden SSID.

Handle this by using the active connection's name before
ultimately falling back to the device name.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6918

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2927>
2023-08-31 11:54:51 +00:00
Florian Müllner
0bfc6bd0c0 status/network: Consider active connection for network's active state
We currently show a network as connected when it includes the
device's active access point.

However when connected to an OWE transition network, the public
AP redirects to a hidden AP that we ignore. To handle that case,
also consider a network active when it includes the currently
active connection.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6918

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2927>
2023-08-31 11:54:51 +00:00
Florian Müllner
fa4d4af4c6 screenshot: Export captureScreenshot() function
It is needed by the corresponding item in the window menu.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6967

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2928>
2023-08-31 09:35:42 +00:00
Bilal Elmoussaoui
80237b1082 Adapt to the new Mtk library
As we plan to slowly phase out Cairo where possible in libmutter
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3128

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2873>
2023-08-31 03:44:32 +00:00
Philipp Kiemle
533f3fe69d Update German translation 2023-08-30 09:23:32 +00:00
Milo Casagrande
024515b4a8 Update Italian translation
(cherry picked from commit d24ce97d3c98b9039c7eec29e2102985cf087e84)
2023-08-30 07:24:44 +00:00
Kukuh Syafaat
249a3db063 Update Indonesian translation 2023-08-30 06:51:15 +00:00
kramo
bd5aa95ecb appDisplay: Replace EOG with Loupe in 'Utilities' folder
Loupe replaced EOG in core apps, update the 'Utilities' folder
accordingly.

Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6950

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2916>
2023-08-29 22:03:56 +00:00
Florian Müllner
a6d8e7ab6f extensionBase: Use UUID as fallback gettext domain
Nowadays we can set up translations automatically, but only when
the domain is provided with the metadata.

This can be a problem, for example our extension templates use
the automatic translation handling that we recommend, but as a
result the code will throw an error unless `gettext-domain` is
added to the metadata.

Binding a text domain is cheap enough to not care about unnecessary
or duplicated calls, so add a final fallback to the UUID when no
domain was provided as parameter or in the metadata.

There is already a precedent with the `gnome-extensions pack` command
that falls back to the UUID when no explicit gettext domain was
included in the metadata.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2888>
2023-08-29 21:21:51 +00:00
Florian Müllner
92ccfe7f65 style: Only apply neutral entry focus color on lock screen
Commit a72c95de changed the focus style for all system entries
to a more neutral color, as the stronger focus often clashes
with the wallpaper background on the lock screen.

However that is not a concern for entries that appear over the
neutral system background. Worse, the neutral focus indication
provides so little contrast with the background there that is
not much of an indication anymore.

Address this by restoring the old focus indication for the
generic system_entry mix-in, but override it specifically on
the lock screen to avoid the clash with the wallpaper background.

Fixes a72c95de
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6945
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6880

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2922>
2023-08-29 19:12:47 +00:00
Carlos Garnacho
7095ef05e1 workspacesView: Skip relayouts during destruction
The WorkspacesView may be scheduled to be destroyed during
relayout, and despite that go through the allocate() vfunc.
When that happens, the ::destroy handler is called early,
so the WorkspacesView clears this._workspaces in result.
When vfunc_allocate() is called, various paths rely on the
workspaces array being still populated, which is not the
case.

The existing check at vfunc_allocate() for the WorkspacesView
having no children is insufficient, since children are destroyed
as a result, not beforehand.

This results in the following warnings when going out of
overview:

JS ERROR: TypeError: workspace is undefined
_getSpacing@resource:///org/gnome/shell/ui/workspacesView.js:218:13
vfunc_allocate@resource:///org/gnome/shell/ui/workspacesView.js:344:18
vfunc_allocate@resource:///org/gnome/shell/ui/overviewControls.js:223:33
removeWindow@resource:///org/gnome/shell/ui/workspace.js:856:29
addWindow/<.destroyId<@resource:///org/gnome/shell/ui/workspace.js:808:22
_updateWorkspacesViews@resource:///org/gnome/shell/ui/workspacesView.js:1023:38
prepareToEnterOverview@resource:///org/gnome/shell/ui/workspacesView.js:990:14
prepareToEnterOverview@resource:///org/gnome/shell/ui/overviewControls.js:740:33
gestureBegin@resource:///org/gnome/shell/ui/overviewControls.js:802:14
_gestureBegin@resource:///org/gnome/shell/ui/overview.js:409:33
_beginGesture@resource:///org/gnome/shell/ui/swipeTracker.js:601:14
_handleEvent@resource:///org/gnome/shell/ui/swipeTracker.js:173:26
@resource:///org/gnome/shell/ui/init.js:21:20

This always happens through the _updateWorkspacesViews() paths, so there
is a new WorkspacesView taking over and the one being destroyed should
silently go away.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6935
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2918>
2023-08-29 18:35:26 +00:00
Marco Trevisan (Treviño)
1f7464dbcb theme: Use insensitive theming for undecorated insensitive buttons
Menu items such as "paste" when no clipboard is available were always
painted as active. This is because the undecorated buttons do not use
the insensitive color anymore.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2919>
2023-08-29 12:02:51 +00:00
Andrew Zaech
3cfc918976 st/scroll-view: Fix issue in st_scroll_view_scroll_event()
adjust_with_direction() uses a ClutterScrollDirection not ClutterTextDirection

Fixes: 23b439dc ("st/scroll-view: Use ClutterEvent getter methods")
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6937

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2920>
2023-08-29 13:25:54 +02:00
Stuart Hayhurst
215282a320 osdWindow: Allow label and level to be null
Allow passing 'null' to setLevel and setLabel, so 'null' and 'undefined'
behave the same way.

Fixes a regression introduced by a42f7c23, which caused parts of old
notifications to persist into new notifications, or elements being
incorrectly made visible

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2917>
2023-08-28 17:16:11 +00:00
Daniel Mustieles
2bb64bc3c4 Updated Spanish translation 2023-08-28 11:27:45 +02:00