From 6736a596ac17a9c8d5a56a5047bfbace24da0d02 Mon Sep 17 00:00:00 2001 From: leyoda Date: Thu, 23 Apr 2026 15:05:31 +0200 Subject: [PATCH] =?UTF-8?q?yoda:=20soft-fork=20pivot=20=E2=80=94=20keep=20?= =?UTF-8?q?Cargo=20name=20"libcosmic"=20for=20dep=20unification?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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. --- Cargo.toml | 26 ++++++++++++++++--- examples/about/Cargo.toml | 2 +- examples/applet/Cargo.toml | 2 +- examples/application/Cargo.toml | 4 +-- examples/calendar/Cargo.toml | 2 +- examples/context-menu/Cargo.toml | 2 +- examples/cosmic/Cargo.toml | 2 +- examples/image-button/Cargo.toml | 2 +- examples/menu/Cargo.toml | 2 +- examples/multi-window/Cargo.toml | 2 +- examples/nav-context/Cargo.toml | 2 +- examples/open-dialog/Cargo.toml | 6 ++--- examples/spin-button/Cargo.toml | 2 +- examples/subscriptions/Cargo.toml | 2 +- examples/table-view/Cargo.toml | 2 +- examples/text-input/Cargo.toml | 2 +- i18n/af/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ar/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/be/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/bg/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/bn/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ca/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/cs/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/da/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/de/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/el/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/en/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/eo/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/es/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/et/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/eu/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/fa/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/fi/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/fr/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/fy/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ga/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/gd/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/gu/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/he/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/hi/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/hr/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/hu/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/id/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ie/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/is/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/it/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ja/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/jv/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ka/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../kab/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/kk/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../kmr/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/kn/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ko/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/li/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/lt/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ml/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ms/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/nl/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/nn/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/oc/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/pa/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/pl/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/pt/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ro/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ru/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/sk/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/sl/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/sr/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/sv/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ta/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/th/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/ti/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/tr/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/uk/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/uz/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 i18n/vi/{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 .../{libcosmic_yoda.ftl => libcosmic.ftl} | 0 src/action.rs | 3 --- src/command.rs | 2 -- src/core.rs | 6 ----- src/lib.rs | 3 --- src/surface/action.rs | 13 +++++----- 92 files changed, 47 insertions(+), 42 deletions(-) rename i18n/af/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ar/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/be/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/bg/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/bn/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ca/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/cs/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/da/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/de/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/el/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/en-GB/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/en/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/eo/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/es-419/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/es-MX/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/es/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/et/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/eu/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/fa/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/fi/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/fr/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/fy/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ga/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/gd/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/gu/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/he/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/hi/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/hr/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/hu/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/id/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ie/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/is/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/it/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ja/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/jv/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ka/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/kab/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/kk/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/kmr/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/kn/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ko/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/li/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/lt/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ml/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ms/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/nb-NO/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/nl/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/nn/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/oc/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/pa/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/pl/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/pt-BR/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/pt/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ro/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ru/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/sk/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/sl/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/sr-Cyrl/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/sr-Latn/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/sr/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/sv/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ta/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/th/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/ti/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/tr/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/uk/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/uz/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/vi/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/yue-Hant/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/zh-Hans/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) rename i18n/zh-Hant/{libcosmic_yoda.ftl => libcosmic.ftl} (100%) diff --git a/Cargo.toml b/Cargo.toml index 08a202a..83dd3bc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,16 @@ [package] -name = "libcosmic-yoda" -version = "0.1.0-yoda" +# NOTE (yoda fork): Cargo package name kept as "libcosmic" — see commit +# 255cf7cc & its follow-up. Renaming it to "libcosmic-yoda" broke transitive +# dep unification: cosmic-files (still upstream) asks for "libcosmic" and +# Cargo's [patch] with `package = "libcosmic-yoda"` does NOT unify across +# the graph, so two copies of the crate end up in the binary with +# incompatible types. Yoda identity is kept via: +# - repo: forgejo leyoda/libcosmic-yoda +# - branch: main (vs upstream master) +# - version: 0.1.0-yoda (pre-1.0 marker denotes divergent lineage) +# - [lib] name stays "cosmic" (unchanged, matches every consumer) +name = "libcosmic" +version = "1.0.0" edition = "2024" rust-version = "1.90" @@ -78,16 +88,21 @@ tokio = [ "cosmic-config/tokio", ] # Tokio async runtime -# Wayland window support (yoda fork is Wayland-only; this feature is always active in default) +# Wayland window support (yoda fork is Wayland-only; always active in default). +# We still need iced/winit because pop-os/iced hosts the runtime dispatcher +# (`iced_winit as shell`) there — the name is a misnomer, it's the same crate +# that provides both the winit path AND the sctk/cctk wayland path. wayland = [ "ashpd?/wayland", "autosize", + "iced/winit", "iced/wayland", "iced_winit/wayland", "iced_runtime/cctk", "iced_winit/cctk", "iced_wgpu/cctk", "iced/cctk", + "dep:iced_winit", "dep:cctk", "surface-message", ] @@ -96,6 +111,11 @@ surface-message = [] multi-window = [] # Render with wgpu wgpu = ["iced/wgpu", "iced_wgpu"] +# Compat stubs — kept empty so upstream deps (cosmic-files, cosmic-text, …) +# that still ask for `winit` / `x11` features resolve cleanly against the +# yoda fork. Activating them has no effect: no code is gated on these. +winit = [] +x11 = [] # Enables XDG portal integrations xdg-portal = ["ashpd"] qr_code = ["iced/qr_code"] diff --git a/examples/about/Cargo.toml b/examples/about/Cargo.toml index b27b513..f980811 100644 --- a/examples/about/Cargo.toml +++ b/examples/about/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] open = "5.3.3" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = [ "debug", diff --git a/examples/applet/Cargo.toml b/examples/applet/Cargo.toml index 265fbe7..13eff68 100644 --- a/examples/applet/Cargo.toml +++ b/examples/applet/Cargo.toml @@ -12,7 +12,7 @@ tracing = "0.1" env_logger = "0.10.2" log = "0.4.29" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" default-features = false features = ["applet-token"] diff --git a/examples/application/Cargo.toml b/examples/application/Cargo.toml index d4c7517..7a6083e 100644 --- a/examples/application/Cargo.toml +++ b/examples/application/Cargo.toml @@ -5,12 +5,12 @@ edition = "2021" [features] default = ["wayland"] -wayland = ["libcosmic-yoda/wayland"] +wayland = ["libcosmic/wayland"] [dependencies] env_logger = "0.11" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = [ "debug", diff --git a/examples/calendar/Cargo.toml b/examples/calendar/Cargo.toml index 203f7c1..b728682 100644 --- a/examples/calendar/Cargo.toml +++ b/examples/calendar/Cargo.toml @@ -8,6 +8,6 @@ edition = "2024" [dependencies] jiff = "0.2" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = ["debug", "winit", "tokio", "xdg-portal", "wgpu"] diff --git a/examples/context-menu/Cargo.toml b/examples/context-menu/Cargo.toml index 4c1eed6..39c550f 100644 --- a/examples/context-menu/Cargo.toml +++ b/examples/context-menu/Cargo.toml @@ -8,7 +8,7 @@ tracing = "0.1.44" tracing-subscriber = "0.3.22" tracing-log = "0.2.0" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = [ "debug", diff --git a/examples/cosmic/Cargo.toml b/examples/cosmic/Cargo.toml index eebf6c3..8c2a312 100644 --- a/examples/cosmic/Cargo.toml +++ b/examples/cosmic/Cargo.toml @@ -8,7 +8,7 @@ publish = false [dependencies] apply = "0.3.0" fraction = "0.15.3" -libcosmic-yoda = { path = "../..", features = [ +libcosmic = { path = "../..", features = [ "debug", "winit", "tokio", diff --git a/examples/image-button/Cargo.toml b/examples/image-button/Cargo.toml index 8bc521f..c219a53 100644 --- a/examples/image-button/Cargo.toml +++ b/examples/image-button/Cargo.toml @@ -7,6 +7,6 @@ edition = "2021" tracing = "0.1.44" tracing-subscriber = "0.3.22" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = ["debug", "winit", "wgpu", "tokio"] diff --git a/examples/menu/Cargo.toml b/examples/menu/Cargo.toml index 047055e..430b26e 100644 --- a/examples/menu/Cargo.toml +++ b/examples/menu/Cargo.toml @@ -8,6 +8,6 @@ tracing = "0.1.44" tracing-subscriber = "0.3.22" tracing-log = "0.2.0" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = ["debug", "winit", "tokio", "xdg-portal", "wgpu"] diff --git a/examples/multi-window/Cargo.toml b/examples/multi-window/Cargo.toml index c38595f..0b5440f 100644 --- a/examples/multi-window/Cargo.toml +++ b/examples/multi-window/Cargo.toml @@ -6,4 +6,4 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -libcosmic-yoda = { path = "../..", features = ["debug", "winit", "tokio", "single-instance", "wgpu", "wayland"] } +libcosmic = { path = "../..", features = ["debug", "winit", "tokio", "single-instance", "wgpu", "wayland"] } diff --git a/examples/nav-context/Cargo.toml b/examples/nav-context/Cargo.toml index ea2bc2b..d829df0 100644 --- a/examples/nav-context/Cargo.toml +++ b/examples/nav-context/Cargo.toml @@ -8,6 +8,6 @@ tracing = "0.1.44" tracing-subscriber = "0.3.22" tracing-log = "0.2.0" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = ["debug", "winit", "tokio", "xdg-portal", "wgpu"] diff --git a/examples/open-dialog/Cargo.toml b/examples/open-dialog/Cargo.toml index b09b98c..9404927 100644 --- a/examples/open-dialog/Cargo.toml +++ b/examples/open-dialog/Cargo.toml @@ -5,8 +5,8 @@ edition = "2021" [features] default = ["xdg-portal"] -rfd = ["libcosmic-yoda/rfd"] -xdg-portal = ["libcosmic-yoda/xdg-portal"] +rfd = ["libcosmic/rfd"] +xdg-portal = ["libcosmic/xdg-portal"] [dependencies] apply = "0.3.0" @@ -15,6 +15,6 @@ tracing = "0.1.44" tracing-subscriber = "0.3.22" url = "2.5.8" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] features = ["debug", "winit", "wgpu", "wayland", "tokio"] path = "../../" diff --git a/examples/spin-button/Cargo.toml b/examples/spin-button/Cargo.toml index 082c0fd..a522050 100644 --- a/examples/spin-button/Cargo.toml +++ b/examples/spin-button/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] fraction = "0.15.3" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] features = ["debug", "wgpu", "winit", "desktop", "tokio"] path = "../.." default-features = false diff --git a/examples/subscriptions/Cargo.toml b/examples/subscriptions/Cargo.toml index ae31a39..8eb69ff 100644 --- a/examples/subscriptions/Cargo.toml +++ b/examples/subscriptions/Cargo.toml @@ -5,6 +5,6 @@ edition = "2024" [dependencies] -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = ["debug", "winit", "wgpu", "tokio", "xdg-portal"] diff --git a/examples/table-view/Cargo.toml b/examples/table-view/Cargo.toml index 8f71e5b..8ed4592 100644 --- a/examples/table-view/Cargo.toml +++ b/examples/table-view/Cargo.toml @@ -9,6 +9,6 @@ tracing-subscriber = "0.3.22" tracing-log = "0.2.0" chrono = "*" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] features = ["debug", "wgpu", "winit", "desktop", "tokio"] path = "../.." diff --git a/examples/text-input/Cargo.toml b/examples/text-input/Cargo.toml index 69bd2a1..fe6105c 100644 --- a/examples/text-input/Cargo.toml +++ b/examples/text-input/Cargo.toml @@ -8,6 +8,6 @@ tracing = "0.1.44" tracing-subscriber = "0.3.22" tracing-log = "0.2.0" -[dependencies.libcosmic-yoda] +[dependencies.libcosmic] path = "../../" features = ["debug", "winit", "wgpu", "tokio", "xdg-portal"] diff --git a/i18n/af/libcosmic_yoda.ftl b/i18n/af/libcosmic.ftl similarity index 100% rename from i18n/af/libcosmic_yoda.ftl rename to i18n/af/libcosmic.ftl diff --git a/i18n/ar/libcosmic_yoda.ftl b/i18n/ar/libcosmic.ftl similarity index 100% rename from i18n/ar/libcosmic_yoda.ftl rename to i18n/ar/libcosmic.ftl diff --git a/i18n/be/libcosmic_yoda.ftl b/i18n/be/libcosmic.ftl similarity index 100% rename from i18n/be/libcosmic_yoda.ftl rename to i18n/be/libcosmic.ftl diff --git a/i18n/bg/libcosmic_yoda.ftl b/i18n/bg/libcosmic.ftl similarity index 100% rename from i18n/bg/libcosmic_yoda.ftl rename to i18n/bg/libcosmic.ftl diff --git a/i18n/bn/libcosmic_yoda.ftl b/i18n/bn/libcosmic.ftl similarity index 100% rename from i18n/bn/libcosmic_yoda.ftl rename to i18n/bn/libcosmic.ftl diff --git a/i18n/ca/libcosmic_yoda.ftl b/i18n/ca/libcosmic.ftl similarity index 100% rename from i18n/ca/libcosmic_yoda.ftl rename to i18n/ca/libcosmic.ftl diff --git a/i18n/cs/libcosmic_yoda.ftl b/i18n/cs/libcosmic.ftl similarity index 100% rename from i18n/cs/libcosmic_yoda.ftl rename to i18n/cs/libcosmic.ftl diff --git a/i18n/da/libcosmic_yoda.ftl b/i18n/da/libcosmic.ftl similarity index 100% rename from i18n/da/libcosmic_yoda.ftl rename to i18n/da/libcosmic.ftl diff --git a/i18n/de/libcosmic_yoda.ftl b/i18n/de/libcosmic.ftl similarity index 100% rename from i18n/de/libcosmic_yoda.ftl rename to i18n/de/libcosmic.ftl diff --git a/i18n/el/libcosmic_yoda.ftl b/i18n/el/libcosmic.ftl similarity index 100% rename from i18n/el/libcosmic_yoda.ftl rename to i18n/el/libcosmic.ftl diff --git a/i18n/en-GB/libcosmic_yoda.ftl b/i18n/en-GB/libcosmic.ftl similarity index 100% rename from i18n/en-GB/libcosmic_yoda.ftl rename to i18n/en-GB/libcosmic.ftl diff --git a/i18n/en/libcosmic_yoda.ftl b/i18n/en/libcosmic.ftl similarity index 100% rename from i18n/en/libcosmic_yoda.ftl rename to i18n/en/libcosmic.ftl diff --git a/i18n/eo/libcosmic_yoda.ftl b/i18n/eo/libcosmic.ftl similarity index 100% rename from i18n/eo/libcosmic_yoda.ftl rename to i18n/eo/libcosmic.ftl diff --git a/i18n/es-419/libcosmic_yoda.ftl b/i18n/es-419/libcosmic.ftl similarity index 100% rename from i18n/es-419/libcosmic_yoda.ftl rename to i18n/es-419/libcosmic.ftl diff --git a/i18n/es-MX/libcosmic_yoda.ftl b/i18n/es-MX/libcosmic.ftl similarity index 100% rename from i18n/es-MX/libcosmic_yoda.ftl rename to i18n/es-MX/libcosmic.ftl diff --git a/i18n/es/libcosmic_yoda.ftl b/i18n/es/libcosmic.ftl similarity index 100% rename from i18n/es/libcosmic_yoda.ftl rename to i18n/es/libcosmic.ftl diff --git a/i18n/et/libcosmic_yoda.ftl b/i18n/et/libcosmic.ftl similarity index 100% rename from i18n/et/libcosmic_yoda.ftl rename to i18n/et/libcosmic.ftl diff --git a/i18n/eu/libcosmic_yoda.ftl b/i18n/eu/libcosmic.ftl similarity index 100% rename from i18n/eu/libcosmic_yoda.ftl rename to i18n/eu/libcosmic.ftl diff --git a/i18n/fa/libcosmic_yoda.ftl b/i18n/fa/libcosmic.ftl similarity index 100% rename from i18n/fa/libcosmic_yoda.ftl rename to i18n/fa/libcosmic.ftl diff --git a/i18n/fi/libcosmic_yoda.ftl b/i18n/fi/libcosmic.ftl similarity index 100% rename from i18n/fi/libcosmic_yoda.ftl rename to i18n/fi/libcosmic.ftl diff --git a/i18n/fr/libcosmic_yoda.ftl b/i18n/fr/libcosmic.ftl similarity index 100% rename from i18n/fr/libcosmic_yoda.ftl rename to i18n/fr/libcosmic.ftl diff --git a/i18n/fy/libcosmic_yoda.ftl b/i18n/fy/libcosmic.ftl similarity index 100% rename from i18n/fy/libcosmic_yoda.ftl rename to i18n/fy/libcosmic.ftl diff --git a/i18n/ga/libcosmic_yoda.ftl b/i18n/ga/libcosmic.ftl similarity index 100% rename from i18n/ga/libcosmic_yoda.ftl rename to i18n/ga/libcosmic.ftl diff --git a/i18n/gd/libcosmic_yoda.ftl b/i18n/gd/libcosmic.ftl similarity index 100% rename from i18n/gd/libcosmic_yoda.ftl rename to i18n/gd/libcosmic.ftl diff --git a/i18n/gu/libcosmic_yoda.ftl b/i18n/gu/libcosmic.ftl similarity index 100% rename from i18n/gu/libcosmic_yoda.ftl rename to i18n/gu/libcosmic.ftl diff --git a/i18n/he/libcosmic_yoda.ftl b/i18n/he/libcosmic.ftl similarity index 100% rename from i18n/he/libcosmic_yoda.ftl rename to i18n/he/libcosmic.ftl diff --git a/i18n/hi/libcosmic_yoda.ftl b/i18n/hi/libcosmic.ftl similarity index 100% rename from i18n/hi/libcosmic_yoda.ftl rename to i18n/hi/libcosmic.ftl diff --git a/i18n/hr/libcosmic_yoda.ftl b/i18n/hr/libcosmic.ftl similarity index 100% rename from i18n/hr/libcosmic_yoda.ftl rename to i18n/hr/libcosmic.ftl diff --git a/i18n/hu/libcosmic_yoda.ftl b/i18n/hu/libcosmic.ftl similarity index 100% rename from i18n/hu/libcosmic_yoda.ftl rename to i18n/hu/libcosmic.ftl diff --git a/i18n/id/libcosmic_yoda.ftl b/i18n/id/libcosmic.ftl similarity index 100% rename from i18n/id/libcosmic_yoda.ftl rename to i18n/id/libcosmic.ftl diff --git a/i18n/ie/libcosmic_yoda.ftl b/i18n/ie/libcosmic.ftl similarity index 100% rename from i18n/ie/libcosmic_yoda.ftl rename to i18n/ie/libcosmic.ftl diff --git a/i18n/is/libcosmic_yoda.ftl b/i18n/is/libcosmic.ftl similarity index 100% rename from i18n/is/libcosmic_yoda.ftl rename to i18n/is/libcosmic.ftl diff --git a/i18n/it/libcosmic_yoda.ftl b/i18n/it/libcosmic.ftl similarity index 100% rename from i18n/it/libcosmic_yoda.ftl rename to i18n/it/libcosmic.ftl diff --git a/i18n/ja/libcosmic_yoda.ftl b/i18n/ja/libcosmic.ftl similarity index 100% rename from i18n/ja/libcosmic_yoda.ftl rename to i18n/ja/libcosmic.ftl diff --git a/i18n/jv/libcosmic_yoda.ftl b/i18n/jv/libcosmic.ftl similarity index 100% rename from i18n/jv/libcosmic_yoda.ftl rename to i18n/jv/libcosmic.ftl diff --git a/i18n/ka/libcosmic_yoda.ftl b/i18n/ka/libcosmic.ftl similarity index 100% rename from i18n/ka/libcosmic_yoda.ftl rename to i18n/ka/libcosmic.ftl diff --git a/i18n/kab/libcosmic_yoda.ftl b/i18n/kab/libcosmic.ftl similarity index 100% rename from i18n/kab/libcosmic_yoda.ftl rename to i18n/kab/libcosmic.ftl diff --git a/i18n/kk/libcosmic_yoda.ftl b/i18n/kk/libcosmic.ftl similarity index 100% rename from i18n/kk/libcosmic_yoda.ftl rename to i18n/kk/libcosmic.ftl diff --git a/i18n/kmr/libcosmic_yoda.ftl b/i18n/kmr/libcosmic.ftl similarity index 100% rename from i18n/kmr/libcosmic_yoda.ftl rename to i18n/kmr/libcosmic.ftl diff --git a/i18n/kn/libcosmic_yoda.ftl b/i18n/kn/libcosmic.ftl similarity index 100% rename from i18n/kn/libcosmic_yoda.ftl rename to i18n/kn/libcosmic.ftl diff --git a/i18n/ko/libcosmic_yoda.ftl b/i18n/ko/libcosmic.ftl similarity index 100% rename from i18n/ko/libcosmic_yoda.ftl rename to i18n/ko/libcosmic.ftl diff --git a/i18n/li/libcosmic_yoda.ftl b/i18n/li/libcosmic.ftl similarity index 100% rename from i18n/li/libcosmic_yoda.ftl rename to i18n/li/libcosmic.ftl diff --git a/i18n/lt/libcosmic_yoda.ftl b/i18n/lt/libcosmic.ftl similarity index 100% rename from i18n/lt/libcosmic_yoda.ftl rename to i18n/lt/libcosmic.ftl diff --git a/i18n/ml/libcosmic_yoda.ftl b/i18n/ml/libcosmic.ftl similarity index 100% rename from i18n/ml/libcosmic_yoda.ftl rename to i18n/ml/libcosmic.ftl diff --git a/i18n/ms/libcosmic_yoda.ftl b/i18n/ms/libcosmic.ftl similarity index 100% rename from i18n/ms/libcosmic_yoda.ftl rename to i18n/ms/libcosmic.ftl diff --git a/i18n/nb-NO/libcosmic_yoda.ftl b/i18n/nb-NO/libcosmic.ftl similarity index 100% rename from i18n/nb-NO/libcosmic_yoda.ftl rename to i18n/nb-NO/libcosmic.ftl diff --git a/i18n/nl/libcosmic_yoda.ftl b/i18n/nl/libcosmic.ftl similarity index 100% rename from i18n/nl/libcosmic_yoda.ftl rename to i18n/nl/libcosmic.ftl diff --git a/i18n/nn/libcosmic_yoda.ftl b/i18n/nn/libcosmic.ftl similarity index 100% rename from i18n/nn/libcosmic_yoda.ftl rename to i18n/nn/libcosmic.ftl diff --git a/i18n/oc/libcosmic_yoda.ftl b/i18n/oc/libcosmic.ftl similarity index 100% rename from i18n/oc/libcosmic_yoda.ftl rename to i18n/oc/libcosmic.ftl diff --git a/i18n/pa/libcosmic_yoda.ftl b/i18n/pa/libcosmic.ftl similarity index 100% rename from i18n/pa/libcosmic_yoda.ftl rename to i18n/pa/libcosmic.ftl diff --git a/i18n/pl/libcosmic_yoda.ftl b/i18n/pl/libcosmic.ftl similarity index 100% rename from i18n/pl/libcosmic_yoda.ftl rename to i18n/pl/libcosmic.ftl diff --git a/i18n/pt-BR/libcosmic_yoda.ftl b/i18n/pt-BR/libcosmic.ftl similarity index 100% rename from i18n/pt-BR/libcosmic_yoda.ftl rename to i18n/pt-BR/libcosmic.ftl diff --git a/i18n/pt/libcosmic_yoda.ftl b/i18n/pt/libcosmic.ftl similarity index 100% rename from i18n/pt/libcosmic_yoda.ftl rename to i18n/pt/libcosmic.ftl diff --git a/i18n/ro/libcosmic_yoda.ftl b/i18n/ro/libcosmic.ftl similarity index 100% rename from i18n/ro/libcosmic_yoda.ftl rename to i18n/ro/libcosmic.ftl diff --git a/i18n/ru/libcosmic_yoda.ftl b/i18n/ru/libcosmic.ftl similarity index 100% rename from i18n/ru/libcosmic_yoda.ftl rename to i18n/ru/libcosmic.ftl diff --git a/i18n/sk/libcosmic_yoda.ftl b/i18n/sk/libcosmic.ftl similarity index 100% rename from i18n/sk/libcosmic_yoda.ftl rename to i18n/sk/libcosmic.ftl diff --git a/i18n/sl/libcosmic_yoda.ftl b/i18n/sl/libcosmic.ftl similarity index 100% rename from i18n/sl/libcosmic_yoda.ftl rename to i18n/sl/libcosmic.ftl diff --git a/i18n/sr-Cyrl/libcosmic_yoda.ftl b/i18n/sr-Cyrl/libcosmic.ftl similarity index 100% rename from i18n/sr-Cyrl/libcosmic_yoda.ftl rename to i18n/sr-Cyrl/libcosmic.ftl diff --git a/i18n/sr-Latn/libcosmic_yoda.ftl b/i18n/sr-Latn/libcosmic.ftl similarity index 100% rename from i18n/sr-Latn/libcosmic_yoda.ftl rename to i18n/sr-Latn/libcosmic.ftl diff --git a/i18n/sr/libcosmic_yoda.ftl b/i18n/sr/libcosmic.ftl similarity index 100% rename from i18n/sr/libcosmic_yoda.ftl rename to i18n/sr/libcosmic.ftl diff --git a/i18n/sv/libcosmic_yoda.ftl b/i18n/sv/libcosmic.ftl similarity index 100% rename from i18n/sv/libcosmic_yoda.ftl rename to i18n/sv/libcosmic.ftl diff --git a/i18n/ta/libcosmic_yoda.ftl b/i18n/ta/libcosmic.ftl similarity index 100% rename from i18n/ta/libcosmic_yoda.ftl rename to i18n/ta/libcosmic.ftl diff --git a/i18n/th/libcosmic_yoda.ftl b/i18n/th/libcosmic.ftl similarity index 100% rename from i18n/th/libcosmic_yoda.ftl rename to i18n/th/libcosmic.ftl diff --git a/i18n/ti/libcosmic_yoda.ftl b/i18n/ti/libcosmic.ftl similarity index 100% rename from i18n/ti/libcosmic_yoda.ftl rename to i18n/ti/libcosmic.ftl diff --git a/i18n/tr/libcosmic_yoda.ftl b/i18n/tr/libcosmic.ftl similarity index 100% rename from i18n/tr/libcosmic_yoda.ftl rename to i18n/tr/libcosmic.ftl diff --git a/i18n/uk/libcosmic_yoda.ftl b/i18n/uk/libcosmic.ftl similarity index 100% rename from i18n/uk/libcosmic_yoda.ftl rename to i18n/uk/libcosmic.ftl diff --git a/i18n/uz/libcosmic_yoda.ftl b/i18n/uz/libcosmic.ftl similarity index 100% rename from i18n/uz/libcosmic_yoda.ftl rename to i18n/uz/libcosmic.ftl diff --git a/i18n/vi/libcosmic_yoda.ftl b/i18n/vi/libcosmic.ftl similarity index 100% rename from i18n/vi/libcosmic_yoda.ftl rename to i18n/vi/libcosmic.ftl diff --git a/i18n/yue-Hant/libcosmic_yoda.ftl b/i18n/yue-Hant/libcosmic.ftl similarity index 100% rename from i18n/yue-Hant/libcosmic_yoda.ftl rename to i18n/yue-Hant/libcosmic.ftl diff --git a/i18n/zh-Hans/libcosmic_yoda.ftl b/i18n/zh-Hans/libcosmic.ftl similarity index 100% rename from i18n/zh-Hans/libcosmic_yoda.ftl rename to i18n/zh-Hans/libcosmic.ftl diff --git a/i18n/zh-Hant/libcosmic_yoda.ftl b/i18n/zh-Hant/libcosmic.ftl similarity index 100% rename from i18n/zh-Hant/libcosmic_yoda.ftl rename to i18n/zh-Hant/libcosmic.ftl diff --git a/src/action.rs b/src/action.rs index b716289..19e228b 100644 --- a/src/action.rs +++ b/src/action.rs @@ -1,7 +1,6 @@ // Copyright 2023 System76 // SPDX-License-Identifier: MPL-2.0 -#[cfg(feature = "winit")] use crate::app; #[cfg(feature = "single-instance")] use crate::dbus_activation; @@ -9,7 +8,6 @@ use crate::dbus_activation; pub const fn app(message: M) -> Action { Action::App(message) } -#[cfg(feature = "winit")] pub const fn cosmic(message: app::Action) -> Action { Action::Cosmic(message) } @@ -23,7 +21,6 @@ pub const fn none() -> Action { pub enum Action { /// Messages from the application, for the application. App(M), - #[cfg(feature = "winit")] /// Internal messages to be handled by libcosmic. Cosmic(app::Action), #[cfg(feature = "single-instance")] diff --git a/src/command.rs b/src/command.rs index 1d6f635..c5c1c62 100644 --- a/src/command.rs +++ b/src/command.rs @@ -27,12 +27,10 @@ pub fn set_title(id: window::Id, title: String) -> iced::Task(factor: f32) -> iced::Task> { iced::Task::done(crate::app::Action::ScaleFactor(factor)).map(crate::Action::Cosmic) } -#[cfg(feature = "winit")] pub fn set_theme(theme: crate::Theme) -> iced::Task> { iced::Task::done(crate::app::Action::AppThemeChange(theme)).map(crate::Action::Cosmic) } diff --git a/src/core.rs b/src/core.rs index 970a535..44f3b3d 100644 --- a/src/core.rs +++ b/src/core.rs @@ -432,7 +432,6 @@ impl Core { id } - #[cfg(feature = "winit")] pub fn drag(&self, id: Option) -> crate::app::Task { let Some(id) = id.or(self.main_window) else { return iced::Task::none(); @@ -440,7 +439,6 @@ impl Core { crate::command::drag(id) } - #[cfg(feature = "winit")] pub fn maximize( &self, id: Option, @@ -452,7 +450,6 @@ impl Core { crate::command::maximize(id, maximized) } - #[cfg(feature = "winit")] pub fn minimize(&self, id: Option) -> crate::app::Task { let Some(id) = id.or(self.main_window) else { return iced::Task::none(); @@ -460,7 +457,6 @@ impl Core { crate::command::minimize(id) } - #[cfg(feature = "winit")] pub fn set_title( &self, id: Option, @@ -472,7 +468,6 @@ impl Core { crate::command::set_title(id, title) } - #[cfg(feature = "winit")] pub fn set_windowed(&self, id: Option) -> crate::app::Task { let Some(id) = id.or(self.main_window) else { return iced::Task::none(); @@ -480,7 +475,6 @@ impl Core { crate::command::set_windowed(id) } - #[cfg(feature = "winit")] pub fn toggle_maximize( &self, id: Option, diff --git a/src/lib.rs b/src/lib.rs index 0262379..1eacb96 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -7,7 +7,6 @@ /// Recommended default imports. pub mod prelude { - #[cfg(feature = "winit")] pub use crate::ApplicationExt; pub use crate::ext::*; pub use crate::{Also, Apply, Element, Renderer, Task, Theme}; @@ -21,9 +20,7 @@ pub use action::Action; pub mod anim; -#[cfg(feature = "winit")] pub mod app; -#[cfg(feature = "winit")] #[doc(inline)] pub use app::{Application, ApplicationExt}; diff --git a/src/surface/action.rs b/src/surface/action.rs index 50e2b4a..72dbad6 100644 --- a/src/surface/action.rs +++ b/src/surface/action.rs @@ -2,7 +2,6 @@ // SPDX-License-Identifier: MPL-2.0 use super::Action; -#[cfg(feature = "winit")] use crate::Application; use iced::window; @@ -27,7 +26,7 @@ pub fn destroy_window(id: iced_core::window::Id) -> Action { Action::DestroyWindow(id) } -#[cfg(all(feature = "wayland", target_os = "linux", feature = "winit"))] +#[cfg(all(feature = "wayland", target_os = "linux"))] #[must_use] pub fn app_window( settings: impl Fn(&mut App) -> window::Settings + Send + Sync + 'static, @@ -60,7 +59,7 @@ pub fn app_window( } /// Used to create a window message from within a widget. -#[cfg(all(feature = "wayland", target_os = "linux", feature = "winit"))] +#[cfg(all(feature = "wayland", target_os = "linux"))] #[must_use] pub fn simple_window( settings: impl Fn() -> window::Settings + Send + Sync + 'static, @@ -92,7 +91,7 @@ pub fn simple_window( ) } -#[cfg(all(feature = "wayland", target_os = "linux", feature = "winit"))] +#[cfg(all(feature = "wayland", target_os = "linux"))] #[must_use] pub fn app_popup( settings: impl Fn(&mut App) -> iced_runtime::platform_specific::wayland::popup::SctkPopupSettings @@ -126,7 +125,7 @@ pub fn app_popup( } /// Used to create a subsurface message from within a widget. -#[cfg(all(feature = "wayland", target_os = "linux", feature = "winit"))] +#[cfg(all(feature = "wayland", target_os = "linux"))] #[must_use] pub fn simple_subsurface( settings: impl Fn() -> iced_runtime::platform_specific::wayland::subsurface::SctkSubsurfaceSettings @@ -155,7 +154,7 @@ pub fn simple_subsurface( } /// Used to create a popup message from within a widget. -#[cfg(all(feature = "wayland", target_os = "linux", feature = "winit"))] +#[cfg(all(feature = "wayland", target_os = "linux"))] #[must_use] pub fn simple_popup( settings: impl Fn() -> iced_runtime::platform_specific::wayland::popup::SctkPopupSettings @@ -186,7 +185,7 @@ pub fn simple_popup( ) } -#[cfg(all(feature = "wayland", target_os = "linux", feature = "winit"))] +#[cfg(all(feature = "wayland", target_os = "linux"))] #[must_use] pub fn subsurface( settings: impl Fn(