Compare commits
7 commits
d1849f639b
...
e65b97abb8
| Author | SHA1 | Date | |
|---|---|---|---|
| e65b97abb8 | |||
| 9141780b30 | |||
| 58b0598de8 | |||
| 7d24cd2e6a | |||
| 6e72e4c171 | |||
| a005fddefe | |||
| a5c0d7a17f |
10 changed files with 1259 additions and 246 deletions
1418
Cargo.lock
generated
1418
Cargo.lock
generated
File diff suppressed because it is too large
Load diff
52
Cargo.toml
52
Cargo.toml
|
|
@ -17,18 +17,18 @@ cosmic-comp-config = { path = "cosmic-comp-config", features = [
|
|||
"libdisplay-info",
|
||||
"output",
|
||||
] }
|
||||
cosmic-config = { git = "https://github.com/pop-os/libcosmic", features = [
|
||||
cosmic-config = { path = "../libcosmic/cosmic-config", features = [
|
||||
"calloop",
|
||||
"macro",
|
||||
] }
|
||||
cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols", rev = "160b086", default-features = false, features = [
|
||||
cosmic-protocols = { path = "../cosmic-protocols", default-features = false, features = [
|
||||
"server",
|
||||
] }
|
||||
cosmic-settings-config = { git = "https://github.com/pop-os/cosmic-settings-daemon" }
|
||||
cosmic-settings-daemon-config = { git = "https://github.com/pop-os/cosmic-settings-daemon", features = [
|
||||
cosmic-settings-config = { path = "../cosmic-settings-daemon/config" }
|
||||
cosmic-settings-daemon-config = { path = "../cosmic-settings-daemon/cosmic-settings-daemon-config", features = [
|
||||
"greeter",
|
||||
] }
|
||||
cosmic-text = { git = "https://github.com/pop-os/cosmic-text.git", features = [
|
||||
cosmic-text = { path = "../cosmic-text", features = [
|
||||
"shape-run-cache",
|
||||
] }
|
||||
libdisplay-info = "0.3.0"
|
||||
|
|
@ -39,10 +39,14 @@ i18n-embed = { version = "0.16", features = [
|
|||
"desktop-requester",
|
||||
] }
|
||||
i18n-embed-fl = "0.10"
|
||||
iced_tiny_skia = { git = "https://github.com/pop-os/libcosmic" }
|
||||
iced_tiny_skia = { path = "../libcosmic/iced/tiny_skia" }
|
||||
indexmap = "2.13"
|
||||
keyframe = "1.1.1"
|
||||
libcosmic = { git = "https://github.com/pop-os/libcosmic", default-features = false }
|
||||
cosmic = { package = "libcosmic-yoda", path = "../libcosmic", default-features = false, features = [
|
||||
"tokio",
|
||||
"wayland",
|
||||
"multi-window",
|
||||
] }
|
||||
libsystemd = { version = "0.7", optional = true }
|
||||
log-panics = { version = "2", features = ["with-backtrace"] }
|
||||
ordered-float = "5.1"
|
||||
|
|
@ -73,6 +77,7 @@ xdg = "^3.0"
|
|||
xdg-user = "0.2.1"
|
||||
xkbcommon = "0.9"
|
||||
zbus = "5.14.0"
|
||||
tokio = { version = "1", features = ["rt-multi-thread"] }
|
||||
profiling = { version = "1.0" }
|
||||
rustix = { version = "1.1.4", features = ["process"] }
|
||||
rand = "0.10"
|
||||
|
|
@ -138,9 +143,36 @@ inherits = "release"
|
|||
[profile.release]
|
||||
lto = "fat"
|
||||
|
||||
[patch."https://github.com/pop-os/cosmic-protocols"]
|
||||
cosmic-protocols = { git = "https://github.com/pop-os//cosmic-protocols", branch = "main" }
|
||||
cosmic-client-toolkit = { git = "https://github.com/pop-os//cosmic-protocols", branch = "main" }
|
||||
[patch.'https://github.com/pop-os/libcosmic']
|
||||
cosmic-config = { path = "../libcosmic/cosmic-config" }
|
||||
cosmic-theme = { path = "../libcosmic/cosmic-theme" }
|
||||
iced = { path = "../libcosmic/iced" }
|
||||
iced_accessibility = { path = "../libcosmic/iced/accessibility" }
|
||||
iced_core = { path = "../libcosmic/iced/core" }
|
||||
iced_futures = { path = "../libcosmic/iced/futures" }
|
||||
iced_graphics = { path = "../libcosmic/iced/graphics" }
|
||||
iced_renderer = { path = "../libcosmic/iced/renderer" }
|
||||
iced_runtime = { path = "../libcosmic/iced/runtime" }
|
||||
iced_tiny_skia = { path = "../libcosmic/iced/tiny_skia" }
|
||||
iced_wgpu = { path = "../libcosmic/iced/wgpu" }
|
||||
iced_widget = { path = "../libcosmic/iced/widget" }
|
||||
iced_winit = { path = "../libcosmic/iced/winit" }
|
||||
|
||||
[patch.'https://github.com/pop-os/cosmic-protocols']
|
||||
cosmic-protocols = { path = "../cosmic-protocols" }
|
||||
cosmic-client-toolkit = { path = "../cosmic-protocols/client-toolkit" }
|
||||
|
||||
[patch.'https://github.com/pop-os/cosmic-settings-daemon']
|
||||
cosmic-settings-config = { path = "../cosmic-settings-daemon/config" }
|
||||
cosmic-settings-daemon-config = { path = "../cosmic-settings-daemon/cosmic-settings-daemon-config" }
|
||||
|
||||
[patch.'https://github.com/pop-os/cosmic-text.git']
|
||||
cosmic-text = { path = "../cosmic-text" }
|
||||
|
||||
[patch.'https://forge.aditua.com/leyoda/window_clipboard.git']
|
||||
window_clipboard = { path = "../window_clipboard" }
|
||||
dnd = { path = "../window_clipboard/dnd" }
|
||||
mime = { path = "../window_clipboard/mime" }
|
||||
|
||||
[patch.crates-io]
|
||||
smithay = { git = "https://github.com/smithay/smithay.git", rev = "8eb4076" }
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ version = "1.0.0"
|
|||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
cosmic-config = { git = "https://github.com/pop-os/libcosmic/" }
|
||||
cosmic-randr-shell = { git = "https://github.com/pop-os/cosmic-randr/", optional = true }
|
||||
cosmic-config = { path = "../../libcosmic/cosmic-config" }
|
||||
cosmic-randr-shell = { path = "../../cosmic-randr/shell", optional = true }
|
||||
input = "0.10.0"
|
||||
libdisplay-info = { version = "0.3.0", optional = true }
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
[toolchain]
|
||||
channel = "1.90"
|
||||
channel = "1.93"
|
||||
components = [ "rust-src" ]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,15 @@
|
|||
// SPDX-License-Identifier: GPL-3.0-only
|
||||
|
||||
fn main() {
|
||||
// libcosmic-yoda enables zbus' `tokio` feature, so zbus 5.14 expects an
|
||||
// ambient Tokio runtime via Handle::current(). cosmic-comp's loop is not
|
||||
// async, so hold a runtime guard for the lifetime of run().
|
||||
let runtime = tokio::runtime::Builder::new_multi_thread()
|
||||
.enable_all()
|
||||
.build()
|
||||
.expect("failed to build tokio runtime");
|
||||
let _guard = runtime.enter();
|
||||
|
||||
if let Err(err) = cosmic_comp::run(Default::default()) {
|
||||
tracing::error!("Error occured in main(): {}", err);
|
||||
std::process::exit(1);
|
||||
|
|
|
|||
|
|
@ -1364,8 +1364,8 @@ impl Decorations<CosmicStackInternal, Message> for DefaultDecorations {
|
|||
|
||||
iced_widget::container::Style {
|
||||
snap: true,
|
||||
icon_color: Some(cosmic_theme.background.on.into()),
|
||||
text_color: Some(cosmic_theme.background.on.into()),
|
||||
icon_color: Some(cosmic_theme.background(false).on.into()),
|
||||
text_color: Some(cosmic_theme.background(false).on.into()),
|
||||
background: Some(Background::Color(background.into())),
|
||||
border: Border {
|
||||
radius,
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ impl From<TabBackgroundTheme> for theme::Container<'_> {
|
|||
icon_color: Some(Color::from(theme.cosmic().accent_text_color())),
|
||||
text_color: Some(Color::from(theme.cosmic().accent_text_color())),
|
||||
background: Some(Background::Color(
|
||||
theme.cosmic().primary.component.selected.into(),
|
||||
theme.cosmic().primary(false).component.selected.into(),
|
||||
)),
|
||||
border: Border {
|
||||
radius: 0.0.into(),
|
||||
|
|
@ -81,7 +81,7 @@ impl From<TabBackgroundTheme> for theme::Container<'_> {
|
|||
icon_color: None,
|
||||
text_color: None,
|
||||
background: Some(Background::Color(
|
||||
theme.cosmic().primary.component.base.into(),
|
||||
theme.cosmic().primary(false).component.base.into(),
|
||||
)),
|
||||
border: Border {
|
||||
radius: 0.0.into(),
|
||||
|
|
|
|||
|
|
@ -826,7 +826,7 @@ impl Program for CosmicWindowInternal {
|
|||
|
||||
fn background_color(&self, theme: &cosmic::Theme) -> Color {
|
||||
if self.window.is_maximized(false) {
|
||||
theme.cosmic().background.base.into()
|
||||
theme.cosmic().background(false).base.into()
|
||||
} else {
|
||||
Color::TRANSPARENT
|
||||
}
|
||||
|
|
|
|||
|
|
@ -428,10 +428,11 @@ impl Program for ContextMenu {
|
|||
.width(mode)
|
||||
.class(if *disabled {
|
||||
theme::Text::Custom(|theme| {
|
||||
let mut color = theme.cosmic().background.component.on;
|
||||
let mut color = theme.cosmic().background(false).component.on;
|
||||
color.alpha *= 0.5;
|
||||
TextStyle {
|
||||
color: Some(color.into()),
|
||||
..Default::default()
|
||||
}
|
||||
})
|
||||
} else {
|
||||
|
|
@ -446,10 +447,11 @@ impl Program for ContextMenu {
|
|||
.align_x(Horizontal::Right)
|
||||
.width(Length::Shrink)
|
||||
.class(theme::Text::Custom(|theme| {
|
||||
let mut color = theme.cosmic().background.component.on;
|
||||
let mut color = theme.cosmic().background(false).component.on;
|
||||
color.alpha *= 0.75;
|
||||
TextStyle {
|
||||
color: Some(color.into()),
|
||||
..Default::default()
|
||||
}
|
||||
}))
|
||||
.into(),
|
||||
|
|
@ -474,7 +476,7 @@ impl Program for ContextMenu {
|
|||
.padding(1)
|
||||
.class(theme::Container::custom(|theme| {
|
||||
let cosmic = theme.cosmic();
|
||||
let component = &cosmic.background.component;
|
||||
let component = &cosmic.background(false).component;
|
||||
iced_widget::container::Style {
|
||||
snap: true,
|
||||
icon_color: Some(cosmic.accent.base.into()),
|
||||
|
|
|
|||
|
|
@ -505,7 +505,7 @@ impl Program for ZoomProgram {
|
|||
.padding(8)
|
||||
.class(theme::Container::custom(|theme| {
|
||||
let cosmic = theme.cosmic();
|
||||
let component = &cosmic.background.component;
|
||||
let component = &cosmic.background(false).component;
|
||||
iced_widget::container::Style {
|
||||
snap: true,
|
||||
icon_color: Some(component.on.into()),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue