Commit graph

103 commits

Author SHA1 Message Date
Ashley Wulber
e125ae0b58 update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
Ashley Wulber
71d9d6d5bb
chore: updates after iced-rebase 2026-03-31 22:34:59 +02:00
Ashley Wulber
bd0d180482 fix(status-area): break from loop instead of unwrapping 2026-03-26 17:06:37 -04:00
Michael Murphy
9ce90a740a
i18n: translate desktop entries with xdgen (#1328) 2026-03-02 11:33:29 -07:00
mikairyuu
c8104a98ce fix(status-area): lazy-load status notifier menu layouts to prevent DBus timeouts
Previously, the applet subscribed to layout updates for all items immediately
upon registration (eager-loading). This caused severe issues with applications
like VLC, which fail to respond to `com.canonical.dbusmenu.GetLayout` calls
during high-load operations (e.g., initializing video playback).

These unanswered calls resulted in DBus timeouts that:
1. Flooded the connection queue.
2. Blocked the processing of other signals (like `Unregistered`).
3. Caused the applet to become unresponsive and the icon to persist (ghosting).

This patch modifies the subscription logic to only subscribe to layout updates
when the specific menu is actually open. This "lazy-loading" approach:
- Prevents hitting applications with DBus calls during vulnerable states.
- Drastically reduces unnecessary DBus traffic.
2026-02-20 19:07:59 +01:00
Dymkom
29739743ac
Update com.system76.CosmicAppletStatusArea.desktop
add Ukrainian translation
2026-02-12 14:46:49 +02:00
Ian Douglas Scott
aa438821b9 status-area: Seperate daemon for status notifier daemon
This allows the applet to be restarted on panel configuration changes
without replacing the daemon, or having races between different applet
instances trying to run the watcher.

Otherwise, this should behave similarly to the existing version.

Should fix https://github.com/pop-os/cosmic-panel/issues/284.
2026-02-02 10:36:16 -08:00
Ian Douglas Scott
fe0e4bf409 status-area: Use ItemIsMenu correctly
The comment that was previously here assumed that `ItemIsMenu` should be
defined for any status item that has a menu, but the FreeDesktop spec
rather defines it as an item that "only supports the context menu", so
we should open the menu instead of trying to call `Activate`.

This change won't affect behavior if `ItemIsMenu` is true, but `Activate`
errors, except by opening the menu without having to wait for that
errror first. It will fix the left click to open menu behavior if any
client defines that method to not error, but does set `ItemIsMenu`.
2026-02-02 10:34:25 -08:00
Ian Douglas Scott
c24b769acd status-area: Move duplicated code to an activate function 2026-02-02 10:34:25 -08:00
Ian Douglas Scott
468017654c status-area: Don't try to call activate() in status_menu
This was added in https://github.com/pop-os/cosmic-applets/pull/1143,
but I don't think this code will ever be reached? This code is called
when activating an item in a menu, so it should only apply when there is
a menu.
2026-02-02 10:34:25 -08:00
Ian Douglas Scott
6e99ad42b5 status-area: Don't add duplicate status item
Some clients seem to have issues with this.
2026-02-02 10:34:25 -08:00
Ian Douglas Scott
ebe18a17c5 status-area: Disable buttons when not enabled in DBusMenu 2026-02-02 10:34:25 -08:00
Jeremy Soller
055befb30a
Merge branch 'master' into bulgarian 2026-01-27 10:38:05 -07:00
lucamosca1
e2d2f0902f Update com.system76.CosmicAppletStatusArea.desktop 2026-01-21 09:43:40 -07:00
Michael Aaron Murphy
44ec34f6aa fix(status-area): reducing padding to fix missing icon buttons 2026-01-13 15:33:04 -05:00
Michael Aaron Murphy
6ab2aeca2b fix(status-area): add fallback for icon lookup by name 2026-01-13 15:33:04 -05:00
Michael Aaron Murphy
290439b9b9 fix(status-area): use panel icon button logic for consistency 2026-01-13 15:33:04 -05:00
Michael Aaron Murphy
f06c6a0b80 chore: update dependencies and debian changelog 2026-01-13 15:33:04 -05:00
Hojjat
a502720a42 fix(status-area): update menu on property update too
Updated menu text (activate/deactivate) or checkmark trigger a property
update and not a layout update.
2026-01-12 12:18:11 -05:00
Ashley Wulber
2852f3cc16 fix: status area positioning 2025-12-30 15:58:12 -05:00
Vukašin Vojinović
018a326f89 chore: bump versions to 1.0.0 2025-12-30 08:34:00 +01:00
夜未央,天将亮
9db4ebdc2d
fix(status-area): implement activate on left-click with menu fallback 2025-12-30 08:27:24 +01:00
Ian Douglas Scott
08c7157555 status-area: Use .svg from IconThemePath if present 2025-12-18 11:41:28 -07:00
Ian Douglas Scott
d04314957b staus-area: Initial support to use IconThemePath for icon loading
We should use a more complicated method to lookup the icon from the
theme, but `cosmic-freedesktop-icons` will need some changes to be able
to accomodate a custom theme path.

This is probably an improvement. Anything that uses `IconThemePath`
is likely not working currently, so it won't make things worse.
2025-12-18 11:41:28 -07:00
Ian Douglas Scott
080f07e0b4 status-area: Factor out duplicated icon button code to function 2025-12-18 11:41:28 -07:00
Ian Douglas Scott
9b979ccf74 status-area: Add theme_path to IconUpdate 2025-12-18 11:41:28 -07:00
Ian Douglas Scott
e7e275abf7 status-area: Use struct instead of enum for IconUpdate 2025-12-18 11:41:28 -07:00
Ashley Wulber
836c0e378b applet overlap
chore: mpris dep

fix: dock buttons

improv: battery and audio improvements

feat: overlapping padding

fix: input source text button

fix: apply panel spacing to app tray

chore: update libcosmic

fix: spacing and padding

fix(minimize): hide when empty
2025-11-11 16:49:48 -05:00
Ashley Wulber
b026db6f7c fix(status-area): better handle apps with no menus 2025-11-10 11:50:39 -05:00
twlvnn
4fa0ea082e i18n(bg): update desktop info 2025-11-09 11:27:31 +01:00
Mattias Eriksson
a1f6b9be84 [i18n] Translate applet names in desktop files to swedish 2025-10-30 07:07:22 -06:00
Cheong Lau
5369b4eb29
perf: use rustc-hash for HashMap and HashSet 2025-10-22 04:33:30 +02:00
Cheong Lau
dd0158d8f0 perf: refactor to reduce memory allocations and cpu work 2025-10-07 17:04:51 +02:00
Cheong Lau
8e0f1c4a09
chore: apply recommendations from clippy 2025-10-04 02:51:18 +02:00
lorduskordus
6aec81ebb5
i18n(cs): Add Czech translation (#1068) 2025-09-29 12:34:53 -06:00
Joan
c327f88a8a
i18n(es): update translations (#1048) 2025-09-14 07:06:17 -06:00
jermanuts
b35e5a5364
i18n(ar): Arabic traslation of .desktop and .metainfo.xml (#1040)
* arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic fix .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .desktop

* Arabic .metainfo.xml translation

* Update Arabic translation

* Update Arabic translation
2025-09-14 07:05:40 -06:00
Kamil Lihan
93735b1ab2 i18n(sk): Update translations 2025-09-07 14:58:57 +02:00
Vukašin Vojinović
2c618622d3 chore: update dependencies
Sets the resolver to 3, so it's Rust-version aware. Without it, some dependencies get updated to versions needing Rust versions newer than the target.
2025-08-18 16:44:50 +02:00
Vukašin Vojinović
2b7b4cba56 chore: update to Rust 2024 edition 2025-08-18 16:44:50 +02:00
Ashley Wulber
a5d813dc9b feat(status-area): provide activation token on menu item activation 2025-08-06 12:52:33 -04:00
Ian Douglas Scott
1d3d869f4a
status-area: Fix handling of NameOwnerChanged with non-None new name (#1010)
Fixes issue where `fcitx5` app icon persists after it is no longer
running. It seems it was getting a `NameOwnerChanged` event with the
acquired name after `register_status_notifier_item()`.
2025-08-04 21:33:55 +02:00
Feike Donia
c171f048a6
i18n: update fluent numbering scheme, with German and Dutch translations 2025-07-08 17:03:57 +02:00
Erik W
ac93c41c23 fix(status-area): prevent crash on invalid icon data 2025-06-14 19:02:30 -04:00
Ian Douglas Scott
417f43a0f5 Update to zbus 5.x 2025-05-28 13:40:23 -04:00
Ashley Wulber
942c8397a4 fix(status-area): overflow handling 2025-05-20 17:00:56 +02:00
铺盖崽
513639f407
i18n(zh-CN): update translation 2025-05-01 17:11:41 +02:00
Ryan Brue
82342ef3dc Fix: Duplicate translation for cosmic-applet-status-area
When running desktop-file-validate:

```
/builddir/build/BUILD/cosmic-applets-1.0.0_alpha.6_git20250408.2573eb7-build/BUILDROOT/usr/share/applications/com.system76.CosmicAppletStatusArea.desktop: error: file contains multiple keys named "Name[pt]" in group "Desktop Entry"
```

Fixes building for Fedora, as we use desktop-file-validate for checking desktop files.

Ref: 2573eb7545

I figured since this is the translation that was recently added, that the intent is to keep the newer one.
2025-04-10 20:53:20 -06:00
David Carvalho
2573eb7545 i18n - update portuguese translations 2025-04-08 15:56:30 -06:00
David Carvalho
715f5b2732 i18n (pt-BR) Update translations 2025-04-08 08:33:44 -06:00