merge: epoch-1.9.0 d'upstream

# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	cosmic-app-list/Cargo.toml
#	cosmic-app-list/cosmic-app-list-config/Cargo.toml
#	cosmic-applet-a11y/Cargo.toml
#	cosmic-applet-audio/Cargo.toml
#	cosmic-applet-battery/Cargo.toml
#	cosmic-applet-bluetooth/Cargo.toml
#	cosmic-applet-input-sources/Cargo.toml
#	cosmic-applet-minimize/Cargo.toml
#	cosmic-applet-network/Cargo.toml
#	cosmic-applet-notifications/Cargo.toml
#	cosmic-applet-power/Cargo.toml
#	cosmic-applet-status-area/Cargo.toml
#	cosmic-applet-tiling/Cargo.toml
#	cosmic-applet-time/Cargo.toml
#	cosmic-applet-workspaces/Cargo.toml
#	cosmic-applets-config/Cargo.toml
#	cosmic-applets/Cargo.toml
#	cosmic-applets/src/main.rs
#	cosmic-panel-button/Cargo.toml
This commit is contained in:
Lionel DARNIS 2026-09-24 20:50:47 +02:00
commit e13e162e53
64 changed files with 1223 additions and 789 deletions

1684
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -10,6 +10,7 @@ members = [
"cosmic-applet-minimize", "cosmic-applet-minimize",
"cosmic-applet-network", "cosmic-applet-network",
"cosmic-applet-notifications", "cosmic-applet-notifications",
"cosmic-applet-osk",
"cosmic-applet-power", "cosmic-applet-power",
"cosmic-applet-status-area", "cosmic-applet-status-area",
"cosmic-applet-tiling", "cosmic-applet-tiling",
@ -27,6 +28,7 @@ resolver = "3"
anyhow = "1.0.102" anyhow = "1.0.102"
cctk = { package = "cosmic-client-toolkit", path = "../cosmic-protocols/client-toolkit" } cctk = { package = "cosmic-client-toolkit", path = "../cosmic-protocols/client-toolkit" }
cosmic-applets-config = { path = "cosmic-applets-config" } cosmic-applets-config = { path = "cosmic-applets-config" }
cosmic-osk-config = { git = "https://github.com/pop-os/cosmic-osk" }
cosmic-protocols = { path = "../cosmic-protocols", default-features = false, features = [ cosmic-protocols = { path = "../cosmic-protocols", default-features = false, features = [
"client", "client",
]} ]}
@ -122,6 +124,12 @@ cosmic-settings-airplane-mode-subscription = { path = "/home/lionel/Projets/COSM
[patch."https://github.com/pop-os/cosmic-text.git"] [patch."https://github.com/pop-os/cosmic-text.git"]
cosmic-text = { path = "../cosmic-text" } cosmic-text = { path = "../cosmic-text" }
# Yoda: certaines crates amont 1.9 ecrivent l'URL avec "//" ; cargo la traite
# comme une source distincte, il faut donc la patcher aussi.
[patch."https://github.com/pop-os/cosmic-protocols//"]
cosmic-protocols = { path = "/home/lionel/Projets/COSMIC/cosmic-protocols" }
cosmic-client-toolkit = { path = "/home/lionel/Projets/COSMIC/cosmic-protocols/client-toolkit" }
# [patch.'https://github.com/pop-os/dbus-settings-bindings'] # [patch.'https://github.com/pop-os/dbus-settings-bindings']
# cosmic-dbus-networkmanager = { path = "../dbus-settings-bindings/networkmanager" } # cosmic-dbus-networkmanager = { path = "../dbus-settings-bindings/networkmanager" }
# upower_dbus = { path = "../dbus-settings-bindings/upower" } # upower_dbus = { path = "../dbus-settings-bindings/upower" }

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-app-list" name = "cosmic-app-list"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-app-list-config" name = "cosmic-app-list-config"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

View file

@ -1,7 +1,7 @@
run = Selkem run = Selkem
run-on = Selkem ɣef { $gpu } run-on = Selkem ɣef { $gpu }
run-on-default = (Amezwer) run-on-default = (Amezwer)
quit = Tuffɣa quit = Ffeɣ
quit-all = Ffeɣ-iten akk quit-all = Ffeɣ-iten akk
new-window = Asfaylu Amaynut new-window = Asfaylu Amaynut
cosmic-app-list = Afeggag n yisnasen cosmic-app-list = Afeggag n yisnasen

View file

@ -1 +1,3 @@
cosmic-app-list = Cinta d’aplicacions cosmic-app-list = Cinta d’aplicacions
quit = Quitar
run = Executar

View file

@ -518,7 +518,7 @@ enum Message {
ConfigUpdated(AppListConfig), ConfigUpdated(AppListConfig),
OpenFavorites, OpenFavorites,
OpenActive, OpenActive,
Surface(surface::Action), Surface(surface::Action<Message>),
} }
fn index_in_list( fn index_in_list(
@ -2303,9 +2303,7 @@ impl cosmic::Application for CosmicAppList {
} }
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-a11y" name = "cosmic-applet-a11y"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
[dependencies] [dependencies]

View file

@ -64,7 +64,7 @@ enum Message {
OpenSettings, OpenSettings,
DBusUpdate(accessibility::Response), DBusUpdate(accessibility::Response),
WaylandUpdate(WaylandUpdate), WaylandUpdate(WaylandUpdate),
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for CosmicA11yApplet { impl cosmic::Application for CosmicA11yApplet {
@ -288,9 +288,7 @@ impl cosmic::Application for CosmicA11yApplet {
} }
}, },
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-audio" name = "cosmic-applet-audio"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -0,0 +1 @@
output = Sortida

View file

@ -164,7 +164,7 @@ pub enum Message {
SetSinkVolume(u32), SetSinkVolume(u32),
SetSourceVolume(u32), SetSourceVolume(u32),
Subscription(audio_client::Event), Subscription(audio_client::Event),
Surface(surface::Action), Surface(surface::Action<Message>),
ToggleMediaControlsInTopPanel(bool), ToggleMediaControlsInTopPanel(bool),
TogglePopup, TogglePopup,
ToggleSinkMute, ToggleSinkMute,
@ -546,9 +546,7 @@ impl cosmic::Application for Audio {
} }
}, },
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
Message::Client(client) => { Message::Client(client) => {
if let Some(client) = Arc::into_inner(client) { if let Some(client) = Arc::into_inner(client) {

View file

@ -74,8 +74,10 @@ impl Nodes {
self.id.remove(pos); self.id.remove(pos);
self.volume.remove(pos); self.volume.remove(pos);
self.dropdown_sort(); self.dropdown_sort();
if self.active == Some(pos) { match self.active {
self.active = None; Some(active) if active == pos => self.active = None,
Some(active) if active > pos => self.active = Some(active - 1),
_ => {}
} }
true true
} }

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-battery" name = "cosmic-applet-battery"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -1,4 +1,4 @@
battery = 電池 battery = 省電
battery-desc = 降低效能與耗電量。 battery-desc = 降低效能與耗電量。
balanced = 平衡 balanced = 平衡
balanced-desc = 標準效能與耗電量。 balanced-desc = 標準效能與耗電量。

View file

@ -213,7 +213,7 @@ enum Message {
OpenSettings, OpenSettings,
SettingsDaemon(settings_daemon::Event), SettingsDaemon(settings_daemon::Event),
ZbusConnection(zbus::Result<zbus::Connection>), ZbusConnection(zbus::Result<zbus::Connection>),
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for CosmicBatteryApplet { impl cosmic::Application for CosmicBatteryApplet {
@ -526,9 +526,7 @@ impl cosmic::Application for CosmicBatteryApplet {
} }
}, },
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-bluetooth" name = "cosmic-applet-bluetooth"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -1,4 +1,4 @@
cancel = Sefsex cancel = Semmet
connected = Yettwaqqen connected = Yettwaqqen
confirm = Sentem confirm = Sentem
other-devices = Ibenkan-nniḍen n Bluetooth other-devices = Ibenkan-nniḍen n Bluetooth

View file

@ -1 +1,2 @@
connected = Connectat connected = Connectat
cancel = Anullar

View file

@ -0,0 +1,3 @@
connected = เชื่อมต่อแล้ว
confirm = ยืนยัน
cancel = ยกเลิก

View file

@ -76,7 +76,7 @@ enum Message {
Token(TokenUpdate), Token(TokenUpdate),
OpenSettings, OpenSettings,
ToggleBluetooth(bool), ToggleBluetooth(bool),
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for CosmicBluetoothApplet { impl cosmic::Application for CosmicBluetoothApplet {
@ -304,9 +304,7 @@ impl cosmic::Application for CosmicBluetoothApplet {
} }
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
self.update_icon(); self.update_icon();

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-input-sources" name = "cosmic-applet-input-sources"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -98,7 +98,7 @@ pub enum Message {
CompConfig(Box<CosmicCompConfig>), CompConfig(Box<CosmicCompConfig>),
SetActiveLayout(usize), SetActiveLayout(usize),
KeyboardSettings, KeyboardSettings,
Surface(surface::Action), Surface(surface::Action<Message>),
Rectangle(RectangleUpdate<u32>), Rectangle(RectangleUpdate<u32>),
WaylandConnection(Backend), WaylandConnection(Backend),
Wayland(wayland::Event), Wayland(wayland::Event),
@ -190,9 +190,7 @@ impl cosmic::Application for Window {
} }
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
Message::Rectangle(u) => match u { Message::Rectangle(u) => match u {
RectangleUpdate::Rectangle(r) => { RectangleUpdate::Rectangle(r) => {

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-minimize" name = "cosmic-applet-minimize"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -126,7 +126,7 @@ enum Message {
Closed(window::Id), Closed(window::Id),
OpenOverflowPopup, OpenOverflowPopup,
CloseOverflowPopup, CloseOverflowPopup,
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for Minimize { impl cosmic::Application for Minimize {
@ -294,9 +294,7 @@ impl cosmic::Application for Minimize {
} }
Message::CloseOverflowPopup => todo!(), Message::CloseOverflowPopup => todo!(),
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-network" name = "cosmic-applet-network"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-or-later" license = "GPL-3.0-or-later"

View file

@ -1,4 +1,4 @@
cancel = Sefsex cancel = Semmet
connect = Qqen connect = Qqen
identity = Tamagit identity = Tamagit
wifi = Wi-Fi wifi = Wi-Fi

View file

@ -1,3 +1,5 @@
identity = Identitat identity = Identitat
connected = Connectat connected = Connectat
connect = Connectar connect = Connectar
cancel = Anullar
network = Ret

View file

@ -0,0 +1,4 @@
connect = เชื่อมต่อ
identity = ตัวตน
connected = เชื่อมต่อแล้ว
cancel = ยกเลิก

View file

@ -1028,7 +1028,7 @@ pub(crate) enum Message {
FocusSecureInput, FocusSecureInput,
NoOp, NoOp,
#[allow(dead_code)] // required by `cosmic::applet` surface path; not always emitted #[allow(dead_code)] // required by `cosmic::applet` surface path; not always emitted
Surface(surface::Action), Surface(surface::Action<Message>),
ActivateVpn(Arc<str>), // UUID of VPN to activate ActivateVpn(Arc<str>), // UUID of VPN to activate
DeactivateVpn(Arc<str>), // UUID of VPN to deactivate DeactivateVpn(Arc<str>), // UUID of VPN to deactivate
VpnOperationFinished { VpnOperationFinished {
@ -1294,9 +1294,7 @@ impl cosmic::Application for CosmicNetworkApplet {
return Task::batch(vec![forget_task, reconnect_task]); return Task::batch(vec![forget_task, reconnect_task]);
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
Message::ActivateVpn(uuid) => { Message::ActivateVpn(uuid) => {
self.nm_state.pending_vpn = Some(PendingVpn { self.nm_state.pending_vpn = Some(PendingVpn {

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-notifications" name = "cosmic-applet-notifications"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -78,7 +78,7 @@ enum Message {
CardsToggled(String, bool), CardsToggled(String, bool),
Token(TokenUpdate), Token(TokenUpdate),
OpenSettings, OpenSettings,
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for Notifications { impl cosmic::Application for Notifications {
@ -367,9 +367,7 @@ impl cosmic::Application for Notifications {
} }
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
self.update_icon(); self.update_icon();

View file

@ -0,0 +1,12 @@
[package]
name = "cosmic-applet-osk"
version = "1.0.15"
edition = "2024"
license = "GPL-3.0-only"
[dependencies]
cosmic-osk-config.workspace = true
libcosmic.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
tracing-log.workspace = true

View file

@ -0,0 +1,13 @@
[Desktop Entry]
Name=On-screen Keyboard Button
Comment=Open the on-screen keyboard
Type=Application
Exec=cosmic-applet-osk
Terminal=false
Categories=COSMIC;
Keywords=COSMIC;Applet;OSK;Keyboard;
Icon=input-keyboard-symbolic
StartupNotify=true
NoDisplay=true
X-CosmicApplet=true
X-OverflowPriority=10

View file

@ -0,0 +1,72 @@
// Copyright 2023 System76 <info@system76.com>
// SPDX-License-Identifier: GPL-3.0-only
use cosmic::{Task, app, cosmic_config::CosmicConfigEntry, iced};
use cosmic_osk_config::Config;
struct Button {
core: cosmic::app::Core,
}
#[derive(Debug, Clone)]
enum Msg {
Press,
}
impl cosmic::Application for Button {
type Message = Msg;
type Executor = cosmic::SingleThreadExecutor;
type Flags = ();
const APP_ID: &'static str = "com.system76.CosmicAppletOsk";
fn init(core: cosmic::app::Core, _: ()) -> (Self, app::Task<Msg>) {
(Self { core }, Task::none())
}
fn core(&self) -> &cosmic::app::Core {
&self.core
}
fn core_mut(&mut self) -> &mut cosmic::app::Core {
&mut self.core
}
fn style(&self) -> Option<iced::theme::Style> {
Some(cosmic::applet::style())
}
fn update(&mut self, message: Msg) -> app::Task<Msg> {
match message {
Msg::Press => match Config::handler() {
Ok(handler) => {
let mut config = match Config::get_entry(&handler) {
Ok(config) => config,
Err((errs, config)) => {
tracing::warn!("failed to parse OSK config: {:?}", errs);
config
}
};
if let Err(err) = config.set_always_shown(&handler, !config.always_shown) {
tracing::error!("failed to set OSK always_shown config: {}", err);
}
}
Err(err) => {
tracing::error!("failed to create OSK config handler: {}", err);
}
},
}
Task::none()
}
fn view(&self) -> cosmic::Element<'_, Msg> {
self.core
.applet
.icon_button("input-keyboard-symbolic")
.on_press_down(Msg::Press)
.into()
}
}
pub fn run() -> iced::Result {
cosmic::applet::run::<Button>(())
}

View file

@ -0,0 +1,13 @@
// Copyright 2023 System76 <info@system76.com>
// SPDX-License-Identifier: GPL-3.0-only
const VERSION: &str = env!("CARGO_PKG_VERSION");
fn main() -> cosmic::iced::Result {
tracing_subscriber::fmt::init();
let _ = tracing_log::LogTracer::init();
tracing::info!("Starting OSK applet with version {VERSION}");
cosmic_applet_osk::run()
}

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-power" name = "cosmic-applet-power"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -78,7 +78,7 @@ enum Message {
Zbus(Result<(), zbus::Error>), Zbus(Result<(), zbus::Error>),
Closed(window::Id), Closed(window::Id),
Token(TokenUpdate), Token(TokenUpdate),
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for Power { impl cosmic::Application for Power {
@ -197,9 +197,7 @@ impl cosmic::Application for Power {
} }
}, },
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-status-area" name = "cosmic-applet-status-area"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -39,7 +39,7 @@ pub enum Msg {
TogglePopup(usize), TogglePopup(usize),
Hovered(Option<usize>), Hovered(Option<usize>),
WheelScrolled(ScrollDelta), WheelScrolled(ScrollDelta),
Surface(surface::Action), Surface(surface::Action<Msg>),
ToggleOverflow, ToggleOverflow,
HoveredOverflow, HoveredOverflow,
Token(TokenUpdate), Token(TokenUpdate),
@ -409,9 +409,7 @@ impl cosmic::Application for App {
scroll(id, menu.item.item_proxy().clone(), delta, orientation) scroll(id, menu.item.item_proxy().clone(), delta, orientation)
} }
Msg::Surface(a) => { Msg::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
Msg::ToggleOverflow => { Msg::ToggleOverflow => {
if let Some(popup_id) = self.overflow_popup.take() { if let Some(popup_id) = self.overflow_popup.take() {

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-tiling" name = "cosmic-applet-tiling"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -56,7 +56,7 @@ pub enum Message {
WorkspaceUpdate(WorkspacesUpdate), WorkspaceUpdate(WorkspacesUpdate),
NewWorkspace(Entity), NewWorkspace(Entity),
OpenSettings, OpenSettings,
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for Window { impl cosmic::Application for Window {
@ -235,9 +235,7 @@ impl cosmic::Application for Window {
tokio::spawn(cosmic::process::spawn(cmd)); tokio::spawn(cosmic::process::spawn(cmd));
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-time" name = "cosmic-applet-time"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -1 +1 @@
datetime-settings = Nastavení času, datumu a kalendáře... datetime-settings = Nastavení času, data a kalendáře...

View file

@ -0,0 +1 @@
datetime-settings = Date, Time and Calendar Settings...

View file

@ -107,7 +107,7 @@ pub enum Message {
Token(TokenUpdate), Token(TokenUpdate),
ConfigChanged(TimeAppletConfig), ConfigChanged(TimeAppletConfig),
TimezoneUpdate(String), TimezoneUpdate(String),
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl Window { impl Window {
@ -674,9 +674,7 @@ impl cosmic::Application for Window {
self.update(Message::Tick) self.update(Message::Tick)
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
} }

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applet-workspaces" name = "cosmic-applet-workspaces"
version = "1.3.0" version = "1.9.0"
authors = ["Ashley Wulber <ashley@system76.com>"] authors = ["Ashley Wulber <ashley@system76.com>"]
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -0,0 +1 @@
cosmic-applet-workspaces = COSMIC Workspaces

View file

@ -90,7 +90,7 @@ enum Message {
WorkspacePressed(ExtWorkspaceHandleV1), WorkspacePressed(ExtWorkspaceHandleV1),
WheelScrolled(ScrollDelta), WheelScrolled(ScrollDelta),
WorkspaceOverview, WorkspaceOverview,
Surface(surface::Action), Surface(surface::Action<Message>),
} }
impl cosmic::Application for IcedWorkspacesApplet { impl cosmic::Application for IcedWorkspacesApplet {
@ -167,9 +167,7 @@ impl cosmic::Application for IcedWorkspacesApplet {
let _ = ShellCommand::new("cosmic-workspaces").spawn(); let _ = ShellCommand::new("cosmic-workspaces").spawn();
} }
Message::Surface(a) => { Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applets-config" name = "cosmic-applets-config"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
[dependencies] [dependencies]

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-applets" name = "cosmic-applets"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"
@ -16,6 +16,7 @@ cosmic-applet-bluetooth = { path = "../cosmic-applet-bluetooth" }
cosmic-applet-minimize = { path = "../cosmic-applet-minimize" } cosmic-applet-minimize = { path = "../cosmic-applet-minimize" }
cosmic-applet-network = { path = "../cosmic-applet-network" } cosmic-applet-network = { path = "../cosmic-applet-network" }
cosmic-applet-notifications = { path = "../cosmic-applet-notifications" } cosmic-applet-notifications = { path = "../cosmic-applet-notifications" }
cosmic-applet-osk = { path = "../cosmic-applet-osk" }
cosmic-applet-power = { path = "../cosmic-applet-power" } cosmic-applet-power = { path = "../cosmic-applet-power" }
cosmic-applet-status-area = { path = "../cosmic-applet-status-area" } cosmic-applet-status-area = { path = "../cosmic-applet-status-area" }
cosmic-applet-tiling = { path = "../cosmic-applet-tiling" } cosmic-applet-tiling = { path = "../cosmic-applet-tiling" }

View file

@ -59,6 +59,12 @@ fn main() {
"cosmic-applet-notifications-comment", "cosmic-applet-notifications-comment",
"cosmic-applet-notifications-keywords", "cosmic-applet-notifications-keywords",
), ),
(
"com.system76.CosmicAppletOsk",
"cosmic-applet-osk",
"cosmic-applet-osk-comment",
"cosmic-applet-osk-keywords",
),
( (
"com.system76.CosmicAppletPower", "com.system76.CosmicAppletPower",
"cosmic-applet-power", "cosmic-applet-power",

View file

@ -27,6 +27,7 @@ fn main() -> cosmic::iced::Result {
"cosmic-applet-minimize" => cosmic_applet_minimize::run(), "cosmic-applet-minimize" => cosmic_applet_minimize::run(),
"cosmic-applet-network" => cosmic_applet_network::run(), "cosmic-applet-network" => cosmic_applet_network::run(),
"cosmic-applet-notifications" => cosmic_applet_notifications::run(), "cosmic-applet-notifications" => cosmic_applet_notifications::run(),
"cosmic-applet-osk" => cosmic_applet_osk::run(),
"cosmic-applet-power" => cosmic_applet_power::run(), "cosmic-applet-power" => cosmic_applet_power::run(),
"cosmic-applet-status-area" => cosmic_applet_status_area::run(), "cosmic-applet-status-area" => cosmic_applet_status_area::run(),
"cosmic-applet-tiling" => cosmic_applet_tiling::run(), "cosmic-applet-tiling" => cosmic_applet_tiling::run(),

View file

@ -1,6 +1,6 @@
[package] [package]
name = "cosmic-panel-button" name = "cosmic-panel-button"
version = "1.3.0" version = "1.9.0"
edition = "2024" edition = "2024"
license = "GPL-3.0-only" license = "GPL-3.0-only"

View file

@ -39,7 +39,7 @@ struct Button {
enum Msg { enum Msg {
Press, Press,
ConfigUpdated(CosmicPanelButtonConfig), ConfigUpdated(CosmicPanelButtonConfig),
Surface(surface::Action), Surface(surface::Action<Msg>),
} }
impl Button { impl Button {
@ -141,9 +141,7 @@ impl cosmic::Application for Button {
.unwrap_or_default(); .unwrap_or_default();
} }
Msg::Surface(a) => { Msg::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic( return cosmic::task::message(cosmic::Action::Surface(a));
cosmic::app::Action::Surface(a),
));
} }
} }
Task::none() Task::none()

View file

@ -55,6 +55,7 @@
<launchable type="desktop-id">com.system76.CosmicAppletMinimize.desktop</launchable> <launchable type="desktop-id">com.system76.CosmicAppletMinimize.desktop</launchable>
<launchable type="desktop-id">com.system76.CosmicAppletNetwork.desktop</launchable> <launchable type="desktop-id">com.system76.CosmicAppletNetwork.desktop</launchable>
<launchable type="desktop-id">com.system76.CosmicAppletNotifications.desktop</launchable> <launchable type="desktop-id">com.system76.CosmicAppletNotifications.desktop</launchable>
<launchable type="desktop-id">com.system76.CosmicAppletOsk.desktop</launchable>
<launchable type="desktop-id">com.system76.CosmicAppletPower.desktop</launchable> <launchable type="desktop-id">com.system76.CosmicAppletPower.desktop</launchable>
<launchable type="desktop-id">com.system76.CosmicAppletStatusArea.desktop</launchable> <launchable type="desktop-id">com.system76.CosmicAppletStatusArea.desktop</launchable>
<launchable type="desktop-id">com.system76.CosmicAppletTiling.desktop</launchable> <launchable type="desktop-id">com.system76.CosmicAppletTiling.desktop</launchable>
@ -83,6 +84,7 @@
<binary>cosmic-applet-minimize</binary> <binary>cosmic-applet-minimize</binary>
<binary>cosmic-applet-network</binary> <binary>cosmic-applet-network</binary>
<binary>cosmic-applet-notifications</binary> <binary>cosmic-applet-notifications</binary>
<binary>cosmic-applet-osk</binary>
<binary>cosmic-applet-power</binary> <binary>cosmic-applet-power</binary>
<binary>cosmic-applet-status-area</binary> <binary>cosmic-applet-status-area</binary>
<binary>cosmic-applet-tiling</binary> <binary>cosmic-applet-tiling</binary>

6
debian/changelog vendored
View file

@ -1,3 +1,9 @@
cosmic-applets (1.9.0) noble; urgency=medium
* Epoch 1.9.0 version update
-- Michael Murphy <michael@mmurphy.dev> Mon, 14 Sep 2026 21:53:42 +0200
cosmic-applets (1.0.15) noble; urgency=medium cosmic-applets (1.0.15) noble; urgency=medium
* Update changelog * Update changelog

1
debian/links vendored
View file

@ -5,6 +5,7 @@
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-minimize /usr/bin/cosmic-applets /usr/bin/cosmic-applet-minimize
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-network /usr/bin/cosmic-applets /usr/bin/cosmic-applet-network
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-notifications /usr/bin/cosmic-applets /usr/bin/cosmic-applet-notifications
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-osk
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-power /usr/bin/cosmic-applets /usr/bin/cosmic-applet-power
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-status-area /usr/bin/cosmic-applets /usr/bin/cosmic-applet-status-area
/usr/bin/cosmic-applets /usr/bin/cosmic-applet-tiling /usr/bin/cosmic-applets /usr/bin/cosmic-applet-tiling

View file

@ -26,7 +26,7 @@ cosmic-applet-network-comment = Správa síťových připojení
cosmic-applet-network-keywords = COSMIC;Applet;Síť; cosmic-applet-network-keywords = COSMIC;Applet;Síť;
cosmic-applet-notifications-comment = Správa oznámení a režimu Nerušit cosmic-applet-notifications-comment = Správa oznámení a režimu Nerušit
cosmic-applet-notifications-keywords = COSMIC;Applet;Oznámení; cosmic-applet-notifications-keywords = COSMIC;Applet;Oznámení;
cosmic-applet-status-area-keywords = COSMIC;Applet;Aplikace;Indikátory;Oznámení;Notifikace;Oblast;Status;Stav; cosmic-applet-status-area-keywords = COSMIC;Applet;Aplikace;Indikátory;Ikony;Oznámení;Notifikace;Oblast;Stav;
cosmic-app-list-comment = Správa otevřených oken a spouštění připnutých aplikací cosmic-app-list-comment = Správa otevřených oken a spouštění připnutých aplikací
cosmic-app-list-keywords = COSMIC;Applet;Aplikace;Oblast;Seznam;Úloha;Úlohy;Lišta; cosmic-app-list-keywords = COSMIC;Applet;Aplikace;Oblast;Seznam;Úloha;Úlohy;Lišta;
cosmic-applet-a11y-comment = Konfigurace nastavení přístupnosti z panelu cosmic-applet-a11y-comment = Konfigurace nastavení přístupnosti z panelu

View file

@ -25,6 +25,9 @@ cosmic-applet-network-keywords = COSMIC;Applet;Network;
cosmic-applet-notifications = Notifications Center cosmic-applet-notifications = Notifications Center
cosmic-applet-notifications-comment = Manage notifications and Do Not Disturb cosmic-applet-notifications-comment = Manage notifications and Do Not Disturb
cosmic-applet-notifications-keywords = COSMIC;Applet;Notification; cosmic-applet-notifications-keywords = COSMIC;Applet;Notification;
cosmic-applet-osk = On-screen Keyboard Button
cosmic-applet-osk-comment = Open the on-screen keyboard
cosmic-applet-osk-keywords = COSMIC;Applet;OSK;Keyboard;
cosmic-applet-power = User Session cosmic-applet-power = User Session
cosmic-applet-power-comment = Lock screen, log out, suspend, reboot, and shutdown cosmic-applet-power-comment = Lock screen, log out, suspend, reboot, and shutdown
cosmic-applet-power-keywords = COSMIC;Applet;User;Session;Lock;Log;Reboot;Shutdown;Suspend; cosmic-applet-power-keywords = COSMIC;Applet;User;Session;Lock;Log;Reboot;Shutdown;Suspend;

View file

@ -17,3 +17,29 @@ cosmic-applet-power = Session utilizaire
cosmic-applet-status-area = Cinta de notificacions cosmic-applet-status-area = Cinta de notificacions
cosmic-applet-time = Data, ora e calendièr cosmic-applet-time = Data, ora e calendièr
cosmic-applet-workspaces = Espacis de trabalha numerotats cosmic-applet-workspaces = Espacis de trabalha numerotats
cosmic-applet-a11y-keywords = COSMIC;Applet;Microaplicacion;Miniaplicacion;Accessibilitat;A11y;Ecran;Lector;Lópia;Constraste;Color;
cosmic-applet-audio-comment = Seleccion del periferic àudio, contraròtle del volum e contraròtle multimèdia MPRIS
cosmic-applet-input-sources-keywords = COSMIC;Applet;Entrada;Dintrada;Font;
cosmic-applet-minimize = Fenèstras minimizadas
cosmic-applet-minimize-comment = Gerir las fenèstras minimizadas
cosmic-applet-minimize-keywords = COSMIC;Applet;Minimizar;Reduire;Redusir;
cosmic-applet-network-keywords = COSMIC;Applet;Ret;Malhum;
cosmic-applet-notifications-keywords = COSMIC;Applet;Notificacions;
cosmic-applet-power-comment = Verrolhar l’ecran, se desconnectar, metre en velha, reaviar e atudar l’ordenador
cosmic-applet-power-keywords = COSMIC;Applet;Utilizaire;Session;Verrolhar;Desconnectar;Reaviar;Reamodar;Atudar;Velha;Suspendre;
cosmic-applet-tiling = Mosaïc
cosmic-applet-time-comment = Mostrar l’ora actuala al panèl amb una fenèstra surgissenta del calendièr
cosmic-applet-time-keywords = COSMIC;Applet;Data;Ora;Temps;Calendièr;Calendari;
cosmic-applet-workspaces-comment = Bascular entre los espacis de trabalh del panèl estant
cosmic-applet-workspaces-keywords = COSMIC;Applet;Espaci de trabalh;
cosmic-panel-app-button = Boton de la bibliotèca d’aplicacions
cosmic-panel-app-button-comment = Dobrir la bibliotèca d’aplicacions per lançar las aplicacions installadas
cosmic-panel-launcher-button = Boton de l’aviador
cosmic-panel-launcher-button-comment = Dobrir l’aviador per recercar d’aplicacions e executar de comandas
cosmic-panel-workspaces-button = Boton dels espacis de trabalh
cosmic-applet-audio-keywords = COSMIC;Applet;Son,Àudio;MPRIS;
cosmic-applet-battery-keywords = COSMIC;Applet;Alimentacion;Energia;Batariá;
cosmic-applet-bluetooth-keywords = COSMIC;Applet;Bluetooth;
cosmic-applet-input-sources-comment = Cambiar entre fonts d’entrada
cosmic-applet-status-area-comment = Indicadors d’aplicacions que pòdon exportar de menús al panèl
cosmic-applet-status-area-keywords = COSMIC;Applet;App;Indicador;Indicator;Notificacion;Panèl;Estatut;

View file

@ -0,0 +1 @@
cosmic-applet-battery-keywords = COSMIC;Applet;Power;Battery;พลังงาน;แบตเตอรี่;

View file

@ -38,7 +38,7 @@ cosmic-applet-bluetooth = 藍牙
cosmic-applet-audio = 音效 cosmic-applet-audio = 音效
cosmic-applet-minimize = 最小化視窗 cosmic-applet-minimize = 最小化視窗
cosmic-app-list-comment = 啟動釘板的應用程式並管理開啟視窗 cosmic-app-list-comment = 啟動釘板的應用程式並管理開啟視窗
cosmic-app-list-keywords = COSMIC;小程式;應用程式;匣盤;列表;任務;列; cosmic-app-list-keywords = COSMIC;小程式;應用程式;拖盤;列表;任務;列;
cosmic-applet-a11y-comment = 從面板設定無障礙功能 cosmic-applet-a11y-comment = 從面板設定無障礙功能
cosmic-applet-audio-comment = 音訊裝置選擇、音量控制及 MPRIS 媒體控制 cosmic-applet-audio-comment = 音訊裝置選擇、音量控制及 MPRIS 媒體控制
cosmic-applet-input-sources = 輸入來源 cosmic-applet-input-sources = 輸入來源

View file

@ -63,7 +63,7 @@ _install_secret_agent_policy:
install -Dm0644 cosmic-applet-network/data/dbus-1/system.d/com.system76.CosmicSettings.Applet.NetworkManager.SecretAgent.conf {{ sharedir }}/dbus-1/system.d/com.system76.CosmicSettings.Applet.NetworkManager.SecretAgent.conf install -Dm0644 cosmic-applet-network/data/dbus-1/system.d/com.system76.CosmicSettings.Applet.NetworkManager.SecretAgent.conf {{ sharedir }}/dbus-1/system.d/com.system76.CosmicSettings.Applet.NetworkManager.SecretAgent.conf
# Installs files into the system # Installs files into the system
install: (_install_bin 'cosmic-applets') (_link_applet 'cosmic-panel-button') (_install_applet 'com.system76.CosmicAppList' 'cosmic-app-list') (_install_default_schema 'cosmic-app-list') (_install_applet 'com.system76.CosmicAppletA11y' 'cosmic-applet-a11y') (_install_applet 'com.system76.CosmicAppletAudio' 'cosmic-applet-audio') (_install_applet 'com.system76.CosmicAppletInputSources' 'cosmic-applet-input-sources') (_install_applet 'com.system76.CosmicAppletBattery' 'cosmic-applet-battery') (_install_applet 'com.system76.CosmicAppletBluetooth' 'cosmic-applet-bluetooth') (_install_applet 'com.system76.CosmicAppletMinimize' 'cosmic-applet-minimize') (_install_applet 'com.system76.CosmicAppletNetwork' 'cosmic-applet-network') (_install_applet 'com.system76.CosmicAppletNotifications' 'cosmic-applet-notifications') (_install_applet 'com.system76.CosmicAppletPower' 'cosmic-applet-power') (_install_applet 'com.system76.CosmicAppletStatusArea' 'cosmic-applet-status-area') (_install_applet 'com.system76.CosmicAppletTiling' 'cosmic-applet-tiling') (_install_applet 'com.system76.CosmicAppletTime' 'cosmic-applet-time') (_install_applet 'com.system76.CosmicAppletWorkspaces' 'cosmic-applet-workspaces') (_install_button 'com.system76.CosmicPanelAppButton' 'cosmic-panel-app-button') (_install_button 'com.system76.CosmicPanelLauncherButton' 'cosmic-panel-launcher-button') (_install_button 'com.system76.CosmicPanelWorkspacesButton' 'cosmic-panel-workspaces-button') _install_metainfo _install_status_notifier_watcher _install_secret_agent_policy install: (_install_bin 'cosmic-applets') (_link_applet 'cosmic-panel-button') (_install_applet 'com.system76.CosmicAppList' 'cosmic-app-list') (_install_default_schema 'cosmic-app-list') (_install_applet 'com.system76.CosmicAppletA11y' 'cosmic-applet-a11y') (_install_applet 'com.system76.CosmicAppletAudio' 'cosmic-applet-audio') (_install_applet 'com.system76.CosmicAppletInputSources' 'cosmic-applet-input-sources') (_install_applet 'com.system76.CosmicAppletBattery' 'cosmic-applet-battery') (_install_applet 'com.system76.CosmicAppletBluetooth' 'cosmic-applet-bluetooth') (_install_applet 'com.system76.CosmicAppletMinimize' 'cosmic-applet-minimize') (_install_applet 'com.system76.CosmicAppletNetwork' 'cosmic-applet-network') (_install_applet 'com.system76.CosmicAppletNotifications' 'cosmic-applet-notifications') (_install_applet 'com.system76.CosmicAppletOsk' 'cosmic-applet-osk') (_install_applet 'com.system76.CosmicAppletPower' 'cosmic-applet-power') (_install_applet 'com.system76.CosmicAppletStatusArea' 'cosmic-applet-status-area') (_install_applet 'com.system76.CosmicAppletTiling' 'cosmic-applet-tiling') (_install_applet 'com.system76.CosmicAppletTime' 'cosmic-applet-time') (_install_applet 'com.system76.CosmicAppletWorkspaces' 'cosmic-applet-workspaces') (_install_button 'com.system76.CosmicPanelAppButton' 'cosmic-panel-app-button') (_install_button 'com.system76.CosmicPanelLauncherButton' 'cosmic-panel-launcher-button') (_install_button 'com.system76.CosmicPanelWorkspacesButton' 'cosmic-panel-workspaces-button') _install_metainfo _install_status_notifier_watcher _install_secret_agent_policy
# Vendor Cargo dependencies locally # Vendor Cargo dependencies locally
vendor: vendor: