Commit graph

1624 commits

Author SHA1 Message Date
Michael Aaron Murphy
45fd683bc9
examples(about): update and fix compile 2025-12-05 16:42:29 +01:00
Frederic Laing
c2b7d7847a feat: add Flatpak sandbox support for config paths
Implement get_config_dir() and get_state_dir() helper functions that detect
Flatpak sandboxing via FLATPAK_ID and use HOST_XDG_CONFIG_HOME/HOST_XDG_STATE_HOME
environment variables or fallback to HOME-based paths.

This allows libcosmic apps running in Flatpak sandboxes to properly read
system-wide COSMIC configuration (themes, corner radii, etc.) from the host.
2025-12-04 11:30:03 -07:00
Kyle Scheuing
54934a961f fix: cross compiling for windows from linux
#[cfg(not(unix))] applies to the host machine (since that's where the
build script is running) rather than the compilation target. Instead,
environment variables are available to provide the information relevant
to the build target at the build script's runtime.
2025-12-04 11:28:39 -07:00
Kyle Scheuing
80875d5962
fix: compiling on windows requires cosmic-icons in project root
* fix: compiling on windows requires cosmic-icons in project root

crabtime provides crabtime::WORKSPACE_PATH to refer to the
CARGO_MANIFEST_DIR of the top level crate being built, which means when
building libcosmic directly, crabtime::WORKSPACE_PATH will work, but
when building it as a dependency of another crate,
crabtime::WORKSPACE_PATH will no longer refer to the path to libcosmic.

I don't think there's a good workaround, since when in the context of
crabtime, CARGO_MANIFEST_DIR refers to the path to the crate generated
by crabtime rather than to libcosmic.

This replaces crabtime with a simple build.rs script that generates a
file in OUT_DIR.

* fix: do not generate icon bundle for unix targets

---------

Co-authored-by: Michael Aaron Murphy <michael@mmurphy.dev>
2025-12-04 17:31:47 +01:00
Vukašin Vojinović
18182e5f97 fix(popover): set default position to Bottom
I didn't see this part in my previous PR (sorry!).
2025-12-02 18:03:05 +01:00
Vukašin Vojinović
14cbebbadc chore: update iced 2025-12-02 17:43:20 +01:00
Vukašin Vojinović
882481e518 fix(popover): match popup styling to designs 2025-12-02 16:37:20 +01:00
Kyle Scheuing
62f661e077 fix: compile errors on windows
calendar.rs had some left over icon! macro_rules macros referencing now
deleted files.

bundle::get was defined twice on non-unix platforms.

A known remaining issue is that projects using libcosmic need to have
cosmic-icons in their project root, since the crabtime macro uses
crabtime::WORKSPACE_PATH rather than the path to wherever cargo puts
libcosmic's git submodule.

See: 639326fcc3
2025-11-26 15:39:32 -05:00
Michael Aaron Murphy
639326fcc3 feat(icon): optimize & bundle icons with crabtime for non-unix platforms 2025-11-21 18:37:49 +01:00
Stephan Buys
ce0868582b tests: fix env guard and pipe read for tab dnd 2025-11-20 22:33:13 +01:00
Stephan Buys
7f321cb0a3 segmented button: support tab drag + drop 2025-11-20 22:33:13 +01:00
Ashley Wulber
709044891e chore: update iced 2025-11-19 16:42:15 +01:00
Michael Aaron Murphy
fc85fcac3e fix(dropdown): refresh popup when selections change 2025-11-18 19:03:23 +01:00
Michael Aaron Murphy
7eecbe30d7 feat(dropdown): add Id support with custom close, open operations 2025-11-18 19:03:23 +01:00
Ashley Wulber
47cc6dbdbf chore: update iced 2025-11-18 18:50:42 +01:00
Hosted Weblate
8528477355 i18n: translation updates from weblate
Co-authored-by: Feike Donia <feikedonia@proton.me>
Co-authored-by: GerardWassink <gerard.wassink@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Julien Brouillard <julienbrouillard1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/fr/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/nl/
Translation: Pop OS/libcosmic
2025-11-17 15:11:57 -07:00
Ashley Wulber
16d095b2cd chore: update iced 2025-11-14 21:31:59 +01:00
Ashley Wulber
96a51be3e4 chore: update iced
image improvements
2025-11-14 17:48:43 +01:00
Hosted Weblate
d6b3720e1f i18n: translation updates from weblate
Co-authored-by: Anonymous <noreply@weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: therealmate <hellogaming91@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/hu/
Translation: Pop OS/libcosmic
2025-11-13 10:53:22 -07:00
Stephan Buys
690f1d331d
feat(desktop): add DesktopEntryCache and unit tests for known problematic entries 2025-11-13 16:02:12 +01:00
Ashley Wulber
2296e8e94d
feat(applets): configurable applet overlap and padding increases 2025-11-11 21:04:09 +01:00
Hosted Weblate
2c93a4094f i18n: translation updates from weblate
Co-authored-by: Anonymous <noreply@weblate.org>
Co-authored-by: Feike Donia <feikedonia@proton.me>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yelysei <yelysei.matviienko@proton.me>
Co-authored-by: twlvnn kraftwerk <kraft_werk@tutanota.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/bg/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/uk/
Translation: Pop OS/libcosmic
2025-11-11 17:18:58 +01:00
Cheong Lau
bc744bd4e3
fix(segmented_button): use less restrictive FnOnce for builder method over Fn 2025-11-11 17:18:38 +01:00
Ian Douglas Scott
bb6f6e9ac8 improv(cosmic-config): Remove unneeded trait bounds for subscriptions
It looks like these functions where previously implemented in a
different way that required these traits, but now it uses
`Subscription::run_with_id`, the `id` only needs to be `Hash + 'static`.
2025-11-10 11:17:53 -08:00
Michael Aaron Murphy
6439507aa2
fix(icon): default to prefer_svg if symbolic 2025-11-06 07:57:03 +01:00
Vukašin Vojinović
37ae722320 fix(context_drawer): match to designs 2025-11-06 07:33:31 +01:00
Hosted Weblate
d2f7fdea6d i18n: translation updates from weblate
Co-authored-by: Anonymous <noreply@weblate.org>
Co-authored-by: Guilherme Aiolfi <gradinf@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kartik Nayak <thisiskartiknayak@protonmail.com>
Co-authored-by: Torsten <keulehoschi@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/de/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/hi/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/pt_BR/
Translation: Pop OS/libcosmic
2025-11-04 16:58:56 +01:00
Vukašin Vojinović
b6c6d1cb7b improv(context_drawer): move title out of header row
This moves the title below the header row containing actions and the close button, allowing more room for the title and actions.
Also makes actions an `Element` instead of a `Vec<Element>`, providing more flexibility for developers.
2025-11-04 16:58:33 +01:00
Weblate (bot)
2299b46862
i18n: translation updates from weblate (#1034)
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/hi/
Translation: Pop OS/libcosmic

Co-authored-by: Kartik Nayak <thisiskartiknayak@protonmail.com>
2025-10-30 10:35:27 -06:00
Weblate (bot)
b110b9ca3f
i18n: translation updates from weblate (#1033)
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/hi/
Translation: Pop OS/libcosmic

Co-authored-by: Kartik Nayak <thisiskartiknayak@protonmail.com>
2025-10-30 08:21:26 -06:00
Hosted Weblate
8e1d06e7da i18n: translation updates from weblate
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mattias Eriksson <snaggen@gmail.com>
Co-authored-by: Sachin Chaudhary <chaudharysachinasachin@gmail.com>
Co-authored-by: VandaL <vandalhj@gmail.com>
Co-authored-by: lorduskordus <lorduskordus@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/cs/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/pl/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/sv/
Translation: Pop OS/libcosmic
2025-10-29 09:25:24 -06:00
Ashley Wulber
a1b64dde3e fix(input): handle ctrl shortcuts with caps lock 2025-10-27 13:22:05 -04:00
Ashley Wulber
0c6c85429e
chore: update iced (#1029) 2025-10-27 16:24:02 +01:00
Ashley Wulber
6204784f20 chore: update iced 2025-10-23 17:17:20 -04:00
UchiWerfer
380042396b added German translations to the localization of the calendar-widget 2025-10-22 04:31:38 +02:00
UchiWerfer
e49a30104b added localization for month and weekday to calendar-widget 2025-10-22 04:31:38 +02:00
Cheong Lau
1d6a43486e remove redundant clones, use mul_add on f32s 2025-10-22 04:30:57 +02:00
Cheong Lau
bd438a8581 perf: reduce memory allocations
This also changes `widget::column::with_children` and
`widget::row::with_children` to take an `impl IntoIterator` instead
of a `Vec`, like the `iced` variants of these functions do.

This shouldn't be a breaking change since passing in a `Vec` will still
compile and function exactly as before.

(Using `iced::widget::Column::from_vec` or
`iced::widget::Row::from_vec` isn't possible, since the elements of the
`Vec` aren't checked, so the size of the resulting `Column` or `Row`
won't adapt to the size of its children. Perhaps a new function could
be added to mirror `iced`'s?)
2025-10-22 04:30:57 +02:00
Ashley Wulber
840ef21e4d fix(dnd_destination): Don't capture leave events 2025-10-22 04:29:04 +02:00
Ashley Wulber
2e87bd7c41 fix(segmented_button): ensure modifier state exact match for tab 2025-10-21 19:29:48 +02:00
Eduardo Flores
f2e965c76c fix: dialog body overflows 2025-10-20 13:53:58 -06:00
Ashley Wulber
529eeebaeb fix: avoid focus effects if already focused 2025-10-20 11:58:40 -04:00
Ian Douglas Scott
76c1897d4d Update iced for input_zone change
https://github.com/pop-os/iced/pull/241
2025-10-17 12:06:47 -07:00
Michael Aaron Murphy
f44d82a7e8
fix(spin_buttton): change text style to body 2025-10-14 16:28:43 +02:00
Hosted Weblate
cd3e9c1493 i18n: translation updates from weblate
Co-authored-by: Aleksandar Anžel <44969003+AAnzel@users.noreply.github.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sicKat <giuseppecatillo2003@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/it/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/sr_Cyrl/
Translation: Pop OS/libcosmic
2025-10-14 06:56:10 -06:00
Hosted Weblate
483fb2cdd1 i18n: translation updates from weblate
Co-authored-by: Feike Donia <feikedonia@proton.me>
Co-authored-by: Guðmundur Erlingsson <gudmundure@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Stepan Denysenko <stepden04@gmail.com>
Co-authored-by: Ziad El-sayed <ziadelsayed1797@tutamail.com>
Co-authored-by: oddib <oddbjorn.mr@hotmail.no>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/ar/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/is/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/nl/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/nn/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/uk/
Translation: Pop OS/libcosmic
2025-10-12 10:31:24 -06:00
Ian Douglas Scott
d82e6a167c Update iced
Update iced with https://github.com/pop-os/iced/pull/244.
2025-10-09 12:17:12 -07:00
Hosted Weblate
804250af64 i18n: translation updates from weblate
Co-authored-by: Feike Donia <feikedonia@proton.me>
Co-authored-by: Guðmundur Erlingsson <gudmundure@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Stepan Denysenko <stepden04@gmail.com>
Co-authored-by: oddib <oddbjorn.mr@hotmail.no>
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/is/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/nl/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/nn/
Translate-URL: https://hosted.weblate.org/projects/pop-os/libcosmic/uk/
Translation: Pop OS/libcosmic
2025-10-09 08:32:25 -06:00
Ashley Wulber
a929829521 fix(color picker): avoid 0 in color picker slider value 2025-10-09 05:28:10 +02:00
Ashley Wulber
f17cd2928a fix: forward events to trailing element regardless of cursor position 2025-10-09 05:28:10 +02:00