Commit Graph

17245 Commits

Author SHA1 Message Date
Carlos Garnacho
76090c14eb inputMethod: Check return value when letting IM handle virtual keys
When propagating keys from the OSK, we usually feed these directly to
the IBusInputContext and let the IM handle the effects of this virtual
key event (which may also include feeding a key event back to us).

But these functions may also return a FALSE value if the key was "let
through" by the IM, which means the ball is in our yard again, and
we are responsible of letting this event get to its destination.

If that happens, just fall through, so the string is committed to
the client as an UTF-8 string, or propagated through keyboard events.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5930
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2508>
2022-10-18 19:31:51 +00:00
Carlos Garnacho
766314acb2 keyboard: Refactor code
Move inline anonymous function to be its own. This method
will become asynchronous in following commits.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2508>
2022-10-18 19:31:51 +00:00
Florian Müllner
d7dc50da71 shell/app-system: Retrack windows if necessary
We currently don't update running apps when the set of installed
apps changes. However we should, as the change could mean that

 - the app got uninstalled, and the running app should become
   window-backed

 - a newly installed app got launched before the app cache was
   updated, and we replace the window-backed fallback with the
   proper app

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2480>
2022-10-18 19:20:26 +00:00
Carlos Garnacho
9c262ad7bf status: Ignore prior single-element lists updating input sources MRU
Consider the existing input sources MRU only valid if it contained
more than one element to pick from. Fixes the following situation
with initial-setup sessions:

- Initial setup Session starts, with several input sources already
  configured ("us" between them)
- InputSourceManager initializes, only the default "us" keymap is
  available
- MRU list is constructed, "us" is picked
- InputSourceManager catches up with session configuration, the
  other extra sources are added
- MRU list is reconstructed, "us" is already the most recent
- Session ends up with "us" picked, regardless of its position in
  the list, and no MRU existing prior to startup

If we consider the intermediate single-element MRU list invalid,
it is still possible to pick the best default source between all
the configured ones (the one that was put first in the list,
basically), after initialization is complete.

But also, it is unnecessary to have if there is a single source to
pick from. After the sources list has two elements or more, the
MRU list will become effective and preserved during changes to
the available sources.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5873
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2495>
2022-10-18 18:38:27 +00:00
Florian Müllner
022c64961c altTab: Always include label in thumbnail
We currently special-case the no-window-title case when creating
items, but not when accessing labels later, for example during
allocation.

The easiest option it to create the label unconditionally, so do
that.

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2483>
2022-10-18 18:04:57 +00:00
Sam Hewitt
c30aaf35ad css: Tidy up the card style
- remove the drop shadow
- clean up mixin references

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2513>
2022-10-18 17:14:44 +00:00
A S Alam
5db9a7d293 Update Punjabi translation 2022-10-17 00:10:50 +00:00
Alessandro Bono
ee09c5c853 environment: Preserve time 0 when animations are disabled
There are cases where the animation time is set to 0 on purpose
in order to not animate. When animations are disabled via
/org/gnome/desktop/interface/enable-animations those animation
times are increased from 0 to 1. This makes the "Caps lock is on."
message appear unconditionally in the lockscreen for a brief moment.

Select the minimum between the two values. So that an animation time
0 is preserved instead of being replaced by 1.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2471>
2022-10-14 22:32:31 +00:00
Alessandro Bono
b392e913d6 shellEntry: Remove unused variable
Unused since 26235bbe54.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2471>
2022-10-14 22:32:30 +00:00
Jonas Ådahl
dfcab5a2b1 inputMethod: Also forward TERMINAL input purpose
It was added relatively recently (1.5.24), so check if it exists first.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5958
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2511>
2022-10-14 21:59:21 +02:00
Zurab Kargareteli
82f13c3a10 Update Georgian translation 2022-10-06 21:22:36 +00:00
Florian Müllner
8590e33501 inhibitShortcutsDialog: Don't override resource
PermissionStore's Set() method takes a complete permission
table, so when setting an app's permission, we are implicitly
removing all previously set entries for other apps.

Switch to the SetPermission() method which sets the permission
for a single app.

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2504>
2022-10-06 14:47:43 +02:00
Florian Müllner
0ce2bc343b status/volume: Include origin in device names
The description alone may not be descriptive enough, so include
the origin (if available) to disambiguate the name.

This is consistent with the Sound Settings panel.

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2502>
2022-10-03 18:37:07 +02:00
Alexander Shopov
f5c29de580 Update Bulgarian translation 2022-10-02 16:34:31 +00:00
Cheng-Chia Tseng
fd4bd24ca6 Update Chinese (Taiwan) translation 2022-10-01 07:56:37 +00:00
Nart Tlisha
c7cd51cbe5 Update Abkhazian translation 2022-09-29 15:31:12 +00:00
Olexander
17b9b0b734 Update Ukrainian translation 2022-09-28 16:28:27 +00:00
Fabio Tomat
a3c84ca746 Update Friulian translation 2022-09-27 11:20:41 +00:00
Dušan Kazik
4816aa5cf0 Update Slovak translation 2022-09-27 06:49:32 +00:00
Danial Behzadi
9016614879 Update Persian translation 2022-09-20 10:04:56 +00:00
Jordi Mas
15ee70d836 Update Catalan translation 2022-09-20 07:16:44 +02:00
Anders Jonsson
fcebea8a9b Update Swedish translation 2022-09-19 21:02:22 +00:00
Aurimas Černius
c465c70ab8 Updated Lithuanian translation 2022-09-19 22:51:13 +03:00
Aleksandr Melman
49ed7aef3f Update Russian translation 2022-09-19 09:50:41 +00:00
Pawan Chitrakar
df264bf368 Update Nepali translation 2022-09-19 05:11:30 +00:00
Kukuh Syafaat
a07a185811 Update Indonesian translation 2022-09-19 02:35:39 +00:00
Hugo Carvalho
8abffd155a Update Portuguese translation 2022-09-18 21:42:40 +00:00
Guillaume Bernard
758539f567 Update French translation 2022-09-18 08:55:46 +00:00
Yosef Or Boczko
4f6f86c374 Update Hebrew translation 2022-09-18 08:21:55 +00:00
Марко Костић
bd73121309 Update Serbian translation 2022-09-18 07:33:29 +00:00
Baurzhan Muftakhidinov
a040967daa Update Kazakh translation 2022-09-18 05:39:36 +00:00
Bastien Nocera
e7cf6d348c bluetooth: Remove unused 'had-bluetooth-devices-setup' setting
Now that we always show the Bluetooth switch when there's a Bluetooth
adapter hiding somewhere, remove all the settings it used as storage.

