The initial hard rename (255cf7cc) broke because Cargo's [patch] with
`package = libcosmic-yoda` does NOT unify across the transitive graph.
cosmic-files (still upstream) asks for "libcosmic"; patched with a
renamed package it ends up as a separate crate, leading to two copies
of cosmic::Theme/Action with incompatible types.
Soft fork keeps the yoda identity where it counts and stays compatible:
- Cargo name : libcosmic (for patch/unification)
- Version : 1.0.0 (same major as upstream so [patch] semver-accepts it)
- Lib name : cosmic (unchanged)
- Repo : leyoda/libcosmic-yoda on Forgejo (yoda lineage)
- Branch : main (vs upstream master)
Revert parts:
- examples/*/Cargo.toml dep refs back to libcosmic
- i18n/*/libcosmic_yoda.ftl renamed back to libcosmic.ftl
Added:
- Compat stub features: winit = [], x11 = [] — empty so Cargo can satisfy
upstream deps asking for these, but no code is actually gated on them
any more (all removed in Phase 2).
Ungates done to make the Wayland path self-sufficient after winit removal:
- src/lib.rs: pub mod app + pub use Application/ApplicationExt no longer
gated on winit; prelude exports ApplicationExt unconditionally
- src/surface/action.rs: 6 functions had #[cfg(all(wayland, linux, winit))]
triple-gates; simplified to #[cfg(all(wayland, linux))] since winit is
no longer a meaningful gate (wayland is now the only shell)
- 12 standalone #[cfg(feature = "winit")] annotations removed from src/
(their gated code is now always compiled)
cargo check --lib + cargo check in cosmic-yoterm both pass with a single
libcosmic v1.0.0 in the tree.
This converts `ScrollDelta::Pixels` and `ScrollDelta::Lines` into
integer values, accumulating partial scrolls until a full integer is
reached.
It also has a configurable rate-limit, so discrete integer events can
occur at a certain maximum frequency. This may need tuning for different
use cases, though I haven't tried using it for things other than
changing workspaces so far.
This change caused all uses of `cosmic::Task` to be coerced into a
message type specific to `cosmic::app`. Thus, users were forced to
create messages that are wrapped in `cosmic::app::Message` enums.
* wip: update to use cosmic-advanced-text
* use cosmic-advanced-text branch of iced
* fix: line height and spacing for segmented button and update to get svg fix
* fix: spin button styling & spacing
* update iced to fix segmented button border radius
* feat: example improvements
* feat: helper for loading fonts
* feat: add focus style to button
* fix: slider height and iced fixed
* feat: hash icon width and height
* cleanup
* update ci
* refactor: always use lazy feature of iced
* update iced
* update iced
* cleanup & update iced
* update iced: new slider & tiny-skia quad updates
* update iced: fixes for tiny-skia quad rendering with edge case border radius
* re-export iced_runtime & iced_widget
* merge master
* udpate iced
* update iced
* update iced
* update iced
* fix: make rectangle_tracker subscription only return update if there is some
* feat: derive macro for loading a cosmic-config
* feat (cosmic-config): iced subscription
* fix (example): update to rectangle tracker subscription
* fix (cosmic-config)
* refactor(cosmic-config-derive): add support for types with generic parameters
* fix (cosmic-config): feature gate updates for subscription helpers
* feat: support for custom & system themes + move cosmic-theme to libcosmic
* feat: sorta hacky way of creating header bars for libcosmic + update iced to get support for resizable windows in iced-sctk
* update iced
* update and reexport sctk
* fix: applet border radius
* feat (cosmic-theme): add id and name methods
* fix(cosmic-theme): reexport palette from cosmic-theme
* fix(cosmic-config-derive): allow use with reexported cosmic-config
* feat: update iced with fix and refactor applet env vars
* update iced