If the user wants to really really disable any Bluetooth adapters in
their system, the gnome-bluetooth documentation explains how to do that
irrespective of GNOME:
https://gitlab.gnome.org/GNOME/gnome-bluetooth/#multiple-bluetooth-adapters

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2488>
2022-09-17 18:24:15 +00:00
Bastien Nocera
57aa91e2b3 bluetooth: Show the Bluetooth switch in more cases
In older versions of GNOME, when a menu was used for Bluetooth devices,
we tried to avoid showing the Bluetooth menu to folks who didn't use
Bluetooth.

This kept causing problems as the menu would disappear if no
devices were setup and the platform "airplane mode" removed the
Bluetooth device from the USB bus, making it impossible to detect
whether a Bluetooth device existed, compared to a user unplugging a
removable Bluetooth device.

Closes: #5749
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2488>
2022-09-17 18:24:15 +00:00
Carlos Garnacho
13c9fd2a66 status: Use fixed sorting of input sources on empty MRU
When updating the MRU sources if there was no prior MRU, we want
to go with the unmodified list of sources in visibility order.

However iterating over object properties happens in an undetermined
order, so the initial MRU list ends up picking a value at random.

In order to prefer the sources list in the same order than they
appear in the menu if there was no prior MRU, order the keys
when accessing it and building the initial list of sources.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5873
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2487>
2022-09-17 18:18:43 +00:00
Jonas Ådahl
c080bc59a4 quickSettings: Update bind constraint offset on idle
Use Meta.LaterType.BEFORE_REDRAW to queue setting the bind constraint
offset in an idle callback. This is needed since the signals that
trigger updating the offset may be emitted during allocation, at which
point queuing new relayouts isn't ideal, since it could result in
relayout cycles. In this case, we really do want to relayout as a side
effect of another actors allocation, so make this explicit.

This fixes a few warnings such as:

The actor '<unnamed>[<StBoxLayout>:0x3138d70]' is currently inside an
allocation cycle; calling clutter_actor_queue_relayout() is not recommended

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2476>
2022-09-17 18:09:57 +00:00
Andy Holmes
990eb92bd9 panel: Add PanelMenu.Button menu when menu-set is emitted
When a `PanelMenu.Button` is added to the `statusArea`, its menu is
added to the `PopupMenuManager` if it has one at the time. If a menu is
added later or a new one set, the new menu is never added.

Move the call to `PopupMenuManager.addMenu()` from `_addToPanelBox()`
to `_onMenuSet()`, which is called when the `PanelMenu.Button` is added
and whenever it emits the `menu-set` signal.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2470>
2022-09-17 17:56:21 +00:00
Florian Müllner
0bd73b79a6 Bump version to 43.0
Update NEWS.
2022-09-17 18:37:59 +02:00
Matej Urbančič
724249d792 Update Slovenian translation 2022-09-16 19:43:02 +00:00
Quentin PAGÈS
fd8717b1ca Update Occitan translation 2022-09-16 19:21:38 +00:00
Alan Mortensen
40217c184c Update Danish translation 2022-09-16 14:20:32 +00:00
Daniel Mustieles
06a8118cfd Updated Spanish translation 2022-09-16 10:52:05 +02:00
Enrico Nicoletto
830c245e9f Update Brazilian Portuguese translation 2022-09-15 21:25:53 +00:00
Jürgen Benvenuti
edaa39825a Update German translation 2022-09-15 19:48:40 +00:00
Fran Dieguez
2040810839 Update Galician translation 2022-09-15 16:49:05 +00:00
Luming Zh
9173d0d5c6 Update Chinese (China) translation 2022-09-15 16:41:44 +00:00
Asier Sarasua Garmendia
f928442ffc Update Basque translation 2022-09-15 16:08:49 +00:00
Anders Jonsson
614a91cc30 Update Swedish translation 2022-09-15 14:27:49 +00:00
Piotr Drąg
8dc586f250 Update Polish translation 2022-09-15 16:02:56 +02:00
Jonas Ådahl
fe9c2b8df6 overviewControls: Don't update work area box when headless
When headless, we don't have a monitor we can derive a size from, so
don't even try, just let it be updated when we actually have a monitor
that will show stuff.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5831
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2478>
2022-09-15 11:51:08 +00:00
Yosef Or Boczko
5548f98afc Update Hebrew translation 2022-09-15 10:52:58 +00:00