Compare commits
30 commits
local/wind
...
local/yoda
| Author | SHA1 | Date | |
|---|---|---|---|
| c8bc30566b | |||
|
|
ceb7e4da63 | ||
|
|
142f7bccf4 | ||
| 5a522610f1 | |||
| 7bf97264ab | |||
| 7961264323 | |||
| 32d71847b6 | |||
| 553c05e2f0 | |||
|
|
f19da76129 | ||
|
|
1f225d19ce | ||
|
|
d6bf77bf3a | ||
|
|
6db1e6a17b | ||
|
|
4b1f388a4f | ||
|
|
cb4a0d3a3a | ||
|
|
f2c374ff6b | ||
|
|
703a934b09 | ||
|
|
a96987091e | ||
|
|
9b7a9538e6 | ||
|
|
d632047ab3 | ||
|
|
cb58af2be4 | ||
|
|
d49a1d1990 | ||
|
|
1a44f8634f | ||
|
|
f4c7a2c14d | ||
|
|
c882df3d20 | ||
|
|
e4c4c0d903 | ||
|
|
fa085f9006 | ||
|
|
78644a32e3 | ||
|
|
c04e49e218 | ||
|
|
26f0fb0609 | ||
|
|
317de19eb3 |
122 changed files with 3233 additions and 1688 deletions
15
.zed/settings.json
Normal file
15
.zed/settings.json
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
"format_on_save": "on",
|
||||||
|
"lsp": {
|
||||||
|
"rust-analyzer": {
|
||||||
|
"initialization_options": {
|
||||||
|
"check": {
|
||||||
|
"command": "clippy",
|
||||||
|
},
|
||||||
|
"rustfmt": {
|
||||||
|
"extraArgs": ["+nightly"],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
542
Cargo.lock
generated
542
Cargo.lock
generated
File diff suppressed because it is too large
Load diff
65
Cargo.toml
65
Cargo.toml
|
|
@ -4,42 +4,44 @@ default-members = ["cosmic-settings"]
|
||||||
resolver = "3"
|
resolver = "3"
|
||||||
|
|
||||||
[workspace.package]
|
[workspace.package]
|
||||||
rust-version = "1.90"
|
rust-version = "1.93"
|
||||||
|
|
||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
cosmic-randr = { git = "https://github.com/pop-os/cosmic-randr" }
|
cosmic-randr = { path = "../cosmic-randr/lib" }
|
||||||
tokio = { version = "1.49.0", features = ["macros"] }
|
tokio = { version = "1.49.0", features = ["macros"] }
|
||||||
iced_winit = { git = "https://github.com/pop-os/libcosmic", default-features = false }
|
# Yoda fork: direct path dep on iced_winit in libcosmic-yoda's submodule.
|
||||||
|
iced_winit = { path = "/home/lionel/Projets/COSMIC/libcosmic/iced/winit", default-features = false }
|
||||||
|
|
||||||
[workspace.dependencies.libcosmic]
|
# Yoda fork — libcosmic-yoda by path, replaces upstream git dep.
|
||||||
|
[workspace.dependencies.libcosmic-yoda]
|
||||||
features = [
|
features = [
|
||||||
"dbus-config",
|
"dbus-config",
|
||||||
"desktop",
|
"desktop",
|
||||||
"multi-window",
|
"multi-window",
|
||||||
"winit",
|
"wayland",
|
||||||
"tokio",
|
"tokio",
|
||||||
"qr_code",
|
"qr_code",
|
||||||
]
|
]
|
||||||
git = "https://github.com/pop-os/libcosmic"
|
path = "/home/lionel/Projets/COSMIC/libcosmic"
|
||||||
|
|
||||||
[workspace.dependencies.cosmic-config]
|
[workspace.dependencies.cosmic-config]
|
||||||
git = "https://github.com/pop-os/libcosmic"
|
path = "/home/lionel/Projets/COSMIC/libcosmic/cosmic-config"
|
||||||
|
|
||||||
[workspace.dependencies.cosmic-bg-config]
|
[workspace.dependencies.cosmic-bg-config]
|
||||||
git = "https://github.com/pop-os/cosmic-bg"
|
path = "../cosmic-bg/config"
|
||||||
|
|
||||||
[workspace.dependencies.cosmic-comp-config]
|
[workspace.dependencies.cosmic-comp-config]
|
||||||
git = "https://github.com/pop-os/cosmic-comp"
|
path = "../cosmic-comp/cosmic-comp-config"
|
||||||
features = ["output"]
|
features = ["output"]
|
||||||
|
|
||||||
[workspace.dependencies.cosmic-idle-config]
|
[workspace.dependencies.cosmic-idle-config]
|
||||||
git = "https://github.com/pop-os/cosmic-idle"
|
path = "../cosmic-idle/cosmic-idle-config"
|
||||||
|
|
||||||
[workspace.dependencies.cosmic-panel-config]
|
[workspace.dependencies.cosmic-panel-config]
|
||||||
git = "https://github.com/pop-os/cosmic-panel"
|
path = "../cosmic-panel/cosmic-panel-config"
|
||||||
|
|
||||||
[workspace.dependencies.cosmic-randr-shell]
|
[workspace.dependencies.cosmic-randr-shell]
|
||||||
git = "https://github.com/pop-os/cosmic-randr"
|
path = "../cosmic-randr/shell"
|
||||||
|
|
||||||
[workspace.dependencies.sctk]
|
[workspace.dependencies.sctk]
|
||||||
version = "0.20"
|
version = "0.20"
|
||||||
|
|
@ -59,29 +61,32 @@ inherits = "release"
|
||||||
lto = "off"
|
lto = "off"
|
||||||
debug = true
|
debug = true
|
||||||
|
|
||||||
# [patch.'https://github.com/pop-os/cosmic-text']
|
|
||||||
# cosmic-text = { git = "https://github.com/pop-os/cosmic-text//", rev = "b017d7c" }
|
|
||||||
|
|
||||||
[patch.'https://github.com/pop-os/cosmic-protocols']
|
[patch.'https://github.com/pop-os/cosmic-protocols']
|
||||||
cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols//", rev = "d0e95be" }
|
cosmic-protocols = { path = "../cosmic-protocols" }
|
||||||
cosmic-client-toolkit = { git = "https://github.com/pop-os/cosmic-protocols//", rev = "d0e95be" }
|
cosmic-client-toolkit = { path = "../cosmic-protocols/client-toolkit" }
|
||||||
|
|
||||||
# [patch.'https://github.com/pop-os/cosmic-settings-daemon']
|
# [patch.'https://github.com/pop-os/cosmic-settings-daemon']
|
||||||
# cosmic-settings-config = { git = "https://github.com/pop-os/cosmic-settings-daemon//", branch = "input_nobuild" }
|
# cosmic-settings-config = { path = "../cosmic-settings-daemon/config" }
|
||||||
|
|
||||||
# For development and testing purposes
|
# Yoda fork: redirect every transitive dep that asks for pop-os/libcosmic
|
||||||
# [patch.'https://github.com/pop-os/libcosmic']
|
# (cosmic-bg-config, cosmic-comp-config, cosmic-idle-config, cosmic-panel-config,
|
||||||
# libcosmic = { path = "../libcosmic" }
|
# cosmic-settings-config, cosmic-settings-daemon-config) to our local paths so
|
||||||
# cosmic-config = { path = "../libcosmic/cosmic-config" }
|
# the whole graph resolves against a single cosmic-config / cosmic-theme / iced_*.
|
||||||
# cosmic-theme = { path = "../libcosmic/cosmic-theme" }
|
[patch.'https://github.com/pop-os/libcosmic']
|
||||||
# iced_futures = { path = "../libcosmic/iced/futures" }
|
cosmic-config = { path = "/home/lionel/Projets/COSMIC/libcosmic/cosmic-config" }
|
||||||
# iced_winit = { path = "../libcosmic/iced/winit" }
|
cosmic-theme = { path = "/home/lionel/Projets/COSMIC/libcosmic/cosmic-theme" }
|
||||||
|
iced_futures = { path = "/home/lionel/Projets/COSMIC/libcosmic/iced/futures" }
|
||||||
|
iced_winit = { path = "/home/lionel/Projets/COSMIC/libcosmic/iced/winit" }
|
||||||
|
|
||||||
# libcosmic = { git = "https://github.com/pop-os/libcosmic//" }
|
[patch.'https://github.com/pop-os/cosmic-text.git']
|
||||||
# cosmic-config = { git = "https://github.com/pop-os/libcosmic//" }
|
cosmic-text = { path = "../cosmic-text" }
|
||||||
# cosmic-theme = { git = "https://github.com/pop-os/libcosmic//" }
|
|
||||||
# iced_futures = { git = "https://github.com/pop-os/libcosmic//" }
|
# Yoda wayland cut v5: redirect window_clipboard to the local fork
|
||||||
# iced_winit = { git = "https://github.com/pop-os/libcosmic//" }
|
# (x11 gated behind opt-in feature).
|
||||||
|
[patch.'https://forge.aditua.com/leyoda/window_clipboard.git']
|
||||||
|
window_clipboard = { path = "/home/lionel/Projets/COSMIC/window_clipboard" }
|
||||||
|
dnd = { path = "/home/lionel/Projets/COSMIC/window_clipboard/dnd" }
|
||||||
|
mime = { path = "/home/lionel/Projets/COSMIC/window_clipboard/mime" }
|
||||||
|
|
||||||
# [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" }
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "cosmic-settings"
|
name = "cosmic-settings"
|
||||||
version = "1.0.7"
|
version = "1.0.12"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
license = "GPL-3.0-only"
|
license = "GPL-3.0-only"
|
||||||
publish = false
|
publish = false
|
||||||
|
|
@ -9,7 +9,7 @@ publish = false
|
||||||
xdgen = "0.1"
|
xdgen = "0.1"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
accounts-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
accounts-zbus = { path = "../../dbus-settings-bindings/accounts-zbus", optional = true }
|
||||||
anyhow = "1.0"
|
anyhow = "1.0"
|
||||||
ashpd = { version = "0.12", default-features = false, features = [
|
ashpd = { version = "0.12", default-features = false, features = [
|
||||||
"tokio",
|
"tokio",
|
||||||
|
|
@ -21,14 +21,14 @@ color-eyre = "0.6.5"
|
||||||
cosmic-bg-config.workspace = true
|
cosmic-bg-config.workspace = true
|
||||||
cosmic-comp-config = { workspace = true, optional = true }
|
cosmic-comp-config = { workspace = true, optional = true }
|
||||||
cosmic-config.workspace = true
|
cosmic-config.workspace = true
|
||||||
cosmic-dbus-networkmanager = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
cosmic-dbus-networkmanager = { path = "../../dbus-settings-bindings/networkmanager", optional = true }
|
||||||
nm-secret-agent-manager = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
nm-secret-agent-manager = { path = "../../dbus-settings-bindings/nm-secret-agent-manager", optional = true }
|
||||||
cosmic-idle-config.workspace = true
|
cosmic-idle-config.workspace = true
|
||||||
cosmic-panel-config = { workspace = true, optional = true }
|
cosmic-panel-config = { workspace = true, optional = true }
|
||||||
cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols", optional = true }
|
cosmic-protocols = { path = "../../cosmic-protocols", optional = true }
|
||||||
cosmic-randr-shell.workspace = true
|
cosmic-randr-shell.workspace = true
|
||||||
cosmic-randr = { workspace = true, optional = true }
|
cosmic-randr = { workspace = true, optional = true }
|
||||||
cosmic-settings-config = { git = "https://github.com/pop-os/cosmic-settings-daemon", optional = true }
|
cosmic-settings-config = { path = "../../cosmic-settings-daemon/config", optional = true }
|
||||||
cosmic-settings-page = { path = "../page" }
|
cosmic-settings-page = { path = "../page" }
|
||||||
cosmic-settings-accessibility-subscription = { path = "../subscriptions/accessibility", optional = true }
|
cosmic-settings-accessibility-subscription = { path = "../subscriptions/accessibility", optional = true }
|
||||||
cosmic-settings-a11y-manager-subscription = { path = "../subscriptions/a11y-manager", optional = true }
|
cosmic-settings-a11y-manager-subscription = { path = "../subscriptions/a11y-manager", optional = true }
|
||||||
|
|
@ -40,14 +40,14 @@ cosmic-settings-sound-subscription = { path = "../subscriptions/sound", optional
|
||||||
"auto-profile-init",
|
"auto-profile-init",
|
||||||
] }
|
] }
|
||||||
cosmic-settings-wallpaper = { path = "../pages/wallpapers" }
|
cosmic-settings-wallpaper = { path = "../pages/wallpapers" }
|
||||||
cosmic-settings-daemon-config = { git = "https://github.com/pop-os/cosmic-settings-daemon", optional = true }
|
cosmic-settings-daemon-config = { path = "../../cosmic-settings-daemon/cosmic-settings-daemon-config", optional = true }
|
||||||
derive_setters = "0.1.9"
|
derive_setters = "0.1.9"
|
||||||
dirs = "6.0.0"
|
dirs = "6.0.0"
|
||||||
eyre = "0.6.12"
|
eyre = "0.6.12"
|
||||||
freedesktop-desktop-entry = "0.8.1"
|
freedesktop-desktop-entry = "0.8.1"
|
||||||
futures = "0.3.32"
|
futures = "0.3.32"
|
||||||
hostname-validator = "1.1.1"
|
hostname-validator = "1.1.1"
|
||||||
hostname1-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
hostname1-zbus = { path = "../../dbus-settings-bindings/hostname1", optional = true }
|
||||||
i18n-embed-fl = "0.10.0"
|
i18n-embed-fl = "0.10.0"
|
||||||
image = { version = "0.25", default-features = false, features = [
|
image = { version = "0.25", default-features = false, features = [
|
||||||
"jpeg",
|
"jpeg",
|
||||||
|
|
@ -59,9 +59,9 @@ image = { version = "0.25", default-features = false, features = [
|
||||||
indexmap = "2.13.0"
|
indexmap = "2.13.0"
|
||||||
itertools = "0.14.0"
|
itertools = "0.14.0"
|
||||||
itoa = "1.0.17"
|
itoa = "1.0.17"
|
||||||
libcosmic.workspace = true
|
libcosmic-yoda.workspace = true
|
||||||
iced_winit.workspace = true
|
iced_winit.workspace = true
|
||||||
locale1 = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
locale1 = { path = "../../dbus-settings-bindings/locale1", optional = true }
|
||||||
sysinfo = { version = "=0.38.0", optional = true }
|
sysinfo = { version = "=0.38.0", optional = true }
|
||||||
mime-apps = { package = "cosmic-mime-apps", git = "https://github.com/pop-os/cosmic-mime-apps", optional = true }
|
mime-apps = { package = "cosmic-mime-apps", git = "https://github.com/pop-os/cosmic-mime-apps", optional = true }
|
||||||
notify = "8.2.0"
|
notify = "8.2.0"
|
||||||
|
|
@ -75,13 +75,13 @@ slab = "0.4.12"
|
||||||
slotmap = "1.1.1"
|
slotmap = "1.1.1"
|
||||||
static_init = "1.0.4"
|
static_init = "1.0.4"
|
||||||
sunrise = "3.0.0"
|
sunrise = "3.0.0"
|
||||||
timedate-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
timedate-zbus = { path = "../../dbus-settings-bindings/timedate", optional = true }
|
||||||
tokio = { workspace = true, features = ["fs", "io-util", "process", "sync"] }
|
tokio = { workspace = true, features = ["fs", "io-util", "process", "sync"] }
|
||||||
tracing = "0.1.44"
|
tracing = "0.1.44"
|
||||||
tracing-subscriber = { version = "0.3.22", features = ["env-filter"] }
|
tracing-subscriber = { version = "0.3.22", features = ["env-filter"] }
|
||||||
udev = { version = "0.9.3", optional = true }
|
udev = { version = "0.9.3", optional = true }
|
||||||
upower_dbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
upower_dbus = { path = "../../dbus-settings-bindings/upower", optional = true }
|
||||||
bluez-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
|
bluez-zbus = { path = "../../dbus-settings-bindings/bluez", optional = true }
|
||||||
url = "2.5.8"
|
url = "2.5.8"
|
||||||
xkb-data = "0.2.2"
|
xkb-data = "0.2.2"
|
||||||
xkeysym = { version = "0.2.1", optional = true }
|
xkeysym = { version = "0.2.1", optional = true }
|
||||||
|
|
@ -187,12 +187,12 @@ page-window-management = ["cosmic-comp-config", "dep:cosmic-settings-config"]
|
||||||
page-workspaces = ["cosmic-comp-config"]
|
page-workspaces = ["cosmic-comp-config"]
|
||||||
|
|
||||||
# Other features
|
# Other features
|
||||||
a11y = ["libcosmic/a11y"]
|
a11y = ["libcosmic-yoda/a11y"]
|
||||||
ashpd = ["dep:ashpd"]
|
ashpd = ["dep:ashpd"]
|
||||||
cosmic-comp-config = ["dep:cosmic-comp-config"]
|
cosmic-comp-config = ["dep:cosmic-comp-config"]
|
||||||
dbus-config = ["libcosmic/dbus-config", "cosmic-config/dbus"]
|
dbus-config = ["libcosmic-yoda/dbus-config", "cosmic-config/dbus"]
|
||||||
single-instance = ["libcosmic/single-instance"]
|
single-instance = ["libcosmic-yoda/single-instance"]
|
||||||
test = []
|
test = []
|
||||||
wayland = ["libcosmic/wayland", "dep:cosmic-panel-config", "dep:cosmic-randr", "iced_winit/cctk"]
|
wayland = ["libcosmic-yoda/wayland", "dep:cosmic-panel-config", "dep:cosmic-randr", "iced_winit/cctk"]
|
||||||
wgpu = ["libcosmic/wgpu"]
|
wgpu = ["libcosmic-yoda/wgpu"]
|
||||||
xdg-portal = ["ashpd", "libcosmic/xdg-portal"]
|
xdg-portal = ["ashpd", "libcosmic-yoda/xdg-portal"]
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
use std::{env, fs, path::PathBuf};
|
use std::path::PathBuf;
|
||||||
|
use std::{env, fs};
|
||||||
use xdgen::{App, Context, FluentString};
|
use xdgen::{App, Context, FluentString};
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ use crate::PageCommands;
|
||||||
use crate::config::Config;
|
use crate::config::Config;
|
||||||
#[cfg(feature = "page-accessibility")]
|
#[cfg(feature = "page-accessibility")]
|
||||||
use crate::pages::accessibility;
|
use crate::pages::accessibility;
|
||||||
use crate::pages::applications;
|
|
||||||
#[cfg(feature = "page-bluetooth")]
|
#[cfg(feature = "page-bluetooth")]
|
||||||
use crate::pages::bluetooth;
|
use crate::pages::bluetooth;
|
||||||
use crate::pages::desktop::{self, appearance};
|
use crate::pages::desktop::{self, appearance};
|
||||||
|
|
@ -19,26 +18,21 @@ use crate::pages::networking;
|
||||||
use crate::pages::power;
|
use crate::pages::power;
|
||||||
#[cfg(feature = "page-sound")]
|
#[cfg(feature = "page-sound")]
|
||||||
use crate::pages::sound;
|
use crate::pages::sound;
|
||||||
use crate::pages::{self, system, time};
|
use crate::pages::{self, applications, system, time};
|
||||||
use crate::subscription::desktop_files;
|
use crate::subscription::desktop_files;
|
||||||
use crate::widget::{page_title, search_header};
|
use crate::widget::{page_title, search_header};
|
||||||
|
use cosmic::app::context_drawer::ContextDrawer;
|
||||||
|
use cosmic::app::{Core, Task};
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
use cosmic::cctk::{sctk::output::OutputInfo, wayland_client::protocol::wl_output::WlOutput};
|
use cosmic::cctk::{sctk::output::OutputInfo, wayland_client::protocol::wl_output::WlOutput};
|
||||||
use cosmic::{
|
use cosmic::iced::event::{self, PlatformSpecific};
|
||||||
Element,
|
use cosmic::iced::{self, Length, Subscription, keyboard, window};
|
||||||
app::{Core, Task, context_drawer::ContextDrawer},
|
use cosmic::prelude::*;
|
||||||
iced::{
|
use cosmic::widget::{
|
||||||
self, Length, Subscription,
|
button, column, container, icon, id_container, nav_bar, row, scrollable, segmented_button,
|
||||||
event::{self, PlatformSpecific},
|
settings, text_input,
|
||||||
keyboard, window,
|
|
||||||
},
|
|
||||||
prelude::*,
|
|
||||||
surface,
|
|
||||||
widget::{
|
|
||||||
button, column, container, icon, id_container, nav_bar, row, scrollable, segmented_button,
|
|
||||||
settings, text_input,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
use cosmic::{Element, surface};
|
||||||
#[cfg(feature = "cosmic-comp-config")]
|
#[cfg(feature = "cosmic-comp-config")]
|
||||||
use cosmic_comp_config::CosmicCompConfig;
|
use cosmic_comp_config::CosmicCompConfig;
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
|
|
@ -52,8 +46,9 @@ use desktop::{
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
use event::wayland;
|
use event::wayland;
|
||||||
use page::Entity;
|
use page::Entity;
|
||||||
|
use std::borrow::Cow;
|
||||||
use std::collections::BTreeSet;
|
use std::collections::BTreeSet;
|
||||||
use std::{borrow::Cow, str::FromStr};
|
use std::str::FromStr;
|
||||||
|
|
||||||
#[allow(clippy::struct_excessive_bools)]
|
#[allow(clippy::struct_excessive_bools)]
|
||||||
#[allow(clippy::module_name_repetitions)]
|
#[allow(clippy::module_name_repetitions)]
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,8 @@
|
||||||
// Copyright 2023 System76 <info@system76.com>
|
// Copyright 2023 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::cosmic_config::{self, ConfigGet, ConfigSet};
|
||||||
cosmic_config::{self, ConfigGet, ConfigSet},
|
use cosmic::cosmic_theme::palette::Srgba;
|
||||||
cosmic_theme::palette::Srgba,
|
|
||||||
};
|
|
||||||
|
|
||||||
const NAME: &str = "com.system76.CosmicSettings";
|
const NAME: &str = "com.system76.CosmicSettings";
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,8 @@
|
||||||
// Copyright 2023 System76 <info@system76.com>
|
// Copyright 2023 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use i18n_embed::{
|
use i18n_embed::fluent::{FluentLanguageLoader, fluent_language_loader};
|
||||||
DefaultLocalizer, LanguageLoader, Localizer,
|
use i18n_embed::{DefaultLocalizer, LanguageLoader, Localizer};
|
||||||
fluent::{FluentLanguageLoader, fluent_language_loader},
|
|
||||||
};
|
|
||||||
use rust_embed::RustEmbed;
|
use rust_embed::RustEmbed;
|
||||||
use std::sync::LazyLock;
|
use std::sync::LazyLock;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,8 @@ pub mod widget;
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use clap::{Parser, Subcommand};
|
use clap::{Parser, Subcommand};
|
||||||
use cosmic::{app::CosmicFlags, iced::Limits};
|
use cosmic::app::CosmicFlags;
|
||||||
|
use cosmic::iced::Limits;
|
||||||
use i18n_embed::DesktopLanguageRequester;
|
use i18n_embed::DesktopLanguageRequester;
|
||||||
use ron::error::SpannedError;
|
use ron::error::SpannedError;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
|
||||||
|
|
@ -1,20 +1,15 @@
|
||||||
use std::collections::HashSet;
|
use std::collections::HashSet;
|
||||||
use std::fmt::Write;
|
use std::fmt::Write;
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::iced::core::text::Wrapping;
|
||||||
Apply,
|
use cosmic::iced::{Element, Length, stream};
|
||||||
iced::core::text::Wrapping,
|
use cosmic::widget::{self, icon, settings, svg, text};
|
||||||
iced::{Element, Length, stream},
|
use cosmic::{Apply, surface};
|
||||||
surface,
|
|
||||||
widget::{self, icon, settings, svg, text},
|
|
||||||
};
|
|
||||||
use cosmic_comp_config::{ZoomConfig, ZoomMovement};
|
use cosmic_comp_config::{ZoomConfig, ZoomMovement};
|
||||||
use cosmic_config::{ConfigGet, ConfigSet};
|
use cosmic_config::{ConfigGet, ConfigSet};
|
||||||
use cosmic_settings_config::{Action, Binding, shortcuts};
|
use cosmic_settings_config::{Action, Binding, shortcuts};
|
||||||
use cosmic_settings_page::{
|
use cosmic_settings_page::section::{self, Section};
|
||||||
self as page, Entity,
|
use cosmic_settings_page::{self as page, Entity};
|
||||||
section::{self, Section},
|
|
||||||
};
|
|
||||||
use futures::SinkExt;
|
use futures::SinkExt;
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
use tracing::error;
|
use tracing::error;
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,16 @@
|
||||||
use cosmic::{
|
use cosmic::cosmic_theme::{CosmicPalette, ThemeBuilder};
|
||||||
Apply, Element, Task,
|
use cosmic::iced::core::text::Wrapping;
|
||||||
cosmic_theme::{CosmicPalette, ThemeBuilder},
|
use cosmic::iced::stream;
|
||||||
iced::core::text::Wrapping,
|
use cosmic::theme::CosmicTheme;
|
||||||
iced::stream,
|
use cosmic::widget::{dropdown, settings, text};
|
||||||
surface,
|
use cosmic::{Apply, Element, Task, surface};
|
||||||
theme::CosmicTheme,
|
|
||||||
widget::{dropdown, settings, text},
|
|
||||||
};
|
|
||||||
pub use cosmic_comp_config::ZoomMovement;
|
pub use cosmic_comp_config::ZoomMovement;
|
||||||
use cosmic_config::CosmicConfigEntry;
|
use cosmic_config::CosmicConfigEntry;
|
||||||
use cosmic_settings_a11y_manager_subscription as cosmic_a11y_manager;
|
use cosmic_settings_a11y_manager_subscription as cosmic_a11y_manager;
|
||||||
use cosmic_settings_accessibility_subscription as a11y_bus;
|
use cosmic_settings_accessibility_subscription as a11y_bus;
|
||||||
use cosmic_settings_daemon_config::CosmicSettingsDaemonConfig;
|
use cosmic_settings_daemon_config::CosmicSettingsDaemonConfig;
|
||||||
use cosmic_settings_page::{
|
use cosmic_settings_page::section::{self, Section};
|
||||||
self as page, Insert,
|
use cosmic_settings_page::{self as page, Insert};
|
||||||
section::{self, Section},
|
|
||||||
};
|
|
||||||
use futures::SinkExt;
|
use futures::SinkExt;
|
||||||
use num_traits::FromPrimitive;
|
use num_traits::FromPrimitive;
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
|
|
|
||||||
|
|
@ -2,19 +2,14 @@
|
||||||
// Copyright 2024 bbb651 <bar.ye651@gmail.com>
|
// Copyright 2024 bbb651 <bar.ye651@gmail.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use std::{
|
use std::borrow::Cow;
|
||||||
borrow::Cow,
|
use std::collections::{BTreeMap, BTreeSet};
|
||||||
collections::{BTreeMap, BTreeSet},
|
use std::path::{Path, PathBuf};
|
||||||
path::{Path, PathBuf},
|
use std::sync::Arc;
|
||||||
sync::Arc,
|
|
||||||
};
|
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::iced::{Alignment, Length};
|
||||||
Apply, Element, Task,
|
use cosmic::widget::{self, dropdown, icon, settings};
|
||||||
iced::Alignment,
|
use cosmic::{Apply, Element, Task, surface};
|
||||||
surface,
|
|
||||||
widget::{self, dropdown, icon, settings},
|
|
||||||
};
|
|
||||||
use cosmic_config::{ConfigGet, ConfigSet};
|
use cosmic_config::{ConfigGet, ConfigSet};
|
||||||
use cosmic_settings_config::shortcuts::SystemActions;
|
use cosmic_settings_config::shortcuts::SystemActions;
|
||||||
use cosmic_settings_config::shortcuts::action::System;
|
use cosmic_settings_config::shortcuts::action::System;
|
||||||
|
|
@ -281,269 +276,83 @@ impl Page {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn app_item(meta: &AppMeta, label: String, category: Category) -> widget::FlexRow<'_, Message> {
|
||||||
|
// Avoid creating popup_dropdown for empty app lists.
|
||||||
|
// Empty categories are rendered as non-interactive text to prevent Wayland crashes.
|
||||||
|
settings::flex_item(
|
||||||
|
label,
|
||||||
|
if meta.apps.is_empty() {
|
||||||
|
widget::text(fl!("default-apps", "not-installed")).apply(Element::from)
|
||||||
|
} else {
|
||||||
|
dropdown::popup_dropdown(
|
||||||
|
&meta.apps,
|
||||||
|
meta.selected,
|
||||||
|
move |id| Message::SetDefault(category, id),
|
||||||
|
cosmic::iced::window::Id::RESERVED,
|
||||||
|
Message::Surface,
|
||||||
|
|a| crate::app::Message::PageMessage(crate::pages::Message::DefaultApps(a)),
|
||||||
|
)
|
||||||
|
.icons(Cow::Borrowed(&meta.icons))
|
||||||
|
.apply(Element::from)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
.align_items(Alignment::Center)
|
||||||
|
.width(Length::Shrink)
|
||||||
|
}
|
||||||
|
|
||||||
fn apps() -> Section<crate::pages::Message> {
|
fn apps() -> Section<crate::pages::Message> {
|
||||||
Section::default().view::<Page>(move |_binder, page, section| {
|
Section::default().view::<Page>(move |_binder, page, section| {
|
||||||
let Some(mime_apps) = page.mime_apps.as_ref() else {
|
let Some(mime_apps) = page.mime_apps.as_ref() else {
|
||||||
return widget::space().into();
|
return widget::space().into();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Avoid creating popup_dropdown for empty app lists.
|
settings::section::with_capacity(9)
|
||||||
// Empty categories are rendered as non-interactive text to prevent Wayland crashes.
|
|
||||||
settings::section()
|
|
||||||
.title(§ion.title)
|
.title(§ion.title)
|
||||||
.add({
|
.add(app_item(
|
||||||
let meta = &mime_apps.apps[DROPDOWN_WEB_BROWSER];
|
&mime_apps.apps[DROPDOWN_WEB_BROWSER],
|
||||||
if meta.apps.is_empty() {
|
fl!("default-apps", "web-browser"),
|
||||||
settings::flex_item(
|
Category::WebBrowser,
|
||||||
fl!("default-apps", "web-browser"),
|
))
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
.add(app_item(
|
||||||
)
|
&mime_apps.apps[DROPDOWN_FILE_MANAGER],
|
||||||
.align_items(Alignment::Center)
|
fl!("default-apps", "file-manager"),
|
||||||
} else {
|
Category::FileManager,
|
||||||
settings::flex_item(
|
))
|
||||||
fl!("default-apps", "web-browser"),
|
.add(app_item(
|
||||||
dropdown::popup_dropdown(
|
&mime_apps.apps[DROPDOWN_MAIL],
|
||||||
&meta.apps,
|
fl!("default-apps", "mail-client"),
|
||||||
meta.selected,
|
Category::Mail,
|
||||||
|id| Message::SetDefault(Category::WebBrowser, id),
|
))
|
||||||
cosmic::iced::window::Id::RESERVED,
|
.add(app_item(
|
||||||
Message::Surface,
|
&mime_apps.apps[DROPDOWN_MUSIC],
|
||||||
|a| {
|
fl!("default-apps", "music"),
|
||||||
crate::app::Message::PageMessage(
|
Category::Audio,
|
||||||
crate::pages::Message::DefaultApps(a),
|
))
|
||||||
)
|
.add(app_item(
|
||||||
},
|
&mime_apps.apps[DROPDOWN_VIDEO],
|
||||||
)
|
fl!("default-apps", "video"),
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
Category::Video,
|
||||||
)
|
))
|
||||||
.align_items(Alignment::Center)
|
.add(app_item(
|
||||||
.min_item_width(300.0)
|
&mime_apps.apps[DROPDOWN_PHOTO],
|
||||||
}
|
fl!("default-apps", "photos"),
|
||||||
})
|
Category::Image,
|
||||||
.add({
|
))
|
||||||
let meta = &mime_apps.apps[DROPDOWN_FILE_MANAGER];
|
.add(app_item(
|
||||||
if meta.apps.is_empty() {
|
&mime_apps.apps[DROPDOWN_CALENDAR],
|
||||||
settings::flex_item(
|
fl!("default-apps", "calendar"),
|
||||||
fl!("default-apps", "file-manager"),
|
Category::Calendar,
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
))
|
||||||
)
|
.add(app_item(
|
||||||
.align_items(Alignment::Center)
|
&mime_apps.apps[DROPDOWN_TERMINAL],
|
||||||
} else {
|
fl!("default-apps", "terminal"),
|
||||||
settings::flex_item(
|
Category::Terminal,
|
||||||
fl!("default-apps", "file-manager"),
|
))
|
||||||
dropdown::popup_dropdown(
|
.add(app_item(
|
||||||
&meta.apps,
|
&mime_apps.apps[DROPDOWN_TEXT_EDITOR],
|
||||||
meta.selected,
|
fl!("default-apps", "text-editor"),
|
||||||
|id| Message::SetDefault(Category::FileManager, id),
|
Category::TextEditor,
|
||||||
cosmic::iced::window::Id::RESERVED,
|
))
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_MAIL];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "mail-client"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "mail-client"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::Mail, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_MUSIC];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "music"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "music"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::Audio, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_VIDEO];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "video"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "video"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::Video, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_PHOTO];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "photos"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "photos"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::Image, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_CALENDAR];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "calendar"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "calendar"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::Calendar, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_TERMINAL];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "terminal"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "terminal"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::Terminal, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.add({
|
|
||||||
let meta = &mime_apps.apps[DROPDOWN_TEXT_EDITOR];
|
|
||||||
if meta.apps.is_empty() {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "text-editor"),
|
|
||||||
widget::text(fl!("default-apps", "not-installed")),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
} else {
|
|
||||||
settings::flex_item(
|
|
||||||
fl!("default-apps", "text-editor"),
|
|
||||||
dropdown::popup_dropdown(
|
|
||||||
&meta.apps,
|
|
||||||
meta.selected,
|
|
||||||
|id| Message::SetDefault(Category::TextEditor, id),
|
|
||||||
cosmic::iced::window::Id::RESERVED,
|
|
||||||
Message::Surface,
|
|
||||||
|a| {
|
|
||||||
crate::app::Message::PageMessage(
|
|
||||||
crate::pages::Message::DefaultApps(a),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.icons(Cow::Borrowed(&meta.icons)),
|
|
||||||
)
|
|
||||||
.align_items(Alignment::Center)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.apply(Element::from)
|
.apply(Element::from)
|
||||||
.map(crate::pages::Message::DefaultApps)
|
.map(crate::pages::Message::DefaultApps)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,17 @@
|
||||||
// Copyright 2023 System76 <info@system76.com>
|
// Copyright 2023 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use std::{
|
use std::process::ExitStatus;
|
||||||
process::ExitStatus,
|
use std::sync::Arc;
|
||||||
sync::{
|
use std::sync::atomic::{AtomicBool, Ordering};
|
||||||
Arc,
|
|
||||||
atomic::{AtomicBool, Ordering},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::cosmic_config::{self, ConfigGet, ConfigSet};
|
||||||
Apply, Element, Task,
|
use cosmic::iced::stream;
|
||||||
cosmic_config::{self, ConfigGet, ConfigSet},
|
use cosmic::widget::{self, dropdown, settings, text};
|
||||||
iced::stream,
|
use cosmic::{Apply, Element, Task, surface};
|
||||||
surface,
|
|
||||||
widget::{self, dropdown, settings, text},
|
|
||||||
};
|
|
||||||
use cosmic_comp_config::{EavesdroppingKeyboardMode, XwaylandDescaling, XwaylandEavesdropping};
|
use cosmic_comp_config::{EavesdroppingKeyboardMode, XwaylandDescaling, XwaylandEavesdropping};
|
||||||
use cosmic_randr_shell::List;
|
use cosmic_randr_shell::List;
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use futures::SinkExt;
|
use futures::SinkExt;
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
use tokio::sync::oneshot;
|
use tokio::sync::oneshot;
|
||||||
|
|
|
||||||
|
|
@ -142,8 +142,11 @@ impl page::Page<crate::pages::Message> for Page {
|
||||||
let user_entries =
|
let user_entries =
|
||||||
freedesktop_desktop_entry::Iter::new(user_dirs.into_iter()).entries(Some(&locales));
|
freedesktop_desktop_entry::Iter::new(user_dirs.into_iter()).entries(Some(&locales));
|
||||||
|
|
||||||
|
let mut user_entries_vec = user_entries.collect_vec();
|
||||||
|
sort_entries_by_name(&mut user_entries_vec, &locales);
|
||||||
|
|
||||||
let mut apps_hash = HashMap::with_capacity(1);
|
let mut apps_hash = HashMap::with_capacity(1);
|
||||||
apps_hash.insert(DirectoryType::User, user_entries.collect_vec());
|
apps_hash.insert(DirectoryType::User, user_entries_vec);
|
||||||
|
|
||||||
Message::UpdateStartupApplications(CachedApps {
|
Message::UpdateStartupApplications(CachedApps {
|
||||||
apps: apps_hash,
|
apps: apps_hash,
|
||||||
|
|
@ -246,6 +249,10 @@ impl Page {
|
||||||
if let Some(target_apps) = target_apps {
|
if let Some(target_apps) = target_apps {
|
||||||
let mut new_apps = target_apps.clone();
|
let mut new_apps = target_apps.clone();
|
||||||
new_apps.push(app.clone());
|
new_apps.push(app.clone());
|
||||||
|
sort_entries_by_name(
|
||||||
|
&mut new_apps,
|
||||||
|
&cached_startup_apps.locales,
|
||||||
|
);
|
||||||
|
|
||||||
cached_startup_apps
|
cached_startup_apps
|
||||||
.apps
|
.apps
|
||||||
|
|
@ -433,6 +440,14 @@ fn apps() -> Section<crate::pages::Message> {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn sort_entries_by_name(entries: &mut [DesktopEntry], locales: &[String]) {
|
||||||
|
entries.sort_by_cached_key(|e| {
|
||||||
|
e.name(locales)
|
||||||
|
.map(|n| n.to_lowercase())
|
||||||
|
.unwrap_or_else(|| e.appid.to_lowercase())
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
fn get_all_apps(locales: Vec<String>) -> Vec<DesktopEntry> {
|
fn get_all_apps(locales: Vec<String>) -> Vec<DesktopEntry> {
|
||||||
let mut dedupe = HashSet::new();
|
let mut dedupe = HashSet::new();
|
||||||
|
|
||||||
|
|
@ -473,5 +488,7 @@ fn get_all_apps(locales: Vec<String>) -> Vec<DesktopEntry> {
|
||||||
dedupe.insert(app_id.to_owned());
|
dedupe.insert(app_id.to_owned());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sort_entries_by_name(&mut result, &locales);
|
||||||
|
|
||||||
result
|
result
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
|
|
||||||
use cosmic::iced::core::text::Wrapping;
|
use cosmic::iced::core::text::Wrapping;
|
||||||
use cosmic::iced::{Alignment, Length, color};
|
use cosmic::iced::{Alignment, Length, color};
|
||||||
use cosmic::widget::{self, settings, space::horizontal as horizontal_space, text};
|
use cosmic::widget::space::horizontal as horizontal_space;
|
||||||
|
use cosmic::widget::{self, settings, text};
|
||||||
use cosmic::{Apply, Element, Task, theme};
|
use cosmic::{Apply, Element, Task, theme};
|
||||||
use cosmic_settings_bluetooth_subscription::*;
|
use cosmic_settings_bluetooth_subscription::*;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
|
|
|
||||||
|
|
@ -3,11 +3,9 @@ use cosmic::config::CosmicTk;
|
||||||
use cosmic::cosmic_config::{Config, ConfigSet};
|
use cosmic::cosmic_config::{Config, ConfigSet};
|
||||||
use cosmic::cosmic_theme::Spacing;
|
use cosmic::cosmic_theme::Spacing;
|
||||||
use cosmic::iced::core::{Color, Length};
|
use cosmic::iced::core::{Color, Length};
|
||||||
use cosmic::widget::{
|
use cosmic::widget::color_picker::ColorPickerUpdate;
|
||||||
ColorPickerModel, color_picker::ColorPickerUpdate, container, flex_row, settings, text,
|
use cosmic::widget::{ColorPickerModel, container, flex_row, settings, text};
|
||||||
};
|
use cosmic::{Apply, Element, Task, widget};
|
||||||
use cosmic::{Apply, Task};
|
|
||||||
use cosmic::{Element, widget};
|
|
||||||
use cosmic_config::ConfigGet;
|
use cosmic_config::ConfigGet;
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use tracing::error;
|
use tracing::error;
|
||||||
|
|
@ -15,11 +13,8 @@ use tracing::error;
|
||||||
use crate::app;
|
use crate::app;
|
||||||
use crate::widget::color_picker_context_view;
|
use crate::widget::color_picker_context_view;
|
||||||
|
|
||||||
use super::{
|
use super::icon_themes::{IconHandles, IconThemes};
|
||||||
ContextView, Message, font_config, icon_themes,
|
use super::{ContextView, Message, font_config, icon_themes, theme_manager};
|
||||||
icon_themes::{IconHandles, IconThemes},
|
|
||||||
theme_manager,
|
|
||||||
};
|
|
||||||
|
|
||||||
pub struct Content {
|
pub struct Content {
|
||||||
context_view: Option<ContextView>,
|
context_view: Option<ContextView>,
|
||||||
|
|
|
||||||
|
|
@ -3,11 +3,8 @@
|
||||||
|
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::config::{CosmicTk, FontConfig};
|
||||||
Apply, Element, Task,
|
use cosmic::{Apply, Element, Task, widget};
|
||||||
config::{CosmicTk, FontConfig},
|
|
||||||
widget,
|
|
||||||
};
|
|
||||||
use cosmic_config::ConfigSet;
|
use cosmic_config::ConfigSet;
|
||||||
|
|
||||||
use crate::app;
|
use crate::app;
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,13 @@
|
||||||
// Copyright 2024 System76 <info@system76.com>
|
// Copyright 2024 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use std::{collections::BTreeMap, path::PathBuf};
|
use std::collections::BTreeMap;
|
||||||
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use super::Message;
|
use super::Message;
|
||||||
use cosmic::{
|
use cosmic::Element;
|
||||||
Element,
|
use cosmic::iced::{Background, Length};
|
||||||
iced::{Background, Length},
|
use cosmic::widget::{button, icon, text};
|
||||||
widget::{button, icon, text},
|
|
||||||
};
|
|
||||||
use tokio::io::AsyncBufReadExt;
|
use tokio::io::AsyncBufReadExt;
|
||||||
|
|
||||||
const ICON_PREV_N: usize = 6;
|
const ICON_PREV_N: usize = 6;
|
||||||
|
|
|
||||||
|
|
@ -16,19 +16,18 @@ use cosmic::app::ContextDrawer;
|
||||||
use cosmic::config::CosmicTk;
|
use cosmic::config::CosmicTk;
|
||||||
use cosmic::cosmic_config::{Config, ConfigSet, CosmicConfigEntry};
|
use cosmic::cosmic_config::{Config, ConfigSet, CosmicConfigEntry};
|
||||||
use cosmic::cosmic_theme::palette::{FromColor, Hsv, Srgb};
|
use cosmic::cosmic_theme::palette::{FromColor, Hsv, Srgb};
|
||||||
use cosmic::cosmic_theme::{CornerRadii, Density, ThemeBuilder, ThemeMode};
|
use cosmic::cosmic_theme::{CornerRadii, Density, Roundness, ThemeBuilder, ThemeMode};
|
||||||
#[cfg(feature = "xdg-portal")]
|
#[cfg(feature = "xdg-portal")]
|
||||||
use cosmic::dialog::file_chooser::{self, FileFilter};
|
use cosmic::dialog::file_chooser::{self, FileFilter};
|
||||||
use cosmic::iced::Subscription;
|
use cosmic::iced::Subscription;
|
||||||
use cosmic::iced::core::{Alignment, Length};
|
use cosmic::iced::core::{Alignment, Length};
|
||||||
use cosmic::widget::{
|
use cosmic::widget::color_picker::ColorPickerUpdate;
|
||||||
button, color_picker::ColorPickerUpdate, container, row, settings, space::horizontal, text,
|
use cosmic::widget::space::horizontal;
|
||||||
};
|
use cosmic::widget::{button, container, row, settings, text};
|
||||||
use cosmic::{Apply, Element, Task, widget};
|
use cosmic::{Apply, Element, Task, widget};
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
use cosmic_panel_config::CosmicPanelConfig;
|
use cosmic_panel_config::CosmicPanelConfig;
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use ron::ser::PrettyConfig;
|
use ron::ser::PrettyConfig;
|
||||||
use slotmap::{Key, SlotMap};
|
use slotmap::{Key, SlotMap};
|
||||||
|
|
||||||
|
|
@ -171,56 +170,6 @@ impl From<Message> for crate::pages::Message {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Copy)]
|
|
||||||
pub enum Roundness {
|
|
||||||
Round,
|
|
||||||
SlightlyRound,
|
|
||||||
Square,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl From<Roundness> for CornerRadii {
|
|
||||||
fn from(value: Roundness) -> Self {
|
|
||||||
match value {
|
|
||||||
Roundness::Round => CornerRadii {
|
|
||||||
radius_0: [0.0; 4],
|
|
||||||
radius_xs: [4.0; 4],
|
|
||||||
radius_s: [8.0; 4],
|
|
||||||
radius_m: [16.0; 4],
|
|
||||||
radius_l: [32.0; 4],
|
|
||||||
radius_xl: [160.0; 4],
|
|
||||||
},
|
|
||||||
Roundness::SlightlyRound => CornerRadii {
|
|
||||||
radius_0: [0.0; 4],
|
|
||||||
radius_xs: [2.0; 4],
|
|
||||||
radius_s: [8.0; 4],
|
|
||||||
radius_m: [8.0; 4],
|
|
||||||
radius_l: [8.0; 4],
|
|
||||||
radius_xl: [8.0; 4],
|
|
||||||
},
|
|
||||||
Roundness::Square => CornerRadii {
|
|
||||||
radius_0: [0.0; 4],
|
|
||||||
radius_xs: [2.0; 4],
|
|
||||||
radius_s: [2.0; 4],
|
|
||||||
radius_m: [2.0; 4],
|
|
||||||
radius_l: [2.0; 4],
|
|
||||||
radius_xl: [2.0; 4],
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl From<CornerRadii> for Roundness {
|
|
||||||
fn from(value: CornerRadii) -> Self {
|
|
||||||
if (value.radius_m[0] - 16.0).abs() < 0.01 {
|
|
||||||
Self::Round
|
|
||||||
} else if (value.radius_m[0] - 8.0).abs() < 0.01 {
|
|
||||||
Self::SlightlyRound
|
|
||||||
} else {
|
|
||||||
Self::Square
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Page {
|
impl Page {
|
||||||
#[allow(clippy::too_many_lines)]
|
#[allow(clippy::too_many_lines)]
|
||||||
pub fn update(&mut self, message: Message) -> Task<app::Message> {
|
pub fn update(&mut self, message: Message) -> Task<app::Message> {
|
||||||
|
|
@ -289,8 +238,8 @@ impl Page {
|
||||||
|
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
tokio::task::spawn(async move {
|
tokio::task::spawn(async move {
|
||||||
Self::update_panel_radii(r);
|
|
||||||
Self::update_dock_padding(r);
|
Self::update_dock_padding(r);
|
||||||
|
Self::update_panel_radii(r);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -570,113 +519,66 @@ impl Page {
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: cache panel and dock configs so that they needn't be re-read
|
// TODO: cache panel and dock configs so that they needn't be re-read
|
||||||
|
#[cfg(feature = "wayland")]
|
||||||
|
fn load_panel_config(name: &str) -> Option<(Config, CosmicPanelConfig)> {
|
||||||
|
let helper = CosmicPanelConfig::cosmic_config(name).ok()?;
|
||||||
|
let config = CosmicPanelConfig::get_entry(&helper).ok()?;
|
||||||
|
(config.name == name).then_some((helper, config))
|
||||||
|
}
|
||||||
|
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
pub fn update_panel_radii(roundness: Roundness) {
|
pub fn update_panel_radii(roundness: Roundness) {
|
||||||
let panel_config_helper = CosmicPanelConfig::cosmic_config("Panel").ok();
|
let corner_radii: CornerRadii = roundness.into();
|
||||||
let dock_config_helper = CosmicPanelConfig::cosmic_config("Dock").ok();
|
let radius = corner_radii.radius_xl[0] as u32;
|
||||||
|
|
||||||
let mut panel_config = panel_config_helper.as_ref().and_then(|config_helper| {
|
for name in ["Panel", "Dock"] {
|
||||||
let panel_config = CosmicPanelConfig::get_entry(config_helper).ok()?;
|
let Some((helper, mut config)) = Self::load_panel_config(name) else {
|
||||||
(panel_config.name == "Panel").then_some(panel_config)
|
continue;
|
||||||
});
|
};
|
||||||
|
|
||||||
let mut dock_config = dock_config_helper.as_ref().and_then(|config_helper| {
|
let new_radius = if config.anchor_gap {
|
||||||
let panel_config = CosmicPanelConfig::get_entry(config_helper).ok()?;
|
radius
|
||||||
(panel_config.name == "Dock").then_some(panel_config)
|
} else if !config.expand_to_edges {
|
||||||
});
|
radius.min(12)
|
||||||
|
|
||||||
if let Some(panel_config_helper) = panel_config_helper.as_ref()
|
|
||||||
&& let Some(panel_config) = panel_config.as_mut()
|
|
||||||
{
|
|
||||||
let radii = if panel_config.anchor_gap {
|
|
||||||
let cornder_radii: CornerRadii = roundness.into();
|
|
||||||
cornder_radii.radius_xl[0] as u32
|
|
||||||
} else if matches!(roundness, Roundness::Round) && !panel_config.expand_to_edges {
|
|
||||||
12
|
|
||||||
} else {
|
} else {
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
if let Err(why) = panel_config.set_border_radius(panel_config_helper, radii) {
|
if let Err(why) = config.set_border_radius(&helper, new_radius) {
|
||||||
tracing::error!(?why, "Error updating panel corner radii");
|
tracing::error!(?why, "Error updating {name} corner radii");
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(dock_config_helper) = dock_config_helper.as_ref()
|
|
||||||
&& let Some(dock_config) = dock_config.as_mut()
|
|
||||||
{
|
|
||||||
let radii = if dock_config.anchor_gap {
|
|
||||||
let cornder_radii: CornerRadii = roundness.into();
|
|
||||||
cornder_radii.radius_xl[0] as u32
|
|
||||||
} else if matches!(roundness, Roundness::Round) && !dock_config.expand_to_edges {
|
|
||||||
12
|
|
||||||
} else {
|
|
||||||
0
|
|
||||||
};
|
|
||||||
|
|
||||||
if let Err(why) = dock_config.set_border_radius(dock_config_helper, radii) {
|
|
||||||
tracing::error!(?why, "Error updating dock corner radii");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
pub fn update_dock_padding(roundness: Roundness) {
|
pub fn update_dock_padding(roundness: Roundness) {
|
||||||
let dock_config_helper = CosmicPanelConfig::cosmic_config("Dock").ok();
|
let Some((helper, mut config)) = Self::load_panel_config("Dock") else {
|
||||||
|
return;
|
||||||
|
};
|
||||||
|
|
||||||
let mut dock_config = dock_config_helper.as_ref().and_then(|config_helper| {
|
let padding = match roundness {
|
||||||
let panel_config = CosmicPanelConfig::get_entry(config_helper).ok()?;
|
Roundness::Round | Roundness::SlightlyRound => 4,
|
||||||
(panel_config.name == "Dock").then_some(panel_config)
|
Roundness::Square => 0,
|
||||||
});
|
};
|
||||||
|
|
||||||
if let Some(dock_config_helper) = dock_config_helper.as_ref()
|
if let Err(why) = config.set_padding(&helper, padding) {
|
||||||
&& let Some(dock_config) = dock_config.as_mut()
|
tracing::error!(?why, "Error updating dock padding");
|
||||||
{
|
|
||||||
let padding = match roundness {
|
|
||||||
Roundness::Round => 4,
|
|
||||||
Roundness::SlightlyRound => 4,
|
|
||||||
Roundness::Square => 0,
|
|
||||||
};
|
|
||||||
|
|
||||||
if let Err(why) = dock_config.set_padding(dock_config_helper, padding) {
|
|
||||||
tracing::error!(?why, "Error updating dock padding");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: cache panel and dock configs so that they needn't be re-read
|
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
pub fn update_panel_spacing(density: Density) {
|
pub fn update_panel_spacing(density: Density) {
|
||||||
let spacing: cosmic::cosmic_theme::Spacing = density.into();
|
let spacing: cosmic::cosmic_theme::Spacing = density.into();
|
||||||
let space_none = spacing.space_none;
|
let space_none = spacing.space_none as u32;
|
||||||
let panel_config_helper = CosmicPanelConfig::cosmic_config("Panel").ok();
|
|
||||||
let dock_config_helper = CosmicPanelConfig::cosmic_config("Dock").ok();
|
|
||||||
let mut panel_config = panel_config_helper.as_ref().and_then(|config_helper| {
|
|
||||||
let panel_config = CosmicPanelConfig::get_entry(config_helper).ok()?;
|
|
||||||
(panel_config.name == "Panel").then_some(panel_config)
|
|
||||||
});
|
|
||||||
let mut dock_config = dock_config_helper.as_ref().and_then(|config_helper| {
|
|
||||||
let panel_config = CosmicPanelConfig::get_entry(config_helper).ok()?;
|
|
||||||
(panel_config.name == "Dock").then_some(panel_config)
|
|
||||||
});
|
|
||||||
|
|
||||||
if let Some(panel_config_helper) = panel_config_helper.as_ref()
|
for name in ["Panel", "Dock"] {
|
||||||
&& let Some(panel_config) = panel_config.as_mut()
|
let Some((helper, mut config)) = Self::load_panel_config(name) else {
|
||||||
{
|
continue;
|
||||||
let update = panel_config.set_spacing(panel_config_helper, space_none as u32);
|
};
|
||||||
if let Err(err) = update {
|
if let Err(err) = config.set_spacing(&helper, space_none) {
|
||||||
tracing::error!(?err, "Error updating panel spacing");
|
tracing::error!(?err, "Error updating {name} spacing");
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
|
|
||||||
if let Some(dock_config_helper) = dock_config_helper.as_ref()
|
|
||||||
&& let Some(dock_config) = dock_config.as_mut()
|
|
||||||
{
|
|
||||||
let update = dock_config.set_spacing(dock_config_helper, space_none as u32);
|
|
||||||
if let Err(err) = update {
|
|
||||||
tracing::error!(?err, "Error updating dock spacing");
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn can_reset(&self) -> bool {
|
fn can_reset(&self) -> bool {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
use cosmic::iced::core::{Alignment, Length, text::Wrapping};
|
use cosmic::iced::core::text::Wrapping;
|
||||||
|
use cosmic::iced::core::{Alignment, Length};
|
||||||
use cosmic::widget::icon::{from_name, icon};
|
use cosmic::widget::icon::{from_name, icon};
|
||||||
use cosmic::widget::{button, container, settings, text};
|
use cosmic::widget::{button, container, settings, text};
|
||||||
use cosmic::{Apply, Element};
|
use cosmic::{Apply, Element};
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,16 @@
|
||||||
use cosmic::{
|
use cosmic::app::ContextDrawer;
|
||||||
Apply, Element, Task,
|
use cosmic::cosmic_config::CosmicConfigEntry;
|
||||||
app::ContextDrawer,
|
use cosmic::iced::{Alignment, Length};
|
||||||
cosmic_config::CosmicConfigEntry,
|
use cosmic::widget::{button, container, row};
|
||||||
iced::{Alignment, Length},
|
use cosmic::{Apply, Element, Task};
|
||||||
widget::{button, container, row},
|
|
||||||
};
|
|
||||||
use cosmic_panel_config::CosmicPanelConfig;
|
use cosmic_panel_config::CosmicPanelConfig;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use slotmap::{Key, SlotMap};
|
use slotmap::{Key, SlotMap};
|
||||||
use std::borrow::Cow;
|
use std::borrow::Cow;
|
||||||
|
|
||||||
use crate::{
|
use crate::app;
|
||||||
app,
|
use crate::pages::desktop::panel::applets_inner::{self, AppletsPage, ContextDrawerVariant, lists};
|
||||||
pages::{
|
use crate::pages::{self};
|
||||||
self,
|
|
||||||
desktop::panel::applets_inner::{self, AppletsPage, ContextDrawerVariant, lists},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
pub(crate) struct Page {
|
pub(crate) struct Page {
|
||||||
inner: applets_inner::Page,
|
inner: applets_inner::Page,
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,8 @@
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use cosmic::Apply;
|
use cosmic::cosmic_config::{ConfigSet, CosmicConfigEntry};
|
||||||
use cosmic::{
|
use cosmic::widget::{settings, text};
|
||||||
Element, Task,
|
use cosmic::{Apply, Element, Task};
|
||||||
cosmic_config::{ConfigSet, CosmicConfigEntry},
|
|
||||||
widget::{settings, text},
|
|
||||||
};
|
|
||||||
use cosmic_panel_config::{CosmicPanelConfig, CosmicPanelContainerConfig};
|
use cosmic_panel_config::{CosmicPanelConfig, CosmicPanelContainerConfig};
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
|
|
|
||||||
|
|
@ -10,23 +10,21 @@ use cosmic::iced;
|
||||||
use cosmic::iced::core::clipboard::IconSurface;
|
use cosmic::iced::core::clipboard::IconSurface;
|
||||||
use cosmic::widget::{Column, button, column, container, icon, list_column, row, text, text_input};
|
use cosmic::widget::{Column, button, column, container, icon, list_column, row, text, text_input};
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::cosmic_config::{Config, CosmicConfigEntry};
|
||||||
Apply, Element,
|
use cosmic::iced::core::widget::{Operation, Tree, tree};
|
||||||
cosmic_config::{Config, CosmicConfigEntry},
|
use cosmic::iced::core::{Clipboard, Shell, Widget, layout, renderer, window};
|
||||||
iced::core::{
|
use cosmic::iced::runtime::Task;
|
||||||
Clipboard, Shell, Widget, layout, renderer,
|
use cosmic::iced::runtime::core::id::Id;
|
||||||
widget::{Operation, Tree, tree},
|
use cosmic::iced::{
|
||||||
},
|
Alignment, Border, Color, Length, Point, Rectangle, Size, Vector, event, mouse, overlay, touch,
|
||||||
iced::runtime::{Task, core::id::Id},
|
|
||||||
iced::{
|
|
||||||
Alignment, Border, Color, Length, Point, Rectangle, Size, Vector, core::window, event,
|
|
||||||
mouse, overlay, touch,
|
|
||||||
},
|
|
||||||
theme,
|
|
||||||
};
|
};
|
||||||
|
use cosmic::{Apply, Element, theme};
|
||||||
|
|
||||||
|
use std::borrow::Cow;
|
||||||
|
use std::fmt::Debug;
|
||||||
|
use std::mem;
|
||||||
use std::path::{Path, PathBuf};
|
use std::path::{Path, PathBuf};
|
||||||
use std::{borrow::Cow, fmt::Debug, mem, sync::LazyLock};
|
use std::sync::LazyLock;
|
||||||
|
|
||||||
use crate::{app, pages};
|
use crate::{app, pages};
|
||||||
use cosmic_panel_config::CosmicPanelConfig;
|
use cosmic_panel_config::CosmicPanelConfig;
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,11 @@
|
||||||
use cosmic::{
|
use cosmic::cctk::sctk::reexports::client::Proxy;
|
||||||
Element, Task,
|
use cosmic::cctk::sctk::reexports::client::backend::ObjectId;
|
||||||
cctk::sctk::reexports::client::{Proxy, backend::ObjectId, protocol::wl_output::WlOutput},
|
use cosmic::cctk::sctk::reexports::client::protocol::wl_output::WlOutput;
|
||||||
cosmic_config::{self, CosmicConfigEntry},
|
use cosmic::cosmic_config::{self, CosmicConfigEntry};
|
||||||
cosmic_theme::Density,
|
use cosmic::cosmic_theme::{Density, Roundness};
|
||||||
iced::{Alignment, Length},
|
use cosmic::iced::{Alignment, Length};
|
||||||
surface,
|
use cosmic::widget::{button, container, dropdown, row, settings, slider, space, text};
|
||||||
widget::{button, container, dropdown, row, settings, slider, space, text},
|
use cosmic::{Element, Task, surface};
|
||||||
};
|
|
||||||
|
|
||||||
use cosmic::Apply;
|
use cosmic::Apply;
|
||||||
use cosmic_config::ConfigSet;
|
use cosmic_config::ConfigSet;
|
||||||
|
|
@ -15,16 +14,15 @@ use cosmic_panel_config::{
|
||||||
CosmicPanelOuput, PanelAnchor, PanelSize,
|
CosmicPanelOuput, PanelAnchor, PanelSize,
|
||||||
};
|
};
|
||||||
use cosmic_settings_page::{self as page, Section};
|
use cosmic_settings_page::{self as page, Section};
|
||||||
use std::{collections::HashMap, time::Duration};
|
use std::collections::HashMap;
|
||||||
|
use std::time::Duration;
|
||||||
use crate::pages::desktop::appearance::Roundness;
|
|
||||||
|
|
||||||
pub struct PageInner {
|
pub struct PageInner {
|
||||||
pub(crate) config_helper: Option<cosmic_config::Config>,
|
pub(crate) config_helper: Option<cosmic_config::Config>,
|
||||||
pub(crate) panel_config: Option<CosmicPanelConfig>,
|
pub(crate) panel_config: Option<CosmicPanelConfig>,
|
||||||
pub size: Option<PanelSize>,
|
|
||||||
pub opacity: f32,
|
pub opacity: f32,
|
||||||
pub opacity_changing: bool,
|
pub opacity_changing: bool,
|
||||||
|
pub size: PanelSize,
|
||||||
pub outputs: Vec<String>,
|
pub outputs: Vec<String>,
|
||||||
pub anchors: Vec<String>,
|
pub anchors: Vec<String>,
|
||||||
pub backgrounds: Vec<String>,
|
pub backgrounds: Vec<String>,
|
||||||
|
|
@ -40,9 +38,9 @@ impl Default for PageInner {
|
||||||
Self {
|
Self {
|
||||||
config_helper: Option::default(),
|
config_helper: Option::default(),
|
||||||
panel_config: Option::default(),
|
panel_config: Option::default(),
|
||||||
size: Option::default(),
|
|
||||||
opacity: 0.0,
|
opacity: 0.0,
|
||||||
opacity_changing: false,
|
opacity_changing: false,
|
||||||
|
size: PanelSize::M,
|
||||||
outputs: vec![fl!("all-displays")],
|
outputs: vec![fl!("all-displays")],
|
||||||
anchors: vec![
|
anchors: vec![
|
||||||
Anchor(PanelAnchor::Left).to_string(),
|
Anchor(PanelAnchor::Left).to_string(),
|
||||||
|
|
@ -209,9 +207,7 @@ pub(crate) fn style<
|
||||||
text::body(fl!("small")).into(),
|
text::body(fl!("small")).into(),
|
||||||
slider(
|
slider(
|
||||||
0..=4,
|
0..=4,
|
||||||
match inner.size.as_ref().expect(
|
match inner.size {
|
||||||
"PageInner.size is None even though PageInner.panel_config is Some",
|
|
||||||
) {
|
|
||||||
PanelSize::XS => 0,
|
PanelSize::XS => 0,
|
||||||
PanelSize::S => 1,
|
PanelSize::S => 1,
|
||||||
PanelSize::M => 2,
|
PanelSize::M => 2,
|
||||||
|
|
@ -506,7 +502,7 @@ impl PageInner {
|
||||||
if let Err(err) = default.write_entry(config) {
|
if let Err(err) = default.write_entry(config) {
|
||||||
tracing::error!(?err, "Error resetting panel config.");
|
tracing::error!(?err, "Error resetting panel config.");
|
||||||
}
|
}
|
||||||
self.size = Some(default.size.clone());
|
self.size.clone_from(&default.size);
|
||||||
self.system_default = Some(default.clone());
|
self.system_default = Some(default.clone());
|
||||||
self.panel_config.clone_from(&self.system_default);
|
self.panel_config.clone_from(&self.system_default);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -591,30 +587,21 @@ impl PageInner {
|
||||||
}
|
}
|
||||||
let theme = cosmic::theme::system_preference();
|
let theme = cosmic::theme::system_preference();
|
||||||
let theme = theme.cosmic();
|
let theme = theme.cosmic();
|
||||||
let radius = theme.corner_radii;
|
let radius = theme.corner_radii.radius_xl[0] as u32;
|
||||||
let roundness: Roundness = radius.into();
|
let new_radius = if enabled {
|
||||||
let new_radius;
|
radius
|
||||||
if enabled {
|
} else if !panel_config.expand_to_edges {
|
||||||
let radii = theme.corner_radii.radius_xl[0] as u32;
|
radius.min(12)
|
||||||
new_radius = radii;
|
|
||||||
} else if matches!(roundness, Roundness::Round) && !panel_config.expand_to_edges {
|
|
||||||
new_radius = 12;
|
|
||||||
} else {
|
} else {
|
||||||
new_radius = 0;
|
0
|
||||||
}
|
};
|
||||||
_ = panel_config.set_border_radius(helper, new_radius).unwrap();
|
_ = panel_config.set_border_radius(helper, new_radius).unwrap();
|
||||||
}
|
}
|
||||||
Message::PanelSize(size) => {
|
Message::PanelSize(size) => {
|
||||||
self.size = Some(size);
|
self.size = size;
|
||||||
}
|
}
|
||||||
Message::PanelSizeCommit => {
|
Message::PanelSizeCommit => {
|
||||||
_ = panel_config.set_size(
|
_ = panel_config.set_size(helper, self.size.clone());
|
||||||
helper,
|
|
||||||
self.size
|
|
||||||
.as_ref()
|
|
||||||
.expect("PageInner.size is None even though it should be Some, since PageInner.panel_config is Some")
|
|
||||||
.clone()
|
|
||||||
);
|
|
||||||
// Reset any size overrides the user might have set
|
// Reset any size overrides the user might have set
|
||||||
_ = panel_config.set_size_center(helper, None);
|
_ = panel_config.set_size_center(helper, None);
|
||||||
_ = panel_config.set_size_wings(helper, None);
|
_ = panel_config.set_size_wings(helper, None);
|
||||||
|
|
@ -632,17 +619,14 @@ impl PageInner {
|
||||||
|
|
||||||
let theme = cosmic::theme::system_preference();
|
let theme = cosmic::theme::system_preference();
|
||||||
let theme = theme.cosmic();
|
let theme = theme.cosmic();
|
||||||
let radius = theme.corner_radii;
|
let radius = theme.corner_radii.radius_xl[0] as u32;
|
||||||
let roundness: Roundness = radius.into();
|
let new_radius = if panel_config.anchor_gap {
|
||||||
let new_radius;
|
radius
|
||||||
if panel_config.anchor_gap {
|
} else if !enabled {
|
||||||
let radii = theme.corner_radii.radius_xl[0] as u32;
|
radius.min(12)
|
||||||
new_radius = radii;
|
|
||||||
} else if matches!(roundness, Roundness::Round) && !enabled {
|
|
||||||
new_radius = 12;
|
|
||||||
} else {
|
} else {
|
||||||
new_radius = 0;
|
0
|
||||||
}
|
};
|
||||||
_ = panel_config.set_border_radius(helper, new_radius).unwrap();
|
_ = panel_config.set_border_radius(helper, new_radius).unwrap();
|
||||||
}
|
}
|
||||||
Message::OpacityRequest(opacity) => {
|
Message::OpacityRequest(opacity) => {
|
||||||
|
|
@ -677,7 +661,7 @@ impl PageInner {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Message::PanelConfig(c) => {
|
Message::PanelConfig(c) => {
|
||||||
self.size = Some(c.size.clone());
|
self.size = c.size.clone();
|
||||||
self.panel_config = Some(*c);
|
self.panel_config = Some(*c);
|
||||||
return Task::none();
|
return Task::none();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use cosmic::{Task, cosmic_config::CosmicConfigEntry};
|
use cosmic::Task;
|
||||||
|
use cosmic::cosmic_config::CosmicConfigEntry;
|
||||||
use cosmic_panel_config::{CosmicPanelConfig, CosmicPanelContainerConfig};
|
use cosmic_panel_config::{CosmicPanelConfig, CosmicPanelContainerConfig};
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
|
|
@ -79,7 +80,6 @@ impl Default for Page {
|
||||||
// If the config is not present, it will be created with the default values and the name will not match
|
// If the config is not present, it will be created with the default values and the name will not match
|
||||||
(panel_config.name == "Panel").then_some(panel_config)
|
(panel_config.name == "Panel").then_some(panel_config)
|
||||||
});
|
});
|
||||||
let size = panel_config.as_ref().map(|c| c.size.clone());
|
|
||||||
let system_default = cosmic::cosmic_config::Config::system(
|
let system_default = cosmic::cosmic_config::Config::system(
|
||||||
&format!("{}.Panel", cosmic_panel_config::NAME),
|
&format!("{}.Panel", cosmic_panel_config::NAME),
|
||||||
CosmicPanelConfig::VERSION,
|
CosmicPanelConfig::VERSION,
|
||||||
|
|
@ -99,7 +99,6 @@ impl Default for Page {
|
||||||
inner: PageInner {
|
inner: PageInner {
|
||||||
config_helper,
|
config_helper,
|
||||||
panel_config,
|
panel_config,
|
||||||
size,
|
|
||||||
container_config,
|
container_config,
|
||||||
outputs_map: HashMap::new(),
|
outputs_map: HashMap::new(),
|
||||||
system_default,
|
system_default,
|
||||||
|
|
|
||||||
|
|
@ -7,37 +7,25 @@ pub mod widgets;
|
||||||
pub use config::Config;
|
pub use config::Config;
|
||||||
use url::Url;
|
use url::Url;
|
||||||
|
|
||||||
use std::{
|
use std::collections::HashMap;
|
||||||
collections::HashMap,
|
use std::path::{Path, PathBuf};
|
||||||
path::{Path, PathBuf},
|
use std::sync::Arc;
|
||||||
sync::Arc,
|
|
||||||
};
|
|
||||||
|
|
||||||
|
use cosmic::app::ContextDrawer;
|
||||||
#[cfg(feature = "xdg-portal")]
|
#[cfg(feature = "xdg-portal")]
|
||||||
use cosmic::dialog::file_chooser;
|
use cosmic::dialog::file_chooser;
|
||||||
use cosmic::{
|
use cosmic::iced::core::text::{Ellipsize, EllipsizeHeightLimit};
|
||||||
Apply, Element, Task,
|
use cosmic::iced::runtime::core::image::Handle as ImageHandle;
|
||||||
iced::core::text::{Ellipsize, EllipsizeHeightLimit},
|
use cosmic::iced::{Alignment, Color, Length, Subscription, window};
|
||||||
widget::{ColorPickerModel, color_picker::ColorPickerUpdate, icon},
|
use cosmic::widget::color_picker::ColorPickerUpdate;
|
||||||
};
|
use cosmic::widget::segmented_button::{self, SingleSelectModel};
|
||||||
use cosmic::{app::ContextDrawer, iced::runtime::core::image::Handle as ImageHandle};
|
use cosmic::widget::space::horizontal as horizontal_space;
|
||||||
use cosmic::{
|
use cosmic::widget::{
|
||||||
iced::Subscription,
|
ColorPickerModel, button, dropdown, icon, list_column, row, settings, tab_bar, text,
|
||||||
widget::{
|
|
||||||
button, dropdown, list_column, row,
|
|
||||||
segmented_button::{self, SingleSelectModel},
|
|
||||||
settings,
|
|
||||||
space::horizontal as horizontal_space,
|
|
||||||
tab_bar, text,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
use cosmic::{
|
|
||||||
iced::{Alignment, Color, Length, window},
|
|
||||||
surface,
|
|
||||||
};
|
};
|
||||||
|
use cosmic::{Apply, Element, Task, surface};
|
||||||
use cosmic_bg_config::Source;
|
use cosmic_bg_config::Source;
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use cosmic_settings_wallpaper::{self as wallpaper, Entry, ScalingMode};
|
use cosmic_settings_wallpaper::{self as wallpaper, Entry, ScalingMode};
|
||||||
use image::imageops::FilterType::Lanczos3;
|
use image::imageops::FilterType::Lanczos3;
|
||||||
use image::{ImageBuffer, Rgba};
|
use image::{ImageBuffer, Rgba};
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,8 @@
|
||||||
|
|
||||||
use super::Message;
|
use super::Message;
|
||||||
use cosmic::iced::Radius;
|
use cosmic::iced::Radius;
|
||||||
use cosmic::iced::core::Border;
|
use cosmic::iced::core::gradient::Linear;
|
||||||
use cosmic::iced::core::{Background, Color, Degrees, Length, gradient::Linear};
|
use cosmic::iced::core::{Background, Border, Color, Degrees, Length};
|
||||||
use cosmic::iced::runtime::core::image::Handle as ImageHandle;
|
use cosmic::iced::runtime::core::image::Handle as ImageHandle;
|
||||||
use cosmic::prelude::*;
|
use cosmic::prelude::*;
|
||||||
use cosmic::widget::{Space, button, container};
|
use cosmic::widget::{Space, button, container};
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,14 @@
|
||||||
// Copyright 2023 System76 <info@system76.com>
|
// Copyright 2023 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::iced::Length;
|
||||||
Apply, Element,
|
use cosmic::widget::{self, settings};
|
||||||
iced::Length,
|
use cosmic::{Apply, Element, surface};
|
||||||
surface,
|
|
||||||
widget::{self, settings},
|
|
||||||
};
|
|
||||||
|
|
||||||
use cosmic_comp_config::CosmicCompConfig;
|
use cosmic_comp_config::CosmicCompConfig;
|
||||||
use cosmic_config::{ConfigGet, ConfigSet};
|
use cosmic_config::{ConfigGet, ConfigSet};
|
||||||
use cosmic_settings_config::{Action, Binding, Shortcuts, shortcuts};
|
use cosmic_settings_config::{Action, Binding, Shortcuts, shortcuts};
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
use tracing::error;
|
use tracing::error;
|
||||||
|
|
||||||
|
|
@ -27,6 +23,7 @@ pub enum Message {
|
||||||
ShowActiveWindowHint(bool),
|
ShowActiveWindowHint(bool),
|
||||||
ShowMaximizeButton(bool),
|
ShowMaximizeButton(bool),
|
||||||
ShowMinimizeButton(bool),
|
ShowMinimizeButton(bool),
|
||||||
|
WindowControlsPositionStart(bool),
|
||||||
SetEdgeSnapThreshold(u32),
|
SetEdgeSnapThreshold(u32),
|
||||||
Surface(surface::Action),
|
Surface(surface::Action),
|
||||||
}
|
}
|
||||||
|
|
@ -177,6 +174,19 @@ impl Page {
|
||||||
.set_show_minimize(&config, value);
|
.set_show_minimize(&config, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Message::WindowControlsPositionStart(left) => {
|
||||||
|
if let Ok(config) = cosmic::config::CosmicTk::config() {
|
||||||
|
let position = if left {
|
||||||
|
cosmic::widget::WindowControlsPosition::Start
|
||||||
|
} else {
|
||||||
|
cosmic::widget::WindowControlsPosition::End
|
||||||
|
};
|
||||||
|
let _res = cosmic::config::COSMIC_TK
|
||||||
|
.write()
|
||||||
|
.unwrap()
|
||||||
|
.set_window_controls_position(&config, position);
|
||||||
|
}
|
||||||
|
}
|
||||||
Message::ShowActiveWindowHint(value) => {
|
Message::ShowActiveWindowHint(value) => {
|
||||||
self.show_active_hint = value;
|
self.show_active_hint = value;
|
||||||
if let Err(err) = self.comp_config.set("active_hint", value) {
|
if let Err(err) = self.comp_config.set("active_hint", value) {
|
||||||
|
|
@ -274,6 +284,7 @@ pub fn window_controls() -> Section<crate::pages::Message> {
|
||||||
maximize = fl!("window-controls", "maximize");
|
maximize = fl!("window-controls", "maximize");
|
||||||
minimize = fl!("window-controls", "minimize");
|
minimize = fl!("window-controls", "minimize");
|
||||||
active_window_hint = fl!("window-controls", "active-window-hint");
|
active_window_hint = fl!("window-controls", "active-window-hint");
|
||||||
|
position_start = fl!("window-controls", "position-start");
|
||||||
});
|
});
|
||||||
|
|
||||||
Section::default()
|
Section::default()
|
||||||
|
|
@ -296,6 +307,13 @@ pub fn window_controls() -> Section<crate::pages::Message> {
|
||||||
settings::item::builder(&descriptions[minimize])
|
settings::item::builder(&descriptions[minimize])
|
||||||
.toggler(cosmic::config::show_minimize(), Message::ShowMinimizeButton),
|
.toggler(cosmic::config::show_minimize(), Message::ShowMinimizeButton),
|
||||||
)
|
)
|
||||||
|
.add(settings::item::builder(&descriptions[position_start]).toggler(
|
||||||
|
matches!(
|
||||||
|
cosmic::config::window_controls_position(),
|
||||||
|
cosmic::widget::WindowControlsPosition::Start
|
||||||
|
),
|
||||||
|
Message::WindowControlsPositionStart,
|
||||||
|
))
|
||||||
.apply(Element::from)
|
.apply(Element::from)
|
||||||
.map(crate::pages::Message::WindowManagement)
|
.map(crate::pages::Message::WindowManagement)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -3,15 +3,11 @@
|
||||||
|
|
||||||
// TODO make settings work
|
// TODO make settings work
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::cosmic_config::{self, ConfigGet, ConfigSet};
|
||||||
Apply, Element,
|
use cosmic::widget::{self, settings};
|
||||||
cosmic_config::{self, ConfigGet, ConfigSet},
|
use cosmic::{Apply, Element, surface};
|
||||||
surface,
|
|
||||||
widget::{self, settings},
|
|
||||||
};
|
|
||||||
use cosmic_comp_config::workspace::{Action, WorkspaceConfig, WorkspaceLayout, WorkspaceMode};
|
use cosmic_comp_config::workspace::{Action, WorkspaceConfig, WorkspaceLayout, WorkspaceMode};
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
use tracing::error;
|
use tracing::error;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,11 +5,9 @@ use cosmic::Renderer;
|
||||||
use cosmic::iced::core::renderer::Quad;
|
use cosmic::iced::core::renderer::Quad;
|
||||||
use cosmic::iced::core::widget::{Tree, tree};
|
use cosmic::iced::core::widget::{Tree, tree};
|
||||||
use cosmic::iced::core::{
|
use cosmic::iced::core::{
|
||||||
self as core, Border, Clipboard, Element, Layout, Length, Rectangle, Renderer as IcedRenderer,
|
self as core, Border, Clipboard, Element, Layout, Length, Point, Rectangle,
|
||||||
Shell, Size, Widget,
|
Renderer as IcedRenderer, Shell, Size, Widget, alignment, layout, mouse, renderer, text, touch,
|
||||||
};
|
};
|
||||||
use cosmic::iced::core::{Point, layout, mouse, renderer, touch};
|
|
||||||
use cosmic::iced::core::{alignment, text};
|
|
||||||
use cosmic::widget::segmented_button::{self, SingleSelectModel};
|
use cosmic::widget::segmented_button::{self, SingleSelectModel};
|
||||||
use cosmic_randr_shell::{self as randr, OutputKey};
|
use cosmic_randr_shell::{self as randr, OutputKey};
|
||||||
use randr::Transform;
|
use randr::Transform;
|
||||||
|
|
|
||||||
|
|
@ -20,9 +20,10 @@ use cosmic_settings_page::{self as page, Section, section};
|
||||||
use futures::SinkExt;
|
use futures::SinkExt;
|
||||||
use indexmap::Equivalent;
|
use indexmap::Equivalent;
|
||||||
use slotmap::{Key, SecondaryMap, SlotMap};
|
use slotmap::{Key, SecondaryMap, SlotMap};
|
||||||
|
use std::collections::BTreeMap;
|
||||||
|
use std::process::ExitStatus;
|
||||||
use std::sync::atomic::{AtomicBool, Ordering};
|
use std::sync::atomic::{AtomicBool, Ordering};
|
||||||
use std::sync::{Arc, LazyLock};
|
use std::sync::{Arc, LazyLock};
|
||||||
use std::{collections::BTreeMap, process::ExitStatus};
|
|
||||||
use tokio::sync::oneshot;
|
use tokio::sync::oneshot;
|
||||||
|
|
||||||
static DPI_SCALES: &[u32] = &[50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300];
|
static DPI_SCALES: &[u32] = &[50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300];
|
||||||
|
|
|
||||||
|
|
@ -5,14 +5,11 @@ pub mod shortcuts;
|
||||||
|
|
||||||
use std::cmp;
|
use std::cmp;
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::app::{ContextDrawer, context_drawer};
|
||||||
Apply, Element, Task,
|
use cosmic::cosmic_config::{self, ConfigSet};
|
||||||
app::{ContextDrawer, context_drawer},
|
use cosmic::iced::{Alignment, Length};
|
||||||
cosmic_config::{self, ConfigSet},
|
use cosmic::widget::{self, ListColumn, button, container, icon, list, row, settings};
|
||||||
iced::{Alignment, Length},
|
use cosmic::{Apply, Element, Task, theme};
|
||||||
theme,
|
|
||||||
widget::{self, ListColumn, button, container, icon, list, row, settings},
|
|
||||||
};
|
|
||||||
use cosmic_comp_config::{KeyboardConfig, NumlockState, XkbConfig};
|
use cosmic_comp_config::{KeyboardConfig, NumlockState, XkbConfig};
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use itertools::Itertools;
|
use itertools::Itertools;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ use cosmic::iced::keyboard::{Key, Location, Modifiers};
|
||||||
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
||||||
use cosmic::iced::platform_specific::shell::wayland::keymap;
|
use cosmic::iced::platform_specific::shell::wayland::keymap;
|
||||||
use cosmic::iced::{self, Alignment, Length};
|
use cosmic::iced::{self, Alignment, Length};
|
||||||
use cosmic::widget::{self, button, icon, settings, text};
|
use cosmic::widget::{self, button, icon, list, settings, text};
|
||||||
use cosmic::{Apply, Element, Task, theme};
|
use cosmic::{Apply, Element, Task, theme};
|
||||||
use cosmic_config::{ConfigGet, ConfigSet};
|
use cosmic_config::{ConfigGet, ConfigSet};
|
||||||
use cosmic_settings_config::shortcuts::{self, Action, Binding, Shortcuts};
|
use cosmic_settings_config::shortcuts::{self, Action, Binding, Shortcuts};
|
||||||
|
|
@ -652,7 +652,8 @@ impl Model {
|
||||||
modifiers,
|
modifiers,
|
||||||
..
|
..
|
||||||
}) => {
|
}) => {
|
||||||
use cosmic::iced::keyboard::{Key, key::Named};
|
use cosmic::iced::keyboard::Key;
|
||||||
|
use cosmic::iced::keyboard::key::Named;
|
||||||
|
|
||||||
if matches!(
|
if matches!(
|
||||||
key,
|
key,
|
||||||
|
|
@ -669,7 +670,8 @@ impl Model {
|
||||||
location,
|
location,
|
||||||
..
|
..
|
||||||
}) => {
|
}) => {
|
||||||
use cosmic::iced::keyboard::{Key, key::Named};
|
use cosmic::iced::keyboard::Key;
|
||||||
|
use cosmic::iced::keyboard::key::Named;
|
||||||
|
|
||||||
if matches!(
|
if matches!(
|
||||||
key,
|
key,
|
||||||
|
|
@ -865,13 +867,11 @@ fn context_drawer<'a>(
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Display a shortcut as a list item
|
/// Display a shortcut as a list item
|
||||||
fn shortcut_item(custom: bool, id: usize, data: &ShortcutModel) -> Element<'_, ShortcutMessage> {
|
fn shortcut_item(
|
||||||
#[derive(Copy, Clone, Debug)]
|
custom: bool,
|
||||||
enum LocalMessage {
|
id: usize,
|
||||||
Remove,
|
data: &ShortcutModel,
|
||||||
Show,
|
) -> list::ListButton<'_, ShortcutMessage> {
|
||||||
}
|
|
||||||
|
|
||||||
let bindings = data
|
let bindings = data
|
||||||
.bindings
|
.bindings
|
||||||
.iter()
|
.iter()
|
||||||
|
|
@ -880,7 +880,7 @@ fn shortcut_item(custom: bool, id: usize, data: &ShortcutModel) -> Element<'_, S
|
||||||
.map(|(_, shortcut)| text::body(shortcut.binding.to_string()).into())
|
.map(|(_, shortcut)| text::body(shortcut.binding.to_string()).into())
|
||||||
.collect::<Vec<_>>();
|
.collect::<Vec<_>>();
|
||||||
|
|
||||||
let shortcuts: Element<LocalMessage> = if bindings.is_empty() {
|
let shortcuts: Element<ShortcutMessage> = if bindings.is_empty() {
|
||||||
text::body(fl!("disabled")).into()
|
text::body(fl!("disabled")).into()
|
||||||
} else {
|
} else {
|
||||||
widget::column::with_children(bindings)
|
widget::column::with_children(bindings)
|
||||||
|
|
@ -900,7 +900,7 @@ fn shortcut_item(custom: bool, id: usize, data: &ShortcutModel) -> Element<'_, S
|
||||||
.push(icon::from_name("go-next-symbolic").size(16))
|
.push(icon::from_name("go-next-symbolic").size(16))
|
||||||
.push_maybe(custom.then(|| {
|
.push_maybe(custom.then(|| {
|
||||||
widget::button::icon(icon::from_name("edit-delete-symbolic"))
|
widget::button::icon(icon::from_name("edit-delete-symbolic"))
|
||||||
.on_press(LocalMessage::Remove)
|
.on_press(ShortcutMessage::DeleteShortcut(id))
|
||||||
}))
|
}))
|
||||||
.align_y(Alignment::Center)
|
.align_y(Alignment::Center)
|
||||||
.spacing(8);
|
.spacing(8);
|
||||||
|
|
@ -909,14 +909,7 @@ fn shortcut_item(custom: bool, id: usize, data: &ShortcutModel) -> Element<'_, S
|
||||||
.flex_control(control)
|
.flex_control(control)
|
||||||
.align_items(Alignment::Center)
|
.align_items(Alignment::Center)
|
||||||
.spacing(16)
|
.spacing(16)
|
||||||
.apply(widget::container)
|
.width(Length::Shrink)
|
||||||
.class(theme::Container::List)
|
.apply(list::button)
|
||||||
.apply(widget::button::custom)
|
.on_press(ShortcutMessage::ShowShortcut(id, data.description.clone()))
|
||||||
.class(theme::Button::Transparent)
|
|
||||||
.on_press(LocalMessage::Show)
|
|
||||||
.apply(Element::from)
|
|
||||||
.map(move |message| match message {
|
|
||||||
LocalMessage::Show => ShortcutMessage::ShowShortcut(id, data.description.clone()),
|
|
||||||
LocalMessage::Remove => ShortcutMessage::DeleteShortcut(id),
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -590,7 +590,8 @@ impl page::Page<crate::pages::Message> for Page {
|
||||||
&self,
|
&self,
|
||||||
core: &cosmic::Core,
|
core: &cosmic::Core,
|
||||||
) -> cosmic::iced::Subscription<crate::pages::Message> {
|
) -> cosmic::iced::Subscription<crate::pages::Message> {
|
||||||
use cosmic::iced::{self, event::listen_with};
|
use cosmic::iced::event::listen_with;
|
||||||
|
use cosmic::iced::{self};
|
||||||
|
|
||||||
cosmic::iced::Subscription::batch(vec![
|
cosmic::iced::Subscription::batch(vec![
|
||||||
if self.add_shortcut.active
|
if self.add_shortcut.active
|
||||||
|
|
@ -605,7 +606,8 @@ impl page::Page<crate::pages::Message> for Page {
|
||||||
modifiers,
|
modifiers,
|
||||||
..
|
..
|
||||||
}) => {
|
}) => {
|
||||||
use cosmic::iced::keyboard::{Key, key::Named};
|
use cosmic::iced::keyboard::Key;
|
||||||
|
use cosmic::iced::keyboard::key::Named;
|
||||||
if matches!(
|
if matches!(
|
||||||
key,
|
key,
|
||||||
Key::Named(Named::Super | Named::Alt | Named::Control | Named::Shift)
|
Key::Named(Named::Super | Named::Alt | Named::Control | Named::Shift)
|
||||||
|
|
@ -624,7 +626,8 @@ impl page::Page<crate::pages::Message> for Page {
|
||||||
location,
|
location,
|
||||||
..
|
..
|
||||||
}) => {
|
}) => {
|
||||||
use cosmic::iced::keyboard::{Key, key::Named};
|
use cosmic::iced::keyboard::Key;
|
||||||
|
use cosmic::iced::keyboard::key::Named;
|
||||||
if matches!(
|
if matches!(
|
||||||
key,
|
key,
|
||||||
Key::Named(Named::Super | Named::Alt | Named::Control | Named::Shift)
|
Key::Named(Named::Super | Named::Alt | Named::Control | Named::Shift)
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,9 @@
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use super::{ShortcutMessage, ShortcutModel};
|
use super::{ShortcutMessage, ShortcutModel};
|
||||||
|
use cosmic::app::ContextDrawer;
|
||||||
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
||||||
use cosmic::{Element, Task, app::ContextDrawer};
|
use cosmic::{Element, Task};
|
||||||
use cosmic_settings_config::shortcuts::Action;
|
use cosmic_settings_config::shortcuts::Action;
|
||||||
use cosmic_settings_config::shortcuts::action::ResizeDirection;
|
use cosmic_settings_config::shortcuts::action::ResizeDirection;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
|
|
|
||||||
|
|
@ -15,16 +15,16 @@ pub mod tiling;
|
||||||
|
|
||||||
use cosmic::app::ContextDrawer;
|
use cosmic::app::ContextDrawer;
|
||||||
use cosmic::iced::Length;
|
use cosmic::iced::Length;
|
||||||
use cosmic::widget::{self, icon, settings, text};
|
use cosmic::widget::list::ListButton;
|
||||||
use cosmic::{Apply, Element, Task, theme};
|
use cosmic::widget::{self, settings, text};
|
||||||
|
use cosmic::{Apply, Element, Task};
|
||||||
use cosmic_config::ConfigGet;
|
use cosmic_config::ConfigGet;
|
||||||
use cosmic_settings_config::Binding;
|
use cosmic_settings_config::Binding;
|
||||||
use cosmic_settings_config::shortcuts::action::{
|
use cosmic_settings_config::shortcuts::action::{
|
||||||
Direction, FocusDirection, Orientation, ResizeDirection,
|
Direction, FocusDirection, Orientation, ResizeDirection,
|
||||||
};
|
};
|
||||||
use cosmic_settings_config::shortcuts::{self, Action, Shortcuts};
|
use cosmic_settings_config::shortcuts::{self, Action, Shortcuts};
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use itertools::Itertools;
|
use itertools::Itertools;
|
||||||
use shortcuts::action::System as SystemAction;
|
use shortcuts::action::System as SystemAction;
|
||||||
use slab::Slab;
|
use slab::Slab;
|
||||||
|
|
@ -222,11 +222,13 @@ impl Page {
|
||||||
self.search.localized = SecondaryMap::new();
|
self.search.localized = SecondaryMap::new();
|
||||||
self.search.input = String::new();
|
self.search.input = String::new();
|
||||||
self.search_model.on_clear();
|
self.search_model.on_clear();
|
||||||
self.modified.custom = 0;
|
self.modified.accessibility = 0;
|
||||||
self.modified.manage_windows = 0;
|
self.modified.manage_windows = 0;
|
||||||
self.modified.move_windows = 0;
|
self.modified.move_windows = 0;
|
||||||
self.modified.nav = 0;
|
self.modified.nav = 0;
|
||||||
self.modified.system = 0;
|
self.modified.system = 0;
|
||||||
|
self.modified.window_tiling = 0;
|
||||||
|
self.modified.custom = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
fn reload_search(&mut self) {
|
fn reload_search(&mut self) {
|
||||||
|
|
@ -497,32 +499,18 @@ fn shortcuts() -> Section<crate::pages::Message> {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Display a category as a list item
|
/// Display a category as a list item
|
||||||
fn category_item(category: Category, name: &str, modified: u16) -> Element<'_, Message> {
|
fn category_item(category: Category, name: &str, modified: u16) -> ListButton<'_, Message> {
|
||||||
let icon = icon::from_name("go-next-symbolic").size(16);
|
crate::widget::go_next_with_item(
|
||||||
|
name,
|
||||||
let control = if modified == 0 {
|
(modified > 0).then(|| text::body(fl!("modified", count = modified)).apply(Element::from)),
|
||||||
Element::from(icon)
|
Message::Category(category),
|
||||||
} else {
|
)
|
||||||
widget::row::with_capacity(2)
|
|
||||||
.push(text::body(fl!("modified", count = modified)))
|
|
||||||
.push(icon)
|
|
||||||
.into()
|
|
||||||
};
|
|
||||||
|
|
||||||
settings::item::builder(name)
|
|
||||||
.control(control)
|
|
||||||
.spacing(16)
|
|
||||||
.apply(widget::container)
|
|
||||||
.class(theme::Container::List)
|
|
||||||
.apply(widget::button::custom)
|
|
||||||
.class(theme::Button::Transparent)
|
|
||||||
.width(Length::Fill)
|
|
||||||
.on_press(Message::Category(category))
|
|
||||||
.into()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn action_category(action: &Action) -> Option<Category> {
|
fn action_category(action: &Action) -> Option<Category> {
|
||||||
Some(if manage_windows::actions().contains(action) {
|
Some(if accessibility::actions().contains(action) {
|
||||||
|
Category::Accessibility
|
||||||
|
} else if manage_windows::actions().contains(action) {
|
||||||
Category::ManageWindow
|
Category::ManageWindow
|
||||||
} else if move_window::actions().contains(action) {
|
} else if move_window::actions().contains(action) {
|
||||||
Category::MoveWindow
|
Category::MoveWindow
|
||||||
|
|
@ -530,6 +518,8 @@ fn action_category(action: &Action) -> Option<Category> {
|
||||||
Category::Nav
|
Category::Nav
|
||||||
} else if system::actions().contains(action) {
|
} else if system::actions().contains(action) {
|
||||||
Category::System
|
Category::System
|
||||||
|
} else if tiling::actions().contains(action) {
|
||||||
|
Category::WindowTiling
|
||||||
} else {
|
} else {
|
||||||
return None;
|
return None;
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,9 @@
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
//
|
//
|
||||||
use super::{ShortcutMessage, ShortcutModel};
|
use super::{ShortcutMessage, ShortcutModel};
|
||||||
|
use cosmic::app::ContextDrawer;
|
||||||
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
||||||
use cosmic::{Element, Task, app::ContextDrawer};
|
use cosmic::{Element, Task};
|
||||||
use cosmic_settings_config::shortcuts::Action;
|
use cosmic_settings_config::shortcuts::Action;
|
||||||
use cosmic_settings_config::shortcuts::action::Direction;
|
use cosmic_settings_config::shortcuts::action::Direction;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,9 @@
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use super::{ShortcutMessage, ShortcutModel};
|
use super::{ShortcutMessage, ShortcutModel};
|
||||||
|
use cosmic::app::ContextDrawer;
|
||||||
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
||||||
use cosmic::{Element, Task, app::ContextDrawer};
|
use cosmic::{Element, Task};
|
||||||
use cosmic_settings_config::shortcuts::Action;
|
use cosmic_settings_config::shortcuts::Action;
|
||||||
use cosmic_settings_config::shortcuts::action::System as SystemAction;
|
use cosmic_settings_config::shortcuts::action::System as SystemAction;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,9 @@
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use super::{ShortcutMessage, ShortcutModel};
|
use super::{ShortcutMessage, ShortcutModel};
|
||||||
|
use cosmic::app::ContextDrawer;
|
||||||
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
use cosmic::iced::platform_specific::shell::wayland::commands::keyboard_shortcuts_inhibit;
|
||||||
use cosmic::{Element, Task, app::ContextDrawer};
|
use cosmic::{Element, Task};
|
||||||
use cosmic_settings_config::shortcuts::Action;
|
use cosmic_settings_config::shortcuts::Action;
|
||||||
use cosmic_settings_config::shortcuts::action::Orientation;
|
use cosmic_settings_config::shortcuts::action::Orientation;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
|
|
|
||||||
|
|
@ -2,10 +2,8 @@
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use crate::app;
|
use crate::app;
|
||||||
use cosmic::{
|
use cosmic::Task;
|
||||||
Task,
|
use cosmic::cosmic_config::{self, ConfigGet, ConfigSet};
|
||||||
cosmic_config::{self, ConfigGet, ConfigSet},
|
|
||||||
};
|
|
||||||
use cosmic_comp_config::input::{
|
use cosmic_comp_config::input::{
|
||||||
AccelConfig, AccelProfile, ClickMethod, InputConfig, ScrollConfig, ScrollMethod, TapButtonMap,
|
AccelConfig, AccelProfile, ClickMethod, InputConfig, ScrollConfig, ScrollMethod, TapButtonMap,
|
||||||
TapConfig,
|
TapConfig,
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,7 @@ use cosmic::iced::{Alignment, Length};
|
||||||
use cosmic::widget::{self, row, settings, text};
|
use cosmic::widget::{self, row, settings, text};
|
||||||
use cosmic::{Apply, Element};
|
use cosmic::{Apply, Element};
|
||||||
use cosmic_comp_config::input::AccelProfile;
|
use cosmic_comp_config::input::AccelProfile;
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
|
|
||||||
use super::Message;
|
use super::Message;
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,7 @@ use cosmic::{Apply, Element};
|
||||||
use cosmic_comp_config::CosmicCompConfig;
|
use cosmic_comp_config::CosmicCompConfig;
|
||||||
use cosmic_comp_config::input::{AccelProfile, ClickMethod, ScrollMethod};
|
use cosmic_comp_config::input::{AccelProfile, ClickMethod, ScrollMethod};
|
||||||
use cosmic_comp_config::workspace::{WorkspaceConfig, WorkspaceLayout};
|
use cosmic_comp_config::workspace::{WorkspaceConfig, WorkspaceLayout};
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
use tracing::error;
|
use tracing::error;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,14 +5,14 @@ pub mod vpn;
|
||||||
pub mod wifi;
|
pub mod wifi;
|
||||||
pub mod wired;
|
pub mod wired;
|
||||||
|
|
||||||
use std::{ffi::OsStr, process::Stdio, sync::Arc};
|
use std::ffi::OsStr;
|
||||||
|
use std::process::Stdio;
|
||||||
|
use std::sync::Arc;
|
||||||
|
|
||||||
use anyhow::Context;
|
use anyhow::Context;
|
||||||
use cosmic::{Apply, Element, Task, widget};
|
use cosmic::{Apply, Element, Task, widget};
|
||||||
use cosmic_dbus_networkmanager::{
|
use cosmic_dbus_networkmanager::interface::enums::{DeviceState, DeviceType};
|
||||||
interface::enums::{DeviceState, DeviceType},
|
use cosmic_dbus_networkmanager::nm::NetworkManager;
|
||||||
nm::NetworkManager,
|
|
||||||
};
|
|
||||||
use cosmic_settings_network_manager_subscription as network_manager;
|
use cosmic_settings_network_manager_subscription as network_manager;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use futures::{SinkExt, StreamExt};
|
use futures::{SinkExt, StreamExt};
|
||||||
|
|
|
||||||
|
|
@ -8,16 +8,16 @@ use std::sync::{Arc, LazyLock};
|
||||||
|
|
||||||
use anyhow::Context;
|
use anyhow::Context;
|
||||||
use cosmic::dialog::file_chooser::FileFilter;
|
use cosmic::dialog::file_chooser::FileFilter;
|
||||||
use cosmic::task;
|
use cosmic::iced::core::text::Wrapping;
|
||||||
use cosmic::{
|
use cosmic::iced::{Alignment, Length};
|
||||||
Apply, Element, Task,
|
use cosmic::widget::space::horizontal as horizontal_space;
|
||||||
iced::core::text::Wrapping,
|
use cosmic::widget::text_input::focus;
|
||||||
iced::{Alignment, Length},
|
use cosmic::widget::{self, icon};
|
||||||
widget::{self, icon, space::horizontal as horizontal_space, text_input::focus},
|
use cosmic::{Apply, Element, Task, task};
|
||||||
};
|
use cosmic_settings_network_manager_subscription::current_networks::ActiveConnectionInfo;
|
||||||
use cosmic_settings_network_manager_subscription::nm_secret_agent::{self, PasswordFlag};
|
use cosmic_settings_network_manager_subscription::nm_secret_agent::{self, PasswordFlag};
|
||||||
use cosmic_settings_network_manager_subscription::{
|
use cosmic_settings_network_manager_subscription::{
|
||||||
self as network_manager, NetworkManagerState, UUID, current_networks::ActiveConnectionInfo,
|
self as network_manager, NetworkManagerState, UUID,
|
||||||
};
|
};
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use futures::{FutureExt, SinkExt, StreamExt};
|
use futures::{FutureExt, SinkExt, StreamExt};
|
||||||
|
|
@ -428,7 +428,19 @@ impl Page {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Message::KnownConnections(connections) => {
|
Message::KnownConnections(connections) => {
|
||||||
self.known_connections = connections;
|
let mut connections: Vec<_> = connections.into_iter().collect();
|
||||||
|
connections.sort_by(|a, b| {
|
||||||
|
let name_a = match &a.1 {
|
||||||
|
ConnectionSettings::Vpn(s) => s.id.as_str(),
|
||||||
|
ConnectionSettings::Wireguard { id } => id.as_str(),
|
||||||
|
};
|
||||||
|
let name_b = match &b.1 {
|
||||||
|
ConnectionSettings::Vpn(s) => s.id.as_str(),
|
||||||
|
ConnectionSettings::Wireguard { id } => id.as_str(),
|
||||||
|
};
|
||||||
|
name_a.to_lowercase().cmp(&name_b.to_lowercase())
|
||||||
|
});
|
||||||
|
self.known_connections = connections.into_iter().collect();
|
||||||
}
|
}
|
||||||
Message::UpdateDevices(devices) => {
|
Message::UpdateDevices(devices) => {
|
||||||
self.update_devices(devices);
|
self.update_devices(devices);
|
||||||
|
|
@ -1005,7 +1017,20 @@ fn devices_view() -> Section<crate::pages::Message> {
|
||||||
widget::text::body(fl!("no-vpn")).into(),
|
widget::text::body(fl!("no-vpn")).into(),
|
||||||
])));
|
])));
|
||||||
} else {
|
} else {
|
||||||
let known_networks = page.known_connections.iter().fold(
|
let mut known_connections: Vec<_> = page.known_connections.iter().collect();
|
||||||
|
known_connections.sort_by(|a, b| {
|
||||||
|
let name_a = match a.1 {
|
||||||
|
ConnectionSettings::Vpn(s) => s.id.as_str(),
|
||||||
|
ConnectionSettings::Wireguard { id } => id.as_str(),
|
||||||
|
};
|
||||||
|
let name_b = match b.1 {
|
||||||
|
ConnectionSettings::Vpn(s) => s.id.as_str(),
|
||||||
|
ConnectionSettings::Wireguard { id } => id.as_str(),
|
||||||
|
};
|
||||||
|
name_a.to_lowercase().cmp(&name_b.to_lowercase())
|
||||||
|
});
|
||||||
|
|
||||||
|
let known_networks = known_connections.into_iter().fold(
|
||||||
vpn_connections,
|
vpn_connections,
|
||||||
|networks, (uuid, connection)| {
|
|networks, (uuid, connection)| {
|
||||||
let id = match connection {
|
let id = match connection {
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,22 @@
|
||||||
// Copyright 2024 System76 <info@system76.com>
|
// Copyright 2024 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use std::{
|
use std::collections::{BTreeMap, BTreeSet};
|
||||||
collections::{BTreeMap, BTreeSet},
|
use std::sync::{Arc, LazyLock};
|
||||||
sync::{Arc, LazyLock},
|
|
||||||
};
|
|
||||||
|
|
||||||
use anyhow::Context;
|
use anyhow::Context;
|
||||||
use cosmic::{
|
use cosmic::app::ContextDrawer;
|
||||||
Apply, Element, Task,
|
use cosmic::iced::core::text::Wrapping;
|
||||||
app::ContextDrawer,
|
use cosmic::iced::widget::operation::focus_next;
|
||||||
iced::core::text::Wrapping,
|
use cosmic::iced::{Alignment, Length};
|
||||||
iced::{Alignment, Length, widget::operation::focus_next},
|
use cosmic::widget::space::horizontal;
|
||||||
task,
|
use cosmic::widget::text_input::focus;
|
||||||
widget::{self, column, icon, space::horizontal, text_input::focus},
|
use cosmic::widget::{self, column, icon};
|
||||||
};
|
use cosmic::{Apply, Element, Task, task};
|
||||||
|
use cosmic_settings_network_manager_subscription::available_wifi::{AccessPoint, NetworkType};
|
||||||
|
use cosmic_settings_network_manager_subscription::current_networks::ActiveConnectionInfo;
|
||||||
use cosmic_settings_network_manager_subscription::{
|
use cosmic_settings_network_manager_subscription::{
|
||||||
self as network_manager, NetworkManagerState,
|
self as network_manager, NetworkManagerState, nm_secret_agent,
|
||||||
available_wifi::{AccessPoint, NetworkType},
|
|
||||||
current_networks::ActiveConnectionInfo,
|
|
||||||
nm_secret_agent,
|
|
||||||
};
|
};
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use futures::{SinkExt, StreamExt};
|
use futures::{SinkExt, StreamExt};
|
||||||
|
|
@ -1176,10 +1173,9 @@ fn devices_view() -> Section<crate::pages::Message> {
|
||||||
|
|
||||||
// Search input (only shown when 15+ networks)
|
// Search input (only shown when 15+ networks)
|
||||||
if show_search {
|
if show_search {
|
||||||
let search_input =
|
let search_input = widget::search_input("", &page.search_query)
|
||||||
widget::search_input(fl!("type-to-search"), &page.search_query)
|
.on_input(Message::SearchQuery)
|
||||||
.on_input(Message::SearchQuery)
|
.on_clear(Message::SearchQuery(String::new()));
|
||||||
.on_clear(Message::SearchQuery(String::new()));
|
|
||||||
visible_section = visible_section.push(search_input);
|
visible_section = visible_section.push(search_input);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,18 @@
|
||||||
// Copyright 2024 System76 <info@system76.com>
|
// Copyright 2024 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use std::{collections::BTreeSet, sync::Arc};
|
use std::collections::BTreeSet;
|
||||||
|
use std::sync::Arc;
|
||||||
|
|
||||||
use anyhow::Context;
|
use anyhow::Context;
|
||||||
use cosmic::{
|
use cosmic::iced::core::text::Wrapping;
|
||||||
Apply, Element, Task,
|
use cosmic::iced::{Alignment, Length};
|
||||||
iced::core::text::Wrapping,
|
use cosmic::widget::space::horizontal as horizontal_space;
|
||||||
iced::{Alignment, Length},
|
use cosmic::widget::{self, icon};
|
||||||
widget::{self, icon, space::horizontal as horizontal_space},
|
use cosmic::{Apply, Element, Task};
|
||||||
};
|
|
||||||
use cosmic_dbus_networkmanager::interface::enums::DeviceState;
|
use cosmic_dbus_networkmanager::interface::enums::DeviceState;
|
||||||
use cosmic_settings_network_manager_subscription::{
|
use cosmic_settings_network_manager_subscription::current_networks::ActiveConnectionInfo;
|
||||||
self as network_manager, NetworkManagerState, current_networks::ActiveConnectionInfo,
|
use cosmic_settings_network_manager_subscription::{self as network_manager, NetworkManagerState};
|
||||||
};
|
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use futures::{SinkExt, StreamExt};
|
use futures::{SinkExt, StreamExt};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,9 @@
|
||||||
use futures::{FutureExt, Stream, StreamExt, future::join_all};
|
use futures::future::join_all;
|
||||||
|
use futures::{FutureExt, Stream, StreamExt};
|
||||||
use jiff::{Span, SpanRelativeTo, SpanRound, ToSpan, Unit};
|
use jiff::{Span, SpanRelativeTo, SpanRound, ToSpan, Unit};
|
||||||
use upower_dbus::{BatteryState, BatteryType, DeviceProxy};
|
use upower_dbus::{BatteryState, BatteryType, DeviceProxy};
|
||||||
use zbus::{Connection, zvariant::ObjectPath};
|
use zbus::Connection;
|
||||||
|
use zbus::zvariant::ObjectPath;
|
||||||
|
|
||||||
mod ppdaemon;
|
mod ppdaemon;
|
||||||
mod s76powerdaemon;
|
mod s76powerdaemon;
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,11 @@ mod backend;
|
||||||
use self::backend::{GetCurrentPowerProfile, SetPowerProfile};
|
use self::backend::{GetCurrentPowerProfile, SetPowerProfile};
|
||||||
use backend::{Battery, ConnectedDevice, PowerProfile};
|
use backend::{Battery, ConnectedDevice, PowerProfile};
|
||||||
|
|
||||||
use cosmic::Task;
|
|
||||||
use cosmic::iced::core::text::{Ellipsize, EllipsizeHeightLimit};
|
use cosmic::iced::core::text::{Ellipsize, EllipsizeHeightLimit};
|
||||||
use cosmic::iced::widget::{column, row};
|
use cosmic::iced::widget::{column, row};
|
||||||
use cosmic::iced::{self, Alignment, Length, stream};
|
use cosmic::iced::{self, Alignment, Length, stream};
|
||||||
use cosmic::widget::{self, settings, space, text};
|
use cosmic::widget::{self, settings, space, text};
|
||||||
use cosmic::{Apply, surface};
|
use cosmic::{Apply, Task, surface};
|
||||||
use cosmic_config::{Config, CosmicConfigEntry};
|
use cosmic_config::{Config, CosmicConfigEntry};
|
||||||
use cosmic_idle_config::CosmicIdleConfig;
|
use cosmic_idle_config::CosmicIdleConfig;
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,10 @@
|
||||||
|
|
||||||
pub mod device_profiles;
|
pub mod device_profiles;
|
||||||
|
|
||||||
use cosmic::{
|
use cosmic::iced::{Alignment, Length, window};
|
||||||
Apply, Element, Task,
|
use cosmic::widget::space::horizontal as horizontal_space;
|
||||||
iced::{Alignment, Length, window},
|
use cosmic::widget::{self, settings};
|
||||||
surface,
|
use cosmic::{Apply, Element, Task, surface};
|
||||||
widget::{self, settings, space::horizontal as horizontal_space},
|
|
||||||
};
|
|
||||||
use cosmic_config::{Config, ConfigGet, ConfigSet};
|
use cosmic_config::{Config, ConfigGet, ConfigSet};
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_sound_subscription as subscription;
|
use cosmic_settings_sound_subscription as subscription;
|
||||||
|
|
@ -453,24 +451,13 @@ fn device_profiles() -> Section<crate::pages::Message> {
|
||||||
.descriptions(descriptions)
|
.descriptions(descriptions)
|
||||||
.view::<Page>(move |_binder, page, section| {
|
.view::<Page>(move |_binder, page, section| {
|
||||||
let descriptions = §ion.descriptions;
|
let descriptions = §ion.descriptions;
|
||||||
let button = widget::row::with_children(vec![
|
|
||||||
horizontal_space().into(),
|
|
||||||
widget::icon::from_name("go-next-symbolic").size(16).into(),
|
|
||||||
]);
|
|
||||||
|
|
||||||
let device_profiles = settings::item::builder(&*descriptions[button_txt])
|
settings::section()
|
||||||
.control(button)
|
.add(crate::widget::go_next_item(
|
||||||
.spacing(16)
|
&descriptions[button_txt],
|
||||||
.apply(widget::container)
|
crate::pages::Message::Page(page.device_profiles),
|
||||||
.width(Length::Fill)
|
))
|
||||||
.class(cosmic::theme::Container::List)
|
.into()
|
||||||
.apply(widget::button::custom)
|
|
||||||
.width(Length::Fill)
|
|
||||||
.class(cosmic::theme::Button::Transparent)
|
|
||||||
.on_press(crate::pages::Message::Page(page.device_profiles))
|
|
||||||
.width(Length::Fill);
|
|
||||||
|
|
||||||
settings::section().add(device_profiles).into()
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,8 @@ impl page::Page<crate::pages::Message> for Page {
|
||||||
|
|
||||||
fn on_enter(&mut self) -> Task<crate::pages::Message> {
|
fn on_enter(&mut self) -> Task<crate::pages::Message> {
|
||||||
let (task, handle) = Task::future(async move {
|
let (task, handle) = Task::future(async move {
|
||||||
crate::pages::Message::About(Message::Info(Box::new(Info::load())))
|
let info = Info::load().await;
|
||||||
|
crate::pages::Message::About(Message::Info(Box::new(info)))
|
||||||
})
|
})
|
||||||
.abortable();
|
.abortable();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,9 @@
|
||||||
|
|
||||||
#[cfg(feature = "wgpu")]
|
#[cfg(feature = "wgpu")]
|
||||||
use cosmic::iced::wgpu;
|
use cosmic::iced::wgpu;
|
||||||
use std::{collections::HashMap, collections::HashSet, ffi::OsStr, process::Command};
|
use std::collections::{HashMap, HashSet};
|
||||||
|
use std::ffi::OsStr;
|
||||||
|
use std::process::Command;
|
||||||
|
|
||||||
#[must_use]
|
#[must_use]
|
||||||
#[derive(Clone, Debug, Default)]
|
#[derive(Clone, Debug, Default)]
|
||||||
|
|
@ -29,7 +31,7 @@ impl Info {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "wgpu")]
|
#[cfg(feature = "wgpu")]
|
||||||
fn wgpu_graphics() -> Vec<String> {
|
async fn wgpu_graphics() -> Vec<String> {
|
||||||
let mut graphics = Vec::new();
|
let mut graphics = Vec::new();
|
||||||
|
|
||||||
// Use wgpu to enumerate GPUs. Works cross-platform and doesn't require external tools
|
// Use wgpu to enumerate GPUs. Works cross-platform and doesn't require external tools
|
||||||
|
|
@ -140,7 +142,7 @@ impl Info {
|
||||||
graphics
|
graphics
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn load() -> Info {
|
pub async fn load() -> Info {
|
||||||
let mut info = Info {
|
let mut info = Info {
|
||||||
os_architecture: architecture(),
|
os_architecture: architecture(),
|
||||||
kernel_version: kernel_version(),
|
kernel_version: kernel_version(),
|
||||||
|
|
@ -192,7 +194,7 @@ impl Info {
|
||||||
|
|
||||||
#[cfg(feature = "wgpu")]
|
#[cfg(feature = "wgpu")]
|
||||||
{
|
{
|
||||||
info.graphics = Self::wgpu_graphics();
|
info.graphics = Self::wgpu_graphics().await;
|
||||||
}
|
}
|
||||||
|
|
||||||
info
|
info
|
||||||
|
|
|
||||||
|
|
@ -4,25 +4,22 @@
|
||||||
mod getent;
|
mod getent;
|
||||||
|
|
||||||
use crate::pages;
|
use crate::pages;
|
||||||
use cosmic::{
|
use cosmic::dialog::file_chooser;
|
||||||
Apply, Element,
|
use cosmic::iced::{Alignment, Length};
|
||||||
dialog::file_chooser,
|
use cosmic::widget::space::horizontal;
|
||||||
iced::{Alignment, Length},
|
use cosmic::widget::{self, column, icon, list, row, settings, text};
|
||||||
widget::{self, column, icon, list, row, settings, space::horizontal, text},
|
use cosmic::{Apply, Element};
|
||||||
};
|
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use image::GenericImageView;
|
use image::GenericImageView;
|
||||||
use pwhash::{bcrypt, md5_crypt, sha256_crypt, sha512_crypt};
|
use pwhash::{bcrypt, md5_crypt, sha256_crypt, sha512_crypt};
|
||||||
use regex::Regex;
|
use regex::Regex;
|
||||||
use slotmap::SlotMap;
|
use slotmap::SlotMap;
|
||||||
use std::{
|
use std::collections::HashMap;
|
||||||
collections::HashMap,
|
use std::fs::File;
|
||||||
fs::File,
|
use std::future::Future;
|
||||||
future::Future,
|
use std::io::{BufRead, BufReader};
|
||||||
io::{BufRead, BufReader},
|
use std::path::{Path, PathBuf};
|
||||||
path::{Path, PathBuf},
|
use std::sync::Arc;
|
||||||
sync::Arc,
|
|
||||||
};
|
|
||||||
use url::Url;
|
use url::Url;
|
||||||
use zbus_polkit::policykit1::CheckAuthorizationFlags;
|
use zbus_polkit::policykit1::CheckAuthorizationFlags;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,24 +2,19 @@
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use crate::widget::selection_context_item;
|
use crate::widget::selection_context_item;
|
||||||
use cosmic::{
|
use cosmic::app::ContextDrawer;
|
||||||
Apply, Element, Task,
|
use cosmic::cosmic_config::{self, ConfigGet, ConfigSet};
|
||||||
app::ContextDrawer,
|
use cosmic::iced::core::text::Wrapping;
|
||||||
cosmic_config::{self, ConfigGet, ConfigSet},
|
use cosmic::widget::{self, dropdown, settings};
|
||||||
iced::core::text::Wrapping,
|
use cosmic::{Apply, Element, Task, surface};
|
||||||
surface,
|
|
||||||
widget::{self, dropdown, list, settings},
|
|
||||||
};
|
|
||||||
use cosmic_settings_page::{self as page, Section, section};
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use icu::{
|
use icu::calendar::types::Weekday;
|
||||||
calendar::{Gregorian, types::Weekday, week},
|
use icu::calendar::{Gregorian, week};
|
||||||
datetime::{
|
use icu::datetime::input::{Date, DateTime, Time};
|
||||||
DateTimeFormatter, DateTimeFormatterPreferences, fieldsets,
|
use icu::datetime::options::TimePrecision;
|
||||||
input::{Date, DateTime, Time},
|
use icu::datetime::{DateTimeFormatter, DateTimeFormatterPreferences, fieldsets};
|
||||||
options::TimePrecision,
|
use icu::locale::Locale;
|
||||||
},
|
use icu::locale::preferences::extensions::unicode::keywords::HourCycle;
|
||||||
locale::{Locale, preferences::extensions::unicode::keywords::HourCycle},
|
|
||||||
};
|
|
||||||
use slotmap::{Key, SlotMap};
|
use slotmap::{Key, SlotMap};
|
||||||
pub use timedate_zbus::TimeDateProxy;
|
pub use timedate_zbus::TimeDateProxy;
|
||||||
use tracing::error;
|
use tracing::error;
|
||||||
|
|
|
||||||
|
|
@ -7,22 +7,20 @@ use std::sync::Arc;
|
||||||
use crate::widget::selection_context_item;
|
use crate::widget::selection_context_item;
|
||||||
use cosmic::app::{ContextDrawer, context_drawer};
|
use cosmic::app::{ContextDrawer, context_drawer};
|
||||||
use cosmic::iced::{Alignment, Length};
|
use cosmic::iced::{Alignment, Length};
|
||||||
use cosmic::widget::{self, button, list};
|
use cosmic::widget::{self, button};
|
||||||
use cosmic::{Apply, Element};
|
use cosmic::{Apply, Element};
|
||||||
use cosmic_config::{ConfigGet, ConfigSet};
|
use cosmic_config::{ConfigGet, ConfigSet};
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::{self as page, Section, section};
|
||||||
use cosmic_settings_page::{self as page, section};
|
|
||||||
use eyre::Context;
|
use eyre::Context;
|
||||||
use icu::{
|
use icu::calendar::types::Weekday;
|
||||||
calendar::{types::Weekday, week},
|
use icu::calendar::week;
|
||||||
datetime::{
|
use icu::datetime::input::{Date, DateTime, Time};
|
||||||
DateTimeFormatter, DateTimeFormatterPreferences, fieldsets,
|
use icu::datetime::{DateTimeFormatter, DateTimeFormatterPreferences, fieldsets};
|
||||||
input::{Date, DateTime, Time},
|
use icu::decimal::DecimalFormatter;
|
||||||
},
|
use icu::decimal::input::Decimal;
|
||||||
decimal::{DecimalFormatter, input::Decimal},
|
use icu::locale::Locale;
|
||||||
locale::Locale,
|
|
||||||
};
|
|
||||||
use locales_rs as locale;
|
use locales_rs as locale;
|
||||||
|
use regex::Regex;
|
||||||
use slotmap::{DefaultKey, SlotMap};
|
use slotmap::{DefaultKey, SlotMap};
|
||||||
|
|
||||||
static GNOME_LANGUAGE_SELECTOR: &str = "gnome-language-selector";
|
static GNOME_LANGUAGE_SELECTOR: &str = "gnome-language-selector";
|
||||||
|
|
@ -242,9 +240,7 @@ impl Page {
|
||||||
let region = region.lang_code.clone();
|
let region = region.lang_code.clone();
|
||||||
|
|
||||||
return cosmic::task::future(async move {
|
return cosmic::task::future(async move {
|
||||||
if let Ok(exit_status) = set_locale(lang, region.clone()).await
|
if set_locale(lang, region.clone()).await.is_ok() {
|
||||||
&& exit_status.success()
|
|
||||||
{
|
|
||||||
update_time_settings_after_region_change(region);
|
update_time_settings_after_region_change(region);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -498,11 +494,8 @@ mod preferred_languages {
|
||||||
use crate::pages::time::region::localized_iso_codes;
|
use crate::pages::time::region::localized_iso_codes;
|
||||||
|
|
||||||
use super::Message;
|
use super::Message;
|
||||||
use cosmic::{
|
use cosmic::iced::{Alignment, Length};
|
||||||
Apply,
|
use cosmic::{Apply, widget};
|
||||||
iced::{Alignment, Length},
|
|
||||||
widget,
|
|
||||||
};
|
|
||||||
use cosmic_settings_page::Section;
|
use cosmic_settings_page::Section;
|
||||||
|
|
||||||
pub fn section() -> Section<crate::pages::Message> {
|
pub fn section() -> Section<crate::pages::Message> {
|
||||||
|
|
@ -710,20 +703,26 @@ pub async fn page_reload() -> eyre::Result<PageRefresh> {
|
||||||
|
|
||||||
let mut available_languages_set = BTreeSet::new();
|
let mut available_languages_set = BTreeSet::new();
|
||||||
|
|
||||||
let output = tokio::process::Command::new("localectl")
|
// Use 'locale -a' instead of 'localectl list-locales' for OpenRC compatibility
|
||||||
.arg("list-locales")
|
let output_result = tokio::process::Command::new("locale")
|
||||||
|
.arg("-a")
|
||||||
.output()
|
.output()
|
||||||
.await
|
.await;
|
||||||
.expect("Failed to run localectl");
|
|
||||||
|
|
||||||
let output = String::from_utf8(output.stdout).unwrap_or_default();
|
let locale_list = match output_result {
|
||||||
for line in output.lines() {
|
Ok(output) => {
|
||||||
if line == "C.UTF-8" {
|
let output_str = String::from_utf8(output.stdout).unwrap_or_default();
|
||||||
continue;
|
parse_locale_output(&output_str)
|
||||||
}
|
}
|
||||||
|
Err(why) => {
|
||||||
|
tracing::error!(?why, "failed to list available locales using 'locale -a'");
|
||||||
|
Vec::new()
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
if let Some(locale) = registry.locale(line) {
|
for line in locale_list {
|
||||||
available_languages_set.insert(localized_locale(&locale, line.to_owned()));
|
if let Some(locale) = registry.locale(&line) {
|
||||||
|
available_languages_set.insert(localized_locale(&locale, line));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -841,27 +840,28 @@ fn popover_menu_row(
|
||||||
.apply(Element::from)
|
.apply(Element::from)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn set_locale(
|
/// Sets the system locale using D-Bus instead of localectl for OpenRC compatibility.
|
||||||
lang: String,
|
pub async fn set_locale(lang: String, region: String) -> eyre::Result<()> {
|
||||||
region: String,
|
tracing::debug!("setting locale lang={lang}, region={region}");
|
||||||
) -> Result<std::process::ExitStatus, std::io::Error> {
|
|
||||||
eprintln!("setting locale lang={lang}, region={region}");
|
let conn = zbus::Connection::system()
|
||||||
tokio::process::Command::new("localectl")
|
|
||||||
.arg("set-locale")
|
|
||||||
.args(&[
|
|
||||||
["LANG=", &lang].concat(),
|
|
||||||
["LC_ADDRESS=", ®ion].concat(),
|
|
||||||
["LC_IDENTIFICATION=", ®ion].concat(),
|
|
||||||
["LC_MEASUREMENT=", ®ion].concat(),
|
|
||||||
["LC_MONETARY=", ®ion].concat(),
|
|
||||||
["LC_NAME=", ®ion].concat(),
|
|
||||||
["LC_NUMERIC=", ®ion].concat(),
|
|
||||||
["LC_PAPER=", ®ion].concat(),
|
|
||||||
["LC_TELEPHONE=", ®ion].concat(),
|
|
||||||
["LC_TIME=", ®ion].concat(),
|
|
||||||
])
|
|
||||||
.status()
|
|
||||||
.await
|
.await
|
||||||
|
.wrap_err("failed to connect to system D-Bus")?;
|
||||||
|
|
||||||
|
let proxy = locale1::locale1Proxy::new(&conn)
|
||||||
|
.await
|
||||||
|
.wrap_err("failed to create locale1 D-Bus proxy")?;
|
||||||
|
|
||||||
|
let locale_settings = build_locale_settings(&lang, ®ion);
|
||||||
|
let locale_strs: Vec<&str> = locale_settings.iter().map(|s| s.as_str()).collect();
|
||||||
|
|
||||||
|
proxy
|
||||||
|
.set_locale(&locale_strs, true)
|
||||||
|
.await
|
||||||
|
.wrap_err("failed to set locale via D-Bus")?;
|
||||||
|
|
||||||
|
tracing::debug!("successfully set locale via D-Bus");
|
||||||
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Sets the user's preferred language list via AccountsService D-Bus.
|
/// Sets the user's preferred language list via AccountsService D-Bus.
|
||||||
|
|
@ -883,7 +883,7 @@ pub async fn set_user_language(language_list: String) -> eyre::Result<()> {
|
||||||
.await
|
.await
|
||||||
.wrap_err("failed to set language via AccountsService")?;
|
.wrap_err("failed to set language via AccountsService")?;
|
||||||
|
|
||||||
eprintln!("set user language via AccountsService: {language_list}");
|
tracing::debug!("set user language via AccountsService: {language_list}");
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1016,3 +1016,206 @@ fn strip_locale_suffix(locale: &str) -> String {
|
||||||
.unwrap_or(without_codeset)
|
.unwrap_or(without_codeset)
|
||||||
.to_string()
|
.to_string()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Parses the output from `locale -a` command and returns a vector of locale strings.
|
||||||
|
/// Filters out pseudo-locales (C, POSIX) and accepts only allowed character encodings.
|
||||||
|
fn parse_locale_output(output: &str) -> Vec<String> {
|
||||||
|
// Regex to match pseudo-locales: C or POSIX, optionally followed by .anything
|
||||||
|
let pseudo_locale_re = Regex::new(r"^(C|POSIX)(\.|$)").unwrap();
|
||||||
|
|
||||||
|
// Regex to match UTF-8 encoded locales (case-insensitive)
|
||||||
|
// Supports optional modifiers after encoding (e.g., @euro, @valencia)
|
||||||
|
let utf8_encoding_re = Regex::new(r"(?i)\.(utf-?8)(@.*)?$").unwrap();
|
||||||
|
|
||||||
|
output
|
||||||
|
.lines()
|
||||||
|
.map(|line| line.trim())
|
||||||
|
.filter(|line| !pseudo_locale_re.is_match(line))
|
||||||
|
.filter(|line| utf8_encoding_re.is_match(line))
|
||||||
|
.map(|line| line.to_string())
|
||||||
|
.collect()
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Builds the locale settings array for D-Bus SetLocale call.
|
||||||
|
/// Sets LANG to the language parameter and all LC_* variables to the region parameter.
|
||||||
|
fn build_locale_settings(lang: &str, region: &str) -> Vec<String> {
|
||||||
|
vec![
|
||||||
|
format!("LANG={}", lang),
|
||||||
|
format!("LC_ADDRESS={}", region),
|
||||||
|
format!("LC_IDENTIFICATION={}", region),
|
||||||
|
format!("LC_MEASUREMENT={}", region),
|
||||||
|
format!("LC_MONETARY={}", region),
|
||||||
|
format!("LC_NAME={}", region),
|
||||||
|
format!("LC_NUMERIC={}", region),
|
||||||
|
format!("LC_PAPER={}", region),
|
||||||
|
format!("LC_TELEPHONE={}", region),
|
||||||
|
format!("LC_TIME={}", region),
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_handles_empty_input() {
|
||||||
|
let output = "";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
assert_eq!(result.len(), 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_preserves_locale_strings() {
|
||||||
|
let output = "en_US.utf8\nde_DE.utf8\nfr_FR.utf8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
assert_eq!(result.len(), 3);
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_build_locale_settings_includes_all_lc_variables() {
|
||||||
|
let lang = "en_US.UTF-8";
|
||||||
|
let region = "de_DE.UTF-8";
|
||||||
|
let settings = build_locale_settings(lang, region);
|
||||||
|
|
||||||
|
assert_eq!(settings.len(), 10);
|
||||||
|
assert!(settings.contains(&format!("LANG={}", lang)));
|
||||||
|
assert!(settings.contains(&format!("LC_ADDRESS={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_IDENTIFICATION={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_MEASUREMENT={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_MONETARY={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_NAME={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_NUMERIC={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_PAPER={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_TELEPHONE={}", region)));
|
||||||
|
assert!(settings.contains(&format!("LC_TIME={}", region)));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_build_locale_settings_uses_correct_values() {
|
||||||
|
let lang = "fr_FR.UTF-8";
|
||||||
|
let region = "en_GB.UTF-8";
|
||||||
|
let settings = build_locale_settings(lang, region);
|
||||||
|
|
||||||
|
// LANG should use the lang parameter
|
||||||
|
assert!(settings.iter().any(|s| s == "LANG=fr_FR.UTF-8"));
|
||||||
|
// LC_* variables should use the region parameter
|
||||||
|
assert!(settings.iter().any(|s| s == "LC_TIME=en_GB.UTF-8"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_filters_pseudo_locales() {
|
||||||
|
let output = "C\nC.utf8\nC.UTF-8\nPOSIX\nen_US.utf8\nde_DE.UTF-8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Should filter out all C and POSIX variants
|
||||||
|
assert!(!result.contains(&"C".to_string()));
|
||||||
|
assert!(!result.contains(&"C.utf8".to_string()));
|
||||||
|
assert!(!result.contains(&"C.UTF-8".to_string()));
|
||||||
|
assert!(!result.contains(&"POSIX".to_string()));
|
||||||
|
|
||||||
|
// Should keep actual locales
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"de_DE.UTF-8".to_string()));
|
||||||
|
assert_eq!(result.len(), 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_accepts_only_utf8_locales() {
|
||||||
|
let output =
|
||||||
|
"en_US\nen_US.utf8\nen_US.UTF-8\nar_IN\nar_IN.utf8\nde_DE.iso88591\nfr_FR.UTF-8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Should accept UTF-8 variants
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"en_US.UTF-8".to_string()));
|
||||||
|
assert!(result.contains(&"ar_IN.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"fr_FR.UTF-8".to_string()));
|
||||||
|
|
||||||
|
// Should filter out non-UTF-8 encoded locales
|
||||||
|
assert!(!result.contains(&"en_US".to_string()));
|
||||||
|
assert!(!result.contains(&"ar_IN".to_string()));
|
||||||
|
assert!(!result.contains(&"de_DE.iso88591".to_string()));
|
||||||
|
|
||||||
|
assert_eq!(result.len(), 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_filters_any_c_posix_variant() {
|
||||||
|
let output = "C\nC.iso88591\nC.anything\nPOSIX\nPOSIX.utf8\nen_US.utf8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Should filter out any C or POSIX variant regardless of encoding
|
||||||
|
assert!(!result.contains(&"C".to_string()));
|
||||||
|
assert!(!result.contains(&"C.iso88591".to_string()));
|
||||||
|
assert!(!result.contains(&"C.anything".to_string()));
|
||||||
|
assert!(!result.contains(&"POSIX".to_string()));
|
||||||
|
assert!(!result.contains(&"POSIX.utf8".to_string()));
|
||||||
|
|
||||||
|
// Should keep actual locales
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
assert_eq!(result.len(), 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_handles_whitespace() {
|
||||||
|
let output = " en_US.utf8 \n\t de_DE.UTF-8\t\n fr_FR.utf8 \n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Should handle leading/trailing whitespace
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"de_DE.UTF-8".to_string()));
|
||||||
|
assert!(result.contains(&"fr_FR.utf8".to_string()));
|
||||||
|
assert_eq!(result.len(), 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_handles_empty_lines() {
|
||||||
|
let output = "en_US.utf8\n\n\nde_DE.UTF-8\n\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Should skip empty lines
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"de_DE.UTF-8".to_string()));
|
||||||
|
assert_eq!(result.len(), 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_catalan_not_filtered_as_pseudo() {
|
||||||
|
let output = "C\nca_ES.UTF-8\nca_ES.utf8\ncs_CZ.UTF-8\nen_US.utf8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Should filter out C but not Catalan (ca_*) or Czech (cs_*)
|
||||||
|
assert!(!result.contains(&"C".to_string()));
|
||||||
|
assert!(result.contains(&"ca_ES.UTF-8".to_string()));
|
||||||
|
assert!(result.contains(&"ca_ES.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"cs_CZ.UTF-8".to_string()));
|
||||||
|
assert_eq!(result.len(), 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_handles_locale_modifiers() {
|
||||||
|
let output = "en_US.UTF-8@euro\nca_ES.UTF-8@valencia\nde_DE.utf8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// Locales with modifiers should be accepted
|
||||||
|
assert!(result.contains(&"en_US.UTF-8@euro".to_string()));
|
||||||
|
assert!(result.contains(&"ca_ES.UTF-8@valencia".to_string()));
|
||||||
|
assert!(result.contains(&"de_DE.utf8".to_string()));
|
||||||
|
assert_eq!(result.len(), 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_locale_output_case_variations() {
|
||||||
|
let output = "en_US.UTF-8\nen_US.utf-8\nen_US.utf8\nen_US.UTF8\nde_DE.Utf8\n";
|
||||||
|
let result = parse_locale_output(output);
|
||||||
|
|
||||||
|
// All case variations should be accepted (case-insensitive regex)
|
||||||
|
assert!(result.contains(&"en_US.UTF-8".to_string()));
|
||||||
|
assert!(result.contains(&"en_US.utf-8".to_string()));
|
||||||
|
assert!(result.contains(&"en_US.utf8".to_string()));
|
||||||
|
assert!(result.contains(&"en_US.UTF8".to_string()));
|
||||||
|
assert!(result.contains(&"de_DE.Utf8".to_string()));
|
||||||
|
assert_eq!(result.len(), 5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,9 @@ use std::any::TypeId;
|
||||||
|
|
||||||
use ashpd::desktop::location::{Location, LocationProxy};
|
use ashpd::desktop::location::{Location, LocationProxy};
|
||||||
use chrono::NaiveDate;
|
use chrono::NaiveDate;
|
||||||
use cosmic::iced::{
|
use cosmic::iced::futures::channel::mpsc::Sender;
|
||||||
Subscription,
|
use cosmic::iced::futures::{SinkExt, StreamExt, future};
|
||||||
futures::{SinkExt, StreamExt, channel::mpsc::Sender, future},
|
use cosmic::iced::{Subscription, stream};
|
||||||
stream,
|
|
||||||
};
|
|
||||||
use sunrise::{Coordinates, SolarDay, SolarEvent};
|
use sunrise::{Coordinates, SolarDay, SolarEvent};
|
||||||
use tokio::select;
|
use tokio::select;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,5 @@
|
||||||
use cosmic::iced::{
|
use cosmic::iced::futures::{self, SinkExt};
|
||||||
Subscription,
|
use cosmic::iced::{Subscription, stream};
|
||||||
futures::{self, SinkExt},
|
|
||||||
stream,
|
|
||||||
};
|
|
||||||
use notify::{Config, EventKind, RecommendedWatcher, RecursiveMode, Watcher};
|
use notify::{Config, EventKind, RecommendedWatcher, RecursiveMode, Watcher};
|
||||||
use std::fmt::Debug;
|
use std::fmt::Debug;
|
||||||
use std::hash::Hash;
|
use std::hash::Hash;
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,8 @@
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use cosmic::iced::{
|
use cosmic::iced::futures::channel::mpsc::Sender;
|
||||||
Subscription,
|
use cosmic::iced::futures::{SinkExt, StreamExt, future};
|
||||||
futures::{SinkExt, StreamExt, channel::mpsc::Sender, future},
|
use cosmic::iced::{Subscription, stream};
|
||||||
stream,
|
|
||||||
};
|
|
||||||
use image::{ImageBuffer, Rgba};
|
use image::{ImageBuffer, Rgba};
|
||||||
|
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
// Copyright 2023 System76 <info@system76.com>
|
// Copyright 2023 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: GPL-3.0-only
|
// SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
|
||||||
use cosmic::{iced::Border, theme};
|
use cosmic::iced::Border;
|
||||||
|
use cosmic::theme;
|
||||||
|
|
||||||
#[must_use]
|
#[must_use]
|
||||||
pub fn display_container_frame() -> cosmic::theme::Container<'static> {
|
pub fn display_container_frame() -> cosmic::theme::Container<'static> {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
use std::{future::Future, io, process};
|
use std::future::Future;
|
||||||
|
use std::{io, process};
|
||||||
|
|
||||||
use futures::future::select;
|
use futures::future::select;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,10 +8,9 @@ use cosmic::cosmic_theme::Spacing;
|
||||||
use cosmic::iced::core::text::Wrapping;
|
use cosmic::iced::core::text::Wrapping;
|
||||||
use cosmic::iced::{Alignment, Length};
|
use cosmic::iced::{Alignment, Length};
|
||||||
use cosmic::widget::color_picker::ColorPickerUpdate;
|
use cosmic::widget::color_picker::ColorPickerUpdate;
|
||||||
|
use cosmic::widget::space::{horizontal, vertical};
|
||||||
use cosmic::widget::{
|
use cosmic::widget::{
|
||||||
self, ColorPickerModel, button, column, container, divider, icon, list, row, settings,
|
self, ColorPickerModel, button, column, container, divider, icon, list, row, settings, text,
|
||||||
space::{horizontal, vertical},
|
|
||||||
text,
|
|
||||||
};
|
};
|
||||||
use cosmic::{Apply, Element, theme};
|
use cosmic::{Apply, Element, theme};
|
||||||
use cosmic_settings_page as page;
|
use cosmic_settings_page as page;
|
||||||
|
|
@ -206,8 +205,10 @@ pub fn go_next_with_item<'a, Msg: 'static>(
|
||||||
msg_opt: impl Into<Option<Msg>>,
|
msg_opt: impl Into<Option<Msg>>,
|
||||||
) -> list::ListButton<'a, Msg> {
|
) -> list::ListButton<'a, Msg> {
|
||||||
settings::item_row(vec![
|
settings::item_row(vec![
|
||||||
text::body(description).wrapping(Wrapping::Word).into(),
|
text::body(description)
|
||||||
horizontal().into(),
|
.width(Length::Fill)
|
||||||
|
.wrapping(Wrapping::Word)
|
||||||
|
.into(),
|
||||||
row::with_capacity(2)
|
row::with_capacity(2)
|
||||||
.push(item)
|
.push(item)
|
||||||
.push(icon::from_name("go-next-symbolic").size(16).icon())
|
.push(icon::from_name("go-next-symbolic").size(16).icon())
|
||||||
|
|
|
||||||
|
|
@ -21,20 +21,19 @@ pub use route::{Route, RouteProps};
|
||||||
mod spa_utils;
|
mod spa_utils;
|
||||||
pub use spa_utils::Channel;
|
pub use spa_utils::Channel;
|
||||||
|
|
||||||
use libspa::{
|
use libspa::param::ParamType;
|
||||||
param::{ParamType, format::FormatProperties},
|
use libspa::param::format::FormatProperties;
|
||||||
pod::{self, Pod, serialize::PodSerializer},
|
use libspa::pod::serialize::PodSerializer;
|
||||||
utils::SpaTypes,
|
use libspa::pod::{self, Pod};
|
||||||
};
|
use libspa::utils::SpaTypes;
|
||||||
use pipewire::{
|
use pipewire::device::{DeviceChangeMask, DeviceListener};
|
||||||
device::{DeviceChangeMask, DeviceListener},
|
use pipewire::main_loop::MainLoopWeak;
|
||||||
main_loop::MainLoopWeak,
|
use pipewire::metadata::MetadataListener;
|
||||||
metadata::MetadataListener,
|
use pipewire::node::NodeListener;
|
||||||
node::NodeListener,
|
use pipewire::proxy::{ProxyListener, ProxyT};
|
||||||
proxy::{ProxyListener, ProxyT},
|
use pipewire::types::ObjectType;
|
||||||
types::ObjectType,
|
use std::cell::RefCell;
|
||||||
};
|
use std::rc::Rc;
|
||||||
use std::{cell::RefCell, rc::Rc};
|
|
||||||
|
|
||||||
pub type NodeId = u32;
|
pub type NodeId = u32;
|
||||||
pub type RouteId = u32;
|
pub type RouteId = u32;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
// Copyright 2025 System76 <info@system76.com>
|
// Copyright 2025 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: MPL-2.0
|
// SPDX-License-Identifier: MPL-2.0
|
||||||
|
|
||||||
use crate::{Channel, spa_utils::array_from_pod};
|
use crate::Channel;
|
||||||
use libspa::{pod::Pod, utils::Id};
|
use crate::spa_utils::array_from_pod;
|
||||||
|
use libspa::pod::Pod;
|
||||||
|
use libspa::utils::Id;
|
||||||
use pipewire::node::{NodeInfoRef, NodeState};
|
use pipewire::node::{NodeInfoRef, NodeState};
|
||||||
use std::ffi::c_float;
|
use std::ffi::c_float;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
// Copyright 2025 System76 <info@system76.com>
|
// Copyright 2025 System76 <info@system76.com>
|
||||||
// SPDX-License-Identifier: MPL-2.0
|
// SPDX-License-Identifier: MPL-2.0
|
||||||
|
|
||||||
use crate::{Availability, spa_utils::string_from_pod};
|
use crate::Availability;
|
||||||
|
use crate::spa_utils::string_from_pod;
|
||||||
use libspa::pod::Pod;
|
use libspa::pod::Pod;
|
||||||
|
|
||||||
#[derive(Clone, Debug, Default)]
|
#[derive(Clone, Debug, Default)]
|
||||||
|
|
|
||||||
|
|
@ -3,11 +3,10 @@
|
||||||
|
|
||||||
use std::ffi::{c_float, c_int};
|
use std::ffi::{c_float, c_int};
|
||||||
|
|
||||||
use crate::{
|
use crate::spa_utils::{array_from_pod, string_from_pod};
|
||||||
Availability, Channel, Direction,
|
use crate::{Availability, Channel, Direction};
|
||||||
spa_utils::{array_from_pod, string_from_pod},
|
use libspa::pod::Pod;
|
||||||
};
|
use libspa::utils::Id;
|
||||||
use libspa::{pod::Pod, utils::Id};
|
|
||||||
|
|
||||||
#[derive(Clone, Debug, Default)]
|
#[derive(Clone, Debug, Default)]
|
||||||
pub struct Route {
|
pub struct Route {
|
||||||
|
|
|
||||||
6
debian/changelog
vendored
6
debian/changelog
vendored
|
|
@ -1,3 +1,9 @@
|
||||||
|
cosmic-settings (1.0.12) noble; urgency=medium
|
||||||
|
|
||||||
|
* release: 1.0.12
|
||||||
|
|
||||||
|
-- Michael Murphy <mmstick@pop-os> Mon, 27 Apr 2026 15:24:27 +0200
|
||||||
|
|
||||||
cosmic-settings (1.0.7) noble; urgency=medium
|
cosmic-settings (1.0.7) noble; urgency=medium
|
||||||
|
|
||||||
* release: 1.0.7
|
* release: 1.0.7
|
||||||
|
|
|
||||||
2
i18n/ar/cosmic_settings.ftl
vendored
2
i18n/ar/cosmic_settings.ftl
vendored
|
|
@ -911,3 +911,5 @@ xdg-entry-displays-keywords = COSMIC;عرض;
|
||||||
xdg-entry-workspaces = مساحات العمل
|
xdg-entry-workspaces = مساحات العمل
|
||||||
xdg-entry-wired-comment = الاتصالات السلكية وملفات تعريف الاتصال
|
xdg-entry-wired-comment = الاتصالات السلكية وملفات تعريف الاتصال
|
||||||
no-search-results = لا توجد شبكات تطابق بحثك.
|
no-search-results = لا توجد شبكات تطابق بحثك.
|
||||||
|
workspaces-navigation = التنقل
|
||||||
|
.wraparound = تنقل بين مساحة العمل الأولى والأخيرة باستخدام اختصارات لوحة المفاتيح والإيماءات
|
||||||
|
|
|
||||||
7
i18n/ca/cosmic_settings.ftl
vendored
7
i18n/ca/cosmic_settings.ftl
vendored
|
|
@ -0,0 +1,7 @@
|
||||||
|
cancel = Cancel·lar
|
||||||
|
confirm = Confirmar
|
||||||
|
password = Contrasenya
|
||||||
|
identity = Identitat
|
||||||
|
password-confirm = Confirmeu la contrasenya
|
||||||
|
connected = Connectat
|
||||||
|
settings = Configuració
|
||||||
16
i18n/cs/cosmic_settings.ftl
vendored
16
i18n/cs/cosmic_settings.ftl
vendored
|
|
@ -280,7 +280,7 @@ keyboard-sources = Vstupní zdroje
|
||||||
keyboard-special-char = Zadávání speciálních znaků
|
keyboard-special-char = Zadávání speciálních znaků
|
||||||
.alternate = Klávesa pro náhradní znaky
|
.alternate = Klávesa pro náhradní znaky
|
||||||
.compose = Klávesa Compose
|
.compose = Klávesa Compose
|
||||||
.compose-desc = Klávesa Compose umožňuje zadávat širokou škálu znaků. Pro její použití stiskněte Compose a poté zadejte sekvenci znaků. Například [Compose, C, O] vloží znak „©“, zatímco [Compose, A, ‘] znak „á“.
|
.compose-desc = Klávesa Compose umožňuje zadávat širokou škálu znaků. Pro její použití stiskněte Compose a poté zadejte sekvenci znaků. Například Compose, C, O vloží znak „©“, zatímco Compose, A, ‘ vloží znak „á“.
|
||||||
.caps = Klávesa Caps Lock
|
.caps = Klávesa Caps Lock
|
||||||
|
|
||||||
## Input: Keyboard: Shortcuts
|
## Input: Keyboard: Shortcuts
|
||||||
|
|
@ -627,13 +627,13 @@ power-saving = Možnosti úspory energie
|
||||||
disable-while-typing = Zakázat při psaní
|
disable-while-typing = Zakázat při psaní
|
||||||
input-devices = Vstupní zařízení
|
input-devices = Vstupní zařízení
|
||||||
modified = { $count } změněných
|
modified = { $count } změněných
|
||||||
slow = Pomalá
|
slow = Pomalu
|
||||||
fast = Rychlá
|
fast = Rychle
|
||||||
short = Krátké
|
short = Krátká
|
||||||
long = Dlouhé
|
long = Dlouhá
|
||||||
keyboard-typing-assist = Psaní
|
keyboard-typing-assist = Psaní
|
||||||
.repeat-rate = Frekvence opakování
|
.repeat-rate = Rychlost opakování
|
||||||
.repeat-delay = Zpoždění opakování
|
.repeat-delay = Prodleva před opakováním
|
||||||
keyboard-numlock-boot = Num Lock
|
keyboard-numlock-boot = Num Lock
|
||||||
.boot-state = Stav klávesy při spuštění systému
|
.boot-state = Stav klávesy při spuštění systému
|
||||||
.last-boot = Poslední spuštění systému
|
.last-boot = Poslední spuštění systému
|
||||||
|
|
@ -893,3 +893,5 @@ xdg-entry-displays-keywords = COSMIC;Obrazovka;Obrazovky;Displeje;Monitory;Zobra
|
||||||
xdg-entry-workspaces-keywords = COSMIC;Pracovní;Plocha;Plochy;Orientace;Přehled;Sledování;
|
xdg-entry-workspaces-keywords = COSMIC;Pracovní;Plocha;Plochy;Orientace;Přehled;Sledování;
|
||||||
xdg-entry-x11-applications-keywords = COSMIC;X11;Aplikace;Hra;Hry;Kompatibilita;
|
xdg-entry-x11-applications-keywords = COSMIC;X11;Aplikace;Hra;Hry;Kompatibilita;
|
||||||
no-search-results = Žádné sítě neodpovídají vašemu vyhledávání.
|
no-search-results = Žádné sítě neodpovídají vašemu vyhledávání.
|
||||||
|
workspaces-navigation = Navigace
|
||||||
|
.wraparound = Přecházet mezi první a poslední pracovní plochou pomocí klávesových zkratek a gest
|
||||||
|
|
|
||||||
2
i18n/de/cosmic_settings.ftl
vendored
2
i18n/de/cosmic_settings.ftl
vendored
|
|
@ -912,3 +912,5 @@ xdg-entry-desktop-keywords = COSMIC;Desktop;
|
||||||
xdg-entry-desktop = Desktop
|
xdg-entry-desktop = Desktop
|
||||||
xdg-entry-a11y-keywords = COSMIC;Barrierefreiheit;A11y;Bildschirm;Leser;Vergrößerungsglas;Kontrast;Farbe;
|
xdg-entry-a11y-keywords = COSMIC;Barrierefreiheit;A11y;Bildschirm;Leser;Vergrößerungsglas;Kontrast;Farbe;
|
||||||
xdg-entry-a11y-comment = Bildschirmleser, Vergrößerungsglas, hoher Kontrast und Farbfilter
|
xdg-entry-a11y-comment = Bildschirmleser, Vergrößerungsglas, hoher Kontrast und Farbfilter
|
||||||
|
workspaces-navigation = Navigation
|
||||||
|
.wraparound = Mit Tastenkombinationen und Gesten zwischen der ersten und letzten Arbeitsfläche wechseln
|
||||||
|
|
|
||||||
821
i18n/el/cosmic_settings.ftl
vendored
821
i18n/el/cosmic_settings.ftl
vendored
|
|
@ -1 +1,822 @@
|
||||||
share = Κοινοποίηση δικτύου
|
share = Κοινοποίηση δικτύου
|
||||||
|
connect = Σύνδεση
|
||||||
|
close = Κλείσιμο
|
||||||
|
save = Αποθήκευση
|
||||||
|
password = Κωδικός πρόσβασης
|
||||||
|
remove = Αφαίρεση
|
||||||
|
import = Εισαγωγή
|
||||||
|
username = Όνομα χρήστη
|
||||||
|
light = Ανοιχτόχρωμο
|
||||||
|
ok = OK
|
||||||
|
applets = Μικροεφαρμογές
|
||||||
|
dbus-connection-error = Αποτυχία σύνδεσης στο DBus
|
||||||
|
dark = Σκουρόχρωμο
|
||||||
|
cancel = Ακύρωση
|
||||||
|
settings = Ρυθμίσεις
|
||||||
|
replace = Αντικατάσταση
|
||||||
|
add = Προσθήκη
|
||||||
|
appearance = Εμφάνιση
|
||||||
|
panel-left = Αριστερά
|
||||||
|
panel-top = Πάνω
|
||||||
|
region = Περιοχή
|
||||||
|
forget-dialog = Διαγραφή αυτού του δικτύου Wi-Fi;
|
||||||
|
.description = Θα χρειαστεί να εισαγάγετε ξανά τον κωδικό πρόσβασης για να χρησιμοποιήσετε αυτό το δίκτυο Wi-Fi στο μέλλον.
|
||||||
|
default = Προεπιλογή
|
||||||
|
unknown = Άγνωστο
|
||||||
|
connecting = Σύνδεση…
|
||||||
|
export = Εξαγωγή
|
||||||
|
panel-right = Δεξιά
|
||||||
|
rgb = RGB
|
||||||
|
desktop = Επιφάνεια εργασίας
|
||||||
|
identity = Ταυτότητα
|
||||||
|
disconnect = Αποσύνδεση
|
||||||
|
app = Ρυθμίσεις COSMIC
|
||||||
|
debug = Εντοπισμός σφαλμάτων
|
||||||
|
number = { $number }
|
||||||
|
small = Μικρό
|
||||||
|
terminate = Τερματισμός
|
||||||
|
password-confirm = Επιβεβαίωση κωδικού πρόσβασης
|
||||||
|
applications = Εφαρμογές
|
||||||
|
connected = Συνδέθηκε
|
||||||
|
large = Μεγάλο
|
||||||
|
confirm = Επιβεβαίωση
|
||||||
|
enable = Ενεργοποίηση
|
||||||
|
never = Ποτέ
|
||||||
|
activate = Ενεργοποίηση
|
||||||
|
dialog-add = Προσθήκη
|
||||||
|
command = Εντολή
|
||||||
|
panel-bottom = Κάτω
|
||||||
|
navigate = Πλοήγηση
|
||||||
|
colors = Χρώματα
|
||||||
|
xdg-entry-touchpad = Επιφάνεια αφής
|
||||||
|
xdg-entry-bluetooth-comment = Διαχείριση συσκευών Bluetooth
|
||||||
|
xdg-entry-appearance-keywords = Έμφαση;Χρώμα;Εικονίδιο;Γραμματοσειρά;Θέμα;COSMIC;Accent;Color;Icon;Font;Theme
|
||||||
|
xdg-entry-mouse = Ποντίκι
|
||||||
|
firmware = Υλικολογισμικό
|
||||||
|
xdg-entry-a11y = Προσβασιμότητα
|
||||||
|
xdg-entry-desktop-keywords = Επιφάνεια;Εργασίας;COSMIC;Desktop;
|
||||||
|
xdg-entry-users = Χρήστες
|
||||||
|
xdg-entry-default-apps = Προεπιλεγμένες εφαρμογές
|
||||||
|
xdg-entry-applications-comment = Προεπιλεγμένες εφαρμογές, εφαρμογές εκκίνησης και ρυθμίσεις συμβατότητας εφαρμογών με το X11
|
||||||
|
xdg-entry-about-keywords = Πληροφορίες;Σχετικά;Περί;COSMIC;About
|
||||||
|
xdg-entry-notifications = Ειδοποιήσεις
|
||||||
|
xdg-entry-a11y-keywords = Προσβασιμότητα;Προσιτότητα;Οθόνη;Ανάγνωση;Αναγνώστης;Μεγεθυντικός;Φακός;Αντίθεση;Χρώμα;COSMIC;Accessibility;A11y;Screen;Reader;Magnifier;Contrast;Color;
|
||||||
|
xdg-entry-desktop = Επιφάνεια εργασίας
|
||||||
|
xdg-entry-date-time-keywords = Ζώνη;Ώρα;COSMIC;Time;Zone;
|
||||||
|
xdg-entry-wallpaper = Ταπετσαρία
|
||||||
|
xdg-entry-keyboard = Πληκτρολόγιο
|
||||||
|
xdg-entry-a11y-comment = Ανάγνωση οθόνης, μεγεθυντικός φακός, υψηλή αντίθεση και χρωματικά φίλτρα
|
||||||
|
xdg-entry-displays = Οθόνες
|
||||||
|
sound = Ήχος
|
||||||
|
xdg-entry-date-time = Ημερομηνία και ώρα
|
||||||
|
notifications = Ειδοποιήσεις
|
||||||
|
xdg-entry-bluetooth-keywords = Σύνδεση;COSMIC;Bluetooth;
|
||||||
|
about = Πληροφορίες
|
||||||
|
workspaces = Χώροι εργασίας
|
||||||
|
xdg-entry-wireless = Wi-Fi
|
||||||
|
xdg-entry-about-comment = Όνομα συσκευής, πληροφορίες υλικού, προεπιλογές λειτουργικού συστήματος
|
||||||
|
xdg-entry-appearance-comment = Χρώματα έμφασης και θέματα
|
||||||
|
xdg-entry-comment = Εφαρμογή ρυθμίσεων για το περιβάλλον επιφάνειας εργασίας COSMIC
|
||||||
|
xdg-entry-applications = Εφαρμογές
|
||||||
|
xdg-entry-default-apps-keywords = Προεπιλογή;Προεπιλεγμένη;Εφαρμογή;COSMIC;Default;Application
|
||||||
|
xdg-entry-keywords = Προτιμήσεις;Ρυθμίσεις;COSMIC;Settings;
|
||||||
|
xdg-entry-about = Πληροφορίες
|
||||||
|
xdg-entry-input = Συσκευές εισόδου
|
||||||
|
keyboard = Πληκτρολόγιο
|
||||||
|
xdg-entry-appearance = Εμφάνιση
|
||||||
|
xdg-entry-sound = Ήχος
|
||||||
|
xdg-entry-displays-keywords = Οθόνη;COSMIC;Display;
|
||||||
|
xdg-entry-workspaces = Χώροι εργασίας
|
||||||
|
xdg-entry-date-time-comment = Ζώνη ώρας, αυτόματη ρύθμιση ρολογιού και μορφοποίηση ώρας
|
||||||
|
system-shortcut = Σύστημα
|
||||||
|
.app-library = Άνοιγμα βιβλιοθήκης εφαρμογών
|
||||||
|
.brightness-down = Μείωση φωτεινότητας οθόνης
|
||||||
|
.brightness-up = Αύξηση φωτεινότητας οθόνης
|
||||||
|
.display-toggle = Εναλλαγή εσωτερικής οθόνης
|
||||||
|
.home-folder = Άνοιγμα προσωπικού φακέλου
|
||||||
|
.keyboard-brightness-down = Μείωση φωτεινότητας πληκτρολογίου
|
||||||
|
.keyboard-brightness-up = Αύξηση φωτεινότητας πληκτρολογίου
|
||||||
|
.launcher = Άνοιγμα εκκινητή
|
||||||
|
.log-out = Αποσύνδεση
|
||||||
|
.lock-screen = Κλείδωμα οθόνης
|
||||||
|
.mute = Σίγαση εξόδου ήχου
|
||||||
|
.mute-mic = Σίγαση εισόδου μικροφώνου
|
||||||
|
.play-pause = Αναπαραγωγή/παύση
|
||||||
|
.play-next = Επόμενο κομμάτι
|
||||||
|
.play-prev = Προηγούμενο κομμάτι
|
||||||
|
.poweroff = Τερματισμός λειτουργίας
|
||||||
|
.screenshot = Λήψη στιγμιότυπου οθόνης
|
||||||
|
.suspend = Αναστολή λειτουργίας
|
||||||
|
.terminal = Άνοιγμα τερματικού
|
||||||
|
.touchpad-toggle = Εναλλαγή λειτουργίας επιφάνειας αφής
|
||||||
|
.volume-lower = Μείωση έντασης εξόδου ήχου
|
||||||
|
.volume-raise = Αύξηση έντασης εξόδου ήχου
|
||||||
|
.web-browser = Άνοιγμα προγράμματος περιήγησης ιστού
|
||||||
|
.window-switcher = Εναλλαγή μεταξύ των ανοικτών παραθύρων
|
||||||
|
.window-switcher-previous = Εναλλαγή μεταξύ των ανοικτών παραθύρων (αντίστροφα)
|
||||||
|
.workspace-overview = Άνοιγμα επισκόπησης χώρων εργασίας
|
||||||
|
super-key = Ενέργεια πλήκτρου Super
|
||||||
|
.launcher = Άνοιγμα μενού εκκίνησης
|
||||||
|
.workspaces = Άνοιγμα χώρων εργασίας
|
||||||
|
.applications = Άνοιγμα εφαρμογών
|
||||||
|
.disable = Απενεργοποίηση
|
||||||
|
x-minutes =
|
||||||
|
{ $number } { $number ->
|
||||||
|
[one] λεπτό
|
||||||
|
*[other] λεπτά
|
||||||
|
}
|
||||||
|
vrr = Μεταβλητός ρυθμός ανανέωσης
|
||||||
|
.enabled = Ενεργός
|
||||||
|
.force = Πάντα
|
||||||
|
.auto = Αυτόματα
|
||||||
|
.disabled = Ανενεργός
|
||||||
|
window-hint-accent = Χρώμα ένδειξης ενεργού παραθύρου
|
||||||
|
fit-to-screen = Προσαρμογή στην οθόνη
|
||||||
|
control-tint = Απόχρωση στοιχείων ελέγχου
|
||||||
|
.desc = Χρησιμοποιείται για το φόντο των τυπικών κουμπιών, εισόδων αναζήτησης, εισόδων κειμένου και παρόμοιων στοιχείων
|
||||||
|
vpn-error = VPN Error
|
||||||
|
.config = Αποτυχία προσθήκης διαμόρφωσης VPN
|
||||||
|
.connect = Αποτυχία σύνδεσης στο VPN
|
||||||
|
.connection-editor = Αποτυχία επεξεργαστή συνδέσεων
|
||||||
|
.connection-settings = Αποτυχία λήψης ρυθμίσεων για ενεργές συνδέσεις
|
||||||
|
.updating-state = Αποτυχία ενημέρωσης κατάστασης διαχειριστή δικτύου
|
||||||
|
.wireguard-config-path = Μη έγκυρη διαδρομή αρχείων για τη διαμόρφωση του WireGuard
|
||||||
|
.wireguard-config-path-desc = Το επιλεγμένο αρχείο πρέπει να βρίσκεται στο τοπικό σύστημα αρχείων.
|
||||||
|
.wireguard-device = Αποτυχία δημιουργίας συσκευής WireGuard
|
||||||
|
.with-password =
|
||||||
|
Αποτυχία ορισμού { $field ->
|
||||||
|
*[username] ονόματος χρήστη
|
||||||
|
[password] κωδικού πρόσβασης
|
||||||
|
[password-flags] σημαιών κωδικού πρόσβασης
|
||||||
|
} VPN με το nmcli
|
||||||
|
toggle-stacking = Εναλλαγή στοίβαξης παραθύρων
|
||||||
|
no-applets-found = Δεν βρέθηκαν μικροεφαρμογές...
|
||||||
|
zoom-in = Μεγέθυνση
|
||||||
|
place-here = Τοποθετήστε τις μικροεφαρμογές εδώ
|
||||||
|
-requires-restart = Απαιτεί επανεκκίνηση
|
||||||
|
workspaces-orientation = Προσανατολισμός χώρων εργασίας
|
||||||
|
.vertical = Κάθετος
|
||||||
|
.horizontal = Οριζόντιος
|
||||||
|
acceleration-desc = Προσαρμόζει αυτόματα την ευαισθησία ιχνηλάτησης με βάση την ταχύτητα
|
||||||
|
all-displays = Όλες οι οθόνες
|
||||||
|
scheduling = Προγραμματισμός
|
||||||
|
.manual = Χειροκίνητο πρόγραμμα
|
||||||
|
frosted = Εφέ ημιδιαφανούς γυαλιού στο περιβάλλον συστήματος
|
||||||
|
.desc = Εφαρμόζει θόλωση του φόντου της γραμμής συστήματος, της μπάρας εφαρμογών, του μενού εκκίνησης και της βιβλιοθήκης εφαρμογών
|
||||||
|
about-hardware = Υλικό
|
||||||
|
.model = Μοντέλο υλικού
|
||||||
|
.memory = Μνήμη
|
||||||
|
.processor = Επεξεργαστής
|
||||||
|
.graphics = Γραφικά
|
||||||
|
.disk-capacity = Χωρητικότητα δίσκου
|
||||||
|
short = Σύντομη
|
||||||
|
vpn = VPN
|
||||||
|
.connections = Συνδέσεις VPN
|
||||||
|
.error = Αποτυχία προσθήκης διαμόρφωσης VPN
|
||||||
|
.remove = Αφαίρεση προφίλ σύνδεσης
|
||||||
|
.select-file = Επιλογή αρχείου διαμόρφωσης VPN
|
||||||
|
power-mode = Λειτουργία ενέργειας
|
||||||
|
.battery = Εκτεταμένη διάρκεια μπαταρίας
|
||||||
|
.battery-desc = Μειωμένη χρήση ενέργειας και χαμηλές επιδόσεις
|
||||||
|
.balanced = Ισορροπημένη
|
||||||
|
.balanced-desc = Μέτριες επιδόσεις και ήπια χρήση ενέργειας
|
||||||
|
.performance = Υψηλές επιδόσεις
|
||||||
|
.performance-desc = Κορυφαίες επιδόσεις και υψηλή χρήση ενέργειας
|
||||||
|
.no-backend = Δεν βρέθηκε υπηρεσία παρασκηνίου. Εγκαταστήστε το system76-power ή το power-profiles-daemon.
|
||||||
|
wired = Ενσύρματη δικτύωση
|
||||||
|
.adapter = Προσαρμογέας ενσύρματου δικτύου { $id }
|
||||||
|
.connections = Ενσύρματες συνδέσεις
|
||||||
|
.devices = Ενσύρματες συσκευές
|
||||||
|
.remove = Αφαίρεση προφίλ σύνδεσης
|
||||||
|
bluetooth-available = Κοντινές συσκευές
|
||||||
|
cable-unplugged = Αποσυνδεδεμένο καλώδιο
|
||||||
|
color-picker = Εργαλείο επιλογής χρωμάτων
|
||||||
|
interface-font = Γραμματοσειρά συστήματος
|
||||||
|
zoom-out = Σμίκρυνση
|
||||||
|
hot-corner = Γωνία συντόμευσης
|
||||||
|
.top-left-corner = Ενεργοποίηση της πάνω αριστερής γωνίας συντόμευσης για τους χώρους εργασίας
|
||||||
|
keyboard-typing-assist = Πληκτρολόγηση
|
||||||
|
.repeat-rate = Ρυθμός επανάληψης
|
||||||
|
.repeat-delay = Καθυστέρηση επανάληψης
|
||||||
|
edge-gravity = Έλξη αιωρούμενων παραθύρων στις κοντινές άκρες
|
||||||
|
amplification = Ενίσχυση ήχου
|
||||||
|
.desc = Επιτρέπει την αύξηση της έντασης στο 150%
|
||||||
|
recent-colors = Πρόσφατα χρώματα
|
||||||
|
about-os = Λειτουργικό σύστημα
|
||||||
|
.os = Λειτουργικό σύστημα
|
||||||
|
.os-architecture = Αρχιτεκτονική λειτουργικού συστήματος
|
||||||
|
.kernel = Έκδοση πυρήνα
|
||||||
|
.desktop-environment = Περιβάλλον επιφάνειας εργασίας
|
||||||
|
.windowing-system = Σύστημα διαχείρισης παραθύρων
|
||||||
|
panel-behavior-and-position = Συμπεριφορά και θέσεις
|
||||||
|
.autohide = Αυτόματη απόκρυψη γραμμής συστήματος
|
||||||
|
.dock-autohide = Αυτόματη απόκρυψη μπάρας εφαρμογών
|
||||||
|
.position = Θέση στην οθόνη
|
||||||
|
.display = Εμφάνιση στην οθόνη
|
||||||
|
add-language = Προσθήκη γλώσσας
|
||||||
|
.context = Προσθήκη γλώσσας
|
||||||
|
password-mismatch = Ο κωδικός πρόσβασης και το πεδίο επιβεβαίωσης θα πρέπει να είναι ίδια
|
||||||
|
accessibility = Προσβασιμότητα
|
||||||
|
.vision = Όραση
|
||||||
|
.on = Ενεργό
|
||||||
|
.off = Ανενεργό
|
||||||
|
.unavailable = Μη διαθέσιμο
|
||||||
|
.screen-reader = Ανάγνωση οθόνης
|
||||||
|
.high-contrast = Λειτουργία υψηλής αντίθεσης
|
||||||
|
.invert-colors = Αναστροφή χρωμάτων
|
||||||
|
.color-filters = Φίλτρα χρωμάτων
|
||||||
|
container-background = Φόντο πλαισίων
|
||||||
|
.desc-detail = Το χρώμα φόντου πλαισίων χρησιμοποιείται για την πλαϊνή στήλη πλοήγησης, το πλευρικό συρτάρι, τα παράθυρα διαλόγων και παρόμοια γραφικά στοιχεία. Από προεπιλογή, το χρώμα φόντου πλαισίων προκύπτει αυτόματα από το φόντο των παραθύρων.
|
||||||
|
.reset = Επαναφορά στο αυτόματο
|
||||||
|
.desc = Χρησιμοποιείται για την πλαϊνή στήλη πλοήγησης, το πλευρικό συρτάρι, τα παράθυρα διαλόγων και παρόμοια γραφικά στοιχεία
|
||||||
|
primary-button = Κύριο κουμπί
|
||||||
|
.desc = Ορίζει τη σειρά των φυσικών κουμπιών
|
||||||
|
.left = Αριστερό
|
||||||
|
.right = Δεξί
|
||||||
|
sound-alerts = Ειδοποιήσεις
|
||||||
|
.volume = Ένταση ήχου ειδοποιήσεων
|
||||||
|
.sound = Ήχος ειδοποιήσεων
|
||||||
|
icon-theme = Θέμα εικονιδίων
|
||||||
|
.desc = Εφαρμόζει ένα διαφορετικό σύνολο εικονιδίων για εφαρμογές
|
||||||
|
keyboard-shortcuts = Συντομεύσεις πληκτρολογίου
|
||||||
|
.desc = Προβολή και προσαρμογή συντομεύσεων
|
||||||
|
switch-between-windows = Εναλλαγή μεταξύ των παραθύρων
|
||||||
|
text-tint = Απόχρωση κειμένου περιβάλλοντος χρήστη
|
||||||
|
.desc = Χρησιμοποιείται για τον προσδιορισμό των χρωμάτων του κειμένου του περιβάλλοντος χρήστη ώστε να έχουν επαρκή αντίθεση σε διάφορες επιφάνειες
|
||||||
|
online-accounts = Διαδικτυακοί λογαριασμοί
|
||||||
|
.desc = Προσθήκη λογαριασμών, IMAP και SMTP, εταιρικών συνδέσεων
|
||||||
|
open-workspaces-view = Άνοιγμα επισκόπησης χώρων εργασίας
|
||||||
|
all = Όλα
|
||||||
|
remove-user = Αφαίρεση χρήστη
|
||||||
|
sound-input = Είσοδος ήχου
|
||||||
|
.volume = Ένταση εισόδου
|
||||||
|
.device = Συσκευή εισόδου
|
||||||
|
.level = Επίπεδο εισόδου
|
||||||
|
add-another-keybinding = Προσθήκη άλλου συνδυασμού πλήκτρων
|
||||||
|
copy-to-clipboard = Αντιγραφή στο πρόχειρο
|
||||||
|
monospace-font = Γραμματοσειρά σταθερού πλάτους
|
||||||
|
experimental-settings = Πειραματικές ρυθμίσεις
|
||||||
|
recent-folders = Πρόσφατοι φάκελοι
|
||||||
|
color-filter = Τύπος φίλτρου χρωμάτων
|
||||||
|
.unknown = Άγνωστο φίλτρο ενεργό
|
||||||
|
.greyscale = Κλίμακα του γκρι
|
||||||
|
.deuteranopia = Πράσινο/κόκκινο (αδυναμία στο πράσινο, Δευτερανοπία)
|
||||||
|
.protanopia = Κόκκινο/πράσινο (αδυναμία στο κόκκινο, Πρωτανοπία)
|
||||||
|
.tritanopia = Μπλε/κίτρινο (αδυναμία στο μπλε, Τριτανοπία)
|
||||||
|
migrate-workspace =
|
||||||
|
Μεταφορά χώρου εργασίας { $direction ->
|
||||||
|
*[down] στην κάτω έξοδο
|
||||||
|
[left] στην αριστερή έξοδο
|
||||||
|
[right] στη δεξιά έξοδο
|
||||||
|
[up] στην πάνω έξοδο
|
||||||
|
}
|
||||||
|
battery = Μπαταρία
|
||||||
|
.minute =
|
||||||
|
{ $value } { $value ->
|
||||||
|
[one] λεπτό
|
||||||
|
*[other] λεπτά
|
||||||
|
}
|
||||||
|
.hour =
|
||||||
|
{ $value } { $value ->
|
||||||
|
[one] ώρα
|
||||||
|
*[other] ώρες
|
||||||
|
}
|
||||||
|
.day =
|
||||||
|
{ $value } { $value ->
|
||||||
|
[one] ημέρα
|
||||||
|
*[other] ημέρες
|
||||||
|
}
|
||||||
|
.less-than-minute = Λιγότερο από ένα λεπτό
|
||||||
|
.and = και
|
||||||
|
.remaining-time =
|
||||||
|
{ $time } μέχρι την { $action ->
|
||||||
|
[full] πλήρη φόρτιση
|
||||||
|
*[other] αποφόρτιση
|
||||||
|
}
|
||||||
|
search-applets = Αναζήτηση μικροεφαρμογών...
|
||||||
|
pinch-to-zoom = Τσίμπημα για ζουμ
|
||||||
|
.desc = Χρησιμοποιήστε δύο δάχτυλα για να κάνετε ζουμ στο περιεχόμενο, σε εφαρμογές που το υποστηρίζουν
|
||||||
|
wifi = Wi-Fi
|
||||||
|
.adapter = Προσαρμογέας Wi-Fi { $id }
|
||||||
|
.forget = Διαγραφή αυτού του δικτύου
|
||||||
|
x-hours =
|
||||||
|
{ $number } { $number ->
|
||||||
|
[one] ώρα
|
||||||
|
*[other] ώρες
|
||||||
|
}
|
||||||
|
added = Προστέθηκε
|
||||||
|
input-source-switch = Εναλλαγή πηγών εισόδου γλώσσας πληκτρολογίου
|
||||||
|
focus-navigation = Πλοήγηση εστίασης
|
||||||
|
.focus-follows-cursor = Η εστίαση ακολουθεί τον κέρσορα
|
||||||
|
.focus-follows-cursor-delay = Η εστίαση ακολουθεί την καθυστέρηση του κέρσορα σε ms
|
||||||
|
.cursor-follows-focus = Ο κέρσορας ακολουθεί την εστίαση
|
||||||
|
full-name = Ονοματεπώνυμο
|
||||||
|
app-background = Φόντο παραθύρων
|
||||||
|
keyboard-sources = Πηγές εισόδου
|
||||||
|
.desc = Μπορείτε να αλλάξετε τις πηγές εισόδου με τον συνδυασμό πλήκτρων Super+Space, τον οποίο μπορείτε να προσαρμόσετε στις ρυθμίσεις συντομεύσεων πληκτρολογίου.
|
||||||
|
.move-up = Μετακίνηση πάνω
|
||||||
|
.move-down = Μετακίνηση κάτω
|
||||||
|
.settings = Ρυθμίσεις
|
||||||
|
.view-layout = Προβολή διάταξης πληκτρολογίου
|
||||||
|
.remove = Αφαίρεση
|
||||||
|
.add = Προσθήκη πηγής εισόδου
|
||||||
|
nav-shortcuts = Πλοήγηση
|
||||||
|
.prev-output = Εστίαση στην προηγούμενη έξοδο
|
||||||
|
.next-output = Εστίαση στην επόμενη έξοδο
|
||||||
|
.last-workspace = Εστίαση στον τελευταίο χώρο εργασίας
|
||||||
|
.prev-workspace = Εστίαση στον προηγούμενο χώρο εργασίας
|
||||||
|
.next-workspace = Εστίαση στον επόμενο χώρο εργασίας
|
||||||
|
.focus =
|
||||||
|
Εστίαση κατά ένα παράθυρο { $direction ->
|
||||||
|
*[down] προς τα κάτω
|
||||||
|
[in] προς τα μέσα
|
||||||
|
[left] προς τα αριστερά
|
||||||
|
[out] προς τα έξω
|
||||||
|
[right] προς τα δεξιά
|
||||||
|
[up] προς τα πάνω
|
||||||
|
}
|
||||||
|
.output =
|
||||||
|
Εναλλαγή { $direction ->
|
||||||
|
*[down] στην κάτω έξοδο
|
||||||
|
[left] στην αριστερή έξοδο
|
||||||
|
[right] στη δεξιά έξοδο
|
||||||
|
[up] στην πάνω έξοδο
|
||||||
|
}
|
||||||
|
.workspace = Μετάβαση στον χώρο εργασίας { $num }
|
||||||
|
hearing = Ακοή
|
||||||
|
.mono = Αναπαραγωγή στερεοφωνικού ήχου ως μονοφωνικού
|
||||||
|
preferred-languages = Προτιμώμενες γλώσσες
|
||||||
|
.desc = Η σειρά των γλωσσών καθορίζει ποια γλώσσα θα χρησιμοποιείται για το περιβάλλον χρήστη. Οι αλλαγές θα εφαρμοστούν στην επόμενη σύνδεση.
|
||||||
|
panel-style = Στυλ
|
||||||
|
.anchor-gap = Κενό ανάμεσα στη γραμμή συστήματος και στις άκρες της οθόνης
|
||||||
|
.dock-anchor-gap = Κενό ανάμεσα στην μπάρα εφαρμογών και στις άκρες της οθόνης
|
||||||
|
.extend = Επέκταση της γραμμής συστήματος στις άκρες της οθόνης
|
||||||
|
.dock-extend = Επέκταση της μπάρας εφαρμογών στις άκρες της οθόνης
|
||||||
|
.appearance = Εμφάνιση
|
||||||
|
.size = Μέγεθος
|
||||||
|
.background-opacity = Αδιαφάνεια φόντου
|
||||||
|
panel-appearance = Εμφάνιση
|
||||||
|
.match = Συμφωνία με την επιφάνεια εργασίας
|
||||||
|
.light = Ανοιχτόχρωμη
|
||||||
|
.dark = Σκουρόχρωμη
|
||||||
|
workspaces-multi-behavior = Συμπεριφορά πολλαπλών οθονών
|
||||||
|
.span = Κοινοί χώροι εργασίας σε όλες τις οθόνες
|
||||||
|
.separate = Ξεχωριστοί χώροι εργασίας ανά οθόνη
|
||||||
|
replace-shortcut-dialog = Αντικατάσταση συντόμευσης;
|
||||||
|
.desc = Η συντόμευση { $shortcut } χρησιμοποιείται από το { $name }. Εάν την αντικαταστήσετε, το { $name } θα απενεργοποιηθεί.
|
||||||
|
about-device = Όνομα συσκευής
|
||||||
|
.desc = Αυτό το όνομα εμφανίζεται σε άλλα δίκτυα ή συσκευές Bluetooth
|
||||||
|
no-vpn = Δεν διατίθενται συνδέσεις VPN.
|
||||||
|
start-segment = Αρχικό τμήμα
|
||||||
|
reset-to-default = Επαναφορά προεπιλογών
|
||||||
|
enable-export = Εφαρμογή τρέχοντος θέματος σε εφαρμογές GNOME
|
||||||
|
.desc = Δεν υποστηρίζουν όλα τα σύνολα εργαλείων την αυτόματη εναλλαγή. Ενδέχεται να χρειαστεί επανεκκίνηση των μη-COSMIC εφαρμογών μετά από αλλαγή του θέματος.
|
||||||
|
shortcut-name = Όνομα συντόμευσης
|
||||||
|
style = Στυλ
|
||||||
|
.round = Στρογγυλό
|
||||||
|
.slightly-round = Ελαφρώς στρογγυλό
|
||||||
|
.square = Τετράγωνο
|
||||||
|
panel-applets = Διαμόρφωση
|
||||||
|
.dock-desc = Διαμόρφωση των μικροεφαρμογών της μπάρας εφαρμογών
|
||||||
|
.desc = Διαμόρφωση των μικροεφαρμογών της γραμμής συστήματος
|
||||||
|
qr-code-unavailable = Δεν διατίθεται κωδικός QR
|
||||||
|
window-tiling = Παράθεση παραθύρων
|
||||||
|
.horizontal = Ορισμός οριζόντιου προσανατολισμού
|
||||||
|
.vertical = Ορισμός κάθετου προσανατολισμού
|
||||||
|
.swap-window = Εναλλαγή παραθύρου
|
||||||
|
.toggle-tiling = Εναλλαγή παράθεσης παραθύρων
|
||||||
|
.toggle-stacking = Εναλλαγή στοίβαξης παραθύρων
|
||||||
|
.toggle-floating = Εναλλαγή αιώρησης παραθύρων
|
||||||
|
.toggle-orientation = Εναλλαγή προσανατολισμού
|
||||||
|
change-password = Αλλαγή κωδικού πρόσβασης
|
||||||
|
disable-while-typing = Απενεργοποίηση κατά την πληκτρολόγηση
|
||||||
|
long = Μεγάλη
|
||||||
|
copied-to-clipboard = Αντιγράφηκε στο πρόχειρο
|
||||||
|
bluetooth-confirm-pin = Επιβεβαίωση PIN για σύνδεση Bluetooth
|
||||||
|
.description = Επιβεβαιώστε ότι το ακόλουθο PIN είναι ίδιο με αυτό που εμφανίζεται στο { $device }
|
||||||
|
legacy-app-scaling = Κλιμάκωση εφαρμογών στο σύστημα παραθύρων X11
|
||||||
|
.scaled-gaming = Βελτιστοποίηση για παιχνίδια και εφαρμογές πλήρους οθόνης
|
||||||
|
.gaming-description = Οι εφαρμογές σε X11 ενδέχεται να εμφανίζονται ελαφρώς μεγαλύτερες/μικρότερες σε σύγκριση με τις εφαρμογές σε Wayland
|
||||||
|
.scaled-applications = Βελτιστοποίηση για εφαρμογές
|
||||||
|
.applications-description = Τα παιχνίδια και οι εφαρμογές πλήρους οθόνης σε X11 ενδέχεται να μην αντιστοιχούν στην ανάλυση της οθόνης σας
|
||||||
|
.scaled-compatibility = Λειτουργία μέγιστης συμβατότητας
|
||||||
|
.compatibility-description = Οι εφαρμογές σε X11 ενδέχεται να εμφανίζονται θολές σε οθόνες HiDPI
|
||||||
|
.preferred-display = Προτιμώμενη οθόνη για παιχνίδια και εφαρμογές πλήρους οθόνης σε X11
|
||||||
|
.no-display = Καμία
|
||||||
|
night-light = Νυχτερινός φωτισμός
|
||||||
|
.auto = Αυτόματα (από τη δύση έως την ανατολή)
|
||||||
|
.desc = Μείωση του μπλε φωτός με θερμότερα χρώματα
|
||||||
|
custom-shortcuts = Προσαρμοσμένες συντομεύσεις
|
||||||
|
.add = Προσθήκη συντόμευσης
|
||||||
|
.context = Προσθήκη προσαρμοσμένης συντόμευσης
|
||||||
|
.none = Δεν υπάρχουν προσαρμοσμένες συντομεύσεις
|
||||||
|
visible-networks = Ορατά δίκτυα
|
||||||
|
window-hint-accent-toggle = Χρήση του χρώματος έμφασης για την ένδειξη ενεργού παραθύρου
|
||||||
|
type-to-search = Πληκτρολογήστε για αναζήτηση...
|
||||||
|
workspaces-behavior = Συμπεριφορά χώρων εργασίας
|
||||||
|
.dynamic = Δυναμικοί χώροι εργασίας
|
||||||
|
.dynamic-desc = Αυτόματη κατάργηση των κενών χώρων εργασίας.
|
||||||
|
.fixed = Σταθερός αριθμός χώρων εργασίας
|
||||||
|
.fixed-desc = Προσθήκη ή κατάργηση χώρων εργασίας στην επισκόπηση.
|
||||||
|
wireguard-dialog = Προσθήκη συσκευής WireGuard
|
||||||
|
.description = Επιλέξτε ένα όνομα συσκευής για τη διαμόρφωση του WireGuard.
|
||||||
|
remove-connection-dialog = Αφαίρεση προφίλ σύνδεσης;
|
||||||
|
.vpn-description = Θα χρειαστεί να εισαγάγετε ξανά τον κωδικό πρόσβασης για να χρησιμοποιήσετε αυτό το δίκτυο στο μέλλον.
|
||||||
|
.wired-description = Θα χρειαστεί να δημιουργήσετε εκ νέου αυτό το προφίλ για να το χρησιμοποιήσετε στο μέλλον.
|
||||||
|
click-behavior = Συμπεριφορά κλικ
|
||||||
|
.click-finger = Δευτερεύον κλικ με δύο δάχτυλα και μεσαίο κλικ με τρία δάχτυλα
|
||||||
|
.button-areas = Δευτερεύον κλικ στην κάτω δεξιά γωνία και μεσαίο κλικ στο κάτω κεντρικό μέρος
|
||||||
|
move-windows = Μετακίνηση παραθύρων
|
||||||
|
.direction =
|
||||||
|
Μετακίνηση παραθύρου { $direction ->
|
||||||
|
*[down] προς τα κάτω
|
||||||
|
[left] προς τα αριστερά
|
||||||
|
[right] προς τα δεξιά
|
||||||
|
[up] προς τα πάνω
|
||||||
|
}
|
||||||
|
.display =
|
||||||
|
Μετακίνηση παραθύρου κατά μία οθόνη { $direction ->
|
||||||
|
*[down] προς τα κάτω
|
||||||
|
[left] προς τα αριστερά
|
||||||
|
[right] προς τα δεξιά
|
||||||
|
[up] προς τα πάνω
|
||||||
|
}
|
||||||
|
.workspace =
|
||||||
|
Μετακίνηση παραθύρου κατά έναν χώρο εργασίας { $direction ->
|
||||||
|
*[below] προς τα κάτω
|
||||||
|
[left] προς τα αριστερά
|
||||||
|
[right] προς τα δεξιά
|
||||||
|
[above] προς τα πάνω
|
||||||
|
}
|
||||||
|
.workspace-num = Μετακίνηση παραθύρου στον χώρο εργασίας { $num }
|
||||||
|
.prev-workspace = Μετακίνηση παραθύρου στον προηγούμενο χώρο εργασίας
|
||||||
|
.next-workspace = Μετακίνηση παραθύρου στον επόμενο χώρο εργασίας
|
||||||
|
.last-workspace = Μετακίνηση παραθύρου στον τελευταίο χώρο εργασίας
|
||||||
|
.next-display = Μετακίνηση παραθύρου στην επόμενη οθόνη
|
||||||
|
.prev-display = Μετακίνηση παραθύρου στην προηγούμενη οθόνη
|
||||||
|
.send-to-prev-workspace = Μετακίνηση παραθύρου στον προηγούμενο χώρο εργασίας
|
||||||
|
.send-to-next-workspace = Μετακίνηση παραθύρου στον επόμενο χώρο εργασίας
|
||||||
|
switch-workspaces = Εναλλαγή χώρων εργασίας
|
||||||
|
.horizontal = Ολίσθηση με τέσσερα δάχτυλα προς τα αριστερά/δεξιά
|
||||||
|
.vertical = Ολίσθηση με τέσσερα δάχτυλα προς τα πάνω/κάτω
|
||||||
|
system-controls = Έλεγχος συστήματος
|
||||||
|
auto-switch = Αυτόματη εναλλαγή μεταξύ ανοιχτόχρωμης και σκουρόχρωμης λειτουργίας
|
||||||
|
.sunrise = Εναλλαγή στην ανοιχτόχρωμη λειτουργία την ανατολή
|
||||||
|
.sunset = Εναλλαγή στη σκουρόχρωμη λειτουργία τη δύση
|
||||||
|
.next-sunrise = Εναλλαγή στην ανοιχτόχρωμη λειτουργία στην επόμενη ανατολή
|
||||||
|
.next-sunset = Εναλλαγή στην ανοιχτόχρωμη λειτουργία στην επόμενη δύση
|
||||||
|
add-vpn = Προσθήκη VPN
|
||||||
|
keyboard-numlock-boot = Πλήκτρο Numlock
|
||||||
|
.boot-state = Κατάσταση κατά την εκκίνηση
|
||||||
|
.last-boot = Τελευταία εκκίνηση
|
||||||
|
.on = Ενεργό
|
||||||
|
.off = Ανενεργό
|
||||||
|
.set = Ορισμός κατάστασης Numlock κατά την εκκίνηση
|
||||||
|
about-related = Σχετικές ρυθμίσεις
|
||||||
|
.support = Λήψη υποστήριξης
|
||||||
|
tap-to-click = Πάτημα για κλικ
|
||||||
|
.desc = Ενεργοποιεί το πάτημα με ένα δάχτυλο για κύριο κλικ, με δύο δάχτυλα για δευτερεύον κλικ και με τρία δάχτυλα για μεσαίο κλικ
|
||||||
|
interface-density = Πυκνότητα περιβάλλοντος χρήστη
|
||||||
|
.comfortable = Άνετο
|
||||||
|
.compact = Πυκνό
|
||||||
|
.spacious = Ευρύχωρο
|
||||||
|
open-application-library = Άνοιγμα βιβλιοθήκης εφαρμογών
|
||||||
|
slow = Αργός
|
||||||
|
network-name = Όνομα δικτύου
|
||||||
|
scrolling = Κύλιση
|
||||||
|
.two-finger = Κύλιση με δύο δάχτυλα
|
||||||
|
.edge = Κύλιση κατά μήκος της άκρης με ένα δάχτυλο
|
||||||
|
.speed = Ταχύτητα κύλισης
|
||||||
|
.natural = Φυσική κατεύθυνση κύλισης
|
||||||
|
.natural-desc = Κύλιση του περιεχομένου, αντί της προβολής
|
||||||
|
auth-dialog = Απαιτείται πιστοποίηση
|
||||||
|
.vpn-description = Εισαγάγετε το όνομα χρήστη και τον κωδικό πρόσβασης που απαιτούνται από την υπηρεσία VPN.
|
||||||
|
.wifi-description = Εισαγάγετε τον κωδικό πρόσβασης ή το κλειδί κρυπτογράφησης. Μπορείτε επίσης να συνδεθείτε πατώντας το κουμπί «WPS» του δρομολογητή.
|
||||||
|
add-user = Προσθήκη χρήστη
|
||||||
|
add-image = Προσθήκη εικόνας
|
||||||
|
migrate-workspace-next = Μεταφορά χώρου εργασίας στην επόμενη έξοδο
|
||||||
|
airplane-on = Η λειτουργία πτήσης είναι ενεργή.
|
||||||
|
formatting = Μορφοποίηση
|
||||||
|
.dates = Ημερομηνίες
|
||||||
|
.time = Ώρα
|
||||||
|
.date-and-time = Ημερομηνία και ώρα
|
||||||
|
.numbers = Αριθμοί
|
||||||
|
.measurement = Μονάδα μέτρησης
|
||||||
|
.paper = Χαρτί
|
||||||
|
disabled = Ανενεργό
|
||||||
|
add-applet = Προσθήκη μικροεφαρμογής
|
||||||
|
show-extended-input-sources = Εμφάνιση εκτεταμένων πηγών εισόδου
|
||||||
|
mode-and-colors = Λειτουργία και χρώματα
|
||||||
|
forget = Διαγραφή
|
||||||
|
center-segment = Κεντρικό τμήμα
|
||||||
|
panel-missing = Απουσία διαμόρφωσης γραμμής συστήματος
|
||||||
|
.desc = Το αρχείο διαμόρφωσης της γραμμής συστήματος απουσιάζει λόγω της χρήσης μιας προσαρμοσμένης διαμόρφωσης ή είναι κατεστραμμένο.
|
||||||
|
.fix = Επαναφορά προεπιλογής
|
||||||
|
invalid-username = Μη έγκυρο όνομα χρήστη
|
||||||
|
mirroring = Κατοπτρισμός
|
||||||
|
.id = Κατοπτρισμός { $id }
|
||||||
|
.dont = Να μην γίνει κατοπτρισμός
|
||||||
|
.mirror = Κατοπτρισμός { $display }
|
||||||
|
.project =
|
||||||
|
Προβολή σε { $display ->
|
||||||
|
[all] όλες τις οθόνες
|
||||||
|
*[other] { $display }
|
||||||
|
}
|
||||||
|
.project-count =
|
||||||
|
Προβολή σε { $count } { $count ->
|
||||||
|
[1] άλλη οθόνη
|
||||||
|
*[other] άλλες οθόνες
|
||||||
|
}
|
||||||
|
orientation = Προσανατολισμός
|
||||||
|
.standard = Τυπικός
|
||||||
|
.rotate-90 = Περιστροφή 90°
|
||||||
|
.rotate-180 = Περιστροφή 180°
|
||||||
|
.rotate-270 = Περιστροφή 270°
|
||||||
|
auto = Αυτόματο
|
||||||
|
end-segment = Τελικό τμήμα
|
||||||
|
bluetooth-adapters = Προσαρμογείς Bluetooth
|
||||||
|
time-format = Μορφή ημερομηνίας και ώρας
|
||||||
|
.twenty-four = 24ωρη μορφή
|
||||||
|
.show-seconds = Εμφάνιση δευτερολέπτων
|
||||||
|
.first = Πρώτη ημέρα εβδομάδας
|
||||||
|
.show-date = Εμφάνιση ημερομηνίας στη μικροεφαρμογή ώρας
|
||||||
|
.friday = Παρασκευή
|
||||||
|
.saturday = Σάββατο
|
||||||
|
.sunday = Κυριακή
|
||||||
|
.monday = Δευτέρα
|
||||||
|
accent-color = Χρώμα έμφασης
|
||||||
|
type-key-combination = Εισαγάγετε τον συνδυασμό πλήκτρων
|
||||||
|
manage-windows = Διαχείριση παραθύρων
|
||||||
|
.close = Κλείσιμο παραθύρου
|
||||||
|
.maximize = Μεγιστοποίηση παραθύρου
|
||||||
|
.fullscreen = Παράθυρο σε πλήρη οθόνη
|
||||||
|
.minimize = Ελαχιστοποίηση παραθύρου
|
||||||
|
.resize-inwards = Αλλαγή μεγέθους παραθύρου προς τα μέσα
|
||||||
|
.resize-outwards = Αλλαγή μεγέθους παραθύρου προς τα έξω
|
||||||
|
.toggle-sticky = Εναλλαγή καρφιτσωμένου παραθύρου
|
||||||
|
install-additional-languages = Εγκατάσταση πρόσθετων γλωσσών
|
||||||
|
sound-output = Έξοδος ήχου
|
||||||
|
.volume = Ένταση εξόδου
|
||||||
|
.device = Συσκευή εξόδου
|
||||||
|
.level = Επίπεδο εξόδου
|
||||||
|
.config = Διαμόρφωση
|
||||||
|
.balance = Ισορροπία
|
||||||
|
.left = Αριστερό
|
||||||
|
.right = Δεξί
|
||||||
|
window-controls = Στοιχεία ελέγχου παραθύρων
|
||||||
|
.maximize = Εμφάνιση κουμπιού μεγιστοποίησης
|
||||||
|
.minimize = Εμφάνιση κουμπιού ελαχιστοποίησης
|
||||||
|
.active-window-hint = Εμφάνιση ένδειξης ενεργού παραθύρου
|
||||||
|
window-management-appearance = Διαχείριση παραθύρων
|
||||||
|
.active-hint = Μέγεθος ένδειξης ενεργού παραθύρου
|
||||||
|
.gaps = Κενά γύρω από τα παράθυρα σε παράθεση
|
||||||
|
migrate-workspace-prev = Μεταφορά χώρου εργασίας στην προηγούμενη έξοδο
|
||||||
|
legacy-app-global-shortcuts = Καθολικές συντομεύσεις σε εφαρμογές X11
|
||||||
|
.desc = Οι καθολικές συντομεύσεις επιτρέπουν σε πατήματα πλήκτρων και συμβάντα κουμπιών ποντικιού που εκτελούνται στις εφαρμογές να αναγνωρίζονται από άλλες εφαρμογές για λειτουργίες, όπως πάτημα για ομιλία ή πάτημα για σίγαση. Από προεπιλογή, οι καθολικές συντομεύσεις είναι απενεργοποιημένες στις εφαρμογές X11 για να διασφαλιστεί ότι οι άλλες εφαρμογές δεν μπορούν να παρακολουθούν τα συμβάντα πληκτρολογίου και ποντικιού που περιέχουν ευαίσθητες πληροφορίες.
|
||||||
|
.none = Κανένα πλήκτρο
|
||||||
|
.modifiers = Πλήκτρα τροποποίησης (Super, Shift, Control, Alt)
|
||||||
|
.combination = Όλα τα πλήκτρα, ενώ είναι πατημένα τα Super, Control ή Alt
|
||||||
|
.all = Όλα τα πλήκτρα
|
||||||
|
.mouse = Συμβάντα κουμπιών ποντικιού σε εφαρμογές X11
|
||||||
|
power-saving = Επιλογές εξοικονόμησης ενέργειας
|
||||||
|
.turn-off-screen-after = Απενεργοποίηση οθόνης μετά από
|
||||||
|
.auto-suspend = Αυτόματη αναστολή
|
||||||
|
.auto-suspend-ac = Αυτόματη αναστολή με τροφοδοσία ρεύματος
|
||||||
|
.auto-suspend-battery = Αυτόματη αναστολή με τροφοδοσία μπαταρίας
|
||||||
|
connected-devices = Συνδεδεμένες συσκευές
|
||||||
|
.unknown = Άγνωστη συσκευή
|
||||||
|
icons-and-toolkit = Εικονίδια και θέματα συνόλου εργαλείων
|
||||||
|
sound-applications = Εφαρμογές
|
||||||
|
.desc = Ένταση και ρυθμίσεις ήχου εφαρμογών
|
||||||
|
time-zone = Ζώνη ώρας
|
||||||
|
.auto = Αυτόματη ζώνη ώρας
|
||||||
|
.auto-info = Απαιτεί τη χρήση υπηρεσιών τοποθεσίας και πρόσβαση στο διαδίκτυο
|
||||||
|
fast = Γρήγορος
|
||||||
|
add-color = Προσθήκη χρώματος
|
||||||
|
add-network = Προσθήκη δικτύου
|
||||||
|
.profile = Προσθήκη προφίλ
|
||||||
|
network-device-state =
|
||||||
|
.activated = Συνδεδεμένο
|
||||||
|
.config = Σύνδεση
|
||||||
|
.deactivating = Αποσύνδεση
|
||||||
|
.disconnected = Αποσυνδεδεμένο
|
||||||
|
.failed = Αποτυχία σύνδεσης
|
||||||
|
.ip-check = Έλεγχος σύνδεσης
|
||||||
|
.ip-config = Αίτημα για διεύθυνση IP και πληροφορίες δρομολόγησης
|
||||||
|
.need-auth = Απαιτεί πιστοποίηση
|
||||||
|
.prepare = Προετοιμασία για σύνδεση
|
||||||
|
.secondaries = Αναμονή για δευτερεύουσα σύνδεση
|
||||||
|
.unavailable = Μη διαθέσιμο
|
||||||
|
.unknown = Άγνωστη κατάσταση
|
||||||
|
.unmanaged = Χωρίς διαχείριση
|
||||||
|
.unplugged = Αποσυνδεδεμένο καλώδιο
|
||||||
|
gestures = Χειρονομίες
|
||||||
|
.four-finger-down = Ολίσθηση με τέσσερα δάχτυλα προς τα κάτω
|
||||||
|
.four-finger-left = Ολίσθηση με τέσσερα δάχτυλα προς τα αριστερά
|
||||||
|
.four-finger-right = Ολίσθηση με τέσσερα δάχτυλα προς τα δεξιά
|
||||||
|
.four-finger-up = Ολίσθηση με τέσσερα δάχτυλα προς τα πάνω
|
||||||
|
.three-finger-any = Ολίσθηση με τρία δάχτυλα προς κάθε κατεύθυνση
|
||||||
|
system = Σύστημα και λογαριασμοί
|
||||||
|
no-networks = Δεν βρέθηκαν δίκτυα.
|
||||||
|
open-new-folder = Άνοιγμα νέου φακέλου
|
||||||
|
fill = Συμπλήρωση
|
||||||
|
custom = Προσαρμοσμένες
|
||||||
|
bluetooth-paired = Παλαιότερες συνδεδεμένες συσκευές
|
||||||
|
.connect = Σύνδεση
|
||||||
|
.battery = { $percentage }% μπαταρία
|
||||||
|
dialog = Παράθυρο διαλόγου
|
||||||
|
.title = Διατήρηση αυτών των ρυθμίσεων οθόνης;
|
||||||
|
.keep-changes = Διατήρηση αλλαγών
|
||||||
|
.change-prompt = Οι αλλαγές των ρυθμίσεων θα αναιρεθούν αυτόματα σε { $time } δευτερόλεπτα.
|
||||||
|
.revert-settings = Επαναφορά ρυθμίσεων
|
||||||
|
workspaces-overview-thumbnails = Μικρογραφίες επισκόπησης χώρων εργασίας
|
||||||
|
.show-number = Εμφάνιση αριθμού χώρων εργασίας
|
||||||
|
.show-name = Εμφάνιση ονόματος χώρων εργασίας
|
||||||
|
color = Χρώμα
|
||||||
|
.depth = Βάθος χρωμάτων
|
||||||
|
.profile = Προφίλ χρωμάτων
|
||||||
|
.sidebar = Προφίλ χρωμάτων
|
||||||
|
.temperature = Θερμοκρασία χρωμάτων
|
||||||
|
hex = Δεκαεξαδικό
|
||||||
|
magnifier = Μεγεθυντικός φακός
|
||||||
|
.controls =
|
||||||
|
Ή χρησιμοποιήστε αυτές τις συντομεύσεις: { $zoom_in ->
|
||||||
|
[zero] { "" }
|
||||||
|
*[other]
|
||||||
|
{ "" }
|
||||||
|
{ $zoom_in } για μεγέθυνση,
|
||||||
|
}{ $zoom_out ->
|
||||||
|
[zero] { "" }
|
||||||
|
*[other]
|
||||||
|
{ "" }
|
||||||
|
{ $zoom_out } για σμίκρυνση,
|
||||||
|
}
|
||||||
|
Super + κύλιση με το ποντίκι
|
||||||
|
.scroll_controls = Ενεργοποίηση ζουμ ποντικιού ή επιφάνειας αφής με Super + κύλιση
|
||||||
|
.show_overlay = Εμφάνιση της επικάλυψης μεγεθυντικού φακού
|
||||||
|
.increment = Αύξηση ζουμ
|
||||||
|
.signin = Έναρξη μεγεθυντικού φακού κατά τη σύνδεση
|
||||||
|
.applet = Εναλλαγή μεγεθυντικού φακού στη γραμμή συστήματος
|
||||||
|
.movement = Η ζουμαρισμένη προβολή μετακινείται
|
||||||
|
.continuous = Συνέχεια με τον κέρσορα
|
||||||
|
.onedge = Όταν ο κέρσορας φτάνει στην άκρη
|
||||||
|
.centered = Για να διατηρεί τον κέρσορα στο κέντρο
|
||||||
|
administrator = Διαχειριστής
|
||||||
|
.desc = Οι διαχειριστές μπορούν να αλλάζουν ρυθμίσεις για όλους τους χρήστες, να προσθέτουν και να καταργούν άλλους χρήστες
|
||||||
|
scan-to-connect-description = Σαρώστε τον κωδικό QR για να συνδεθείτε σε αυτό το δίκτυο.
|
||||||
|
modified = { $count } τροποποιήσεις
|
||||||
|
sound-usb-audio = Ήχος USB
|
||||||
|
sound-device-profiles = Προφίλ συσκευών
|
||||||
|
sound-hd-audio = Ήχος HD
|
||||||
|
shadow-and-corners = Σκίαση και γωνίες παραθύρων
|
||||||
|
shadows-tiling = Παράθεση παραθύρων
|
||||||
|
.clip = Συμφωνία με τις γωνίες συστήματος
|
||||||
|
.shadow = Εφαρμογή σκιών
|
||||||
|
shadows-floating = Αιωρούμενα παράθυρα
|
||||||
|
.clip = Συμφωνία με τις γωνίες συστήματος και εφαρμογή σκιών
|
||||||
|
sound-device-port-unplugged = Αποσυνδεδεμένο
|
||||||
|
workspaces-overview = Επισκόπηση χώρων εργασίας
|
||||||
|
.action-on-typing = Ενέργεια κατά την πληκτρολόγηση
|
||||||
|
.none = Καμία
|
||||||
|
.launcher = Άνοιγμα μενού εκκίνησης
|
||||||
|
.applications = Άνοιγμα εφαρμογών
|
||||||
|
time-region = Περιοχή και γλώσσα
|
||||||
|
power = Ενέργεια και μπαταρία
|
||||||
|
xdg-entry-wired = Ενσύρματη δικτύωση
|
||||||
|
xdg-entry-startup-apps-comment = Διαμόρφωση των εφαρμογών που εκτελούνται κατά τη σύνδεση
|
||||||
|
xdg-entry-region-language = Περιοχή και γλώσσα
|
||||||
|
time-date = Ημερομηνία και ώρα
|
||||||
|
.auto = Αυτόματη ρύθμιση
|
||||||
|
.auto-ntp = Η ημερομηνία και η ώρα θα ενημερώνονται αυτόματα όταν οριστεί ζώνη ώρας
|
||||||
|
xdg-entry-mouse-keywords = Ποντίκι;Επιτάχυνση;Κύλιση;COSMIC;Mouse;Acceleration;Scrolling;
|
||||||
|
xdg-entry-notifications-keywords = Ειδοποίηση;Κλείδωμα;COSMIC;Notification;Lock;
|
||||||
|
xdg-entry-startup-apps-keywords = Εφαρμογή;Εκκίνηση;COSMIC;Startup;Application;
|
||||||
|
xdg-entry-default-apps-comment = Προεπιλεγμένο πρόγραμμα περιήγησης ιστού, πρόγραμμα ηλεκτρονικού ταχυδρομείου, εφαρμογή περιήγησης αρχείων και άλλες εφαρμογές
|
||||||
|
xdg-entry-keyboard-comment = Πηγές εισόδου, εναλλαγή, εισαγωγή ειδικών χαρακτήρων, συντομεύσεις
|
||||||
|
xdg-entry-wired-keywords = Σύνδεση;Δίκτυο;Ενσύρματο;COSMIC;Wired;LAN;Network;Connection;
|
||||||
|
xdg-entry-power = Ενέργεια και μπαταρία
|
||||||
|
xdg-entry-dock-keywords = Μικροεφαρμογή;Μπάρα;Εφαρμογών;Γραμμή;Συστήματος;COSMIC;Dock;Panel;Applet
|
||||||
|
bluetooth = Bluetooth
|
||||||
|
.status = Αυτό το σύστημα είναι ορατό ως { $aliases } όσο είναι ανοικτές οι ρυθμίσεις του Bluetooth.
|
||||||
|
.connected = Συνδεδεμένο
|
||||||
|
.connecting = Σύνδεση
|
||||||
|
.disconnecting = Αποσύνδεση
|
||||||
|
.connect = Σύνδεση
|
||||||
|
.disconnect = Αποσύνδεση
|
||||||
|
.forget = Διαγραφή
|
||||||
|
.dbus-error = Προέκυψε σφάλμα κατά την αλληλεπίδραση με το DBus: { $why }
|
||||||
|
.disabled = Η υπηρεσία Bluetooth είναι απενεργοποιημένη
|
||||||
|
.inactive = Η υπηρεσία Bluetooth δεν είναι ενεργή
|
||||||
|
.unknown = Δεν ήταν δυνατή η ενεργοποίηση της υπηρεσίας Bluetooth. Είναι εγκατεστημένο το BlueZ;
|
||||||
|
xdg-entry-mouse-comment = Ταχύτητα ποντικιού, επιτάχυνση και φυσική κατεύθυνση κύλισης
|
||||||
|
xdg-entry-system = Σύστημα και λογαριασμοί
|
||||||
|
xdg-entry-panel-keywords = Μικροεφαρμογή;Γραμμή;Συστήματος;COSMIC;Panel;Applet
|
||||||
|
xdg-entry-window-management = Διαχείριση παραθύρων
|
||||||
|
xdg-entry-time-language-comment = Διαχείριση ημερομηνίας, ώρας, περιοχής και γλώσσας συστήματος
|
||||||
|
default-apps = Προεπιλεγμένες εφαρμογές
|
||||||
|
.web-browser = Περιήγηση ιστού
|
||||||
|
.file-manager = Διαχείριση αρχείων
|
||||||
|
.mail-client = Ηλεκτρονικό ταχυδρομείο
|
||||||
|
.music = Μουσική
|
||||||
|
.video = Βίντεο
|
||||||
|
.photos = Φωτογραφίες
|
||||||
|
.calendar = Ημερολόγιο
|
||||||
|
.terminal = Τερματικό
|
||||||
|
.other-associations = Άλλες συσχετίσεις
|
||||||
|
.text-editor = Επεξεργασία κειμένου
|
||||||
|
.not-installed = Δεν έχει εγκατασταθεί
|
||||||
|
xdg-entry-x11-applications-keywords = Εφαρμογή;Παιχνίδι;Συμβατότητα;COSMIC;X11;Application;Game;Compatibility;
|
||||||
|
xdg-entry-displays-comment = Διαχείριση ρυθμίσεων διαμόρφωσης οθονών
|
||||||
|
xdg-entry-touchpad-keywords = Επιφάνεια;Αφή;Χειρονομία;COSMIC;Touchpad;Gesture;
|
||||||
|
xdg-entry-time-language = Ώρα και γλώσσα
|
||||||
|
window-management = Διαχείριση παραθύρων
|
||||||
|
xdg-entry-system-keywords = Σύστημα;Πληροφορίες;Λογαριασμοί;Υλικολογισμικό;COSMIC;System;Info;Accounts;Firmware;
|
||||||
|
xdg-entry-wireless-keywords = Σύνδεση;Δίκτυο;COSMIC;WiFi;Wi-Fi;Network;Connection;
|
||||||
|
mouse = Ποντίκι
|
||||||
|
.speed = Ταχύτητα ποντικιού
|
||||||
|
.acceleration = Ενεργοποίηση επιτάχυνσης ποντικιού
|
||||||
|
dock = Μπάρα εφαρμογών
|
||||||
|
xdg-entry-panel = Γραμμή συστήματος
|
||||||
|
display = Οθόνες
|
||||||
|
.arrangement = Διάταξη οθονών
|
||||||
|
.arrangement-desc = Σύρετε τις οθόνες για να τις αναδιατάξετε
|
||||||
|
.enable = Ενεργοποίηση οθόνης
|
||||||
|
.external = Εξωτερική οθόνη { $size } { $output }
|
||||||
|
.laptop = Οθόνη φορητού υπολογιστή { $size }
|
||||||
|
.options = Επιλογές οθόνης
|
||||||
|
.refresh-rate = Ρυθμός ανανέωσης
|
||||||
|
.resolution = Ανάλυση
|
||||||
|
.scale = Κλίμακα
|
||||||
|
.additional-scale-options = Πρόσθετες επιλογές κλίμακας
|
||||||
|
xdg-entry-wireless-comment = Συνδέσεις Wi-Fi και προφίλ σύνδεσης
|
||||||
|
xdg-entry-desktop-comment = Ρυθμίσεις ταπετσαρίας, εμφάνισης, γραμμής συστήματος, μπάρας εφαρμογών, διαχείρισης παραθύρων και χώρων εργασίας
|
||||||
|
xdg-entry-network = Δίκτυα και ασύρματη σύνδεση
|
||||||
|
xdg-entry-users-comment = Πιστοποίηση και λογαριασμοί χρηστών
|
||||||
|
startup-apps = Εφαρμογές εκκίνησης
|
||||||
|
.add = Προσθήκη εφαρμογής
|
||||||
|
.user = Εφαρμογές που εκκινούνται όταν κάνετε σύνδεση
|
||||||
|
.none = Δεν έχουν προστεθεί εφαρμογές εκκίνησης
|
||||||
|
.remove-dialog-title = Αφαίρεση του «{ $name }»;
|
||||||
|
.remove-dialog-description = Αφαίρεση αυτής της εφαρμογής εκκίνησης;
|
||||||
|
.add-startup-app = Προσθήκη εφαρμογής εκκίνησης
|
||||||
|
xdg-entry-input-comment = Ρυθμίσεις πληκτρολογίου και ποντικιού
|
||||||
|
input-devices = Συσκευές εισόδου
|
||||||
|
xdg-entry-dock-comment = Μια προαιρετική μπάρα για εφαρμογές και μικροεφαρμογές
|
||||||
|
xdg-entry-network-keywords = Δίκτυο;Δικτύωση;Ασύρματο;COSMIC;Network;Wireless;WiFi;VPN;
|
||||||
|
xdg-entry-wallpaper-comment = Εικόνες ταπετσαρίας, χρώματα και επιλογές παρουσίασης διαφανειών
|
||||||
|
xdg-entry-dock = Μπάρα εφαρμογών
|
||||||
|
xdg-entry-startup-apps = Εφαρμογές εκκίνησης
|
||||||
|
xdg-entry-workspaces-keywords = Χώρος;Εργασίας;Προσανατολισμός;Επισκόπηση;Οθόνη;COSMIC;Workspace;Orientation;Overview;Monitor;
|
||||||
|
xdg-entry-system-comment = Πληροφορίες συστήματος, λογαριασμοί και ενημερώσεις υλικολογισμικού
|
||||||
|
xdg-entry-x11-applications-comment = Κλιμάκωση εφαρμογών συστήματος παραθύρων X11, κύρια οθόνη και καθολικές συντομεύσεις
|
||||||
|
xdg-entry-region-language-comment = Μορφοποίηση ημερομηνιών, ώρας και αριθμών με βάση την περιοχή σας
|
||||||
|
panel = Γραμμή συστήματος
|
||||||
|
xdg-entry-wallpaper-keywords = Ταπετσαρία;Φόντο;Παρουσίαση;Διαφανειών;COSMIC;Wallpaper;Background;Slideshow;
|
||||||
|
xdg-entry-users-keywords = Λογαριασμός;Χρήστης;COSMIC;User;Account;
|
||||||
|
xdg-entry-vpn-keywords = Δίκτυο;Σύνδεση;COSMIC;VPN;Network;Connection;OpenVPN;OpenConnect;
|
||||||
|
users = Χρήστες
|
||||||
|
.admin = Διαχειριστής
|
||||||
|
.standard = Τυπικός
|
||||||
|
.profile-add = Επιλογή εικόνας προφίλ
|
||||||
|
xdg-entry-time-language-keywords = Σύστημα;Ώρα;Ημερομηνία;Περιοχή;Γλώσσα;COSMIC;System;Time;Date;Region;Language;
|
||||||
|
xdg-entry-input-keywords = Εισαγωγή;Είσοδος;Πληκτρολόγιο;Ποντίκι;Ποντίκια;COSMIC;Input;Keyboard;Mouse;Mice;
|
||||||
|
xdg-entry-notifications-comment = Λειτουργία «Μην ενοχλείτε», ειδοποιήσεις οθόνης κλειδώματος και ρυθμίσεις ανά εφαρμογή
|
||||||
|
xdg-entry-sound-keywords = Ήχος;Ειδοποίηση;COSMIC;Sound;Audio;Alert;Pipewire;
|
||||||
|
xdg-entry-power-keywords = Μπαταρία;Ισχύς;Ενέργεια;COSMIC;Power;Battery
|
||||||
|
legacy-applications = Συμβατότητα εφαρμογών X11
|
||||||
|
xdg-entry-region-language-keywords = Περιοχή;Γλώσσα;Ημερομηνία;Μορφή;Ώρα;Τοπικές;Τοπικοποίηση;COSMIC;Region;Language;Date;Format;Time;Locale;Localization;
|
||||||
|
xdg-entry-applications-keywords = Προεπιλογή;Προεπιλεγμένες;Εφαρμογές;Εφαρμογή;Εκκίνηση;Συμβατότητα;COSMIC;Default;Application;Startup;X11;Compatibility
|
||||||
|
xdg-entry-sound-comment = Ρυθμίσεις ήχου για συσκευές, ειδοποιήσεις και εφαρμογές
|
||||||
|
wallpaper = Ταπετσαρία
|
||||||
|
.change = Αλλαγή εικόνας κάθε
|
||||||
|
.fit = Προσαρμογή ταπετσαρίας
|
||||||
|
.folder-dialog = Επιλογή φακέλου ταπετσαριών
|
||||||
|
.image-dialog = Επιλογή εικόνας ταπετσαρίας
|
||||||
|
.plural = Ταπετσαρίες
|
||||||
|
.same = Κοινή ταπετσαρία για όλες τις οθόνες
|
||||||
|
.slide = Παρουσίαση διαφανειών
|
||||||
|
xdg-entry-touchpad-comment = Ταχύτητα επιφάνειας αφής, επιλογές κλικ και χειρονομίες
|
||||||
|
xdg-entry-keyboard-keywords = Πληκτρολόγιο;Είσοδος;Πηγή;Συντομεύσεις;COSMIC;Keyboard;Input;Source;Shortcuts;
|
||||||
|
xdg-entry-vpn-comment = Συνδέσεις VPN και προφίλ σύνδεσης
|
||||||
|
xdg-entry-window-management-keywords = Παράθυρο;Διαχείριση;Παράθεση;Πλήκτρο;COSMIC;Window;Management;Tiling;Super;Key;
|
||||||
|
xdg-entry-workspaces-comment = Προσανατολισμός χώρων εργασίας, επισκόπηση και συμπεριφορά πολλαπλών οθονών
|
||||||
|
xdg-entry-network-comment = Διαχείριση συνδέσεων δικτύου
|
||||||
|
xdg-entry-panel-comment = Η κύρια γραμμή του συστήματος για μενού και μικροεφαρμογές
|
||||||
|
touchpad = Επιφάνεια αφής
|
||||||
|
.acceleration = Ενεργοποίηση επιτάχυνσης επιφάνειας αφής
|
||||||
|
.speed = Ταχύτητα επιφάνειας αφής
|
||||||
|
xdg-entry-power-comment = Λειτουργίες ενέργειας και επιλογές εξοικονόμησης ενέργειας
|
||||||
|
time = Ώρα και γλώσσα
|
||||||
|
xdg-entry-x11-applications = Συμβατότητα εφαρμογών X11
|
||||||
|
xdg-entry-window-management-comment = Ενέργεια πλήκτρου Super, επιλογές ελέγχου παραθύρων και πρόσθετες επιλογές παράθεσης παραθύρων
|
||||||
|
xdg-entry-wired-comment = Ενσύρματες συνδέσεις και προφίλ σύνδεσης
|
||||||
|
known-networks = Γνωστά δίκτυα
|
||||||
|
network-and-wireless = Δίκτυα και ασύρματη δικτύωση
|
||||||
|
keyboard-special-char = Εισαγωγή ειδικών χαρακτήρων
|
||||||
|
.alternate = Πλήκτρο εναλλακτικών χαρακτήρων
|
||||||
|
.compose = Πλήκτρο σύνθεσης
|
||||||
|
.compose-desc = Το πλήκτρο σύνθεσης επιτρέπει την εισαγωγή μιας ευρείας ποικιλίας χαρακτήρων. Για να το χρησιμοποιήσετε, πατήστε το πλήκτρο σύνθεσης και έπειτα, μια ακολουθία χαρακτήρων. Για παράδειγμα, μπορείτε να εισαγάγετε τον χαρακτήρα «©» πατώντας το πλήκτρο σύνθεσης, ακολουθούμενο από τα «C» και «o», ή τον χαρακτήρα «á» πατώντας το πλήκτρο σύνθεσης, ακολουθούμενο από τα «a» και «‘» .
|
||||||
|
.caps = Πλήκτρο Caps Lock
|
||||||
|
no-search-results = Δεν αντιστοιχεί κανένα δίκτυο στην αναζήτησή σας.
|
||||||
|
workspaces-navigation = Πλοήγηση
|
||||||
|
.wraparound = Μετακίνηση μεταξύ του πρώτου και του τελευταίου χώρου εργασίας με συντομεύσεις πληκτρολογίου και χειρονομίες
|
||||||
|
|
|
||||||
1
i18n/en/cosmic_settings.ftl
vendored
1
i18n/en/cosmic_settings.ftl
vendored
|
|
@ -484,6 +484,7 @@ window-controls = Window controls
|
||||||
.maximize = Show maximize button
|
.maximize = Show maximize button
|
||||||
.minimize = Show minimize button
|
.minimize = Show minimize button
|
||||||
.active-window-hint = Show active window hint
|
.active-window-hint = Show active window hint
|
||||||
|
.position-start = Place buttons on the left (macOS style)
|
||||||
|
|
||||||
focus-navigation = Focus navigation
|
focus-navigation = Focus navigation
|
||||||
.focus-follows-cursor = Focus follows cursor
|
.focus-follows-cursor = Focus follows cursor
|
||||||
|
|
|
||||||
2
i18n/fi/cosmic_settings.ftl
vendored
2
i18n/fi/cosmic_settings.ftl
vendored
|
|
@ -818,3 +818,5 @@ shadows-tiling = Asetellut ikkunat
|
||||||
.clip = Sovita järjestelmän kulmiin
|
.clip = Sovita järjestelmän kulmiin
|
||||||
.shadow = Käytä varjoja
|
.shadow = Käytä varjoja
|
||||||
no-search-results = Hakuasi vastaavia verkkoja ei löytynyt.
|
no-search-results = Hakuasi vastaavia verkkoja ei löytynyt.
|
||||||
|
workspaces-navigation = Liikkuminen
|
||||||
|
.wraparound = Siirry ensimmäisen ja viimeisen työtilan välillä käyttäen pikanäppäimiä ja eleitä
|
||||||
|
|
|
||||||
3
i18n/fr/cosmic_settings.ftl
vendored
3
i18n/fr/cosmic_settings.ftl
vendored
|
|
@ -322,6 +322,7 @@ window-controls = Contrôles des fenêtres
|
||||||
.maximize = Afficher le bouton maximiser
|
.maximize = Afficher le bouton maximiser
|
||||||
.minimize = Afficher le bouton minimiser
|
.minimize = Afficher le bouton minimiser
|
||||||
.active-window-hint = Afficher l'indice de la fenêtre active
|
.active-window-hint = Afficher l'indice de la fenêtre active
|
||||||
|
.position-start = Placer les boutons à gauche (style macOS)
|
||||||
focus-navigation = Navigation par le focus
|
focus-navigation = Navigation par le focus
|
||||||
.focus-follows-cursor = Le focus suit le curseur
|
.focus-follows-cursor = Le focus suit le curseur
|
||||||
.focus-follows-cursor-delay = Délai de suivi du focus en ms
|
.focus-follows-cursor-delay = Délai de suivi du focus en ms
|
||||||
|
|
@ -902,3 +903,5 @@ xdg-entry-keyboard-keywords = COSMIC;Clavier;Saisie;Source;Raccourcis;
|
||||||
xdg-entry-window-management-keywords = COSMIC;Fenêtre;Gestion;Agencement;Super;Touche;
|
xdg-entry-window-management-keywords = COSMIC;Fenêtre;Gestion;Agencement;Super;Touche;
|
||||||
xdg-entry-displays-keywords = COSMIC;Écran;
|
xdg-entry-displays-keywords = COSMIC;Écran;
|
||||||
no-search-results = Aucun réseau ne correspond à votre recherche.
|
no-search-results = Aucun réseau ne correspond à votre recherche.
|
||||||
|
workspaces-navigation = Navigation
|
||||||
|
.wraparound = Passez du premier au dernier espace de travail à l'aide des raccourcis clavier et des gestes
|
||||||
|
|
|
||||||
2
i18n/ga/cosmic_settings.ftl
vendored
2
i18n/ga/cosmic_settings.ftl
vendored
|
|
@ -911,3 +911,5 @@ xdg-entry-x11-applications = Comhoiriúnacht Feidhmchláir X11
|
||||||
xdg-entry-window-management-comment = Gníomh na sár-eochrach, roghanna rialaithe fuinneoige, agus roghanna breise tíleála fuinneoige
|
xdg-entry-window-management-comment = Gníomh na sár-eochrach, roghanna rialaithe fuinneoige, agus roghanna breise tíleála fuinneoige
|
||||||
xdg-entry-wired-comment = Naisc sreangaithe agus próifílí nasc
|
xdg-entry-wired-comment = Naisc sreangaithe agus próifílí nasc
|
||||||
no-search-results = Níl aon líonra ag teacht leis an gcuardach seo.
|
no-search-results = Níl aon líonra ag teacht leis an gcuardach seo.
|
||||||
|
workspaces-navigation = Nascleanúint
|
||||||
|
.wraparound = Bog idir an chéad spás oibre agus an spás oibre deireanach ag baint úsáide as aicearraí méarchláir agus gothaí
|
||||||
|
|
|
||||||
156
i18n/hu/cosmic_settings.ftl
vendored
156
i18n/hu/cosmic_settings.ftl
vendored
|
|
@ -1,5 +1,5 @@
|
||||||
app = COSMIC Beállítások
|
app = COSMIC Beállítások
|
||||||
dbus-connection-error = Nem sikerült csatlakozni a DBus-hoz
|
dbus-connection-error = Nem sikerült csatlakozni a D-Bus-hoz
|
||||||
ok = OK
|
ok = OK
|
||||||
unknown = Ismeretlen
|
unknown = Ismeretlen
|
||||||
number = { $number }
|
number = { $number }
|
||||||
|
|
@ -33,7 +33,7 @@ xdg-entry-mouse-comment = Egérsebesség, gyorsítás és természetes görgeté
|
||||||
xdg-entry-network = Hálózat és Wi-Fi
|
xdg-entry-network = Hálózat és Wi-Fi
|
||||||
xdg-entry-network-comment = Hálózati kapcsolatok kezelése
|
xdg-entry-network-comment = Hálózati kapcsolatok kezelése
|
||||||
xdg-entry-notifications = Értesítések
|
xdg-entry-notifications = Értesítések
|
||||||
xdg-entry-notifications-comment = Ne zavarjanak, zárolási képernyő értesítések és alkalmazásonkénti beállítások
|
xdg-entry-notifications-comment = Ne zavarjanak mód, a zárolási képernyő értesítései és alkalmazásonkénti beállítások
|
||||||
xdg-entry-panel-comment = Fő rendszersáv menükhöz és kisalkalmazásokhoz
|
xdg-entry-panel-comment = Fő rendszersáv menükhöz és kisalkalmazásokhoz
|
||||||
xdg-entry-power = Energia és akkumulátor
|
xdg-entry-power = Energia és akkumulátor
|
||||||
xdg-entry-power-comment = Energiagazdálkodási módok és energiagazdálkodási beállítások
|
xdg-entry-power-comment = Energiagazdálkodási módok és energiagazdálkodási beállítások
|
||||||
|
|
@ -56,9 +56,9 @@ xdg-entry-window-management = Ablakkezelés
|
||||||
xdg-entry-window-management-comment = Super billentyű funkció, ablakkezelési és csempézési beállítások
|
xdg-entry-window-management-comment = Super billentyű funkció, ablakkezelési és csempézési beállítások
|
||||||
xdg-entry-wired = Vezetékes kapcsolatok
|
xdg-entry-wired = Vezetékes kapcsolatok
|
||||||
xdg-entry-wired-comment = Vezetékes kapcsolatok és kapcsolódási profilok
|
xdg-entry-wired-comment = Vezetékes kapcsolatok és kapcsolódási profilok
|
||||||
xdg-entry-wireless-comment = Wi-Fi kapcsolatok és kapcsolódási profilok
|
xdg-entry-wireless-comment = Wi-Fi-kapcsolatok és kapcsolódási profilok
|
||||||
xdg-entry-workspaces = Munkaterületek
|
xdg-entry-workspaces = Munkaterületek
|
||||||
xdg-entry-workspaces-comment = Munkaterület-tájolás, áttekintés és többképernyős viselkedés
|
xdg-entry-workspaces-comment = Munkaterület-tájolás, áttekintés és többkijelzős viselkedés
|
||||||
xdg-entry-x11-applications = X11 alkalmazások támogatása
|
xdg-entry-x11-applications = X11 alkalmazások támogatása
|
||||||
xdg-entry-x11-applications-comment = X11 ablakrendszer alkalmazásméretezés, elsődleges kijelző és globális gyorsbillentyűk
|
xdg-entry-x11-applications-comment = X11 ablakrendszer alkalmazásméretezés, elsődleges kijelző és globális gyorsbillentyűk
|
||||||
|
|
||||||
|
|
@ -67,17 +67,17 @@ xdg-entry-x11-applications-comment = X11 ablakrendszer alkalmazásméretezés, e
|
||||||
add-network = Hálózat hozzáadása
|
add-network = Hálózat hozzáadása
|
||||||
.profile = Profil hozzáadása
|
.profile = Profil hozzáadása
|
||||||
add-vpn = VPN hozzáadása
|
add-vpn = VPN hozzáadása
|
||||||
airplane-on = A repülőgép üzemmód be van kapcsolva
|
airplane-on = A repülőgép üzemmód be van kapcsolva.
|
||||||
cable-unplugged = Kábel kihúzva
|
cable-unplugged = Kábel kihúzva
|
||||||
connect = Csatlakozás
|
connect = Kapcsolódás
|
||||||
connected = Csatlakoztatva
|
connected = Kapcsolódva
|
||||||
connecting = Csatlakozás…
|
connecting = Kapcsolódás…
|
||||||
disconnect = Bontás
|
disconnect = Bontás
|
||||||
forget = Elfelejtés
|
forget = Elfelejtés
|
||||||
known-networks = Ismert hálózatok
|
known-networks = Ismert hálózatok
|
||||||
network-and-wireless = Hálózat és Wi-Fi
|
network-and-wireless = Hálózat és Wi-Fi
|
||||||
no-networks = Nem található hálózat.
|
no-networks = Nem található hálózat.
|
||||||
no-vpn = Nincs elérhető VPN-kapcsolat
|
no-vpn = Nincs elérhető VPN-kapcsolat.
|
||||||
password = Jelszó
|
password = Jelszó
|
||||||
password-confirm = Jelszó megerősítése
|
password-confirm = Jelszó megerősítése
|
||||||
remove = Eltávolítás
|
remove = Eltávolítás
|
||||||
|
|
@ -88,20 +88,20 @@ identity = Azonosító
|
||||||
auth-dialog = Azonosítás szükséges
|
auth-dialog = Azonosítás szükséges
|
||||||
.vpn-description = Írd be a VPN szolgáltatáshoz szükséges felhasználónevet és jelszót.
|
.vpn-description = Írd be a VPN szolgáltatáshoz szükséges felhasználónevet és jelszót.
|
||||||
.wifi-description = Add meg a jelszót vagy a titkosítókulcsot. A router „WPS” gombjának megnyomásával is csatlakozhatsz.
|
.wifi-description = Add meg a jelszót vagy a titkosítókulcsot. A router „WPS” gombjának megnyomásával is csatlakozhatsz.
|
||||||
forget-dialog = El akarod felejteni ezt a Wi-Fi hálózatot?
|
forget-dialog = Elfelejted ezt a Wi-Fi-hálózatot?
|
||||||
.description = A jelszót ismét meg kell adnod, ha újra csatlakozni szeretnél.
|
.description = A jelszót ismét meg kell majd adnod a kapcsolódáshoz.
|
||||||
network-device-state =
|
network-device-state =
|
||||||
.activated = Csatlakoztatva
|
.activated = Kapcsolódva
|
||||||
.config = Csatlakozás…
|
.config = Kapcsolódás…
|
||||||
.deactivating = Bontás…
|
.deactivating = Bontás…
|
||||||
.disconnected = Kapcsolat bontva
|
.disconnected = Kapcsolat bontva
|
||||||
.failed = Csatlakozás sikertelen
|
.failed = Nem sikerült kapcsolódni
|
||||||
.ip-check = Kapcsolat ellenőrzése
|
.ip-check = Kapcsolat ellenőrzése
|
||||||
.ip-config = IP és router információk lekérése
|
.ip-config = IP és router információk lekérése
|
||||||
.need-auth = Hitelesítés szükséges
|
.need-auth = Hitelesítés szükséges
|
||||||
.prepare = Felkészülés a kapcsolódáshoz
|
.prepare = Felkészülés a kapcsolódáshoz
|
||||||
.secondaries = Várakozás másodlagos kapcsolatra
|
.secondaries = Várakozás másodlagos kapcsolatra
|
||||||
.unavailable = Nem elérhető
|
.unavailable = Nem érhető el
|
||||||
.unknown = Ismeretlen állapot
|
.unknown = Ismeretlen állapot
|
||||||
.unmanaged = Kezeletlen
|
.unmanaged = Kezeletlen
|
||||||
.unplugged = Kábel kihúzva
|
.unplugged = Kábel kihúzva
|
||||||
|
|
@ -113,10 +113,10 @@ vpn = VPN
|
||||||
.error = Nem sikerült hozzáadni a VPN-konfigurációt
|
.error = Nem sikerült hozzáadni a VPN-konfigurációt
|
||||||
.remove = Kapcsolati profil törlése
|
.remove = Kapcsolati profil törlése
|
||||||
.select-file = VPN-konfigurációs fájl kiválasztása
|
.select-file = VPN-konfigurációs fájl kiválasztása
|
||||||
vpn-error = VPN hiba
|
vpn-error = VPN-hiba
|
||||||
.config = Nem sikerült hozzáadni a VPN-konfigurációt
|
.config = Nem sikerült hozzáadni a VPN-konfigurációt
|
||||||
.connect = Nem sikerült csatlakozni a VPN-hez
|
.connect = Nem sikerült kapcsolódni a VPN-hez
|
||||||
.connection-editor = A hálózati beállító nem működik
|
.connection-editor = A kapcsolatszerkesztő nem működik
|
||||||
.connection-settings = Nem sikerült lekérni az aktív kapcsolatok beállításait
|
.connection-settings = Nem sikerült lekérni az aktív kapcsolatok beállításait
|
||||||
.updating-state = Nem sikerült frissíteni a hálózatkezelő állapotát
|
.updating-state = Nem sikerült frissíteni a hálózatkezelő állapotát
|
||||||
.wireguard-config-path = Érvénytelen fájlelérési út a WireGuard konfigurációhoz
|
.wireguard-config-path = Érvénytelen fájlelérési út a WireGuard konfigurációhoz
|
||||||
|
|
@ -129,15 +129,15 @@ vpn-error = VPN hiba
|
||||||
[password-flags] jelszóbeállításait
|
[password-flags] jelszóbeállításait
|
||||||
} az nmclivel
|
} az nmclivel
|
||||||
wired = Vezetékes
|
wired = Vezetékes
|
||||||
.adapter = Vezetékes adapter { $id }
|
.adapter = { $id }. vezetékes adapter
|
||||||
.connections = Vezetékes kapcsolatok
|
.connections = Vezetékes kapcsolatok
|
||||||
.devices = Vezetékes eszközök
|
.devices = Vezetékes eszközök
|
||||||
.remove = Kapcsolati profil törlése
|
.remove = Kapcsolati profil törlése
|
||||||
wifi = Wi-Fi
|
wifi = Wi-Fi
|
||||||
.adapter = Wi-Fi adapter { $id }
|
.adapter = { $id }. Wi-Fi-adapter
|
||||||
.forget = Hálózat elfelejtése
|
.forget = Hálózat elfelejtése
|
||||||
wireguard-dialog = WireGuard eszköz hozzáadása
|
wireguard-dialog = WireGuard eszköz hozzáadása
|
||||||
.description = Válassz egy eszköznevet a WireGuard-konfigurációhoz.
|
.description = Válassz egy eszköznevet a WireGuard konfigurációhoz.
|
||||||
|
|
||||||
## Networking: Online Accounts
|
## Networking: Online Accounts
|
||||||
|
|
||||||
|
|
@ -150,19 +150,19 @@ activate = Aktiválás
|
||||||
confirm = Megerősítés
|
confirm = Megerősítés
|
||||||
enable = Engedélyezés
|
enable = Engedélyezés
|
||||||
bluetooth = Bluetooth
|
bluetooth = Bluetooth
|
||||||
.status = Ez a rendszer { $aliases } néven látható, amíg a Bluetooth beállítások vannak megnyitva.
|
.status = Ez a rendszer { $aliases } néven látható, amíg a Bluetooth beállítások meg vannak nyitva.
|
||||||
.connected = Csatlakoztatva
|
.connected = Kapcsolódva
|
||||||
.connecting = Csatlakozás…
|
.connecting = Kapcsolódás…
|
||||||
.disconnecting = Bontás…
|
.disconnecting = Bontás…
|
||||||
.connect = Csatlakozás
|
.connect = Kapcsolódás
|
||||||
.disconnect = Bontás
|
.disconnect = Bontás
|
||||||
.forget = Elfelejtés
|
.forget = Elfelejtés
|
||||||
.dbus-error = Hiba történt a DBus-szal való kommunikáció során: { $why }
|
.dbus-error = Hiba történt a D-Bus-szal való kommunikáció során: { $why }
|
||||||
.disabled = A Bluetooth szolgáltatás le van tiltva
|
.disabled = A Bluetooth szolgáltatás le van tiltva
|
||||||
.inactive = A Bluetooth szolgáltatás nem aktív
|
.inactive = A Bluetooth szolgáltatás nem aktív
|
||||||
.unknown = A Bluetooth szolgáltatást nem sikerült aktiválni. A BlueZ telepítve van?
|
.unknown = A Bluetooth szolgáltatást nem sikerült aktiválni. A BlueZ telepítve van?
|
||||||
bluetooth-paired = Korábban párosított eszközök
|
bluetooth-paired = Korábban csatlakoztatott eszközök
|
||||||
.connect = Csatlakozás
|
.connect = Kapcsolódás
|
||||||
.battery = { $percentage }% töltöttség
|
.battery = { $percentage }% töltöttség
|
||||||
bluetooth-confirm-pin = Bluetooth PIN megerősítése
|
bluetooth-confirm-pin = Bluetooth PIN megerősítése
|
||||||
.description = Erősítsd meg, hogy a következő PIN megegyezik a(z) { $device } eszközön megjelenített PIN-kóddal
|
.description = Erősítsd meg, hogy a következő PIN megegyezik a(z) { $device } eszközön megjelenített PIN-kóddal
|
||||||
|
|
@ -175,7 +175,7 @@ accessibility = Akadálymentesség
|
||||||
.vision = Látás
|
.vision = Látás
|
||||||
.on = Bekapcsolva
|
.on = Bekapcsolva
|
||||||
.off = Kikapcsolva
|
.off = Kikapcsolva
|
||||||
.unavailable = Nem elérhető
|
.unavailable = Nem érhető el
|
||||||
.screen-reader = Képernyőolvasó
|
.screen-reader = Képernyőolvasó
|
||||||
.high-contrast = Magas kontraszt mód
|
.high-contrast = Magas kontraszt mód
|
||||||
.invert-colors = Színek invertálása
|
.invert-colors = Színek invertálása
|
||||||
|
|
@ -272,10 +272,10 @@ window-hint-accent-toggle = Kiemelőszín használata az aktív ablak kiemelés
|
||||||
auto-switch = Automatikus váltás világos és sötét mód között
|
auto-switch = Automatikus váltás világos és sötét mód között
|
||||||
.sunrise = Napkeltekor világos módra váltás
|
.sunrise = Napkeltekor világos módra váltás
|
||||||
.sunset = Napnyugtakor sötét módra váltás
|
.sunset = Napnyugtakor sötét módra váltás
|
||||||
.next-sunrise = Következő napfelkeltekor világos módra váltás
|
.next-sunrise = Következő napkeltekor világos módra váltás
|
||||||
.next-sunset = Következő napnyugtakor sötét módra váltás
|
.next-sunset = Következő napnyugtakor sötét módra váltás
|
||||||
container-background = Felületi elemek háttere
|
container-background = Felületi elemek háttere
|
||||||
.desc-detail = A felületi elemek háttérszínét a navigációs oldalsáv, az oldalsó menü, a párbeszédablakok és hasonló modulok használják. Alapértelmezés szerint a felületi elemek háttérszíne automatikusan az ablak hátteréből származnak.
|
.desc-detail = A felületi elemek háttérszínét a navigációs oldalsáv, az oldalsó menü, a párbeszédablakok és hasonló modulok használják. Alapértelmezés szerint a felületi elemek háttérszíne automatikusan az ablak hátteréből származik.
|
||||||
.reset = Visszaállítás automatikusra
|
.reset = Visszaállítás automatikusra
|
||||||
.desc = Navigációs oldalsávhoz, oldalsó menühöz, párbeszédablakhoz és hasonló modulokhoz használandó
|
.desc = Navigációs oldalsávhoz, oldalsó menühöz, párbeszédablakhoz és hasonló modulokhoz használandó
|
||||||
control-tint = Vezérlőelemek színezése
|
control-tint = Vezérlőelemek színezése
|
||||||
|
|
@ -283,15 +283,15 @@ control-tint = Vezérlőelemek színezése
|
||||||
frosted = Tejüveg hatás a rendszerfelületen
|
frosted = Tejüveg hatás a rendszerfelületen
|
||||||
.desc = A háttér elmosását alkalmazza a panelre, a dokkra, a kisalkalmazásokra, az indítóra és az alkalmazáskönyvtárra
|
.desc = A háttér elmosását alkalmazza a panelre, a dokkra, a kisalkalmazásokra, az indítóra és az alkalmazáskönyvtárra
|
||||||
enable-export = Jelenlegi téma alkalmazása a GNOME-alkalmazásokra
|
enable-export = Jelenlegi téma alkalmazása a GNOME-alkalmazásokra
|
||||||
.desc = Nem minden eszközkészlet támogatja az automatikus váltást. Előfordulhat, hogy a téma módosítása után újra kell indítani a nem COSMIC-alapú alkalmazásokat.
|
.desc = Nem minden eszközkészlet támogatja az automatikus váltást. Előfordulhat, hogy a téma módosítása után újra kell indítani a nem COSMIC-alkalmazásokat.
|
||||||
icon-theme = Ikontéma
|
icon-theme = Ikontéma
|
||||||
.desc = Más ikonkészletet alkalmaz az alkalmazásokra
|
.desc = Más ikonkészletet alkalmaz az alkalmazásokra
|
||||||
text-tint = Felületi szöveg árnyalata
|
text-tint = Felületi szöveg árnyalata
|
||||||
.desc = A felület szövegszíneinek meghatározására szolgál, hogy azok megfelelő kontrasztot biztosítsanak különböző felületeken
|
.desc = A felület szövegszíneinek meghatározására szolgál, hogy azok megfelelő kontrasztot biztosítsanak különböző felületeken
|
||||||
style = Stílus
|
style = Stílus
|
||||||
.round = Lekerekített
|
.round = Lekerekített
|
||||||
.slightly-round = Némileg lekerekített
|
.slightly-round = Enyhén lekerekített
|
||||||
.square = Négyzetes
|
.square = Szögletes
|
||||||
interface-density = Felületsűrűség
|
interface-density = Felületsűrűség
|
||||||
.comfortable = Kényelmes
|
.comfortable = Kényelmes
|
||||||
.compact = Kompakt
|
.compact = Kompakt
|
||||||
|
|
@ -382,8 +382,8 @@ workspaces-behavior = Munkaterületek viselkedése
|
||||||
.dynamic = Dinamikus munkaterületek
|
.dynamic = Dinamikus munkaterületek
|
||||||
.dynamic-desc = Üres munkaterületek automatikus eltávolítása
|
.dynamic-desc = Üres munkaterületek automatikus eltávolítása
|
||||||
.fixed = Megadott számú munkaterület
|
.fixed = Megadott számú munkaterület
|
||||||
.fixed-desc = Munkaterületek hozzáadása vagy eltávolítása az áttekintésben
|
.fixed-desc = Munkaterületek hozzáadása vagy eltávolítása az áttekintésben.
|
||||||
workspaces-multi-behavior = Többmonitoros viselkedés
|
workspaces-multi-behavior = Többkijelzős viselkedés
|
||||||
.span = A munkaterületek kiterjednek a kijelzőkre
|
.span = A munkaterületek kiterjednek a kijelzőkre
|
||||||
.separate = A kijelzők külön munkaterülettel rendelkeznek
|
.separate = A kijelzők külön munkaterülettel rendelkeznek
|
||||||
workspaces-overview-thumbnails = Munkaterület-áttekintő előnézetek
|
workspaces-overview-thumbnails = Munkaterület-áttekintő előnézetek
|
||||||
|
|
@ -393,7 +393,7 @@ workspaces-orientation = Munkaterületek tájolása
|
||||||
.vertical = Függőleges
|
.vertical = Függőleges
|
||||||
.horizontal = Vízszintes
|
.horizontal = Vízszintes
|
||||||
hot-corner = Aktív sarok
|
hot-corner = Aktív sarok
|
||||||
.top-left-corner = A munkaterületek bal felső aktív sarkának engedélyezése
|
.top-left-corner = Bal felső aktív sarok engedélyezése a munkaterületekhez
|
||||||
|
|
||||||
## Displays
|
## Displays
|
||||||
|
|
||||||
|
|
@ -408,16 +408,16 @@ display = Kijelzők
|
||||||
.arrangement-desc = Húzd a kijelzőket az átrendezésükhöz
|
.arrangement-desc = Húzd a kijelzőket az átrendezésükhöz
|
||||||
.enable = Kijelző engedélyezése
|
.enable = Kijelző engedélyezése
|
||||||
.external = { $size } { $output } külső kijelző
|
.external = { $size } { $output } külső kijelző
|
||||||
.laptop = { $size } laptop kijelző
|
.laptop = { $size } laptopkijelző
|
||||||
.options = Kijelző lehetőségek
|
.options = Kijelzőbeállítások
|
||||||
.refresh-rate = Frissítési gyakoriság
|
.refresh-rate = Frissítési gyakoriság
|
||||||
.resolution = Felbontás
|
.resolution = Felbontás
|
||||||
.scale = Skálázás
|
.scale = Skálázás
|
||||||
.additional-scale-options = További skálázás
|
.additional-scale-options = További skálázás
|
||||||
mirroring = Tükrözés
|
mirroring = Tükrözés
|
||||||
.id = Tükrözés { $id }
|
.id = Tükrözés { $id }
|
||||||
.dont = Ne tükrözzön
|
.dont = Tükrözés kikapcsolása
|
||||||
.mirror = Tükrözze a(z) { $display } kijelzőt
|
.mirror = A(z) { $display } kijelző tükrözése
|
||||||
.project =
|
.project =
|
||||||
Kivetítés { $display ->
|
Kivetítés { $display ->
|
||||||
[all] az összes kijelzőre
|
[all] az összes kijelzőre
|
||||||
|
|
@ -433,9 +433,9 @@ night-light = Éjszakai fény
|
||||||
.desc = Kék fény csökkentése melegebb színekkel
|
.desc = Kék fény csökkentése melegebb színekkel
|
||||||
orientation = Tájolás
|
orientation = Tájolás
|
||||||
.standard = Normál
|
.standard = Normál
|
||||||
.rotate-90 = 90 fokos elforgatás
|
.rotate-90 = Elforgatás 90°-kal
|
||||||
.rotate-180 = 180 fokos elforgatás
|
.rotate-180 = Elforgatás 180°-kal
|
||||||
.rotate-270 = 270 fokos elforgatás
|
.rotate-270 = Elforgatás 270°-kal
|
||||||
vrr = Változó frissítési gyakoriság
|
vrr = Változó frissítési gyakoriság
|
||||||
.enabled = Engedélyezve
|
.enabled = Engedélyezve
|
||||||
.force = Mindig
|
.force = Mindig
|
||||||
|
|
@ -489,11 +489,11 @@ battery = Akkumulátor
|
||||||
[one] nap
|
[one] nap
|
||||||
*[other] nap
|
*[other] nap
|
||||||
}
|
}
|
||||||
.less-than-minute = Kevesebb, mint egy perc
|
.less-than-minute = Kevesebb mint egy perc
|
||||||
.and = és
|
.and = és
|
||||||
.remaining-time =
|
.remaining-time =
|
||||||
{ $time } { $action ->
|
{ $time } { $action ->
|
||||||
[full] a teljes töltöttségig
|
[full] a teljes feltöltésig
|
||||||
*[other] a lemerülésig
|
*[other] a lemerülésig
|
||||||
}
|
}
|
||||||
connected-devices = Csatlakoztatott eszközök
|
connected-devices = Csatlakoztatott eszközök
|
||||||
|
|
@ -546,7 +546,7 @@ keyboard-sources = Bemeneti források
|
||||||
keyboard-special-char = Speciális karakter beírása
|
keyboard-special-char = Speciális karakter beírása
|
||||||
.alternate = Alternatív karakterek billentyűje
|
.alternate = Alternatív karakterek billentyűje
|
||||||
.compose = Kombináló billentyű
|
.compose = Kombináló billentyű
|
||||||
.compose-desc = A kombináló billentyű lehetővé teszi számos karakter bevitelét. Használatához nyomd meg a billentyűt, majd gépeld be a karakterek sorozatát. Például a kombináló billentyű, majd C és o lenyomásával a © jelet kapod, míg a és ‘ után á jelenik meg.
|
.compose-desc = A kombináló billentyű lehetővé teszi számos karakter bevitelét. Használatához nyomd meg a billentyűt, majd gépeld be a karakterek sorozatát. Például a kombináló billentyű, majd „C” és „o” lenyomásával a „©” jelet kapod, míg „a” és „‘” után „á” jelenik meg.
|
||||||
.caps = Caps Lock billentyű
|
.caps = Caps Lock billentyű
|
||||||
keyboard-typing-assist = Gépelés
|
keyboard-typing-assist = Gépelés
|
||||||
.repeat-rate = Ismétlési sebesség
|
.repeat-rate = Ismétlési sebesség
|
||||||
|
|
@ -586,7 +586,7 @@ replace = Csere
|
||||||
shortcut-name = Gyorsbillentyű neve
|
shortcut-name = Gyorsbillentyű neve
|
||||||
system-controls = Rendszervezérlés
|
system-controls = Rendszervezérlés
|
||||||
terminate = Befejezés
|
terminate = Befejezés
|
||||||
toggle-stacking = Az ablakok egymásra helyezésének be- és kikapcsolása
|
toggle-stacking = Ablakok egymásra helyezése be/ki
|
||||||
type-key-combination = Billentyűkombináció
|
type-key-combination = Billentyűkombináció
|
||||||
custom-shortcuts = Egyéni gyorsbillentyűk
|
custom-shortcuts = Egyéni gyorsbillentyűk
|
||||||
.add = Gyorsbillentyű hozzáadása
|
.add = Gyorsbillentyű hozzáadása
|
||||||
|
|
@ -623,7 +623,7 @@ manage-windows = Ablakok kezelése
|
||||||
.minimize = Ablak minimalizálása
|
.minimize = Ablak minimalizálása
|
||||||
.resize-inwards = Ablak átméretezése befelé
|
.resize-inwards = Ablak átméretezése befelé
|
||||||
.resize-outwards = Ablak átméretezése kifelé
|
.resize-outwards = Ablak átméretezése kifelé
|
||||||
.toggle-sticky = Ragadós ablak be- és kikapcsolása
|
.toggle-sticky = Ragadós ablak be/ki
|
||||||
move-windows = Ablakok mozgatása
|
move-windows = Ablakok mozgatása
|
||||||
.direction =
|
.direction =
|
||||||
Ablakok mozgatása { $direction ->
|
Ablakok mozgatása { $direction ->
|
||||||
|
|
@ -633,7 +633,7 @@ move-windows = Ablakok mozgatása
|
||||||
[up] felfelé
|
[up] felfelé
|
||||||
}
|
}
|
||||||
.display =
|
.display =
|
||||||
Ablak mozgatása egy monitorral { $direction ->
|
Ablak mozgatása egy kijelzővel { $direction ->
|
||||||
*[down] lefelé
|
*[down] lefelé
|
||||||
[left] balra
|
[left] balra
|
||||||
[right] jobbra
|
[right] jobbra
|
||||||
|
|
@ -650,15 +650,15 @@ move-windows = Ablakok mozgatása
|
||||||
.prev-workspace = Ablak áthelyezése az előző munkaterületre
|
.prev-workspace = Ablak áthelyezése az előző munkaterületre
|
||||||
.next-workspace = Ablak áthelyezése a következő munkaterületre
|
.next-workspace = Ablak áthelyezése a következő munkaterületre
|
||||||
.last-workspace = Ablak áthelyezése az utolsó munkaterületre
|
.last-workspace = Ablak áthelyezése az utolsó munkaterületre
|
||||||
.next-display = Ablak áthelyezése a következő monitorra
|
.next-display = Ablak áthelyezése a következő kijelzőre
|
||||||
.prev-display = Ablak áthelyezése az előző monitorra
|
.prev-display = Ablak áthelyezése az előző kijelzőre
|
||||||
.send-to-prev-workspace = Ablak áthelyezése az előző munkaterületre
|
.send-to-prev-workspace = Ablak áthelyezése az előző munkaterületre
|
||||||
.send-to-next-workspace = Ablak áthelyezése a következő munkaterületre
|
.send-to-next-workspace = Ablak áthelyezése a következő munkaterületre
|
||||||
system-shortcut = Rendszer
|
system-shortcut = Rendszer
|
||||||
.app-library = Alkalmazáskönyvtár megnyitása
|
.app-library = Alkalmazáskönyvtár megnyitása
|
||||||
.brightness-down = Kijelző fényerejének csökkentése
|
.brightness-down = Kijelző fényerejének csökkentése
|
||||||
.brightness-up = Kijelző fényerejének növelése
|
.brightness-up = Kijelző fényerejének növelése
|
||||||
.display-toggle = Belső kijelző be- vagy kikapcsolása
|
.display-toggle = Belső kijelző be/ki
|
||||||
.home-folder = Saját mappa megnyitása
|
.home-folder = Saját mappa megnyitása
|
||||||
.keyboard-brightness-down = Billentyűzet fényerejének csökkentése
|
.keyboard-brightness-down = Billentyűzet fényerejének csökkentése
|
||||||
.keyboard-brightness-up = Billentyűzet fényerejének növelése
|
.keyboard-brightness-up = Billentyűzet fényerejének növelése
|
||||||
|
|
@ -677,17 +677,17 @@ system-shortcut = Rendszer
|
||||||
.touchpad-toggle = Érintőpárna be- vagy kikapcsolása
|
.touchpad-toggle = Érintőpárna be- vagy kikapcsolása
|
||||||
.volume-lower = Hangkimenet hangerejének csökkentése
|
.volume-lower = Hangkimenet hangerejének csökkentése
|
||||||
.volume-raise = Hangkimenet hangerejének növelése
|
.volume-raise = Hangkimenet hangerejének növelése
|
||||||
.web-browser = Böngésző megnyitása
|
.web-browser = Webböngésző megnyitása
|
||||||
.window-switcher = Váltás a nyitott ablakok között
|
.window-switcher = Váltás a nyitott ablakok között
|
||||||
.window-switcher-previous = Váltás a nyitott ablakok között fordított sorrendben
|
.window-switcher-previous = Váltás a nyitott ablakok között fordított sorrendben
|
||||||
.workspace-overview = Munkaterület áttekintésének megnyitása
|
.workspace-overview = Munkaterület áttekintésének megnyitása
|
||||||
window-tiling = Ablakcsempézés
|
window-tiling = Ablakcsempézés
|
||||||
.horizontal = Vízszintes tájolás beállítása
|
.horizontal = Vízszintes tájolás beállítása
|
||||||
.vertical = Függőleges tájolás beállítása
|
.vertical = Függőleges tájolás beállítása
|
||||||
.swap-window = Ablak felcserélése
|
.swap-window = Ablakok felcserélése
|
||||||
.toggle-tiling = Az ablakok csempézésének be- és kikapcsolása
|
.toggle-tiling = Ablakcsempézés be/ki
|
||||||
.toggle-stacking = Az ablakok egymásra helyezésének be- és kikapcsolása
|
.toggle-stacking = Ablakok egymásra helyezése be/ki
|
||||||
.toggle-floating = Az ablakok lebegtetésének be- és kikapcsolása
|
.toggle-floating = Ablakok lebegtetése be/ki
|
||||||
.toggle-orientation = Tájolás váltása
|
.toggle-orientation = Tájolás váltása
|
||||||
replace-shortcut-dialog = Lecseréled a billentyűt?
|
replace-shortcut-dialog = Lecseréled a billentyűt?
|
||||||
.desc = A(z) { $shortcut } billentyűt a(z) { $name } használja. Ha lecseréled, a(z) { $name } le lesz tiltva.
|
.desc = A(z) { $shortcut } billentyűt a(z) { $name } használja. Ha lecseréled, a(z) { $name } le lesz tiltva.
|
||||||
|
|
@ -697,20 +697,20 @@ zoom-out = Kicsinyítés
|
||||||
## Input: Mouse
|
## Input: Mouse
|
||||||
|
|
||||||
mouse = Egér
|
mouse = Egér
|
||||||
.speed = Egér sebessége
|
.speed = Egérsebesség
|
||||||
.acceleration = Egérgyorsítás engedélyezése
|
.acceleration = Egérgyorsítás engedélyezése
|
||||||
|
|
||||||
## Input: Touchpad
|
## Input: Touchpad
|
||||||
|
|
||||||
click-behavior = Kattintási viselkedés
|
click-behavior = Kattintási viselkedés
|
||||||
.click-finger = Másodlagos kattintás két ujjal és középső kattintás három ujjal
|
.click-finger = Másodlagos kattintás két ujjal és középső kattintás három ujjal
|
||||||
.button-areas = Másodlagos kattintás a jobb alsó sarokban, középső kattintás az alsó középső sarokban
|
.button-areas = Másodlagos kattintás a jobb alsó sarokban és középső kattintás alul középen
|
||||||
pinch-to-zoom = Csippentéses nagyítás
|
pinch-to-zoom = Csippentéses nagyítás
|
||||||
.desc = Két ujjal belenagyíthatsz a tartalomba azokban az alkalmazásokban, amik támogatják a nagyítást
|
.desc = Két ujjal belenagyíthatsz a tartalomba azokban az alkalmazásokban, amik támogatják a nagyítást
|
||||||
tap-to-click = Koppintás a kattintáshoz
|
tap-to-click = Koppintás a kattintáshoz
|
||||||
.desc = Engedélyezi az egyujjas koppintást az elsődleges kattintáshoz, a kétujjas koppintást a másodlagos kattintáshoz és a háromujjas érintést a középső kattintáshoz
|
.desc = Engedélyezi az egyujjas koppintást az elsődleges kattintáshoz, a kétujjas koppintást a másodlagos kattintáshoz és a háromujjas koppintást a középső kattintáshoz
|
||||||
touchpad = Érintőpárna
|
touchpad = Érintőpárna
|
||||||
.acceleration = Az Érintőpárna gyorsításának engedélyezése
|
.acceleration = Az érintőpárna gyorsításának engedélyezése
|
||||||
.speed = Érintőpárna sebessége
|
.speed = Érintőpárna sebessége
|
||||||
|
|
||||||
## Input: Gestures
|
## Input: Gestures
|
||||||
|
|
@ -768,7 +768,7 @@ applications = Alkalmazások
|
||||||
## Applications: Default Applications
|
## Applications: Default Applications
|
||||||
|
|
||||||
default-apps = Alapértelmezett alkalmazások
|
default-apps = Alapértelmezett alkalmazások
|
||||||
.web-browser = Böngésző
|
.web-browser = Webböngésző
|
||||||
.file-manager = Fájlkezelő
|
.file-manager = Fájlkezelő
|
||||||
.mail-client = Levelezőprogram
|
.mail-client = Levelezőprogram
|
||||||
.music = Zene
|
.music = Zene
|
||||||
|
|
@ -786,27 +786,27 @@ startup-apps = Indítási alkalmazások
|
||||||
.add = Alkalmazás hozzáadása
|
.add = Alkalmazás hozzáadása
|
||||||
.user = Bejelentkezéskor indított alkalmazások
|
.user = Bejelentkezéskor indított alkalmazások
|
||||||
.none = Nincs indítási alkalmazás hozzáadva
|
.none = Nincs indítási alkalmazás hozzáadva
|
||||||
.remove-dialog-title = { $name } eltávolítása?
|
.remove-dialog-title = Eltávolítod a(z) { $name } alkalmazást?
|
||||||
.remove-dialog-description = Eltávolítod ezt az indítási alkalmazást?
|
.remove-dialog-description = Eltávolítod ezt az indítási alkalmazást?
|
||||||
.add-startup-app = Indítási alkalmazás hozzáadása
|
.add-startup-app = Indítási alkalmazás hozzáadása
|
||||||
|
|
||||||
## Applications: Legacy Applications
|
## Applications: Legacy Applications
|
||||||
|
|
||||||
legacy-applications = X11 alkalmazások támogatása
|
legacy-applications = X11-alkalmazások támogatása
|
||||||
legacy-app-global-shortcuts = Globális gyorsbillentyűk X11 alkalmazásokban
|
legacy-app-global-shortcuts = Globális gyorsbillentyűk X11-alkalmazásokban
|
||||||
.desc = A globális gyorsbillentyűk lehetővé teszik, hogy az alkalmazásokban a billentyűleütéseket és egérkattintásokat más alkalmazások is felismerjék, például a „push-to-talk” vagy a „push-to-mute” funkciókhoz. Alapértelmezés szerint a globális gyorsbillentyűk az X11 alkalmazásokban le van tiltva, hogy más alkalmazások ne figyelhessék a billentyű- és egéreseményeket, amelyek érzékeny információkat tartalmazhatnak.
|
.desc = A globális gyorsbillentyűk lehetővé teszik, hogy az alkalmazásokban a billentyűleütéseket és egérkattintásokat más alkalmazások is felismerjék, például a „push-to-talk” vagy a „push-to-mute” funkciókhoz. Alapértelmezés szerint a globális gyorsbillentyűk az X11-alkalmazásokban le van tiltva, hogy más alkalmazások ne figyelhessék a billentyű- és egéreseményeket, amelyek érzékeny információkat tartalmazhatnak.
|
||||||
.none = Nincs billentyű
|
.none = Nincs billentyű
|
||||||
.modifiers = Módosítók (Super, Shift, Control, Alt)
|
.modifiers = Módosítók (Super, Shift, Control, Alt)
|
||||||
.combination = Minden billentyű, miközben a Super, Control vagy Alt módosítók lenyomva vannak
|
.combination = Minden billentyű, miközben a Super, Control vagy Alt módosítók lenyomva vannak
|
||||||
.all = Minden billentyű
|
.all = Minden billentyű
|
||||||
.mouse = Egérgomb-események X11 alkalmazásokban
|
.mouse = Egérgomb-események X11-alkalmazásokban
|
||||||
legacy-app-scaling = X11-ablakrendszer alkalmazásméretezés
|
legacy-app-scaling = X11-alkalmazások méretezése
|
||||||
.scaled-gaming = Optimalizálás játékokra és teljes képernyős alkalmazásokra
|
.scaled-gaming = Optimalizálás játékokra és teljes képernyős alkalmazásokra
|
||||||
.gaming-description = Az X11 alkalmazások kicsit nagyobbnak/kisebbnek tűnhetnek a Wayland alkalmazásokhoz képest
|
.gaming-description = Az X11-alkalmazások kicsit nagyobbnak/kisebbnek tűnhetnek a Wayland-alkalmazásokhoz képest
|
||||||
.scaled-applications = Optimalizálás alkalmazásokra
|
.scaled-applications = Optimalizálás alkalmazásokra
|
||||||
.applications-description = A játékok és a teljes képernyős X11 alkalmazások felbontása eltérhet a kijelző natív felbontásától
|
.applications-description = A játékok és a teljes képernyős X11-alkalmazások felbontása eltérhet a kijelző natív felbontásától
|
||||||
.scaled-compatibility = Maximális kompatibilitási mód
|
.scaled-compatibility = Maximális kompatibilitási mód
|
||||||
.compatibility-description = Az X11 alkalmazások elmosódottan jelenhetnek meg HiDPI képernyőkön
|
.compatibility-description = Az X11-alkalmazások elmosódottan jelenhetnek meg HiDPI képernyőkön
|
||||||
.preferred-display = Preferált kijelző játékokhoz és teljes képernyős X11-alkalmazásokhoz
|
.preferred-display = Preferált kijelző játékokhoz és teljes képernyős X11-alkalmazásokhoz
|
||||||
.no-display = Nincs
|
.no-display = Nincs
|
||||||
|
|
||||||
|
|
@ -817,7 +817,7 @@ system = Rendszer és fiókok
|
||||||
## System: About
|
## System: About
|
||||||
|
|
||||||
about = Rendszerinformáció
|
about = Rendszerinformáció
|
||||||
about-device = Eszköz neve
|
about-device = Eszköznév
|
||||||
.desc = Ez a név más hálózati vagy Bluetooth-eszközök számára látható
|
.desc = Ez a név más hálózati vagy Bluetooth-eszközök számára látható
|
||||||
about-hardware = Hardver
|
about-hardware = Hardver
|
||||||
.model = Hardvermodell
|
.model = Hardvermodell
|
||||||
|
|
@ -828,7 +828,7 @@ about-hardware = Hardver
|
||||||
about-os = Operációs rendszer
|
about-os = Operációs rendszer
|
||||||
.os = Operációs rendszer
|
.os = Operációs rendszer
|
||||||
.os-architecture = Operációs rendszer architektúra
|
.os-architecture = Operációs rendszer architektúra
|
||||||
.kernel = Kernel verzió
|
.kernel = Kernelverzió
|
||||||
.desktop-environment = Asztali környezet
|
.desktop-environment = Asztali környezet
|
||||||
.windowing-system = Ablakrendszer
|
.windowing-system = Ablakrendszer
|
||||||
about-related = Kapcsolódó beállítások
|
about-related = Kapcsolódó beállítások
|
||||||
|
|
@ -858,7 +858,7 @@ amplification = Erősítés
|
||||||
qr-code-unavailable = Nem érhető el a QR-kód
|
qr-code-unavailable = Nem érhető el a QR-kód
|
||||||
network-name = Hálózat neve
|
network-name = Hálózat neve
|
||||||
share = Hálózat megosztása
|
share = Hálózat megosztása
|
||||||
scan-to-connect-description = Olvasd be a QR-kódot a hálózathoz való csatlakozáshoz.
|
scan-to-connect-description = Olvasd be a QR-kódot a hálózathoz való kapcsolódáshoz.
|
||||||
place-here = Helyezd ide a kisalkalmazásokat
|
place-here = Helyezd ide a kisalkalmazásokat
|
||||||
sound-device-port-unplugged = Nincs csatlakoztatva
|
sound-device-port-unplugged = Nincs csatlakoztatva
|
||||||
sound-hd-audio = HD-hang
|
sound-hd-audio = HD-hang
|
||||||
|
|
@ -884,7 +884,7 @@ xdg-entry-panel-keywords = COSMIC;Panel;Kisalkalmazás;
|
||||||
xdg-entry-time-language-comment = Rendszerdátum, idő, régió és a nyelv kezelése
|
xdg-entry-time-language-comment = Rendszerdátum, idő, régió és a nyelv kezelése
|
||||||
xdg-entry-desktop-keywords = COSMIC;Asztal;
|
xdg-entry-desktop-keywords = COSMIC;Asztal;
|
||||||
xdg-entry-system-keywords = COSMIC;Rendszer;Információk;Fiókok;Firmware;
|
xdg-entry-system-keywords = COSMIC;Rendszer;Információk;Fiókok;Firmware;
|
||||||
xdg-entry-about-keywords = COSMIC;Névjegy
|
xdg-entry-about-keywords = COSMIC;Névjegy;
|
||||||
xdg-entry-panel = Panel
|
xdg-entry-panel = Panel
|
||||||
xdg-entry-a11y-keywords = COSMIC;Akadálymentesség;Képernyő;Olvasó;Nagyító;Kontraszt;Szín;
|
xdg-entry-a11y-keywords = COSMIC;Akadálymentesség;Képernyő;Olvasó;Nagyító;Kontraszt;Szín;
|
||||||
xdg-entry-date-time-keywords = COSMIC;Idő;Zóna;
|
xdg-entry-date-time-keywords = COSMIC;Idő;Zóna;
|
||||||
|
|
@ -912,5 +912,7 @@ xdg-entry-wallpaper-keywords = COSMIC;Háttérkép;Háttér;Diavetítés;
|
||||||
xdg-entry-users-keywords = COSMIC;Felhasználó;Fiók;
|
xdg-entry-users-keywords = COSMIC;Felhasználó;Fiók;
|
||||||
xdg-entry-vpn-keywords = COSMIC;VPN;Hálózat;Kapcsolat;OpenVPN;OpenConnect;
|
xdg-entry-vpn-keywords = COSMIC;VPN;Hálózat;Kapcsolat;OpenVPN;OpenConnect;
|
||||||
xdg-entry-comment = Beállításalkalmazás a COSMIC asztalhoz
|
xdg-entry-comment = Beállításalkalmazás a COSMIC asztalhoz
|
||||||
xdg-entry-window-management-keywords = COSMIC;Ablak;Kezelés;Csempézés;Super;BIllentyű;
|
xdg-entry-window-management-keywords = COSMIC;Ablak;Kezelés;Csempézés;Super;Billentyű;
|
||||||
no-search-results = Nem található a keresésnek megfelelő hálózat.
|
no-search-results = Nem található a keresésnek megfelelő hálózat.
|
||||||
|
workspaces-navigation = Navigáció
|
||||||
|
.wraparound = Váltás az első és az utolsó munkaterület között gyorsbillentyűkkel és gesztusokkal
|
||||||
|
|
|
||||||
2
i18n/id/cosmic_settings.ftl
vendored
2
i18n/id/cosmic_settings.ftl
vendored
|
|
@ -818,3 +818,5 @@ xdg-entry-x11-applications = Kompatibilitas Aplikasi X11
|
||||||
xdg-entry-window-management-comment = Tindakan tombol Super, opsi kontrol jendela, dan pengubinan jendela tambahan
|
xdg-entry-window-management-comment = Tindakan tombol Super, opsi kontrol jendela, dan pengubinan jendela tambahan
|
||||||
xdg-entry-wired-comment = Sambungan berkabel dan profil sambungan
|
xdg-entry-wired-comment = Sambungan berkabel dan profil sambungan
|
||||||
no-search-results = Tidak ada jaringan yang sesuai pencarian anda.
|
no-search-results = Tidak ada jaringan yang sesuai pencarian anda.
|
||||||
|
workspaces-navigation = Navigasi
|
||||||
|
.wraparound = Pindahkan antara ruang kerja pertama dan terakhir menggunakan pintasan papan ketik dan gerakan
|
||||||
|
|
|
||||||
2
i18n/kk/cosmic_settings.ftl
vendored
2
i18n/kk/cosmic_settings.ftl
vendored
|
|
@ -818,3 +818,5 @@ xdg-entry-x11-applications = X11 қолданбаларының үйлесімд
|
||||||
xdg-entry-window-management-comment = Super пернесінің әрекеті, терезелерді басқару опциялары және терезелерді қатар қоюдың қосымша опциялары
|
xdg-entry-window-management-comment = Super пернесінің әрекеті, терезелерді басқару опциялары және терезелерді қатар қоюдың қосымша опциялары
|
||||||
xdg-entry-wired-comment = Сымды қосылымдар және қосылымдар профильдері
|
xdg-entry-wired-comment = Сымды қосылымдар және қосылымдар профильдері
|
||||||
no-search-results = Сіздің іздеуіңізге ешбір желі сәйкес келмейді.
|
no-search-results = Сіздің іздеуіңізге ешбір желі сәйкес келмейді.
|
||||||
|
workspaces-navigation = Навигация
|
||||||
|
.wraparound = Бірінші және соңғы жұмыс орындары арасында пернетақта жарлықтары мен ым қимылдар арқылы ауысу
|
||||||
|
|
|
||||||
17
i18n/ko/cosmic_settings.ftl
vendored
17
i18n/ko/cosmic_settings.ftl
vendored
|
|
@ -764,3 +764,20 @@ xdg-entry-workspaces = 작업 공간
|
||||||
xdg-entry-date-time-comment = 시간대와 자동 시계 설정 및 시간 형식
|
xdg-entry-date-time-comment = 시간대와 자동 시계 설정 및 시간 형식
|
||||||
xdg-entry-x11-applications = X11 앱 호환성
|
xdg-entry-x11-applications = X11 앱 호환성
|
||||||
xdg-entry-wired-comment = 유선 연결 및 연결 프로필
|
xdg-entry-wired-comment = 유선 연결 및 연결 프로필
|
||||||
|
xdg-entry-touchpad = 터치패드
|
||||||
|
xdg-entry-startup-apps-comment = 로그인 시 실행할 앱 설정
|
||||||
|
xdg-entry-region-language = 지역 & 언어
|
||||||
|
xdg-entry-startup-apps-keywords = COSMIC;시작;앱;
|
||||||
|
xdg-entry-system = 시스템 & 계정
|
||||||
|
xdg-entry-time-language-comment = 시스템 날짜와 시간, 지역 및 언어 관리
|
||||||
|
xdg-entry-touchpad-keywords = COSMIC;터치패드;제스처;
|
||||||
|
xdg-entry-time-language = 시간 & 언어
|
||||||
|
xdg-entry-users = 사용자
|
||||||
|
xdg-entry-system-keywords = COSMIC;시스템;정보;계정;펌웨어;
|
||||||
|
xdg-entry-users-comment = 인증 및 사용자 계정
|
||||||
|
xdg-entry-startup-apps = 시작 앱
|
||||||
|
xdg-entry-system-comment = 시스템 정보와 계정 및 펌웨어 업데이트
|
||||||
|
xdg-entry-region-language-comment = 지역에 기반한 날짜와 시간 및 숫자 형식
|
||||||
|
xdg-entry-time-language-keywords = COSMIC;시스템;시간;날짜;지역;언어;
|
||||||
|
xdg-entry-sound-keywords = COSMIC;소리;오디오;알림;Pipewire;
|
||||||
|
xdg-entry-sound = 소리
|
||||||
|
|
|
||||||
0
i18n/lo/cosmic_settings.ftl
vendored
Normal file
0
i18n/lo/cosmic_settings.ftl
vendored
Normal file
204
i18n/lt/cosmic_settings.ftl
vendored
204
i18n/lt/cosmic_settings.ftl
vendored
|
|
@ -1,9 +1,9 @@
|
||||||
time-region = Regionas ir kalba
|
time-region = Regionas ir kalba
|
||||||
panel-left = Kairė
|
panel-left = Kairė
|
||||||
super-key = Super klavišo veiksmas
|
super-key = Super klavišo veiksmas
|
||||||
.launcher = Atidaryti aplikacijų paleidėją
|
.launcher = Atverti programų leistuką
|
||||||
.workspaces = Atidaryti darbo sritis
|
.workspaces = Atidaryti darbo sritis
|
||||||
.applications = Atidaryti aplikaciją
|
.applications = Atidaryti programą
|
||||||
.disable = Neaktyvus
|
.disable = Neaktyvus
|
||||||
x-minutes =
|
x-minutes =
|
||||||
{ $number } { $number ->
|
{ $number } { $number ->
|
||||||
|
|
@ -28,8 +28,8 @@ save = Išsaugoti
|
||||||
vpn-error = VPN klaida
|
vpn-error = VPN klaida
|
||||||
.config = Nepavyko pridėti VPN konfigūracijos
|
.config = Nepavyko pridėti VPN konfigūracijos
|
||||||
.connect = Nepavyko prisijungti prie VPN
|
.connect = Nepavyko prisijungti prie VPN
|
||||||
.connection-editor = Prisijungimo redaguoklės problema
|
.connection-editor = Ryšio rengyklės triktis
|
||||||
.connection-settings = Nepavyko gauti aktyvaus prisijungimo nustatymų
|
.connection-settings = Nepavyko gauti veikiančių ryšių nuostatų
|
||||||
.updating-state = Nepavyko atnaujinti tinklo valdytojo būsenos
|
.updating-state = Nepavyko atnaujinti tinklo valdytojo būsenos
|
||||||
.wireguard-config-path = Klaidingas WireGuard nustatymų failo kelio vardas
|
.wireguard-config-path = Klaidingas WireGuard nustatymų failo kelio vardas
|
||||||
.wireguard-config-path-desc = Pasirinktas failas turi būti lokalioje failų sistemoje.
|
.wireguard-config-path-desc = Pasirinktas failas turi būti lokalioje failų sistemoje.
|
||||||
|
|
@ -46,7 +46,7 @@ no-applets-found = Apletų nerasta...
|
||||||
region = Regionas
|
region = Regionas
|
||||||
zoom-in = Priartinti
|
zoom-in = Priartinti
|
||||||
place-here = Padėti apletą čia
|
place-here = Padėti apletą čia
|
||||||
-requires-restart = Reikalingas paleidimas iš naujo
|
-requires-restart = Reikia paleisti iš naujo
|
||||||
workspaces-orientation = Darbo sričių orientacija
|
workspaces-orientation = Darbo sričių orientacija
|
||||||
.vertical = Vertikali
|
.vertical = Vertikali
|
||||||
.horizontal = Horizontali
|
.horizontal = Horizontali
|
||||||
|
|
@ -55,7 +55,7 @@ all-displays = Visi ekranai
|
||||||
scheduling = Planavimas
|
scheduling = Planavimas
|
||||||
.manual = Rankininis planavimas
|
.manual = Rankininis planavimas
|
||||||
frosted = Apšalusio stiklo efektas sistemos komponentuose
|
frosted = Apšalusio stiklo efektas sistemos komponentuose
|
||||||
.desc = Taikomas fono suliejimas panelėje, aplikacijos doke, apletuose, programų paleidyklėje ir aplikacijų bibliotekoje
|
.desc = Taikomas fono suliejimas skydelyje, doke, apletuose, programų paleidyklėje ir programų bibliotekoje
|
||||||
password = Slaptažodis
|
password = Slaptažodis
|
||||||
about-hardware = Aparatinė įranga
|
about-hardware = Aparatinė įranga
|
||||||
.model = Modelis
|
.model = Modelis
|
||||||
|
|
@ -66,9 +66,9 @@ about-hardware = Aparatinė įranga
|
||||||
short = Trumpas
|
short = Trumpas
|
||||||
vpn = VPN
|
vpn = VPN
|
||||||
.connections = VPN prisijungimai
|
.connections = VPN prisijungimai
|
||||||
.error = Nepavyko pridėti VPN nustatymų
|
.error = Nepavyko pridėti VPN nuostatų
|
||||||
.remove = Pašalinti prisijungimo profilį
|
.remove = Pašalinti prisijungimo profilį
|
||||||
.select-file = Pasirinkti VPN konfigūracinė failą
|
.select-file = Pasirinkti VPN konfigūracijos failą
|
||||||
power-mode = Maitinimo režimas
|
power-mode = Maitinimo režimas
|
||||||
.battery = Ilgesnis baterijos veikimo laikas
|
.battery = Ilgesnis baterijos veikimo laikas
|
||||||
.battery-desc = Mažesnis energijos suvartojimas ir tylus veikimas
|
.battery-desc = Mažesnis energijos suvartojimas ir tylus veikimas
|
||||||
|
|
@ -83,7 +83,7 @@ wired = Laidinis
|
||||||
.devices = Laidiniai įrenginiai
|
.devices = Laidiniai įrenginiai
|
||||||
.remove = Pašalinti ryšio profilį
|
.remove = Pašalinti ryšio profilį
|
||||||
bluetooth-available = Įrenginiai netoliese
|
bluetooth-available = Įrenginiai netoliese
|
||||||
cable-unplugged = Kabelis neprijungtas
|
cable-unplugged = Kabelis atjungtas
|
||||||
color-picker = Spalvų pipetė
|
color-picker = Spalvų pipetė
|
||||||
interface-font = Sistemos šriftas
|
interface-font = Sistemos šriftas
|
||||||
forget-dialog = Pamirštį šį Wi-Fi tinklą?
|
forget-dialog = Pamirštį šį Wi-Fi tinklą?
|
||||||
|
|
@ -96,19 +96,19 @@ hot-corner = Aktyvusis Kampas (Hot Corner)
|
||||||
keyboard-typing-assist = Rašymas
|
keyboard-typing-assist = Rašymas
|
||||||
.repeat-rate = Pakartojimo dažnis
|
.repeat-rate = Pakartojimo dažnis
|
||||||
.repeat-delay = Pakartojimo uždelsimas
|
.repeat-delay = Pakartojimo uždelsimas
|
||||||
edge-gravity = Slankių langų trauka prie artimiausių kraštų
|
edge-gravity = Slankūs langai traukiami prie artimiausių kraštų
|
||||||
bluetooth = Bluetooth
|
bluetooth = Bluetooth
|
||||||
.status = Jūsų įrenginys matomas kaip { $aliases }, kol Bluetooth nustatymai bus įjungti.
|
.status = Jūsų įrenginys matomas kaip { $aliases }, kol Bluetooth nuostatos bus įjungtos.
|
||||||
.connected = Prisijungta
|
.connected = Prisijungta
|
||||||
.connecting = Jungiamasi
|
.connecting = Jungiamasi
|
||||||
.disconnecting = Atsijungiama
|
.disconnecting = Atsijungiama
|
||||||
.connect = Prisijungti
|
.connect = Prisijungti
|
||||||
.disconnect = Atsijungti
|
.disconnect = Atsijungti
|
||||||
.forget = Pamiršti
|
.forget = Pamiršti
|
||||||
.dbus-error = Įvyko klaida procese su DBus: { $why }
|
.dbus-error = Klaida veikiant su DBus: { $why }
|
||||||
.disabled = Bluetooth funkcionalumas išjungtas
|
.disabled = Bluetooth tarnyba išjungta
|
||||||
.inactive = Bluetooth functionalumas neaktyvus
|
.inactive = Bluetooth tarnyba neaktyvi
|
||||||
.unknown = Bluetooth functionalumas negali būti aktyvuotas. Ar jūsų įrenginys įdiegtas BlueZ paketas?
|
.unknown = Nepavyksta altyvuoti Bluetooth tarnybos. Ar jūsų įrenginyje įdiegtas BlueZ paketas?
|
||||||
amplification = Stiprinimas
|
amplification = Stiprinimas
|
||||||
.desc = Leidžia padidinti garsumą iki 150%
|
.desc = Leidžia padidinti garsumą iki 150%
|
||||||
recent-colors = Pastarosios spalvos
|
recent-colors = Pastarosios spalvos
|
||||||
|
|
@ -119,7 +119,7 @@ about-os = Operacinė sistema
|
||||||
.desktop-environment = Darbalaukio aplinka
|
.desktop-environment = Darbalaukio aplinka
|
||||||
.windowing-system = Langų valdymo sistema
|
.windowing-system = Langų valdymo sistema
|
||||||
panel-behavior-and-position = Elgsena ir pozicija
|
panel-behavior-and-position = Elgsena ir pozicija
|
||||||
.autohide = Automatiškai slėpti panelę
|
.autohide = Automatiškai slėpti skydelį
|
||||||
.dock-autohide = Automatiškai slėpti doką
|
.dock-autohide = Automatiškai slėpti doką
|
||||||
.position = Pozicija ekrane
|
.position = Pozicija ekrane
|
||||||
.display = Rodyti ekrane
|
.display = Rodyti ekrane
|
||||||
|
|
@ -137,9 +137,9 @@ accessibility = Prieinamumas
|
||||||
.color-filters = Spalvų filtrai
|
.color-filters = Spalvų filtrai
|
||||||
firmware = Programinė aparatinė įranga
|
firmware = Programinė aparatinė įranga
|
||||||
container-background = Įrankių fono spalva
|
container-background = Įrankių fono spalva
|
||||||
.desc-detail = Įrankių fono spalva naudojama navigavimo šonjuostėse, šoniniame stalčiuje, iššokančiuose languose ir panašiuose komponentuose. Pagal numatytus nustatymus, ši fono spalva automatiškai parenkama pagal lango fono spalvą.
|
.desc-detail = Įrankių fono spalva naudojama naršymo šonjuostėse, šoniniame meniu, iššokančiuose languose ir panašiuose komponentuose. Pagal numatytus nustatymus, ši fono spalva automatiškai parenkama pagal lango fono spalvą.
|
||||||
.reset = Atstatyti į automatinį
|
.reset = Atstatyti į automatinį
|
||||||
.desc = Naudojama navigavimo šonjuostėse, šoniniame stalčiuje, iššokančiuose languose ir panašiuose komponentuose
|
.desc = Naudojama naršymo šonjuostėse, šoniniame meniu, iššokančiuose languose ir panašiuose komponentuose
|
||||||
primary-button = Pagrindiniai mygtukai
|
primary-button = Pagrindiniai mygtukai
|
||||||
.desc = Nustato fizinių mygtukų tvarką
|
.desc = Nustato fizinių mygtukų tvarką
|
||||||
.left = Kairė
|
.left = Kairė
|
||||||
|
|
@ -148,7 +148,7 @@ sound-alerts = Įspėjimai
|
||||||
.volume = Įspėjimo garsumas
|
.volume = Įspėjimo garsumas
|
||||||
.sound = Įspėjimo garsas
|
.sound = Įspėjimo garsas
|
||||||
icon-theme = Piktogramų tema
|
icon-theme = Piktogramų tema
|
||||||
.desc = Skirtingų piktogramų rinkinių taikymas aplikacijoms
|
.desc = Skirtingų piktogramų rinkinių taikymas programoms
|
||||||
import = Importuoti
|
import = Importuoti
|
||||||
keyboard-shortcuts = Klaviatūros spartieji klavišai
|
keyboard-shortcuts = Klaviatūros spartieji klavišai
|
||||||
.desc = Peržiūrėti ir modifikuoti sparčiuosius klavišus
|
.desc = Peržiūrėti ir modifikuoti sparčiuosius klavišus
|
||||||
|
|
@ -180,7 +180,7 @@ sound-input = Įvestis
|
||||||
add-another-keybinding = Pridėti kitą klavišų kombinacija
|
add-another-keybinding = Pridėti kitą klavišų kombinacija
|
||||||
copy-to-clipboard = Kopijuoti į iškarpinę
|
copy-to-clipboard = Kopijuoti į iškarpinę
|
||||||
monospace-font = Lygiaplotis šriftas
|
monospace-font = Lygiaplotis šriftas
|
||||||
experimental-settings = Eksperimentiniai nustatymai
|
experimental-settings = Eksperimentinės nuostatos
|
||||||
recent-folders = Pastarieji aplankai
|
recent-folders = Pastarieji aplankai
|
||||||
color-filter = Spalvų filtrų tipai
|
color-filter = Spalvų filtrų tipai
|
||||||
.unknown = Aktyvus nežinomas filtras
|
.unknown = Aktyvus nežinomas filtras
|
||||||
|
|
@ -234,10 +234,10 @@ x-hours =
|
||||||
}
|
}
|
||||||
added = Pridėta
|
added = Pridėta
|
||||||
input-source-switch = Perjungti klaviatūros kalbos įvesties šaltinį
|
input-source-switch = Perjungti klaviatūros kalbos įvesties šaltinį
|
||||||
focus-navigation = Navigacija pagal fokusą
|
focus-navigation = Aktyvaus lango vairavimas
|
||||||
.focus-follows-cursor = Fokusas seka žymeklį
|
.focus-follows-cursor = Aktyvuoti langą po žymekliu
|
||||||
.focus-follows-cursor-delay = Fokusas seka žymeklį su atidėjimu (mikrosekundės)
|
.focus-follows-cursor-delay = Delsa ms kol langas po žymekliu bus aktyvuotas
|
||||||
.cursor-follows-focus = Žymeklis seka fokusą
|
.cursor-follows-focus = Perkelti žymeklį į aktyvų langą
|
||||||
full-name = Vardas ir Pavardė
|
full-name = Vardas ir Pavardė
|
||||||
app-background = Lango fonas
|
app-background = Lango fonas
|
||||||
panel-right = Dešinė
|
panel-right = Dešinė
|
||||||
|
|
@ -283,19 +283,19 @@ preferred-languages = Pageidaujamos kalbos
|
||||||
.desc = Kalbų tvarka nulemia, kuri kalba bus naudojama naudotojo sąsajoje. Pakeitimai įsigalios po kito prisijungimo.
|
.desc = Kalbų tvarka nulemia, kuri kalba bus naudojama naudotojo sąsajoje. Pakeitimai įsigalios po kito prisijungimo.
|
||||||
display = Monitoriai
|
display = Monitoriai
|
||||||
.arrangement = Monitorių išdėstyimas
|
.arrangement = Monitorių išdėstyimas
|
||||||
.arrangement-desc = Pertvarkite monitorius velkant juos
|
.arrangement-desc = Perdėstykite monitorius juos vilkdami
|
||||||
.enable = Įjungti monitorių
|
.enable = Įjungti monitorių
|
||||||
.external = { $size } { $output } išorinis monitorius
|
.external = { $size } { $output } išorinis monitorius
|
||||||
.laptop = { $size } nešiojamo kompiuterio monitorius
|
.laptop = { $size } nešiojamo kompiuterio monitorius
|
||||||
.options = Monitoriaus parinktys
|
.options = Monitoriaus parinktys
|
||||||
.refresh-rate = Atnaujinimo dažnis
|
.refresh-rate = Atnaujinimo dažnis
|
||||||
.resolution = Rezoliucija
|
.resolution = Raiška
|
||||||
.scale = Mastelis
|
.scale = Mastelis
|
||||||
.additional-scale-options = Papildomos mastelio parinktys
|
.additional-scale-options = Papildomos mastelio parinktys
|
||||||
panel-style = Stilius
|
panel-style = Stilius
|
||||||
.anchor-gap = Tarpas tarp panelės ir ekrano krašto
|
.anchor-gap = Tarpas tarp skydelio ir ekrano krašto
|
||||||
.dock-anchor-gap = Tarpas tarp doko ir ekrano krašto
|
.dock-anchor-gap = Tarpas tarp doko ir ekrano krašto
|
||||||
.extend = Ištęsti panelę iki ekrano kraštų
|
.extend = Ištęsti skydelį iki ekrano kraštų
|
||||||
.dock-extend = Ištęsti doką iki ekrano kraštų
|
.dock-extend = Ištęsti doką iki ekrano kraštų
|
||||||
.appearance = Išvaizda
|
.appearance = Išvaizda
|
||||||
.size = Dydis
|
.size = Dydis
|
||||||
|
|
@ -305,35 +305,35 @@ panel-appearance = Išvaizda
|
||||||
.match = Pagal darbalaukį
|
.match = Pagal darbalaukį
|
||||||
.light = Šviesi
|
.light = Šviesi
|
||||||
.dark = Tamsi
|
.dark = Tamsi
|
||||||
workspaces-multi-behavior = Elgsena su keletais monitoriais
|
workspaces-multi-behavior = Darbas su keliais monitoriais
|
||||||
.span = Darbo sritis tęsiasi per visus monitorius
|
.span = Darbo sritis tęsiasi per visus monitorius
|
||||||
.separate = Kiekvienas monitorius turi savo atskirą darbo sritį
|
.separate = Kiekvieno monitoriaus darbo sritis atskira
|
||||||
replace-shortcut-dialog = Pakeisti spartųjį klavišą?
|
replace-shortcut-dialog = Pakeisti spartųjį klavišą?
|
||||||
.desc = { $shortcut } naudoja { $name }. Jeigu norite pakeisti, { $name } bus išjungtas.
|
.desc = { $shortcut } naudoja { $name }. Jeigu norite pakeisti, { $name } bus išjungtas.
|
||||||
rgb = RŽM
|
rgb = RŽM
|
||||||
about-device = Įrenginio vardas
|
about-device = Įrenginio vardas
|
||||||
.desc = Šis pavadinimas rodomas kitiems tinklo arba „Bluetooth“ įrenginiams
|
.desc = Šis pavadinimas rodomas kitiems tinklo arba „Bluetooth“ įrenginiams
|
||||||
no-vpn = VPN ryšys nėra prieinamas.
|
no-vpn = Nėra prieinamų VPN ryšių
|
||||||
start-segment = Pradžios segmentas
|
start-segment = Pradžios segmentas
|
||||||
desktop = Darbalaukis
|
desktop = Darbalaukis
|
||||||
identity = Tapatybė
|
identity = Tapatybė
|
||||||
reset-to-default = Atstatyti į numatytas reikšmes
|
reset-to-default = Atstatyti į numatytas reikšmes
|
||||||
disconnect = Atjungti
|
disconnect = Atjungti
|
||||||
ok = Gerai
|
ok = Gerai
|
||||||
app = COSMIC Settings
|
app = COSMIC Nuostatos
|
||||||
debug = Derinti
|
debug = Derinti
|
||||||
sound = Garsas
|
sound = Garsas
|
||||||
enable-export = Taikyti dabartinę temą GNOME aplikacijose
|
enable-export = Taikyti dabartinę temą GNOME aplikacijose
|
||||||
.desc = Ne visi programiniai rinkiniai palaiko automatinį perjungimą. Po temos pakeitimo , ne COSMIC tipo aplikacijoms gali prireikti paleidimo iš naujo.
|
.desc = Ne visi programiniai rinkiniai palaiko automatinį perjungimą. Pakeitus temą , gali reikėti iš naujo paleisti ne COSMIC tipo programas..
|
||||||
number = { $number }
|
number = { $number }
|
||||||
shortcut-name = Sparčių klavišų derinio pavadinimas
|
shortcut-name = Sparčių klavišų derinio pavadinimas
|
||||||
style = Stilius
|
style = Stilius
|
||||||
.round = Apvalus
|
.round = Apvalus
|
||||||
.slightly-round = Lengvai apvalus
|
.slightly-round = Truputį suapvalintas
|
||||||
.square = Kampuotas
|
.square = Kampuotas
|
||||||
panel-applets = Konfigūracija
|
panel-applets = Konfigūracija
|
||||||
.dock-desc = Konfigūruoti doko apletus
|
.dock-desc = Konfigūruoti doko apletus
|
||||||
.desc = Konfigūruoti panelės apletus
|
.desc = Konfigūruoti skydelio apletus
|
||||||
qr-code-unavailable = QR kodas negalimas
|
qr-code-unavailable = QR kodas negalimas
|
||||||
small = Mažas
|
small = Mažas
|
||||||
notifications = Pranešimai
|
notifications = Pranešimai
|
||||||
|
|
@ -368,8 +368,8 @@ legacy-app-scaling = X11 langų sistemos programų mastelis
|
||||||
.preferred-display = Pageidaujamas žaidimų ir viso ekrano X11 programų ekranas
|
.preferred-display = Pageidaujamas žaidimų ir viso ekrano X11 programų ekranas
|
||||||
.no-display = Joks
|
.no-display = Joks
|
||||||
night-light = Nakties šviesa
|
night-light = Nakties šviesa
|
||||||
.auto = Automatinė (nuo saulėlydžio iki saulėtekio)
|
.auto = Automatiškai (nuo saulėlydžio iki saulėtekio)
|
||||||
.desc = Sumažinta mėlyna šviesa ir padidinamas spalvų šiltumas
|
.desc = Mažiau mėlynos šviesos ir šiltesnės spalvos
|
||||||
about = Apie
|
about = Apie
|
||||||
input-devices = Įvesties įrenginiai
|
input-devices = Įvesties įrenginiai
|
||||||
custom-shortcuts = Pasirinktiniai sparčiųjų klavišų deriniai
|
custom-shortcuts = Pasirinktiniai sparčiųjų klavišų deriniai
|
||||||
|
|
@ -383,11 +383,11 @@ window-hint-accent-toggle = Naudoti temos akcento spalvą, kaip aktyvaus lango
|
||||||
type-to-search = Norint ieškoti, pradėkite rašyti…
|
type-to-search = Norint ieškoti, pradėkite rašyti…
|
||||||
workspaces-behavior = Darbo sričių elgsena
|
workspaces-behavior = Darbo sričių elgsena
|
||||||
.dynamic = Dinamiškos darbo sritys
|
.dynamic = Dinamiškos darbo sritys
|
||||||
.dynamic-desc = Automatiškai pašalinamos tuščios darbo sritys
|
.dynamic-desc = Tuščios darbo sritys pašalinamos automatiškai
|
||||||
.fixed = Pastovus darbo sričių skaičius
|
.fixed = Pastovus darbo sričių skaičius
|
||||||
.fixed-desc = Darbo sričių pridėjimas arba pašalinamas darbo sričių apžvalgos režime.
|
.fixed-desc = Peržiūrioje pridėkite arba pašalinkite darbo sritis.
|
||||||
wireguard-dialog = Pridėti WireGuard įrenginį
|
wireguard-dialog = Pridėti WireGuard įrenginį
|
||||||
.description = Pasirinkite įrenginio vardą WireGuard nustatymams.
|
.description = Pasirinkite įrenginio pavadinimą WireGuard nuostatoms.
|
||||||
remove-connection-dialog = Pašalinti prisijungimo profilį
|
remove-connection-dialog = Pašalinti prisijungimo profilį
|
||||||
.vpn-description = Jums reikės įvesti slaptažodį iš naujo, kad galėtumėte naudotis šiuo tinklu ateityje.
|
.vpn-description = Jums reikės įvesti slaptažodį iš naujo, kad galėtumėte naudotis šiuo tinklu ateityje.
|
||||||
.wired-description = Jums reikės atkurti šį profilį, kad galėtumėte naudotis šiuo prisijungimu.
|
.wired-description = Jums reikės atkurti šį profilį, kad galėtumėte naudotis šiuo prisijungimu.
|
||||||
|
|
@ -433,10 +433,10 @@ applications = Aplikacijos
|
||||||
dbus-connection-error = Nepavyko prisijungti prie DBus
|
dbus-connection-error = Nepavyko prisijungti prie DBus
|
||||||
system-controls = Sistemos valdymas
|
system-controls = Sistemos valdymas
|
||||||
auto-switch = Automatinis šviesaus ir tamsaus režimo valdymas
|
auto-switch = Automatinis šviesaus ir tamsaus režimo valdymas
|
||||||
.sunrise = Įjungiamas šviesus režimas tekant saulei
|
.sunrise = Šviesus režimas įjungiamas tekant saulei
|
||||||
.sunset = Įjungiamas tamsus režimas saulei leidžiantis
|
.sunset = Tamsus režimas įjungiamas saulei leidžiantis
|
||||||
.next-sunrise = Įjungiamas šviesus režimas kitą kartą saulei tekant
|
.next-sunrise = Šviesus režimas įjungiamas kitą kartą saulei tekant
|
||||||
.next-sunset = Įjungiamas tamsus režimas kitą kartą saulei leidžiantis
|
.next-sunset = Tamsus režimas įjungiamas kitą kartą saulei leidžiantis
|
||||||
add-vpn = Pridėti VPN
|
add-vpn = Pridėti VPN
|
||||||
cancel = Atšaukti
|
cancel = Atšaukti
|
||||||
keyboard-numlock-boot = Numlock
|
keyboard-numlock-boot = Numlock
|
||||||
|
|
@ -456,9 +456,9 @@ interface-density = Sąsajos tankumas
|
||||||
open-application-library = Atidaryti Aplikacijų Sąrašą
|
open-application-library = Atidaryti Aplikacijų Sąrašą
|
||||||
connected = Prisijungta
|
connected = Prisijungta
|
||||||
slow = Lėtas
|
slow = Lėtas
|
||||||
network-name = Tinklo Pavadinimas
|
network-name = Tinklo pavadinimas
|
||||||
large = Didelis
|
large = Didelis
|
||||||
panel = Panelė
|
panel = Skydelis
|
||||||
scrolling = Slinkimas
|
scrolling = Slinkimas
|
||||||
.two-finger = Slinkimas dviem pirštais
|
.two-finger = Slinkimas dviem pirštais
|
||||||
.edge = Vieno piršto slinkimas palei kraštą
|
.edge = Vieno piršto slinkimas palei kraštą
|
||||||
|
|
@ -492,8 +492,8 @@ users = Naudotojai
|
||||||
forget = Pamiršti
|
forget = Pamiršti
|
||||||
center-segment = Centrinis segmentas
|
center-segment = Centrinis segmentas
|
||||||
panel-missing = Panelė nesukonfigūruota
|
panel-missing = Panelė nesukonfigūruota
|
||||||
.desc = Panelės konfigūraciniai failai nerasti dėl netinkamo jų modifikavimo arba tas failas buvo sugadintas.
|
.desc = Skydelio konfigūracijos failas nerastas nes buvo netinkamai sukonfigūruotas arba sugadintas.
|
||||||
.fix = Nustatyti į numatytus nustatymus
|
.fix = Grąžinti numatytas nuostatas
|
||||||
invalid-username = Netinkamas naudotojo vardas
|
invalid-username = Netinkamas naudotojo vardas
|
||||||
mirroring = Veidrodinis atvaizdavimas
|
mirroring = Veidrodinis atvaizdavimas
|
||||||
.id = Atvaizduojamas { $id }
|
.id = Atvaizduojamas { $id }
|
||||||
|
|
@ -539,7 +539,7 @@ manage-windows = Valdyti langus
|
||||||
.toggle-sticky = Įjungti/išjungti lipnų langą
|
.toggle-sticky = Įjungti/išjungti lipnų langą
|
||||||
never = Niekada
|
never = Niekada
|
||||||
install-additional-languages = Pridėti papildomas kalbas
|
install-additional-languages = Pridėti papildomas kalbas
|
||||||
settings = Nustatymai
|
settings = Nuostatos
|
||||||
sound-output = Išvestis
|
sound-output = Išvestis
|
||||||
.volume = Išvesties garsumas
|
.volume = Išvesties garsumas
|
||||||
.device = Išvesties įrenginys
|
.device = Išvesties įrenginys
|
||||||
|
|
@ -551,7 +551,7 @@ sound-output = Išvestis
|
||||||
wallpaper = Darbalaukio fonas
|
wallpaper = Darbalaukio fonas
|
||||||
.change = Keisti paveiksliuką kas
|
.change = Keisti paveiksliuką kas
|
||||||
.fit = Darbalaukio fono talpinimas ekrane
|
.fit = Darbalaukio fono talpinimas ekrane
|
||||||
.folder-dialog = Pasirinkite darbalaukio fono aplankalą
|
.folder-dialog = Pasirinkite darbalaukio fonų aplanką
|
||||||
.image-dialog = Pasirinkite darbalaukio foną
|
.image-dialog = Pasirinkite darbalaukio foną
|
||||||
.plural = Darbalaukio fonai
|
.plural = Darbalaukio fonai
|
||||||
.same = Kiekvienam ekrane toks pat fonas
|
.same = Kiekvienam ekrane toks pat fonas
|
||||||
|
|
@ -573,15 +573,15 @@ legacy-app-global-shortcuts = Sparčiųjų klavišų kombinacijos X11 programose
|
||||||
.all = Visi klavišai
|
.all = Visi klavišai
|
||||||
.mouse = Peles mygtuko veiksmai X11 programose
|
.mouse = Peles mygtuko veiksmai X11 programose
|
||||||
activate = Aktyvuoti
|
activate = Aktyvuoti
|
||||||
replace = Pakeisti
|
replace = Keisti
|
||||||
power-saving = Energijos taupymo parinktys
|
power-saving = Energijos taupymo parinktys
|
||||||
.turn-off-screen-after = Išjunkti ekraną po
|
.turn-off-screen-after = Išjungti ekraną po
|
||||||
.auto-suspend = Automatinis miego režimas
|
.auto-suspend = Automatinis miego režimas
|
||||||
.auto-suspend-ac = Automatinis miego režimas, kai prijungtas maitinimas
|
.auto-suspend-ac = Automatinis miego režimas, kai prijungtas maitinimas
|
||||||
.auto-suspend-battery = Automatinis miego režimas, kai naudojama baterija
|
.auto-suspend-battery = Automatinis miego režimas, kai naudojama baterija
|
||||||
connected-devices = Prijungti įrenginiai
|
connected-devices = Prijungti įrenginiai
|
||||||
.unknown = Nežinomas įrenginys
|
.unknown = Nežinomas įrenginys
|
||||||
icons-and-toolkit = Ikonų ir įrankių rinkinio temos
|
icons-and-toolkit = Piktogramų ir įrankių stiliai
|
||||||
sound-applications = Aplikacijos
|
sound-applications = Aplikacijos
|
||||||
.desc = Aplikacijų garsumas ir nustatymai
|
.desc = Aplikacijų garsumas ir nustatymai
|
||||||
time-zone = Laiko juosta
|
time-zone = Laiko juosta
|
||||||
|
|
@ -599,10 +599,10 @@ network-device-state =
|
||||||
.disconnected = Atsijungta
|
.disconnected = Atsijungta
|
||||||
.failed = Nepavyko prisijungti
|
.failed = Nepavyko prisijungti
|
||||||
.ip-check = Tikrinamas ryšys
|
.ip-check = Tikrinamas ryšys
|
||||||
.ip-config = Vykdoma IP adreso and maršrutizavimo informacijos užklausa
|
.ip-config = Užklausiama IP adreso ir maršrutizavimo informacijos
|
||||||
.need-auth = Reikalinga autentifikacija
|
.need-auth = Reikja patvirtinti tapatumą
|
||||||
.prepare = Ruošiamasi prisijungti
|
.prepare = Ruošiamasi prisijungti
|
||||||
.secondaries = Laukiama antrinio ryšio
|
.secondaries = Laukiama prisijungiant antrąkart
|
||||||
.unavailable = Nepasiekiama
|
.unavailable = Nepasiekiama
|
||||||
.unknown = Nežinoma būsena
|
.unknown = Nežinoma būsena
|
||||||
.unmanaged = Nevaldomas
|
.unmanaged = Nevaldomas
|
||||||
|
|
@ -618,10 +618,10 @@ gestures = Gestai
|
||||||
.four-finger-up = Keturių pirštų braukimas aukštyn
|
.four-finger-up = Keturių pirštų braukimas aukštyn
|
||||||
.three-finger-any = Trijų pirštų braukimas
|
.three-finger-any = Trijų pirštų braukimas
|
||||||
system = Sistema ir paskyros
|
system = Sistema ir paskyros
|
||||||
no-networks = Nebuvo rasta tinklų.
|
no-networks = Tinklų nerasta
|
||||||
open-new-folder = Atidaryti naują aplanką
|
open-new-folder = Atverti naują aplanką
|
||||||
panel-bottom = Apačia
|
panel-bottom = Apačia
|
||||||
share = Pasidalinti tinklu
|
share = Dalintis tinklu
|
||||||
add = Pridėti
|
add = Pridėti
|
||||||
time = Laikas ir kalba
|
time = Laikas ir kalba
|
||||||
fill = Užpildyti
|
fill = Užpildyti
|
||||||
|
|
@ -635,7 +635,7 @@ dialog = Dialogas
|
||||||
.change-prompt = Nustatymai bus automatiškai atkurti po { $time } sekundžių.
|
.change-prompt = Nustatymai bus automatiškai atkurti po { $time } sekundžių.
|
||||||
.revert-settings = Atkurti nustatymus
|
.revert-settings = Atkurti nustatymus
|
||||||
navigate = Naviguoti
|
navigate = Naviguoti
|
||||||
workspaces-overview-thumbnails = Darbo sričių apžvalgos režimo miniatiūros
|
workspaces-overview-thumbnails = Darbo sričių peržiūros miniatiūros
|
||||||
.show-number = Rodyti darbo srities numerį
|
.show-number = Rodyti darbo srities numerį
|
||||||
.show-name = Rodyti darbo srities vardą
|
.show-name = Rodyti darbo srities vardą
|
||||||
color = Spalvos
|
color = Spalvos
|
||||||
|
|
@ -646,33 +646,33 @@ color = Spalvos
|
||||||
hex = Šešioliktainis
|
hex = Šešioliktainis
|
||||||
magnifier = Didinamasis stiklas
|
magnifier = Didinamasis stiklas
|
||||||
.controls =
|
.controls =
|
||||||
Arba pasinaudokite sparčiaisiais klavišais: { $zoom_in ->
|
Arba naudokite sparčiaisius klavišus: { $zoom_in ->
|
||||||
[zero] { "" }
|
[zero] { "" }
|
||||||
*[other]
|
*[other]
|
||||||
{ "" }
|
{ "" }
|
||||||
{ $zoom_in } priartinimui,
|
{ $zoom_in } priartinti,
|
||||||
}{ $zoom_out ->
|
}{ $zoom_out ->
|
||||||
[zero] { "" }
|
[zero] { "" }
|
||||||
*[other]
|
*[other]
|
||||||
{ "" }
|
{ "" }
|
||||||
{ $zoom_out } atitolinimui,
|
{ $zoom_out } tolinti,
|
||||||
}
|
}
|
||||||
Super + slinkimas su pele
|
Super + slinkimas su pele
|
||||||
.scroll_controls = Įgalinkite pelės ar jutiklinio pulto vaizdo mastelio keitimą su Super + slinkimas
|
.scroll_controls = Įgalinkite pelės ar jutiklinio pulto vaizdo mastelio keitimą su Super + slinkimas
|
||||||
.show_overlay = Rodyti didinamojo stiklo perdangą
|
.show_overlay = Rodyti didinamojo stiklo perdangą
|
||||||
.increment = Artinimo dydis
|
.increment = Artinimo dydis
|
||||||
.signin = Įjungti didinamąjį stiklą prisijungimo ekrane
|
.signin = Įjungti didinamąjį stiklą prisijungimo ekrane
|
||||||
.applet = Didinamojo stiklo jungiklio apletas panelėje
|
.applet = Didinamojo stiklo jungiklio apletas skydelyje
|
||||||
.movement = Priartinto vaizdo judėjimas
|
.movement = Priartinto vaizdo judinimas
|
||||||
.continuous = Nuolatos su pelės žymekliu
|
.continuous = Nuolat su pelės žymekliu
|
||||||
.onedge = Kai žymeklis pasiekia ekrano ribą
|
.onedge = Kai žymeklis pasiekia ekrano ribą
|
||||||
.centered = Laikyti žymeklį centre
|
.centered = Laikyti žymeklį centre
|
||||||
colors = Spalvos
|
colors = Spalvos
|
||||||
administrator = Administratorius
|
administrator = Administratorius
|
||||||
.desc = Administratorius gali keisti nustatymus visiems naudotojams, pridėti ir pašalinti kitus naudotojus
|
.desc = Administratorius gali keisti nustatymus visiems naudotojams, pridėti ir pašalinti kitus naudotojus
|
||||||
scan-to-connect-description = Norinti prisijungti prie šio tinklo, skenuokite QR kodą.
|
scan-to-connect-description = Norėdami prisijungti prie šio tinklo, skenuokite QR kodą.
|
||||||
modified = Pakeista: { $count }
|
modified = Pakeista: { $count }
|
||||||
known-networks = Žinomi tinklai
|
known-networks = Įsiminti tinklai
|
||||||
network-and-wireless = Tinklas ir belaidis ryšys
|
network-and-wireless = Tinklas ir belaidis ryšys
|
||||||
sound-device-port-unplugged = Neprijungta
|
sound-device-port-unplugged = Neprijungta
|
||||||
sound-hd-audio = HD garsas
|
sound-hd-audio = HD garsas
|
||||||
|
|
@ -719,98 +719,98 @@ shadows-floating = Slankieji langai
|
||||||
workspaces-overview = Darbo sričių apžvalga
|
workspaces-overview = Darbo sričių apžvalga
|
||||||
.action-on-typing = Veiksmas rašant
|
.action-on-typing = Veiksmas rašant
|
||||||
.none = Jokia
|
.none = Jokia
|
||||||
.launcher = Atidaryti Aplikacijų leidyklę
|
.launcher = Atverti Leistuką
|
||||||
.applications = Atidaryti Aplikacijas
|
.applications = Atidaryti Programas
|
||||||
connect = Prisijungti
|
connect = Prisijungti
|
||||||
light = Šviesi
|
light = Šviesi
|
||||||
dark = Tamsus
|
dark = Tamsus
|
||||||
xdg-entry-touchpad = Jutiklinis kilimėlis
|
xdg-entry-touchpad = Jutiklinis kilimėlis
|
||||||
xdg-entry-wired = Laidinis
|
xdg-entry-wired = Laidinis
|
||||||
xdg-entry-startup-apps-comment = Konfigūruoti aplikacijas paleidžiamas prisijungus
|
xdg-entry-startup-apps-comment = Konfigūruoti programas paleidžiamas prisijungus
|
||||||
xdg-entry-region-language = Regionas ir Kalba
|
xdg-entry-region-language = Regionas ir Kalba
|
||||||
xdg-entry-mouse-keywords = COSMIC;Pelė;Pagreitis;Slinkimas;
|
xdg-entry-mouse-keywords = COSMIC;Pelė;Pagreitis;Slinkimas;
|
||||||
xdg-entry-bluetooth-comment = Valdyti Bluetooth įrenginius
|
xdg-entry-bluetooth-comment = Valdyti Bluetooth įrenginius
|
||||||
xdg-entry-notifications-keywords = COSMIC;Pranešimai;Užrakinimas;
|
xdg-entry-notifications-keywords = COSMIC;Pranešimai;Užraktas;
|
||||||
xdg-entry-startup-apps-keywords = COSMIC;Paleistis;Aplikacija;
|
xdg-entry-startup-apps-keywords = COSMIC;Paleistis;Programa;
|
||||||
xdg-entry-default-apps-comment = Numatytoji naršyklė, pašto programa, failų naršyklė ir kitos aplikacijos
|
xdg-entry-default-apps-comment = Numatytoji naršyklė, pašto programa, failų naršyklė ir kitos programos
|
||||||
xdg-entry-keyboard-comment = Įvesties šaltiniai, perjungimas, specialių ženklų įvestis, spartieji klavišai
|
xdg-entry-keyboard-comment = Įvesties įtaisai, perjungimas, specialių ženklų įvestis, spartieji klavišai
|
||||||
xdg-entry-wired-keywords = COSMIC;Laidinis;LAN;Tinkas;Ryšys;
|
xdg-entry-wired-keywords = COSMIC;Laidinis;LAN;Tinklas;Ryšys;
|
||||||
xdg-entry-power = Energija ir Baterija
|
xdg-entry-power = Energija ir Baterija
|
||||||
xdg-entry-mouse = Pelė
|
xdg-entry-mouse = Pelė
|
||||||
xdg-entry-dock-keywords = COSMIC;Dokas;Panelė;Apletas
|
xdg-entry-dock-keywords = COSMIC;Dokas;Skydelis;Apletas
|
||||||
xdg-entry-mouse-comment = Pelės greitis, pagreitis ir natūralus slinkimas
|
xdg-entry-mouse-comment = Pelės greitis, pagreitis ir natūralus slinkimas
|
||||||
xdg-entry-system = Sistema ir Paskyros
|
xdg-entry-system = Sistema ir Paskyros
|
||||||
xdg-entry-panel-keywords = COSMIC;Panelė;Apletas
|
xdg-entry-panel-keywords = COSMIC;Skydelis;Apletas
|
||||||
xdg-entry-window-management = Langų Valdymas
|
xdg-entry-window-management = Langų Valdymas
|
||||||
xdg-entry-a11y = Prieinamumas
|
xdg-entry-a11y = Prieinamumas
|
||||||
xdg-entry-time-language-comment = Valdyti sistemos datą, laiką, regioną ir kalbą
|
xdg-entry-time-language-comment = Tvarkyti sistemos datą, laiką, regioną ir kalbą
|
||||||
xdg-entry-desktop-keywords = COSMIC;Darbalaukis;
|
xdg-entry-desktop-keywords = COSMIC;Darbalaukis;
|
||||||
xdg-entry-x11-applications-keywords = COSMIC;X11;Aplikacijos;Žaidimas;Suderinamumas;
|
xdg-entry-x11-applications-keywords = COSMIC;X11;Programa;Žaidimas;Suderinamumas;
|
||||||
xdg-entry-displays-comment = Valdyti ekrano konfigūracijos nustatymus
|
xdg-entry-displays-comment = Tvarkyti ekrano nuostatas
|
||||||
xdg-entry-touchpad-keywords = COSMIC;Jutiklinis kilimėlis; Gestai;
|
xdg-entry-touchpad-keywords = COSMIC;Jutiklinis kilimėlis; Gestai;
|
||||||
xdg-entry-time-language = Laikas ir Kalba
|
xdg-entry-time-language = Laikas ir Kalba
|
||||||
xdg-entry-users = Naudotojai
|
xdg-entry-users = Naudotojai
|
||||||
xdg-entry-system-keywords = COSMIC;Sistema;Informacija;Paskyros;Programinė aparatinė įranga;
|
xdg-entry-system-keywords = COSMIC;Sistema;Informacija;Paskyros;Programinė aparatinė įranga;
|
||||||
xdg-entry-default-apps = Numatytosios Aplikacijos
|
xdg-entry-default-apps = Numatytosios programos
|
||||||
xdg-entry-wireless-keywords = COSMIC;WiFi-Wi-Fi;Tinklas;Ryšys;
|
xdg-entry-wireless-keywords = COSMIC;WiFi-Wi-Fi;Tinklas;Ryšys;
|
||||||
xdg-entry-applications-comment = Numatytosios aplikacijos, pradžios aplikacijos ir X11 aplikacijų suderinamumo nustatymai
|
xdg-entry-applications-comment = Numatytosios programos, pradžios programos ir X11 programų suderinamumo nuostatos
|
||||||
xdg-entry-about-keywords = COSMIC;Apie
|
xdg-entry-about-keywords = COSMIC;Apie
|
||||||
xdg-entry-panel = Panelė
|
xdg-entry-panel = Skydelis
|
||||||
xdg-entry-notifications = Pranešimai
|
xdg-entry-notifications = Pranešimai
|
||||||
xdg-entry-a11y-keywords = COSMIC;Prieinamumas;A11y;Ekranas;Skaitytuvas;Didinamasis stiklas;Kontrastas;Spalva;
|
xdg-entry-a11y-keywords = COSMIC;Prieinamumas;A11y;Ekranas;Skaitytuvas;Didinamasis stiklas;Kontrastas;Spalva;
|
||||||
xdg-entry-wireless-comment = Wi-Fi ryšiai ir ryšių profiliai
|
xdg-entry-wireless-comment = Wi-Fi ryšiai ir ryšių profiliai
|
||||||
xdg-entry-desktop = Darbalaukis
|
xdg-entry-desktop = Darbalaukis
|
||||||
xdg-entry-date-time-keywords = COSMIC;Laikas;Zona;
|
xdg-entry-date-time-keywords = COSMIC;Laikas;Zona;
|
||||||
xdg-entry-desktop-comment = Darbalaukio fonas, išvaizda, panelė, dokas, langų valdymo ir darbo sričių nustatymai
|
xdg-entry-desktop-comment = Darbalaukio fonas, išvaizda, skydelis, dokas, langų valdymo ir darbo sričių nuostatos
|
||||||
xdg-entry-wallpaper = Darbalaukio fonas
|
xdg-entry-wallpaper = Darbalaukio fonas
|
||||||
xdg-entry-keyboard = Klaviatūra
|
xdg-entry-keyboard = Klaviatūra
|
||||||
xdg-entry-a11y-comment = Ekrano Skaitytuvas, didinamasis stiklas, didelis kontrastas ir spalvų filtrai
|
xdg-entry-a11y-comment = Ekrano Skaitytuvas, didinamasis stiklas, didelis kontrastas ir spalvų filtrai
|
||||||
xdg-entry-displays = Ekranai
|
xdg-entry-displays = Ekranai
|
||||||
xdg-entry-network = Tinklas ir Belaidis ryšys
|
xdg-entry-network = Tinklas ir Belaidis ryšys
|
||||||
xdg-entry-date-time = Data ir Laikas
|
xdg-entry-date-time = Data ir Laikas
|
||||||
xdg-entry-users-comment = Autentifikacija ir naudotojų paskyros
|
xdg-entry-users-comment = Naudotojų tapatumo patvirtinimas ir paskyros
|
||||||
xdg-entry-input-comment = Klaviatūros ir pelės nustatymai
|
xdg-entry-input-comment = Klaviatūros ir pelės nuostatos
|
||||||
xdg-entry-bluetooth-keywords = COSMIC;Bluetooth;
|
xdg-entry-bluetooth-keywords = COSMIC;Bluetooth;
|
||||||
xdg-entry-dock-comment = Pasirinktina juosta aplikacijomis ir apletams
|
xdg-entry-dock-comment = Pasirinktinė juosta programoms ir apletams
|
||||||
xdg-entry-network-keywords = COSMIC;Tinklas;Bevielis ryšys;WiFi;VPN;
|
xdg-entry-network-keywords = COSMIC;Tinklas;Bevielis ryšys;WiFi;VPN;
|
||||||
xdg-entry-wallpaper-comment = Darbalaukio paveikslėlis, spalvos ir skaidrių parinktys
|
xdg-entry-wallpaper-comment = Darbalaukio paveikslėlis, spalvos ir skaidrių parinktys
|
||||||
xdg-entry-dock = Dokas
|
xdg-entry-dock = Dokas
|
||||||
xdg-entry-startup-apps = Pradžios Aplikacijos
|
xdg-entry-startup-apps = Paleisties programos
|
||||||
xdg-entry-wireless = Wi-Fi
|
xdg-entry-wireless = Wi-Fi
|
||||||
xdg-entry-workspaces-keywords = COSMIC;Darbo sritis;Orientacija;Apžvalga;Monitorius;
|
xdg-entry-workspaces-keywords = COSMIC;Darbo sritis;Orientacija;Apžvalga;Monitorius;
|
||||||
xdg-entry-system-comment = Sistemos informacija, paskyros ir programinės aparatinės įrangos atnaujinimai
|
xdg-entry-system-comment = Sistemos informacija, paskyros ir programinės aparatinės įrangos naujiniai
|
||||||
xdg-entry-x11-applications-comment = X11 langų sistemos aplikacijų mastelis, pagrindinis ekranas ir sistemos greitieji klavišai
|
xdg-entry-x11-applications-comment = X11 langų sistemos programų mastelis, pagrindinis ekranas ir sistemos greitieji klavišai
|
||||||
xdg-entry-region-language-comment = Datų, laiko ir skaičių formatas pagal nustatytą regioną
|
xdg-entry-region-language-comment = Datų, laiko ir skaičių formatas pagal pasirinktą regioną
|
||||||
xdg-entry-wallpaper-keywords = COSMIC;Darbalaukio fonas;Fonas;Skaidrės;
|
xdg-entry-wallpaper-keywords = COSMIC;Darbalaukio fonas;Fonas;Skaidrės;
|
||||||
xdg-entry-users-keywords = COSMIC;Naudotojas;Paskyra;
|
xdg-entry-users-keywords = COSMIC;Naudotojas;Paskyra;
|
||||||
xdg-entry-about-comment = Įrenginio pavadinimas, techninė informacija, operacinės sistemos numatytieji nustatymai
|
xdg-entry-about-comment = Įrenginio pavadinimas, techninė informacija, operacinės sistemos numatytosios nuostatos
|
||||||
xdg-entry-vpn-keywords = COSMIC;VPN;Ryšys;Prisijungimai;OpenVPN;OpenConnect;
|
xdg-entry-vpn-keywords = COSMIC;VPN;Ryšys;Prisijungimai;OpenVPN;OpenConnect;
|
||||||
xdg-entry-time-language-keywords = COSMIC;Sistema;Laikas;Data;Regionas;Kalba;
|
xdg-entry-time-language-keywords = COSMIC;Sistema;Laikas;Data;Regionas;Kalba;
|
||||||
xdg-entry-input-keywords = COSMIC;Įvestis;Klaviatūra;Pelė;Pelytė;
|
xdg-entry-input-keywords = COSMIC;Įvestis;Klaviatūra;Pelė;Pelytė;
|
||||||
xdg-entry-comment = COSMIC desktop aplikacijų nustatymai
|
xdg-entry-comment = COSMIC desktop aplikacijų nustatymai
|
||||||
xdg-entry-notifications-comment = Netrukdyti režimas, užrakinto ekrano pranešimai ir programų nustatymai
|
xdg-entry-notifications-comment = Režimas „Netrukdyti“, užrakinto ekrano pranešimai ir programų nuostatos
|
||||||
xdg-entry-applications = Aplikacijos
|
xdg-entry-applications = Programos
|
||||||
xdg-entry-sound-keywords = COSMIC;Garsas;Audio;Pranešimai;Pipewire;
|
xdg-entry-sound-keywords = COSMIC;Garsas;Audio;Pranešimai;Pipewire;
|
||||||
xdg-entry-power-keywords = COSMIC;Energija;Baterija
|
xdg-entry-power-keywords = COSMIC;Energija;Baterija
|
||||||
xdg-entry-default-apps-keywords = COSMIC;Numatyta;Aplikacija
|
xdg-entry-default-apps-keywords = COSMIC;Numatyta;Programa
|
||||||
xdg-entry-keywords = COSMIC;Nustatymai;
|
xdg-entry-keywords = COSMIC;Nustatymai;
|
||||||
xdg-entry-region-language-keywords = COSMIC;Regionas;Kalba;Data;Formatas;Laikas;Vietovė;Lokalizavimas;
|
xdg-entry-region-language-keywords = COSMIC;Regionas;Kalba;Data;Formatas;Laikas;Vietovė;Lokalizavimas;
|
||||||
xdg-entry-about = Apie
|
xdg-entry-about = Apie
|
||||||
xdg-entry-input = Įvesties Įrenginiai
|
xdg-entry-input = Įvesties Įrenginiai
|
||||||
xdg-entry-applications-keywords = COSMIC;Numatytas;Aplikacija;Paleidimas;X11;Suderinamumas
|
xdg-entry-applications-keywords = COSMIC;Numatytas;Aplikacija;Paleidimas;X11;Suderinamumas
|
||||||
xdg-entry-sound-comment = Audio nustatymai įrenginiams, pranešimams ir aplikacijoms
|
xdg-entry-sound-comment = Įrenginių, pranešimų ir programų garso nuostatos
|
||||||
xdg-entry-touchpad-comment = Jutiklinis kilimėlio greitis, valdymo parinktys, gestai
|
xdg-entry-touchpad-comment = Jutiklinis kilimėlio greitis, valdymo parinktys, gestai
|
||||||
xdg-entry-keyboard-keywords = COSMIC;Klaviatūra;Įvestis;Šaltinis;Spartieji klavišai;
|
xdg-entry-keyboard-keywords = COSMIC;Klaviatūra;Įvestis;Šaltinis;Spartieji klavišai;
|
||||||
xdg-entry-vpn-comment = VPN ryšiai ir prisijungimų profiliai
|
xdg-entry-vpn-comment = VPN ryšiai ir prisijungimų profiliai
|
||||||
xdg-entry-appearance = Išvaizda
|
xdg-entry-appearance = Išvaizda
|
||||||
xdg-entry-workspaces-comment = Darbo sričių orientacija, apžvalga ir keletos monitorių funkcionavimas
|
xdg-entry-workspaces-comment = Darbo sričių orientacija, peržiūra ir veikimas keliuose monitoriuose
|
||||||
xdg-entry-network-comment = Valdyti tinklo ryšius
|
xdg-entry-network-comment = Tvarkyti tinklo ryšius
|
||||||
xdg-entry-panel-comment = Pagrindinė sistemos juosta apletams ir meniu
|
xdg-entry-panel-comment = Pagrindinė sistemos meniu ir apletų juosta
|
||||||
xdg-entry-sound = Garsas
|
xdg-entry-sound = Garsas
|
||||||
xdg-entry-power-comment = Energijos režimai ir energijos taupymo parinktys
|
xdg-entry-power-comment = Energijos režimai ir energijos taupymo parinktys
|
||||||
xdg-entry-displays-keywords = COSMIC;Ekranas;
|
xdg-entry-displays-keywords = COSMIC;Ekranas;
|
||||||
xdg-entry-workspaces = Darbo sritys
|
xdg-entry-workspaces = Darbo sritys
|
||||||
xdg-entry-date-time-comment = Laiko juosta, automatiniai laikrodžio nustatymai ir laiko formatavimas
|
xdg-entry-date-time-comment = Laiko juosta, automatinės laikrodžio nuostatos ir laiko formatai
|
||||||
xdg-entry-x11-applications = X11 Aplikacijų Suderinamumas
|
xdg-entry-x11-applications = Suderinamumas su X11 programomis
|
||||||
xdg-entry-wired-comment = Laidiniai ryšiai ir ryšių profiliai
|
xdg-entry-wired-comment = Laidiniai ryšiai ir ryšių profiliai
|
||||||
no-search-results = Joks tinklas neatitinka jūsų paieškos.
|
no-search-results = Joks tinklas neatitinka jūsų paieškos.
|
||||||
|
|
|
||||||
2
i18n/pl/cosmic_settings.ftl
vendored
2
i18n/pl/cosmic_settings.ftl
vendored
|
|
@ -928,3 +928,5 @@ xdg-entry-window-management-keywords = COSMIC;Okna;Zarządzanie;Kafelkowanie;Sup
|
||||||
xdg-entry-panel-comment = Podstawowy panel z menu i apletami
|
xdg-entry-panel-comment = Podstawowy panel z menu i apletami
|
||||||
xdg-entry-displays-keywords = COSMIC;Wyświetlacz;Ekran;
|
xdg-entry-displays-keywords = COSMIC;Wyświetlacz;Ekran;
|
||||||
no-search-results = Żadna sieć nie odpowiada twojemu wyszukiwaniu.
|
no-search-results = Żadna sieć nie odpowiada twojemu wyszukiwaniu.
|
||||||
|
workspaces-navigation = Navigation
|
||||||
|
.wraparound = Przemieszczaj się między pierwszym a ostatnim obszarem roboczym używając skrótów klawiszowych i gestów
|
||||||
|
|
|
||||||
10
i18n/pt-BR/cosmic_settings.ftl
vendored
10
i18n/pt-BR/cosmic_settings.ftl
vendored
|
|
@ -674,10 +674,10 @@ open-workspaces-view = Abrir a visão geral dos espaços de trabalho
|
||||||
## Time & Language
|
## Time & Language
|
||||||
|
|
||||||
time = Hora e Idioma
|
time = Hora e Idioma
|
||||||
time-date = Data e Hora
|
time-date = Data e hora
|
||||||
.auto = Definir automaticamente
|
.auto = Definir automaticamente
|
||||||
.auto-ntp = A data e a hora serão atualizadas automaticamente quando o fuso horário for definido
|
.auto-ntp = A data e a hora serão atualizadas automaticamente quando o fuso horário for definido
|
||||||
time-zone = Fuso Horário
|
time-zone = Fuso horário
|
||||||
.auto = Fuso horário automático
|
.auto = Fuso horário automático
|
||||||
.auto-info = Requer um serviço de localização e acesso à Internet
|
.auto-info = Requer um serviço de localização e acesso à Internet
|
||||||
time-format = Formato de data e hora
|
time-format = Formato de data e hora
|
||||||
|
|
@ -833,7 +833,7 @@ xdg-entry-appearance-keywords = COSMIC;Destaque;Accent;Cor;Ícone;Fonte;Tema
|
||||||
xdg-entry-mouse = Mouse
|
xdg-entry-mouse = Mouse
|
||||||
xdg-entry-dock-keywords = COSMIC;Dock;Painel;Applet;Miniaplicativo
|
xdg-entry-dock-keywords = COSMIC;Dock;Painel;Applet;Miniaplicativo
|
||||||
xdg-entry-mouse-comment = Velocidade do mouse, aceleração e rolagem natural
|
xdg-entry-mouse-comment = Velocidade do mouse, aceleração e rolagem natural
|
||||||
xdg-entry-system = Sistema e Contas
|
xdg-entry-system = Sistema e contas
|
||||||
xdg-entry-panel-keywords = COSMIC;Painel;Applet;Miniaplicativo
|
xdg-entry-panel-keywords = COSMIC;Painel;Applet;Miniaplicativo
|
||||||
xdg-entry-window-management = Gerenciamento de janelas
|
xdg-entry-window-management = Gerenciamento de janelas
|
||||||
xdg-entry-a11y = Acessibilidade
|
xdg-entry-a11y = Acessibilidade
|
||||||
|
|
@ -842,7 +842,7 @@ xdg-entry-desktop-keywords = COSMIC;Desktop;Área;Trabalho;
|
||||||
xdg-entry-x11-applications-keywords = COSMIC;X11;Aplicativo;Jogos;Compatibilidade;
|
xdg-entry-x11-applications-keywords = COSMIC;X11;Aplicativo;Jogos;Compatibilidade;
|
||||||
xdg-entry-displays-comment = Gerenciar configurações de tela
|
xdg-entry-displays-comment = Gerenciar configurações de tela
|
||||||
xdg-entry-touchpad-keywords = COSMIC;Touchpad;Gestos;
|
xdg-entry-touchpad-keywords = COSMIC;Touchpad;Gestos;
|
||||||
xdg-entry-time-language = Hora e Idioma
|
xdg-entry-time-language = Hora e idioma
|
||||||
xdg-entry-users = Usuários
|
xdg-entry-users = Usuários
|
||||||
xdg-entry-system-keywords = COSMIC;Sistema;Info;Contas;Firmware;
|
xdg-entry-system-keywords = COSMIC;Sistema;Info;Contas;Firmware;
|
||||||
xdg-entry-default-apps = Aplicativos padrão
|
xdg-entry-default-apps = Aplicativos padrão
|
||||||
|
|
@ -911,3 +911,5 @@ xdg-entry-x11-applications = Compatibilidade com aplicativos X11
|
||||||
xdg-entry-window-management-comment = Ação da tecla Super, opções de controle de janela e opções de janelas lado a lado (tiling)
|
xdg-entry-window-management-comment = Ação da tecla Super, opções de controle de janela e opções de janelas lado a lado (tiling)
|
||||||
xdg-entry-wired-comment = Conexões de rede com fio e perfis de conexão
|
xdg-entry-wired-comment = Conexões de rede com fio e perfis de conexão
|
||||||
no-search-results = Nenhuma rede corresponde à sua pesquisa.
|
no-search-results = Nenhuma rede corresponde à sua pesquisa.
|
||||||
|
workspaces-navigation = Navegação
|
||||||
|
.wraparound = Navegar entre o primeiro e o último espaço de trabalho usando atalhos de teclado e gestos
|
||||||
|
|
|
||||||
4
i18n/pt/cosmic_settings.ftl
vendored
4
i18n/pt/cosmic_settings.ftl
vendored
|
|
@ -164,7 +164,6 @@ notifications = Notificações
|
||||||
## Desktop: Panel
|
## Desktop: Panel
|
||||||
|
|
||||||
panel = Painel
|
panel = Painel
|
||||||
.desc = Barra do sistema principal para menus e miniaplicativos.
|
|
||||||
add = Adicionar
|
add = Adicionar
|
||||||
add-applet = Adicionar miniaplicativo
|
add-applet = Adicionar miniaplicativo
|
||||||
all = Todos
|
all = Todos
|
||||||
|
|
@ -207,7 +206,6 @@ panel-missing = A configuração do painel está em falta
|
||||||
## Desktop: Dock
|
## Desktop: Dock
|
||||||
|
|
||||||
dock = Doca
|
dock = Doca
|
||||||
.desc = Uma barra opcional para aplicações e miniaplicativos.
|
|
||||||
|
|
||||||
## Desktop: Window management
|
## Desktop: Window management
|
||||||
|
|
||||||
|
|
@ -494,7 +492,7 @@ system-shortcut = Sistema
|
||||||
.keyboard-brightness-down = Diminuir o brilho do teclado
|
.keyboard-brightness-down = Diminuir o brilho do teclado
|
||||||
.keyboard-brightness-up = Aumentar o brilho do teclado
|
.keyboard-brightness-up = Aumentar o brilho do teclado
|
||||||
.launcher = Abrir o lançador
|
.launcher = Abrir o lançador
|
||||||
.log-out = Sair
|
.log-out = Terminar sessão
|
||||||
.lock-screen = Bloquear o ecrã
|
.lock-screen = Bloquear o ecrã
|
||||||
.mute = Silenciar saída de áudio
|
.mute = Silenciar saída de áudio
|
||||||
.mute-mic = Silenciar entrada do microfone
|
.mute-mic = Silenciar entrada do microfone
|
||||||
|
|
|
||||||
6
i18n/ru/cosmic_settings.ftl
vendored
6
i18n/ru/cosmic_settings.ftl
vendored
|
|
@ -112,11 +112,11 @@ notifications = Уведомления
|
||||||
dock = Док
|
dock = Док
|
||||||
hot-corner = Активные углы
|
hot-corner = Активные углы
|
||||||
.top-left-corner = Открывать рабочие столы при наведении в левый верхний угол
|
.top-left-corner = Открывать рабочие столы при наведении в левый верхний угол
|
||||||
super-key = Клавиша Super
|
super-key = Действие клавиши Super
|
||||||
.launcher = Открывает панель запуска
|
.launcher = Открывает панель запуска
|
||||||
.workspaces = Открывает обзор рабочих столов
|
.workspaces = Открывает обзор рабочих столов
|
||||||
.applications = Открывает приложения
|
.applications = Открывает приложения
|
||||||
.disable = Отключена
|
.disable = Отсутствует
|
||||||
window-controls = Элементы управления окнами
|
window-controls = Элементы управления окнами
|
||||||
.minimize = Отображать кнопку «Свернуть»
|
.minimize = Отображать кнопку «Свернуть»
|
||||||
.maximize = Отображать кнопку «Развернуть»
|
.maximize = Отображать кнопку «Развернуть»
|
||||||
|
|
@ -888,3 +888,5 @@ xdg-entry-x11-applications = Совместимость с приложения
|
||||||
xdg-entry-window-management-comment = Действие кнопки Super, параметры размещения и управления окнами
|
xdg-entry-window-management-comment = Действие кнопки Super, параметры размещения и управления окнами
|
||||||
xdg-entry-wired-comment = Проводные соединения и профили
|
xdg-entry-wired-comment = Проводные соединения и профили
|
||||||
no-search-results = По запросу не найдено ни одной сети.
|
no-search-results = По запросу не найдено ни одной сети.
|
||||||
|
workspaces-navigation = Навигация
|
||||||
|
.wraparound = Переход между крайними рабочими столами при помощи сочетаний клавиш и жестов
|
||||||
|
|
|
||||||
822
i18n/sr/cosmic_settings.ftl
vendored
822
i18n/sr/cosmic_settings.ftl
vendored
|
|
@ -0,0 +1,822 @@
|
||||||
|
cancel = Откажи
|
||||||
|
connected = Повезано
|
||||||
|
confirm = Потврди
|
||||||
|
panel-left = Лево
|
||||||
|
connect = Повежи
|
||||||
|
super-key = Радња Супер тастера
|
||||||
|
.launcher = Отвори покретача
|
||||||
|
.workspaces = Отвори радне просторе
|
||||||
|
.applications = Отвори програме
|
||||||
|
.disable = Онемогући
|
||||||
|
x-minutes =
|
||||||
|
{ $number } { $number ->
|
||||||
|
[one] минут
|
||||||
|
*[other] минута
|
||||||
|
}
|
||||||
|
vrr = Променљива стопа освежавања
|
||||||
|
.enabled = Омогућено
|
||||||
|
.force = Увек
|
||||||
|
.auto = Самостално
|
||||||
|
.disabled = Онемогућено
|
||||||
|
window-hint-accent = Боја наговештаја за активни прозор
|
||||||
|
fit-to-screen = Уклопи у екран
|
||||||
|
control-tint = Боја компоненте за управљање
|
||||||
|
.desc = Користи се за позадине уобичајених дугмади, поља за претрагу, поља за унос текста и сличних компоненти
|
||||||
|
close = Затвори
|
||||||
|
save = Сачувај
|
||||||
|
vpn-error = Грешка ВПН-а
|
||||||
|
.config = Неуспешно додавање поставки ВПН-а
|
||||||
|
.connect = Неуспешно повезивање на ВПН
|
||||||
|
.connection-editor = Уређивач везе није успео
|
||||||
|
.connection-settings = Неуспешно преузимање подешавања за активне везе
|
||||||
|
.updating-state = Неуспешно ажурирање стања руководиоца мреже
|
||||||
|
.wireguard-config-path = Неисправна путања до датотеке подешавања за Вајергард
|
||||||
|
.wireguard-config-path-desc = Изабрана датотека мора бити у локалном систему датотека.
|
||||||
|
.wireguard-device = Неуспешно стварање уређаја за Вајергард
|
||||||
|
.with-password =
|
||||||
|
Неуспешно постављање ВПН { $field ->
|
||||||
|
*[username] username
|
||||||
|
[password] password
|
||||||
|
[password-flags] password-flags
|
||||||
|
} помоћу nmcli
|
||||||
|
toggle-stacking = Окини слагање прозора
|
||||||
|
panel-top = Горе
|
||||||
|
no-applets-found = Није пронађен ниједан програмчић...
|
||||||
|
region = Област
|
||||||
|
zoom-in = Увећај
|
||||||
|
place-here = Поставите програмчиће овде
|
||||||
|
-requires-restart = Захтева поновно покретање
|
||||||
|
workspaces-orientation = Смер радних простора
|
||||||
|
.vertical = Усправно
|
||||||
|
.horizontal = Водоравно
|
||||||
|
acceleration-desc = Самостално прилагођава осетљивост праћења на основу брзине
|
||||||
|
all-displays = Сви екрани
|
||||||
|
scheduling = Заказивање
|
||||||
|
.manual = Ручно заказивање
|
||||||
|
frosted = Ефекат матираног стакла на системском прочељу
|
||||||
|
.desc = Примењује замућење позадине на окно, док, програмчиће, покретач и библиотеку програма
|
||||||
|
password = Лозинка
|
||||||
|
about-hardware = Хардвер
|
||||||
|
.model = Модел хардвера
|
||||||
|
.memory = Меморија
|
||||||
|
.processor = Процесор
|
||||||
|
.graphics = Графика
|
||||||
|
.disk-capacity = Капацитет диска
|
||||||
|
short = Кратко
|
||||||
|
vpn = ВПН
|
||||||
|
.connections = ВПН везе
|
||||||
|
.remove = Уклони профил везе
|
||||||
|
.select-file = Изабери датотеку са поставкама ВПН-а
|
||||||
|
.error = Неуспешно додавање ВПН подешавања
|
||||||
|
power-mode = Режим напајања
|
||||||
|
.battery = Продужено трајање батерије
|
||||||
|
.battery-desc = Смањена употреба напајања и утишан рад
|
||||||
|
.balanced = Уравнотежено
|
||||||
|
.balanced-desc = Тихи учинак и умерена потрошња енергије
|
||||||
|
.performance = Висок учинак
|
||||||
|
.performance-desc = Највећи учинак и потрошња енергије
|
||||||
|
.no-backend = Позадинац није пронађен. Инсталирај system76-power или power-profiles-daemon.
|
||||||
|
wired = Жичана
|
||||||
|
.adapter = Жичани адаптер { $id }
|
||||||
|
.connections = Жичане везе
|
||||||
|
.devices = Жичани уређаји
|
||||||
|
.remove = Уклони профил везе
|
||||||
|
bluetooth-available = Уређаји у близини
|
||||||
|
cable-unplugged = Кабел није прикључен
|
||||||
|
color-picker = Бирач боје
|
||||||
|
interface-font = Системски фонт
|
||||||
|
forget-dialog = Заборавити ову бежичну мрежу?
|
||||||
|
.description = Поново ћете морати да унесете лозинку да бисте у будућности користили ову бежичну мрежу.
|
||||||
|
remove = Уклони
|
||||||
|
default = Подразумевано
|
||||||
|
zoom-out = Умањи
|
||||||
|
hot-corner = Врући угао
|
||||||
|
.top-left-corner = Омогући горњи леви врући угао за радне просторе
|
||||||
|
keyboard-typing-assist = Куцање
|
||||||
|
.repeat-rate = Брзина понављања
|
||||||
|
.repeat-delay = Интервал понављања
|
||||||
|
edge-gravity = Лебдећи прозори теже ка најближим ивицама
|
||||||
|
amplification = Појачање
|
||||||
|
.desc = Омогућава повећање јачине звука на 150%
|
||||||
|
recent-colors = Недавне боје
|
||||||
|
about-os = Оперативни систем
|
||||||
|
.os = Оперативни систем
|
||||||
|
.os-architecture = Архитектура оперативног система
|
||||||
|
.kernel = Издање језгра
|
||||||
|
.desktop-environment = Радно окружење
|
||||||
|
.windowing-system = Прозорски систем
|
||||||
|
panel-behavior-and-position = Понашање и положаји
|
||||||
|
.autohide = Самостално сакриј траку
|
||||||
|
.dock-autohide = Самостално сакриј док
|
||||||
|
.position = Положај на екрану
|
||||||
|
.display = Прикажи на екрану
|
||||||
|
add-language = Додај језик
|
||||||
|
.context = Додај језик
|
||||||
|
password-mismatch = Лозинка и потврда се морају поклапати
|
||||||
|
accessibility = Приступачност
|
||||||
|
.vision = Вид
|
||||||
|
.on = Укључено
|
||||||
|
.off = Искључено
|
||||||
|
.unavailable = Недоступно
|
||||||
|
.screen-reader = Читач екрана
|
||||||
|
.high-contrast = Режим високог контраста
|
||||||
|
.invert-colors = Изврни боје
|
||||||
|
.color-filters = Филтери боје
|
||||||
|
container-background = Позадина контејнера
|
||||||
|
.desc-detail = Боја позадине контејнера се користи за бочни панел за навигацију, бочну фиоку, прозорчиће и сличне елементе. Подразумевано, боја позадине контејнера се самостално изводи из позадине прозора.
|
||||||
|
.reset = Врати на самостално
|
||||||
|
.desc = Користи се за бочни панел за навигацију, бочну фиоку, прозорчиће и сличне елементе
|
||||||
|
primary-button = Главно дугме
|
||||||
|
.desc = Подешава поредак физичких дугмади
|
||||||
|
.left = Лево
|
||||||
|
.right = Десно
|
||||||
|
sound-alerts = Упозорења
|
||||||
|
.volume = Јачина звука упозорења
|
||||||
|
.sound = Звук упозорења
|
||||||
|
icon-theme = Тема иконица
|
||||||
|
.desc = Примењује различит скуп иконица на програме
|
||||||
|
import = Увези
|
||||||
|
keyboard-shortcuts = Пречице тастатуре
|
||||||
|
.desc = Прикажи и прилагоди пречице
|
||||||
|
switch-between-windows = Пребацујте се између прозора
|
||||||
|
text-tint = Боја текста прочеља
|
||||||
|
.desc = Користи се за одређивање боја текста прочеља које имају довољан контраст на различитим површинама
|
||||||
|
online-accounts = Налози на мрежи
|
||||||
|
.desc = Додај налоге, ИМАП и СМТП, пословну пријаву
|
||||||
|
open-workspaces-view = Отвори преглед радних простора
|
||||||
|
all = Све
|
||||||
|
remove-user = Уклони корисника
|
||||||
|
unknown = Непознато
|
||||||
|
sound-input = Улаз
|
||||||
|
.volume = Јачина звука на улазу
|
||||||
|
.device = Улазни уређај
|
||||||
|
.level = Ниво улаза
|
||||||
|
add-another-keybinding = Додај још једну комбинацију тастера
|
||||||
|
copy-to-clipboard = Копирај у оставу
|
||||||
|
monospace-font = Фонт утврђене ширине
|
||||||
|
experimental-settings = Експериментална подешавања
|
||||||
|
recent-folders = Недавне фасцикле
|
||||||
|
color-filter = Врста филтера боје
|
||||||
|
.unknown = Непознат филтер је активан
|
||||||
|
.greyscale = Сива скала
|
||||||
|
.deuteranopia = Зелена/црвена (слабост зелене боје, деутеранопија)
|
||||||
|
.protanopia = Црвена/зелена (слабост црвене боје, протанопија)
|
||||||
|
.tritanopia = Плава/жута (слабост плаве боје, тританопија)
|
||||||
|
migrate-workspace =
|
||||||
|
Пресели радни простор на излаз { $direction ->
|
||||||
|
*[down] доле
|
||||||
|
[left] лево
|
||||||
|
[right] десно
|
||||||
|
[up] горе
|
||||||
|
}
|
||||||
|
connecting = Повезивање…
|
||||||
|
battery = Батерија
|
||||||
|
.minute =
|
||||||
|
{ $value } { $value ->
|
||||||
|
[one] минут
|
||||||
|
*[other] минута
|
||||||
|
}
|
||||||
|
.hour =
|
||||||
|
{ $value } { $value ->
|
||||||
|
[one] сат
|
||||||
|
*[other] сати
|
||||||
|
}
|
||||||
|
.day =
|
||||||
|
{ $value } { $value ->
|
||||||
|
[one] дан
|
||||||
|
*[other] дана
|
||||||
|
}
|
||||||
|
.less-than-minute = Мање од једног минута
|
||||||
|
.and = и
|
||||||
|
.remaining-time =
|
||||||
|
{ $time } до { $action ->
|
||||||
|
[full] пуног
|
||||||
|
*[other] празног
|
||||||
|
}
|
||||||
|
search-applets = Претрага програмчића...
|
||||||
|
export = Извези
|
||||||
|
pinch-to-zoom = Штипај за увећање
|
||||||
|
.desc = Користите два прста за увећање садржаја, за програме који подржавају увећање
|
||||||
|
wifi = Бежична
|
||||||
|
.adapter = Бежични адаптер { $id }
|
||||||
|
.forget = Заборави ову мрежу
|
||||||
|
x-hours =
|
||||||
|
{ $number } { $number ->
|
||||||
|
[one] сат
|
||||||
|
*[other] сати
|
||||||
|
}
|
||||||
|
added = Додато
|
||||||
|
input-source-switch = Промени извор уноса језика тастатуре
|
||||||
|
focus-navigation = Навигација фокусом
|
||||||
|
.focus-follows-cursor = Фокус прати показивач
|
||||||
|
.focus-follows-cursor-delay = Интервал праћења фокуса показивачем у мс
|
||||||
|
.cursor-follows-focus = Показивач прати фокус
|
||||||
|
full-name = Име и презиме
|
||||||
|
app-background = Позадина прозора
|
||||||
|
panel-right = Десно
|
||||||
|
keyboard-sources = Извори уноса
|
||||||
|
.desc = Извори уноса се могу пребацити помоћу комбинације тастера Super+Space. Ово се може прилагодити у подешавањима пречица тастатуре.
|
||||||
|
.move-up = Помери горе
|
||||||
|
.move-down = Помери доле
|
||||||
|
.settings = Подешавања
|
||||||
|
.view-layout = Прикажи распоред тастатуре
|
||||||
|
.remove = Уклони
|
||||||
|
.add = Додај извор уноса
|
||||||
|
nav-shortcuts = Навигација
|
||||||
|
.prev-output = Усредсреди претходни излаз
|
||||||
|
.next-output = Усредсреди следећи излаз
|
||||||
|
.last-workspace = Усредсреди последњи радни простор
|
||||||
|
.prev-workspace = Усредсреди претходни радни простор
|
||||||
|
.next-workspace = Усредсреди следећи радни простор
|
||||||
|
.focus =
|
||||||
|
Усредсреди прозор { $direction ->
|
||||||
|
*[down] доле
|
||||||
|
[in] унутра
|
||||||
|
[left] лево
|
||||||
|
[out] напоље
|
||||||
|
[right] десно
|
||||||
|
[up] горе
|
||||||
|
}
|
||||||
|
.output =
|
||||||
|
Пребаци на излаз { $direction ->
|
||||||
|
*[down] доле
|
||||||
|
[left] лево
|
||||||
|
[right] десно
|
||||||
|
[up] горе
|
||||||
|
}
|
||||||
|
.workspace = Пребаци на радни простор { $num }
|
||||||
|
hearing = Слух
|
||||||
|
.mono = Пусти стерео звук као моно
|
||||||
|
preferred-languages = Жељени језици
|
||||||
|
.desc = Редослед језика одређује који се језик користи за корисничко прочеље. Измене ступају на снагу при следећој пријави.
|
||||||
|
panel-style = Стил
|
||||||
|
.anchor-gap = Размак између траке и ивица екрана
|
||||||
|
.dock-anchor-gap = Размак између дока и ивица екрана
|
||||||
|
.extend = Прошири траку до ивица екрана
|
||||||
|
.dock-extend = Прошири док до ивица екрана
|
||||||
|
.appearance = Изглед
|
||||||
|
.size = Величина
|
||||||
|
.background-opacity = Непровидност позадине
|
||||||
|
username = Корисничко име
|
||||||
|
light = Светла
|
||||||
|
panel-appearance = Изглед
|
||||||
|
.match = Поклопи радну површину
|
||||||
|
.light = Светла
|
||||||
|
.dark = Тамна
|
||||||
|
workspaces-multi-behavior = Понашање са више екрана
|
||||||
|
.span = Радни простори се протежу преко екрана
|
||||||
|
.separate = Екрани имају раздвојене радне просторе
|
||||||
|
replace-shortcut-dialog = Заменити пречицу?
|
||||||
|
.desc = { $name } користи { $shortcut }. Ако је замените, { $name } ће бити онемогућено.
|
||||||
|
rgb = РГБ
|
||||||
|
about-device = Назив уређаја
|
||||||
|
.desc = Овај назив се појављује другим мрежним или Блутут уређајима
|
||||||
|
no-vpn = Нема доступних ВПН веза.
|
||||||
|
start-segment = Почетак сегмента
|
||||||
|
desktop = Радна површ
|
||||||
|
identity = Идентитет
|
||||||
|
reset-to-default = Врати на подразумевано
|
||||||
|
disconnect = Прекини везу
|
||||||
|
ok = У реду
|
||||||
|
app = Космик подешавања
|
||||||
|
debug = Уклањање грешака
|
||||||
|
enable-export = Примени тренутну тему на Гномове програме
|
||||||
|
.desc = Не подржавају сви скупови алата самостално пребацивање. Програме који нису Космик може бити потребно поново покренути након промене теме.
|
||||||
|
number = { $number }
|
||||||
|
shortcut-name = Назив пречице
|
||||||
|
style = Стил
|
||||||
|
.round = Заобљено
|
||||||
|
.slightly-round = Благо заобљено
|
||||||
|
.square = Квадратно
|
||||||
|
panel-applets = Подешавање
|
||||||
|
.dock-desc = Подеси програмчиће дока
|
||||||
|
.desc = Подеси програмчиће траке
|
||||||
|
qr-code-unavailable = КР код није доступан
|
||||||
|
small = Мало
|
||||||
|
window-tiling = Поплочавање прозора
|
||||||
|
.horizontal = Подеси водоравни смер
|
||||||
|
.vertical = Подеси усправни смер
|
||||||
|
.swap-window = Замени прозор
|
||||||
|
.toggle-tiling = Промени стање поплочавања прозора
|
||||||
|
.toggle-stacking = Промени стање слагања прозора
|
||||||
|
.toggle-floating = Промени стање плутања прозора
|
||||||
|
.toggle-orientation = Промени смер
|
||||||
|
change-password = Промени лозинку
|
||||||
|
disable-while-typing = Онемогући током куцања
|
||||||
|
long = Дуго
|
||||||
|
copied-to-clipboard = Копирано у оставу
|
||||||
|
bluetooth-confirm-pin = Потврдите ПИН блутута
|
||||||
|
.description = Потврдите да се следећи ПИН подудара са оним који је приказан на { $device }
|
||||||
|
legacy-app-scaling = Скалирање програма у Икс-11 систему прозора
|
||||||
|
.scaled-gaming = Оптимизуј за игре и програме у пуном екрану
|
||||||
|
.gaming-description = Икс-11 програми се могу појавити благо већи/мањи у поређењу са Вејленд програмима
|
||||||
|
.scaled-applications = Оптимизуј за програме
|
||||||
|
.applications-description = Игре и Икс-11 програми у пуном екрану могу се не поклопити са резолуцијом вашег екрана
|
||||||
|
.scaled-compatibility = Режим максималне усаглашености
|
||||||
|
.compatibility-description = Икс-11 програми се могу појавити замућеним на HiDPI екранима
|
||||||
|
.preferred-display = Жељени екран за игре и Икс-11 програме у пуном екрану
|
||||||
|
.no-display = Ништа
|
||||||
|
night-light = Ноћно светло
|
||||||
|
.auto = Самостално (од заласка до изласка сунца)
|
||||||
|
.desc = Умањи плаво светло топлијим бојама
|
||||||
|
custom-shortcuts = Произвољне пречице
|
||||||
|
.add = Додај пречицу
|
||||||
|
.context = Додај произвољну пречицу
|
||||||
|
.none = Нема произвољних пречица
|
||||||
|
visible-networks = Видљиве мреже
|
||||||
|
applets = Програмчићи
|
||||||
|
terminate = Окончај
|
||||||
|
window-hint-accent-toggle = Употреби акцентну боју теме као наговештај за активни прозор
|
||||||
|
type-to-search = Куцајте за претрагу...
|
||||||
|
workspaces-behavior = Понашање радног простора
|
||||||
|
.dynamic = Динамички радни простори
|
||||||
|
.dynamic-desc = Самостално уклања празне радне просторе.
|
||||||
|
.fixed = Неизмењив број радних простора
|
||||||
|
.fixed-desc = Додај или уклони радне просторе у прегледу.
|
||||||
|
wireguard-dialog = Додај Вајергард уређај
|
||||||
|
.description = Изаберите назив уређаја за подешавање Вајергарда.
|
||||||
|
remove-connection-dialog = Уклонити профил везе?
|
||||||
|
.vpn-description = Биће потребно да поново унесете лозинку како бисте у будућности користили ову мрежу.
|
||||||
|
.wired-description = Мораћете поново да креирате овај профил да бисте га у будућности користили.
|
||||||
|
password-confirm = Потврди лозинку
|
||||||
|
click-behavior = Понашање клика
|
||||||
|
.click-finger = Секундарни клик са два прста и средњи клик са три прста
|
||||||
|
.button-areas = Секундарни клик у доњем десном углу и средњи клик у доњем центру
|
||||||
|
move-windows = Помери прозоре
|
||||||
|
.direction =
|
||||||
|
Помери прозор { $direction ->
|
||||||
|
*[down] доле
|
||||||
|
[left] лево
|
||||||
|
[right] десно
|
||||||
|
[up] горе
|
||||||
|
}
|
||||||
|
.display =
|
||||||
|
Помери прозор за један екран { $direction ->
|
||||||
|
*[down] доле
|
||||||
|
[left] лево
|
||||||
|
[right] десно
|
||||||
|
[up] горе
|
||||||
|
}
|
||||||
|
.workspace =
|
||||||
|
Помери прозор за један радни простор { $direction ->
|
||||||
|
*[below] испод
|
||||||
|
[left] лево
|
||||||
|
[right] десно
|
||||||
|
[above] изнад
|
||||||
|
}
|
||||||
|
.workspace-num = Помери прозор у радни простор { $num }
|
||||||
|
.prev-workspace = Помери прозор у претходни радни простор
|
||||||
|
.next-workspace = Помери прозор у следећи радни простор
|
||||||
|
.last-workspace = Премешта прозор на последњи радни простор
|
||||||
|
.next-display = Премешта прозор на следећи екран
|
||||||
|
.prev-display = Премешта прозор на претходни екран
|
||||||
|
.send-to-prev-workspace = Премешта прозор у претходни радни простор
|
||||||
|
.send-to-next-workspace = Премешта прозор у следећи радни простор
|
||||||
|
switch-workspaces = Пребаци радне просторе
|
||||||
|
.horizontal = Превлачење са четири прста лево/десно
|
||||||
|
.vertical = Превлачење са четири прста горе/доле
|
||||||
|
applications = Програми
|
||||||
|
dbus-connection-error = Није успело повезивање са Д-сабирницом
|
||||||
|
system-controls = Системске контроле
|
||||||
|
auto-switch = Самостално пребацивање између светлог и тамног режима
|
||||||
|
.sunrise = Пребацује на светли режим при изласку сунца
|
||||||
|
.sunset = Пребацује на тамни режим при заласку сунца
|
||||||
|
.next-sunrise = Пребацује на светли режим при следећем изласку сунца
|
||||||
|
.next-sunset = Пребацује на тамни режим при следећем заласку сунца
|
||||||
|
dark = Тамна
|
||||||
|
add-vpn = Додај ВПН
|
||||||
|
keyboard-numlock-boot = Num Lock
|
||||||
|
.boot-state = Стање при покретању
|
||||||
|
.last-boot = Последње покретање
|
||||||
|
.on = Укључено
|
||||||
|
.off = Искључено
|
||||||
|
.set = Постави стање Num Lock-а при подизању
|
||||||
|
about-related = Повезана подешавања
|
||||||
|
.support = Потражите подршку
|
||||||
|
tap-to-click = Тапни за клик
|
||||||
|
.desc = Омогућава тап једним прстом за примарни клик, тап два прста за секундарни клик и тап три прста за средњи клик
|
||||||
|
interface-density = Густина прочеља
|
||||||
|
.comfortable = Удобно
|
||||||
|
.compact = Збијено
|
||||||
|
.spacious = Пространо
|
||||||
|
open-application-library = Отвори библиотеку програма
|
||||||
|
slow = Споро
|
||||||
|
network-name = Назив мреже
|
||||||
|
large = Велико
|
||||||
|
scrolling = Помицање
|
||||||
|
.two-finger = Помицање са два прста
|
||||||
|
.edge = Помицање дуж ивице једним прстом
|
||||||
|
.speed = Брзина помицања
|
||||||
|
.natural = Природно помицање
|
||||||
|
.natural-desc = Помакни садржај, уместо приказа
|
||||||
|
auth-dialog = Потребно је потврђивање идентитета
|
||||||
|
.vpn-description = Унесите корисничко име и лозинку које захтева ВПН услуга.
|
||||||
|
.wifi-description = Унесите лозинку или кључ за шифровање. Такође се можете повезати притискањем дугмета „WPS“ на рутеру.
|
||||||
|
add-user = Додај корисника
|
||||||
|
enable = Омогући
|
||||||
|
add-image = Додај слику
|
||||||
|
migrate-workspace-next = Пресели радни простор на следећи излаз
|
||||||
|
airplane-on = Режим авиона је укључен.
|
||||||
|
formatting = Форматирање
|
||||||
|
.dates = Датуми
|
||||||
|
.time = Време
|
||||||
|
.date-and-time = Датум и време
|
||||||
|
.numbers = Бројеви
|
||||||
|
.measurement = Мерење
|
||||||
|
.paper = Папир
|
||||||
|
disabled = Онемогућено
|
||||||
|
add-applet = Додај програмчић
|
||||||
|
show-extended-input-sources = Прикажи проширене изворе улаза
|
||||||
|
mode-and-colors = Режим и боје
|
||||||
|
forget = Заборави
|
||||||
|
center-segment = Средишњи сегмент
|
||||||
|
panel-missing = Подешавање траке недостаје
|
||||||
|
.desc = Датотека са подешавањима траке недостаје због употребе прилагођеног подешавања или је оштећена.
|
||||||
|
.fix = Врати на подразумевано
|
||||||
|
invalid-username = Неисправно корисничко име
|
||||||
|
mirroring = Пресликавање
|
||||||
|
.id = Пресликавање { $id }
|
||||||
|
.dont = Немој пресликати
|
||||||
|
.mirror = Пресликај { $display }
|
||||||
|
.project =
|
||||||
|
Пројектуј на { $display ->
|
||||||
|
[all] све екране
|
||||||
|
*[other] { $display }
|
||||||
|
}
|
||||||
|
.project-count =
|
||||||
|
Пројектује на { $count } { $count ->
|
||||||
|
[1] други екран
|
||||||
|
*[other] других екрана
|
||||||
|
}
|
||||||
|
orientation = Смер
|
||||||
|
.standard = Обично
|
||||||
|
.rotate-90 = Заокрени за 90°
|
||||||
|
.rotate-180 = Заокрени за 180°
|
||||||
|
.rotate-270 = Заокрени за 270°
|
||||||
|
auto = Самостално
|
||||||
|
end-segment = Крајњи сегмент
|
||||||
|
bluetooth-adapters = Блутут адаптери
|
||||||
|
time-format = Формат датума и времена
|
||||||
|
.twenty-four = 24-часовни формат
|
||||||
|
.show-seconds = Прикажи секунде
|
||||||
|
.first = Први дан у недељи
|
||||||
|
.show-date = Прикажи датум у програмчићу за време
|
||||||
|
.friday = Петак
|
||||||
|
.saturday = Субота
|
||||||
|
.sunday = Недеља
|
||||||
|
.monday = Понедељак
|
||||||
|
accent-color = Боја за наглашавање
|
||||||
|
type-key-combination = Укуцај комбинацију тастера
|
||||||
|
manage-windows = Управљај прозорима
|
||||||
|
.close = Затвори прозор
|
||||||
|
.maximize = Увећај прозор
|
||||||
|
.fullscreen = Прозор преко целог екрана
|
||||||
|
.minimize = Умањи прозор
|
||||||
|
.resize-inwards = Промени величину прозора ка унутра
|
||||||
|
.resize-outwards = Промени величину прозора ка споља
|
||||||
|
.toggle-sticky = Окини лепљиви прозор
|
||||||
|
never = Никада
|
||||||
|
install-additional-languages = Инсталирај додатне језике
|
||||||
|
settings = Подешавања
|
||||||
|
sound-output = Излаз
|
||||||
|
.volume = Јачина излаза
|
||||||
|
.device = Излазни уређај
|
||||||
|
.level = Ниво излаза
|
||||||
|
.config = Поставка
|
||||||
|
.balance = Равнотежа
|
||||||
|
.left = Лево
|
||||||
|
.right = Десно
|
||||||
|
window-controls = Контроле прозора
|
||||||
|
.maximize = Прикажи дугме за увећање
|
||||||
|
.minimize = Прикажи дугме за умањење
|
||||||
|
.active-window-hint = Прикажи ознаку за активни прозор
|
||||||
|
window-management-appearance = Управљање прозорима
|
||||||
|
.active-hint = Величина ознаке за активни прозор
|
||||||
|
.gaps = Размаци око поређаних прозора
|
||||||
|
migrate-workspace-prev = Пресели радни простор на претходни излаз
|
||||||
|
legacy-app-global-shortcuts = Опште пречице у програмима Икс-11
|
||||||
|
.desc = Опште пречице омогућавају да притисаци тастатура и догађаји дугмића миша у програмима буду препознати од стране других програма за функције као што су „притисни-за-говор“ или „притисни-за-утишавање“. Подразумевано, опште пречице су онемогућене у програмима Икс-11 како би се осигурало да други програми не могу пратити догађаје тастатуре и миша који садрже осетљиве податке.
|
||||||
|
.none = Нема кључева
|
||||||
|
.modifiers = Заменски тастери (Super, Shift, Control, Alt)
|
||||||
|
.combination = Сви тастери док су заменски тастери Super, Control или Alt притиснути
|
||||||
|
.all = Сви тастери
|
||||||
|
.mouse = Догађаји дугмади миша у Икс-11 програмима
|
||||||
|
activate = Покрени
|
||||||
|
replace = Замени
|
||||||
|
power-saving = Могућности штедње енергије
|
||||||
|
.turn-off-screen-after = Искључи екран након
|
||||||
|
.auto-suspend = Самостално обустављање
|
||||||
|
.auto-suspend-ac = Самостално обустављање када је прикључен
|
||||||
|
.auto-suspend-battery = Самостално обустављање при напајању батеријом
|
||||||
|
connected-devices = Повезани уређаји
|
||||||
|
.unknown = Непознат уређај
|
||||||
|
icons-and-toolkit = Иконице и теме скупа алата
|
||||||
|
sound-applications = Програми
|
||||||
|
.desc = Јачина звука и подешавања програма
|
||||||
|
time-zone = Временска зона
|
||||||
|
.auto = Самостална временска зона
|
||||||
|
.auto-info = Захтева услуге локације и приступ интернету
|
||||||
|
dialog-add = Додај
|
||||||
|
fast = Брзо
|
||||||
|
add-color = Додај боју
|
||||||
|
add-network = Додај мрежу
|
||||||
|
.profile = Додај профил
|
||||||
|
network-device-state =
|
||||||
|
.activated = Повезано
|
||||||
|
.config = Повезује се
|
||||||
|
.deactivating = Веза се прекида
|
||||||
|
.disconnected = Веза прекинута
|
||||||
|
.failed = Неуспешно повезивање
|
||||||
|
.ip-check = Провера везе
|
||||||
|
.ip-config = Захтевање ИП и информација о рутирању
|
||||||
|
.need-auth = Потребно је потврђивање идентитета
|
||||||
|
.prepare = Припрема за повезивање
|
||||||
|
.secondaries = Чекање секундарне везе
|
||||||
|
.unavailable = Недоступно
|
||||||
|
.unknown = Непознато стање
|
||||||
|
.unmanaged = Неуправљиво
|
||||||
|
.unplugged = Кабел није прикључен
|
||||||
|
command = Наредба
|
||||||
|
gestures = Гестови
|
||||||
|
.four-finger-down = Превлачење са четири прста на доле
|
||||||
|
.four-finger-left = Превлачење са четири прста на лево
|
||||||
|
.four-finger-right = Превлачење са четири прста на десно
|
||||||
|
.four-finger-up = Превлачење са четири прста на горе
|
||||||
|
.three-finger-any = Превлачење са три прста у било ком смеру
|
||||||
|
system = Систем и налози
|
||||||
|
no-networks = Ниједна мрежа није пронађена.
|
||||||
|
open-new-folder = Отвори нову фасциклу
|
||||||
|
panel-bottom = Доле
|
||||||
|
share = Дељење мреже
|
||||||
|
add = Додај
|
||||||
|
fill = Попуна
|
||||||
|
custom = Прилагођено
|
||||||
|
bluetooth-paired = Претходно повезани уређаји
|
||||||
|
.connect = Повежи
|
||||||
|
.battery = { $percentage }% батерија
|
||||||
|
dialog = Прозорче
|
||||||
|
.title = Задржати подешавања екрана?
|
||||||
|
.keep-changes = Задржи измене
|
||||||
|
.change-prompt = Измене подешавања ће се самостално вратити за { $time } секунди.
|
||||||
|
.revert-settings = Врати подешавања
|
||||||
|
navigate = Навигирај
|
||||||
|
workspaces-overview-thumbnails = Сличице прегледа радних простора
|
||||||
|
.show-number = Прикажи број радног простора
|
||||||
|
.show-name = Прикажи назив радног простора
|
||||||
|
color = Боја
|
||||||
|
.depth = Дубина боје
|
||||||
|
.profile = Профил боје
|
||||||
|
.sidebar = Профили боја
|
||||||
|
.temperature = Температура боје
|
||||||
|
hex = Хекс
|
||||||
|
magnifier = Лупа
|
||||||
|
.controls =
|
||||||
|
Или употребите ове пречице: { $zoom_in ->
|
||||||
|
[zero] { "" }
|
||||||
|
*[other]
|
||||||
|
{ "" }
|
||||||
|
{ $zoom_in } за увећање,
|
||||||
|
}{ $zoom_out ->
|
||||||
|
[zero] { "" }
|
||||||
|
*[other]
|
||||||
|
{ "" }
|
||||||
|
{ $zoom_out } за умањење,
|
||||||
|
}
|
||||||
|
Супер + помакните точком миша
|
||||||
|
.scroll_controls = Омогући увећање мишем или додирном таблом помоћу Супер + помицање
|
||||||
|
.show_overlay = Прикажи прекривање лупе
|
||||||
|
.increment = Корак увећања
|
||||||
|
.signin = Покрени лупу при пријави
|
||||||
|
.applet = Окини лупу у програмчићу на траци
|
||||||
|
.movement = Померање увећаног прегледа
|
||||||
|
.continuous = Континуирано показивачем
|
||||||
|
.onedge = Када показивач досегне ивицу
|
||||||
|
.centered = За задржавање показивача на средини
|
||||||
|
colors = Боје
|
||||||
|
administrator = Администратор
|
||||||
|
.desc = Администратори могу да промене подешавања за све кориснике, као и да додају и уклоне друге кориснике
|
||||||
|
scan-to-connect-description = Скенирај КР код да би се повезао на ову мрежу.
|
||||||
|
modified = { $count } измењено
|
||||||
|
sound-usb-audio = УСБ аудио
|
||||||
|
sound-device-profiles = Профили уређаја
|
||||||
|
sound-hd-audio = ХД аудио
|
||||||
|
shadow-and-corners = Сенка и углови прозора
|
||||||
|
shadows-tiling = Поплочани прозори
|
||||||
|
.clip = Поклопи системске углове
|
||||||
|
.shadow = Примени сенке
|
||||||
|
shadows-floating = Лебдећи прозори
|
||||||
|
.clip = Поклопи системске углове и примени сенке
|
||||||
|
sound-device-port-unplugged = Ископчано
|
||||||
|
workspaces-overview = Преглед радних простора
|
||||||
|
.action-on-typing = Радња при куцању
|
||||||
|
.none = Ништа
|
||||||
|
.launcher = Отвори покретач
|
||||||
|
.applications = Отварање програма
|
||||||
|
xdg-entry-touchpad = Додирна табла
|
||||||
|
time-region = Регион и језик
|
||||||
|
power = Напајање и батерија
|
||||||
|
xdg-entry-wired = Жичана
|
||||||
|
xdg-entry-startup-apps-comment = Подеси програме који се покрећу при пријави
|
||||||
|
xdg-entry-region-language = Регион и језик
|
||||||
|
time-date = Датум и време
|
||||||
|
.auto = Постави самостално
|
||||||
|
.auto-ntp = Датум и време ће се самостално ажурирати када се постави временска зона
|
||||||
|
xdg-entry-mouse-keywords = COSMIC;Mouse;Acceleration;Scrolling;Космик;миш;убрзање;помицање;Kosmik;miš;ubrzanje;pomicanje;
|
||||||
|
xdg-entry-bluetooth-comment = Управљај Блутут уређајима
|
||||||
|
xdg-entry-notifications-keywords = COSMIC;Notification;Lock;Космик;обавештење;закључавање;Kosmik;obaveštenje;zaključavanje;
|
||||||
|
xdg-entry-startup-apps-keywords = COSMIC;Startup;Application;Космик;Покретање;Програм;kosmik;pokretanje;program;
|
||||||
|
xdg-entry-default-apps-comment = Подразумевани веб-прегледач, програм за е-пошту, прегледач датотека и остали програми
|
||||||
|
xdg-entry-keyboard-comment = Извори уноса, пребацивање, унос посебних знакова, пречице
|
||||||
|
xdg-entry-wired-keywords = COSMIC;Wired;LAN;Network;Connection;Космик;Жичана;ЛАН;Мрежа;Веза;kosmik;žičana;lan;mreža;veza;
|
||||||
|
xdg-entry-power = Напајање и батерија
|
||||||
|
xdg-entry-appearance-keywords = COSMIC;Accent;Color;Icon;Font;Theme;Космик;Нагласак;Боја;Иконица;Фонт;Тема;kosmik;naglasak;boja;ikonica;font;tema
|
||||||
|
xdg-entry-mouse = Миш
|
||||||
|
xdg-entry-dock-keywords = COSMIC;Dock;Panel;Applet;Космик;Док;Окно;Програмчић;kosmik;dok;okno;programčić
|
||||||
|
bluetooth = Блутут
|
||||||
|
.status = Овај систем је видљив као { $aliases } док су подешавања за Блутут отворена.
|
||||||
|
.connected = Повезано
|
||||||
|
.connecting = Повезује се
|
||||||
|
.disconnecting = Веза се прекида
|
||||||
|
.connect = Повежи
|
||||||
|
.disconnect = Прекини везу
|
||||||
|
.forget = Заборави
|
||||||
|
.dbus-error = Дошло је до грешке при интеракцији са Д-сабирницом: { $why }
|
||||||
|
.disabled = Услуга блутута је онемогућена
|
||||||
|
.inactive = Услуга блутута није покренута
|
||||||
|
.unknown = Није могуће покренути услугу блутута. Да ли је BlueZ инсталиран?
|
||||||
|
xdg-entry-mouse-comment = Брзина миша, убрзање и природно помицање
|
||||||
|
xdg-entry-system = Систем и налози
|
||||||
|
firmware = Фирмвер
|
||||||
|
xdg-entry-panel-keywords = COSMIC;Panel;Applet;Космик;површ;програмчић;Kosmik;površ;programčić
|
||||||
|
xdg-entry-window-management = Управљање прозорима
|
||||||
|
xdg-entry-a11y = Приступачност
|
||||||
|
xdg-entry-time-language-comment = Управљај системским датумом, временом, облашћу и језиком
|
||||||
|
xdg-entry-desktop-keywords = COSMIC;Desktop;Космик;Радна површина;kosmik;radna površina;
|
||||||
|
default-apps = Подразумевани програми
|
||||||
|
.web-browser = Веб прегледач
|
||||||
|
.file-manager = Управник датотека
|
||||||
|
.mail-client = Програм за е-пошту
|
||||||
|
.music = Музика
|
||||||
|
.video = Видео
|
||||||
|
.photos = Фотографије
|
||||||
|
.calendar = Календар
|
||||||
|
.terminal = Терминал
|
||||||
|
.other-associations = Остала повезивања
|
||||||
|
.text-editor = Уређивач текста
|
||||||
|
.not-installed = Није инсталирано
|
||||||
|
xdg-entry-x11-applications-keywords = COSMIC;X11;Application;Game;Compatibility;Космик;Икс-11;Програм;Игрица;Усаглашеност;kosmik;iks-11;program;igrica;usaglašenost;
|
||||||
|
xdg-entry-displays-comment = Управљај подешавањима поставки екрана
|
||||||
|
xdg-entry-touchpad-keywords = COSMIC;Touchpad;Gesture;Космик;додирна табла;гест;Kosmik;dodirna tabla;gest;
|
||||||
|
xdg-entry-time-language = Време и језик
|
||||||
|
xdg-entry-users = Корисници
|
||||||
|
window-management = Управљање прозорима
|
||||||
|
xdg-entry-system-keywords = COSMIC;System;Info;Accounts;Firmware;Космик;Систем;Подаци;Налози;Фирмвер;kosmik;sistem;podaci;nalozi;firmver;
|
||||||
|
xdg-entry-default-apps = Подразумевани програми
|
||||||
|
xdg-entry-wireless-keywords = Космик;Бежична;Вај-фај;Мрежа;Веза;
|
||||||
|
xdg-entry-applications-comment = Подразумевани програми, почетни програми и подешавања усаглашености програма за Икс-11
|
||||||
|
appearance = Изглед
|
||||||
|
mouse = Миш
|
||||||
|
.speed = Брзина миша
|
||||||
|
.acceleration = Омогући убрзање миша
|
||||||
|
dock = Док
|
||||||
|
xdg-entry-about-keywords = COSMIC;About;Космик;О програму;Kosmik;O programu
|
||||||
|
xdg-entry-panel = Површ
|
||||||
|
xdg-entry-notifications = Обавештења
|
||||||
|
display = Екрани
|
||||||
|
.arrangement = Распоред екрана
|
||||||
|
.arrangement-desc = Превуците екране да бисте их преуредили
|
||||||
|
.enable = Омогући екран
|
||||||
|
.external = { $size } { $output } спољни екран
|
||||||
|
.laptop = { $size } екран преносиног рачунара
|
||||||
|
.options = Подешавања приказа
|
||||||
|
.refresh-rate = Учесталост освежавања
|
||||||
|
.resolution = Резолуција
|
||||||
|
.scale = Размера
|
||||||
|
.additional-scale-options = Додатне могућности размере
|
||||||
|
xdg-entry-a11y-keywords = COSMIC;Accessibility;A11y;Screen;Reader;Magnifier;Contrast;Color;Космик;Приступачност;Екран;Читач;Лупа;Контраст;Боја;kosmik;pristupačnost;ekran;čitač;lupa;kontrast;boja;
|
||||||
|
xdg-entry-wireless-comment = Бежичне везе и профили везе
|
||||||
|
xdg-entry-desktop = Радна површина
|
||||||
|
xdg-entry-date-time-keywords = COSMIC;Time;Zone;Космик;Време;Зона;kosmik;vreme;zona;
|
||||||
|
xdg-entry-desktop-comment = Позадина, изглед, окно, док, управљање прозорима и подешавања радног простора
|
||||||
|
xdg-entry-wallpaper = Позадина
|
||||||
|
xdg-entry-keyboard = Тастатура
|
||||||
|
xdg-entry-a11y-comment = Читач екрана, лупа, велики контраст и филтери боја
|
||||||
|
xdg-entry-displays = Екрани
|
||||||
|
xdg-entry-network = Мрежа и бежична веза
|
||||||
|
sound = Звук
|
||||||
|
xdg-entry-date-time = Датум и време
|
||||||
|
notifications = Обавештења
|
||||||
|
xdg-entry-users-comment = Потврђивање идентитета и кориснички налози
|
||||||
|
startup-apps = Почетни програми
|
||||||
|
.add = Додај програм
|
||||||
|
.user = Програми који се покрећу када се пријавите
|
||||||
|
.none = Није додат ниједан програм за покретање
|
||||||
|
.remove-dialog-title = Уклонити { $name }?
|
||||||
|
.remove-dialog-description = Уклонити овај програм за покретање?
|
||||||
|
.add-startup-app = Додај програм за покретање
|
||||||
|
xdg-entry-input-comment = Подешавања тастатуре и миша
|
||||||
|
xdg-entry-bluetooth-keywords = COSMIC;Bluetooth;Космик;Блутут;kosmik;blutut;
|
||||||
|
about = О систему
|
||||||
|
input-devices = Улазни уређаји
|
||||||
|
xdg-entry-dock-comment = Необавезна трака за апликације и програмчиће
|
||||||
|
xdg-entry-network-keywords = COSMIC;Network;Wireless;WiFi;VPN;Космик;мрежа;бежична веза;бежична;ВПН;Kosmik;mreža;bežična veza;bežična;vpn;
|
||||||
|
xdg-entry-wallpaper-comment = Слике позадине, боје и могућности покретног приказа
|
||||||
|
xdg-entry-dock = Док
|
||||||
|
xdg-entry-startup-apps = Почетни програми
|
||||||
|
workspaces = Радни простори
|
||||||
|
xdg-entry-wireless = Бежична
|
||||||
|
xdg-entry-workspaces-keywords = COSMIC;WiFi;Wi-Fi;Network;Connection;Космик;Радни простор;Смер;Преглед;Монитор;kosmik;radni prostor;smer;pregled;monitor;
|
||||||
|
xdg-entry-system-comment = Подаци о систему, налози и ажурирања фирмвера
|
||||||
|
xdg-entry-x11-applications-comment = Размера програма прозорног система Икс-11, главни екран и опште пречице
|
||||||
|
xdg-entry-region-language-comment = Форматирајте датуме, време и бројеве на основу вашег региона
|
||||||
|
panel = Трака
|
||||||
|
xdg-entry-wallpaper-keywords = COSMIC;Wallpaper;Background;Slideshow;Космик;позадина;позадина;покретни приказ;Kosmik;pozadina;pozadina;pokretni prikaz;
|
||||||
|
xdg-entry-users-keywords = COSMIC;User;Account;Космик;корисник;налог;Kosmik;korisnik;nalog;
|
||||||
|
xdg-entry-about-comment = Назив уређаја, подаци о хардверу, подразумевана подешавања оперативног система
|
||||||
|
xdg-entry-vpn-keywords = COSMIC;VPN;Network;Connection;OpenVPN;OpenConnect;Космик;ВПН;мрежа;веза;ОпенВПН;ОпенКонект;kosmik;vpn;mreža;veza;openvpn;openkonekt;
|
||||||
|
users = Корисници
|
||||||
|
.admin = Админ
|
||||||
|
.standard = Обичан
|
||||||
|
.profile-add = Изаберите слику профила
|
||||||
|
xdg-entry-appearance-comment = Боје нагласка и теме
|
||||||
|
xdg-entry-time-language-keywords = COSMIC;System;Time;Date;Region;Language;Космик;систем;време;датум;област;језик;Kosmik;sistem;vreme;datum;oblast;jezik;
|
||||||
|
xdg-entry-input-keywords = COSMIC;Input;Keyboard;Mouse;Mice;Космик;Унос;Тастатура;Миш;Мишеви;kosmik;unos;tastatura;miš;miševi;
|
||||||
|
xdg-entry-comment = Програм Подешавања за Космик радну површину
|
||||||
|
xdg-entry-notifications-comment = Не узнемиравај, обавештења на закључаном екрану и подешавања по програмима
|
||||||
|
xdg-entry-applications = Програми
|
||||||
|
xdg-entry-sound-keywords = COSMIC;Sound;Audio;Alert;Pipewire;Космик;Звук;Аудио;Упозорење;Пајпвајер;kosmik;zvuk;audio;upozorenje;pajpvajer;
|
||||||
|
xdg-entry-power-keywords = COSMIC;Power;Battery;Космик;Напајање;Батерија;kosmik;napajanje;baterija
|
||||||
|
legacy-applications = Усаглашеност програма Икс-11
|
||||||
|
xdg-entry-default-apps-keywords = COSMIC;Default;Application;Космик;Подразумевано;Програм;kosmik;podrazumevano;program
|
||||||
|
xdg-entry-keywords = COSMIC;Settings;Космик;Подешавања;kosmik;podešavanja;
|
||||||
|
xdg-entry-region-language-keywords = COSMIC;Region;Language;Date;Format;Time;Locale;Localization;Космик;Регион;Језик;Датум;Формат;Време;Локалитет;Локализација;kosmik;region;jezik;datum;format;vreme;lokalitet;lokalizacija;
|
||||||
|
xdg-entry-about = О програму
|
||||||
|
xdg-entry-input = Улазни уређаји
|
||||||
|
xdg-entry-applications-keywords = COSMIC;Default;Application;Startup;X11;Compatibility;Космик;Подразумевано;Програм;Покретање;Икс-11;Усаглашеност;kosmik;podrazumevano;program;pokretanje;iks-11;usaglašenost
|
||||||
|
xdg-entry-sound-comment = Подешавања звука за уређаје, упозорења и програме
|
||||||
|
wallpaper = Позадина
|
||||||
|
.change = Промени слику сваких
|
||||||
|
.fit = Уклапање позадине
|
||||||
|
.folder-dialog = Изаберите фасциклу позадине
|
||||||
|
.image-dialog = Изаберите слику позадине
|
||||||
|
.plural = Позадине
|
||||||
|
.same = Иста позадина на свим екранима
|
||||||
|
.slide = Покретни приказ
|
||||||
|
xdg-entry-touchpad-comment = Брзина додирне табле, могућности клика и гестова
|
||||||
|
xdg-entry-keyboard-keywords = COSMIC;Keyboard;Input;Source;Shortcuts;Космик;тастатура;унос;извор;пречице;Kosmik;tastatura;unos;izvor;prečice;
|
||||||
|
xdg-entry-vpn-comment = ВПН везе и профили везе
|
||||||
|
keyboard = Тастатура
|
||||||
|
xdg-entry-appearance = Изглед
|
||||||
|
xdg-entry-window-management-keywords = COSMIC;Window;Management;Tiling;Super;Key;Космик;Прозор;Управљање;Поплочавање;Супер;Тастер;kosmik;prozor;upravljanje;popločavanje;super;taster;
|
||||||
|
xdg-entry-workspaces-comment = Смер радних простора, преглед и понашање са више екрана
|
||||||
|
xdg-entry-network-comment = Управљај мрежним везама
|
||||||
|
xdg-entry-panel-comment = Примарна системска трака за изборнике и програмчиће
|
||||||
|
touchpad = Додирна табла
|
||||||
|
.acceleration = Омогући убрзање додирне табле
|
||||||
|
.speed = Брзина додирне табле
|
||||||
|
xdg-entry-sound = Звук
|
||||||
|
xdg-entry-power-comment = Режими напајања и могућности уштеде енергије
|
||||||
|
xdg-entry-displays-keywords = COSMIC;Display;Космик;Екран;kosmik;ekran;
|
||||||
|
time = Време и језик
|
||||||
|
xdg-entry-workspaces = Радни простори
|
||||||
|
xdg-entry-date-time-comment = Временска зона, самостална подешавања сата и форматирање времена
|
||||||
|
xdg-entry-x11-applications = Усаглашеност програма Икс-11
|
||||||
|
xdg-entry-window-management-comment = Радња Супер тастера, могућности управљања прозором и додатне могућности поплочавања прозора
|
||||||
|
xdg-entry-wired-comment = Жичане везе и профили везе
|
||||||
|
known-networks = Познате мреже
|
||||||
|
network-and-wireless = Мрежа и бежична веза
|
||||||
|
keyboard-special-char = Унос посебних знакова
|
||||||
|
.alternate = Тастер заменских знакова
|
||||||
|
.compose = Саставни тастер
|
||||||
|
.compose-desc = Саставни тастер омогућава унос великого броја различитих знакова. Да бисте га користили, притисните саставни тастер, а затим низ знакова. На пример, саставни тастер праћено словима C и o унеће ©, док саставни тастер праћено словима a и ‘ унеће á.
|
||||||
|
.caps = Тастер Caps Lock
|
||||||
|
system-shortcut = Систем
|
||||||
|
.app-library = Отвори библиотеку програма
|
||||||
|
.brightness-down = Смањи осветљење екрана
|
||||||
|
.brightness-up = Повећај осветљење екрана
|
||||||
|
.display-toggle = Промени стање унутрашњег екрана
|
||||||
|
.home-folder = Отвори личну фасциклу
|
||||||
|
.keyboard-brightness-down = Смањи осветљење тастатуре
|
||||||
|
.keyboard-brightness-up = Повећај осветљење тастатуре
|
||||||
|
.launcher = Отвори покретач
|
||||||
|
.log-out = Одјави се
|
||||||
|
.lock-screen = Закључај екран
|
||||||
|
.mute = Утишај аудио излаз
|
||||||
|
.mute-mic = Утишај микрофонски улаз
|
||||||
|
.play-pause = Пусти/паузирај
|
||||||
|
.play-next = Следећа нумера
|
||||||
|
.play-prev = Претходна нумера
|
||||||
|
.poweroff = Искључи
|
||||||
|
.screenshot = Направи снимак екрана
|
||||||
|
.suspend = Обустави
|
||||||
|
.terminal = Отвори терминал
|
||||||
|
.touchpad-toggle = Промени стање додирне табле
|
||||||
|
.volume-lower = Смањи јачину звука на излазу
|
||||||
|
.volume-raise = Повећај јачину звука на излазу
|
||||||
|
.web-browser = Отвори веб прегледач
|
||||||
|
.window-switcher = Пребаци између отворених прозора
|
||||||
|
.window-switcher-previous = Пребаци између отворених прозора у обратном смеру
|
||||||
|
.workspace-overview = Отвори преглед радног простора
|
||||||
|
workspaces-navigation = Навигација
|
||||||
|
.wraparound = Померите се између првог и последњег радног простора помоћу пречица на тастатури и гестова
|
||||||
|
no-search-results = Ниједна мрежа се не поклопи са вашом претрагом.
|
||||||
2
i18n/sv/cosmic_settings.ftl
vendored
2
i18n/sv/cosmic_settings.ftl
vendored
|
|
@ -926,3 +926,5 @@ xdg-entry-region-language-keywords = COSMIC;Region;Språk;Datum;Format;Tid;Lokal
|
||||||
xdg-entry-keyboard-keywords = COSMIC;Tangentbord;Inmatning;Källa;Genvägar;
|
xdg-entry-keyboard-keywords = COSMIC;Tangentbord;Inmatning;Källa;Genvägar;
|
||||||
xdg-entry-window-management-keywords = COSMIC;Fönster;Hantering;Kaklande;Super;Tangent;
|
xdg-entry-window-management-keywords = COSMIC;Fönster;Hantering;Kaklande;Super;Tangent;
|
||||||
no-search-results = Inga nätverk matchar din sökning.
|
no-search-results = Inga nätverk matchar din sökning.
|
||||||
|
workspaces-navigation = Navigering
|
||||||
|
.wraparound = Flytta mellan första och sista arbetsytan med hjälp av tangentbordsgenvägar och gester
|
||||||
|
|
|
||||||
38
i18n/uk/cosmic_settings.ftl
vendored
38
i18n/uk/cosmic_settings.ftl
vendored
|
|
@ -524,7 +524,7 @@ users = Користувачі
|
||||||
.standard = Звичайний
|
.standard = Звичайний
|
||||||
.profile-add = Вибрати зображення профілю
|
.profile-add = Вибрати зображення профілю
|
||||||
remove = Вилучити
|
remove = Вилучити
|
||||||
connect = З'єднати
|
connect = З’єднати
|
||||||
password = Пароль
|
password = Пароль
|
||||||
username = Ім'я користувача
|
username = Ім'я користувача
|
||||||
settings = Налаштування
|
settings = Налаштування
|
||||||
|
|
@ -544,10 +544,10 @@ no-networks = Мереж не знайдено.
|
||||||
no-vpn = Немає доступних VPN-з'єднань.
|
no-vpn = Немає доступних VPN-з'єднань.
|
||||||
password-confirm = Підтвердити пароль
|
password-confirm = Підтвердити пароль
|
||||||
visible-networks = Видимі мережі
|
visible-networks = Видимі мережі
|
||||||
auth-dialog = Авторизація обов'язкова
|
auth-dialog = Авторизація обов’язкова
|
||||||
.vpn-description = Введіть ім’я користувача та пароль, необхідні для служби VPN.
|
.vpn-description = Введіть ім’я користувача та пароль, необхідні для служби VPN.
|
||||||
.wifi-description = Введіть пароль або ключ шифрування. Також можна підключитися через кнопку «WPS» на маршрутизаторі.
|
.wifi-description = Введіть пароль або ключ шифрування. Також можна під’єднатися через кнопку «WPS» на маршрутизаторі.
|
||||||
forget-dialog = Забути цю Wi-Fi мережу?
|
forget-dialog = Забути цю Wi‑Fi-мережу?
|
||||||
.description = Вам потрібно буде знову ввести пароль, щоб використовувати цю мережу в майбутньому.
|
.description = Вам потрібно буде знову ввести пароль, щоб використовувати цю мережу в майбутньому.
|
||||||
network-device-state =
|
network-device-state =
|
||||||
.activated = З'єднано
|
.activated = З'єднано
|
||||||
|
|
@ -564,9 +564,9 @@ network-device-state =
|
||||||
.unknown = Невідомий стан
|
.unknown = Невідомий стан
|
||||||
.unmanaged = Некерований
|
.unmanaged = Некерований
|
||||||
.unplugged = Дріт від'єднано
|
.unplugged = Дріт від'єднано
|
||||||
remove-connection-dialog = Вилучити профіль з'єднання?
|
remove-connection-dialog = Вилучити профіль з’єднання?
|
||||||
.vpn-description = Щоб скористатися цією мережею знову, вам потрібно буде повторно ввести пароль.
|
.vpn-description = Щоб скористатися цією мережею знову, вам потрібно буде повторно ввести пароль.
|
||||||
.wired-description = Щоб скористатися цим підключенням знову, вам потрібно буде створити цей профіль повторно.
|
.wired-description = Щоб скористатися цим з’єднанням знову, вам потрібно буде створити цей профіль повторно.
|
||||||
vpn = VPN
|
vpn = VPN
|
||||||
.connections = VPN з'єднання
|
.connections = VPN з'єднання
|
||||||
.error = Не вдалося додати налаштування VPN
|
.error = Не вдалося додати налаштування VPN
|
||||||
|
|
@ -591,7 +591,7 @@ wifi = Wi-Fi
|
||||||
.adapter = Бездротовий адаптер { $id }
|
.adapter = Бездротовий адаптер { $id }
|
||||||
.forget = Забути цю мережу
|
.forget = Забути цю мережу
|
||||||
wireguard-dialog = Додати пристрій WireGuard
|
wireguard-dialog = Додати пристрій WireGuard
|
||||||
.description = Оберіть ім'я пристрою для профілю WireGuard.
|
.description = Оберіть назву пристрою для профілю WireGuard.
|
||||||
activate = Активувати
|
activate = Активувати
|
||||||
confirm = Підтвердити
|
confirm = Підтвердити
|
||||||
enable = Увімкнути
|
enable = Увімкнути
|
||||||
|
|
@ -607,11 +607,11 @@ bluetooth = Bluetooth
|
||||||
.disabled = Служба Bluetooth вимкнена
|
.disabled = Служба Bluetooth вимкнена
|
||||||
.inactive = Служба Bluetooth неактивна
|
.inactive = Служба Bluetooth неактивна
|
||||||
.unknown = Неможливо активувати службу Bluetooth. Можливо, у вас не встановлено пакет BlueZ?
|
.unknown = Неможливо активувати службу Bluetooth. Можливо, у вас не встановлено пакет BlueZ?
|
||||||
bluetooth-paired = З'єднані у минулому пристрої
|
bluetooth-paired = З’єднані у минулому пристрої
|
||||||
.connect = З'єднати
|
.connect = З’єднати
|
||||||
.battery = { $percentage }% заряду
|
.battery = { $percentage }% заряду
|
||||||
bluetooth-confirm-pin = Перевірка PIN-коду між Bluetooth-пристроями
|
bluetooth-confirm-pin = Перевірка PIN-коду між Bluetooth-пристроями
|
||||||
.description = Будь ласка, підтвердіть, що цей PIN-код збігається із тим, який відображається на іншому пристрої: { $device }
|
.description = Підтвердіть, що цей PIN-код збігається із тим, який показується на іншому пристрої: { $device }
|
||||||
bluetooth-available = Пристрої поблизу
|
bluetooth-available = Пристрої поблизу
|
||||||
bluetooth-adapters = Адаптери Bluetooth
|
bluetooth-adapters = Адаптери Bluetooth
|
||||||
accessibility = Доступність
|
accessibility = Доступність
|
||||||
|
|
@ -630,7 +630,7 @@ dbus-connection-error = Не вдалося з'єднатися з DBus
|
||||||
identity = Ідентичність
|
identity = Ідентичність
|
||||||
magnifier = Лупа
|
magnifier = Лупа
|
||||||
.controls =
|
.controls =
|
||||||
Або скористайтеся такими скороченнями: { $zoom_in ->
|
Або скористайтеся такими сполученнями: { $zoom_in ->
|
||||||
[zero] { "" }
|
[zero] { "" }
|
||||||
*[other]
|
*[other]
|
||||||
{ "" }
|
{ "" }
|
||||||
|
|
@ -762,7 +762,7 @@ startup-apps = Автозапуск
|
||||||
.add-startup-app = Додати застосунок до автозапуску
|
.add-startup-app = Додати застосунок до автозапуску
|
||||||
legacy-applications = Сумісність із застосунками X11
|
legacy-applications = Сумісність із застосунками X11
|
||||||
legacy-app-global-shortcuts = Глобальні сполучення клавіш у застосунках X11
|
legacy-app-global-shortcuts = Глобальні сполучення клавіш у застосунках X11
|
||||||
.desc = Глобальні сполучення дозволяють іншим застосункам реагувати на натискання клавіш і кнопок миші, навіть якщо вони виконані в іншому застосунку, наприклад для функцій активації або вимкнення голосу кнопкою. За замовчуванням ця функція вимкнена у застосунках X11, щоб уникнути перехоплення чутливої інформації.
|
.desc = Глобальні сполучення дозволяють іншим застосункам реагувати на натискання клавіш і кнопок миші, навіть якщо вони виконані в іншому застосунку, наприклад, для функцій активації або вимкнення голосу кнопкою. Типово ця функція вимкнена у застосунках X11, щоб уникнути перехоплення чутливої інформації.
|
||||||
.none = Ніякі клавіші
|
.none = Ніякі клавіші
|
||||||
.modifiers = Модифікатори (Super, Shift, Control, Alt)
|
.modifiers = Модифікатори (Super, Shift, Control, Alt)
|
||||||
.combination = Усі клавіши у комбінації з клавішами Super, Control або Alt
|
.combination = Усі клавіши у комбінації з клавішами Super, Control або Alt
|
||||||
|
|
@ -787,8 +787,8 @@ invalid-username = Неприпустиме ім'я користувача
|
||||||
password-mismatch = Обидва паролі мусять збігатися
|
password-mismatch = Обидва паролі мусять збігатися
|
||||||
save = Зберегти
|
save = Зберегти
|
||||||
qr-code-unavailable = QR-код недоступний
|
qr-code-unavailable = QR-код недоступний
|
||||||
network-name = Ім'я мережі
|
network-name = Назва мережі
|
||||||
share = Ширити мережу
|
share = Поділитись мережею
|
||||||
scan-to-connect-description = Відскануйте QR-код, щоб з'єднатися з цією мережею.
|
scan-to-connect-description = Відскануйте QR-код, щоб з'єднатися з цією мережею.
|
||||||
sound-hd-audio = HD Аудіо
|
sound-hd-audio = HD Аудіо
|
||||||
sound-usb-audio = USB Аудіо
|
sound-usb-audio = USB Аудіо
|
||||||
|
|
@ -799,7 +799,7 @@ shadows-tiling = Укладені вікна
|
||||||
.clip = Вирівняти до системних кутів
|
.clip = Вирівняти до системних кутів
|
||||||
.shadow = Застосувати тіні
|
.shadow = Застосувати тіні
|
||||||
shadow-and-corners = Тіні й кути вікон
|
shadow-and-corners = Тіні й кути вікон
|
||||||
sound-device-port-unplugged = Відключено
|
sound-device-port-unplugged = Від’єднано
|
||||||
place-here = Розмістити тут віджети
|
place-here = Розмістити тут віджети
|
||||||
workspaces-overview = Режим огляду робочих просторів
|
workspaces-overview = Режим огляду робочих просторів
|
||||||
.action-on-typing = Дія при введенні тексту
|
.action-on-typing = Дія при введенні тексту
|
||||||
|
|
@ -827,7 +827,7 @@ xdg-entry-default-apps = Типові застосунки
|
||||||
xdg-entry-applications-comment = Типові застосунки, автозапуск і сумісність X11
|
xdg-entry-applications-comment = Типові застосунки, автозапуск і сумісність X11
|
||||||
xdg-entry-panel = Панель
|
xdg-entry-panel = Панель
|
||||||
xdg-entry-notifications = Сповіщення
|
xdg-entry-notifications = Сповіщення
|
||||||
xdg-entry-wireless-comment = Wi-Fi з'єднання і профілі підключення
|
xdg-entry-wireless-comment = Wi-Fi з’єднання і профілі з’єднання
|
||||||
xdg-entry-desktop = Стільниця
|
xdg-entry-desktop = Стільниця
|
||||||
xdg-entry-wallpaper = Тло
|
xdg-entry-wallpaper = Тло
|
||||||
xdg-entry-keyboard = Клавіатура
|
xdg-entry-keyboard = Клавіатура
|
||||||
|
|
@ -853,7 +853,7 @@ xdg-entry-about = Про систему
|
||||||
xdg-entry-input = Пристрої введення
|
xdg-entry-input = Пристрої введення
|
||||||
xdg-entry-sound-comment = Налаштування звуку для пристроїв, сповіщень та застосунків
|
xdg-entry-sound-comment = Налаштування звуку для пристроїв, сповіщень та застосунків
|
||||||
xdg-entry-touchpad-comment = Швидкість сенсорної панелі, варіанти натискання, жести
|
xdg-entry-touchpad-comment = Швидкість сенсорної панелі, варіанти натискання, жести
|
||||||
xdg-entry-vpn-comment = VPN з'єднання та профілі підключення
|
xdg-entry-vpn-comment = VPN з’єднання та профілі з’єднання
|
||||||
xdg-entry-appearance = Вигляд
|
xdg-entry-appearance = Вигляд
|
||||||
xdg-entry-workspaces-comment = Орієнтація та поведінка робочих просторів
|
xdg-entry-workspaces-comment = Орієнтація та поведінка робочих просторів
|
||||||
xdg-entry-network-comment = Керуйте мережевими з’єднаннями
|
xdg-entry-network-comment = Керуйте мережевими з’єднаннями
|
||||||
|
|
@ -864,7 +864,7 @@ xdg-entry-workspaces = Робочі простори
|
||||||
xdg-entry-date-time-comment = Часовий пояс, автоматичне налаштування годинника та формат часу
|
xdg-entry-date-time-comment = Часовий пояс, автоматичне налаштування годинника та формат часу
|
||||||
xdg-entry-x11-applications = Сумісність із застосунками X11
|
xdg-entry-x11-applications = Сумісність із застосунками X11
|
||||||
xdg-entry-window-management-comment = Дія клавіші Super, параметри керування вікнами та додаткові налаштування укладання вікон
|
xdg-entry-window-management-comment = Дія клавіші Super, параметри керування вікнами та додаткові налаштування укладання вікон
|
||||||
xdg-entry-wired-comment = Дротове з'єднання і профілі підключень
|
xdg-entry-wired-comment = Дротове з’єднання і профілі з’єднань
|
||||||
xdg-entry-desktop-comment = Тло, вигляд, панель, область завдань, керування вікнами та налаштування робочого простору
|
xdg-entry-desktop-comment = Тло, вигляд, панель, область завдань, керування вікнами та налаштування робочого простору
|
||||||
xdg-entry-mouse-keywords = COSMIC;Миша;Прискорення;Прокручування;Гортання;КОСМІК;КОСМОС;КОСМІЧНЕ;
|
xdg-entry-mouse-keywords = COSMIC;Миша;Прискорення;Прокручування;Гортання;КОСМІК;КОСМОС;КОСМІЧНЕ;
|
||||||
xdg-entry-notifications-keywords = COSMIC;Сповіщення;Блокування;КОСМІК;КОСМОС;КОСМІЧНЕ;
|
xdg-entry-notifications-keywords = COSMIC;Сповіщення;Блокування;КОСМІК;КОСМОС;КОСМІЧНЕ;
|
||||||
|
|
@ -900,3 +900,5 @@ xdg-entry-displays-keywords = COSMIC;Дисплей;Екран;КОСМІК;КО
|
||||||
xdg-entry-bluetooth-keywords = COSMIC;Bluetooth;Блютуз;Бездротове;З’єднання;КОСМІК;КОСМОС;КОСМІЧНЕ;
|
xdg-entry-bluetooth-keywords = COSMIC;Bluetooth;Блютуз;Бездротове;З’єднання;КОСМІК;КОСМОС;КОСМІЧНЕ;
|
||||||
xdg-entry-a11y-comment = Екранний читач, лупа, високий контраст і фільтри кольорів
|
xdg-entry-a11y-comment = Екранний читач, лупа, високий контраст і фільтри кольорів
|
||||||
no-search-results = Пошук не дав результатів.
|
no-search-results = Пошук не дав результатів.
|
||||||
|
workspaces-navigation = Навігація
|
||||||
|
.wraparound = Перехід між першим і останнім робочим простором сполученнями клавіш і жестами
|
||||||
|
|
|
||||||
2
i18n/zh-CN/cosmic_settings.ftl
vendored
2
i18n/zh-CN/cosmic_settings.ftl
vendored
|
|
@ -914,3 +914,5 @@ xdg-entry-keyboard-keywords = COSMIC;键盘;输入;输入源;快捷键;
|
||||||
xdg-entry-window-management-keywords = COSMIC;窗口;管理;平铺;Super;键;
|
xdg-entry-window-management-keywords = COSMIC;窗口;管理;平铺;Super;键;
|
||||||
xdg-entry-displays-keywords = COSMIC;显示器;屏幕;
|
xdg-entry-displays-keywords = COSMIC;显示器;屏幕;
|
||||||
no-search-results = 无网络符合您的搜索。
|
no-search-results = 无网络符合您的搜索。
|
||||||
|
workspaces-navigation = 导航
|
||||||
|
.wraparound = 使用快捷键和手势在第一个和最后个工作区间切换
|
||||||
|
|
|
||||||
4
i18n/zh-TW/cosmic_settings.ftl
vendored
4
i18n/zh-TW/cosmic_settings.ftl
vendored
|
|
@ -219,7 +219,7 @@ auto-switch = 在淺色與深色模式間自動切換
|
||||||
container-background = 容器背景
|
container-background = 容器背景
|
||||||
.desc-detail = 容器背景與導航列、側邊欄、對話方塊等元件相關,預設從應用程式或視窗背景進行衍生。
|
.desc-detail = 容器背景與導航列、側邊欄、對話方塊等元件相關,預設從應用程式或視窗背景進行衍生。
|
||||||
.reset = 重設至自動
|
.reset = 重設至自動
|
||||||
.desc = 容器背景色與導航列、側邊欄、對話方塊等元件相關
|
.desc = 容器背景色與導覽列、側邊欄、對話方塊等元件相關
|
||||||
control-tint = 控制元件色調
|
control-tint = 控制元件色調
|
||||||
.desc = 使用於標準按鈕、搜尋輸入、文字輸入和類似元件的背景
|
.desc = 使用於標準按鈕、搜尋輸入、文字輸入和類似元件的背景
|
||||||
frosted = 系統介面呈現磨砂玻璃的透明效果
|
frosted = 系統介面呈現磨砂玻璃的透明效果
|
||||||
|
|
@ -911,3 +911,5 @@ shadows-tiling = 平鋪視窗
|
||||||
shadows-floating = 浮動視窗
|
shadows-floating = 浮動視窗
|
||||||
.clip = 符合系統角型和套用陰影
|
.clip = 符合系統角型和套用陰影
|
||||||
no-search-results = 沒有網路符合您所要搜尋的。
|
no-search-results = 沒有網路符合您所要搜尋的。
|
||||||
|
workspaces-navigation = 導覽
|
||||||
|
.wraparound = 使用快捷鍵和手勢在第一個和最後個工作區間切換
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ edition = "2024"
|
||||||
derive_setters = "0.1.9"
|
derive_setters = "0.1.9"
|
||||||
regex = "1.12.3"
|
regex = "1.12.3"
|
||||||
slotmap = "1.1.1"
|
slotmap = "1.1.1"
|
||||||
libcosmic = { workspace = true }
|
libcosmic-yoda = { workspace = true }
|
||||||
downcast-rs = "2.0.2"
|
downcast-rs = "2.0.2"
|
||||||
url = "2.5.8"
|
url = "2.5.8"
|
||||||
slab = "0.4.12"
|
slab = "0.4.12"
|
||||||
|
|
|
||||||
|
|
@ -3,15 +3,12 @@
|
||||||
|
|
||||||
use crate::section::{self, Section};
|
use crate::section::{self, Section};
|
||||||
use crate::{Content, Info, Page};
|
use crate::{Content, Info, Page};
|
||||||
use cosmic::Element;
|
|
||||||
use cosmic::Task;
|
|
||||||
use cosmic::app::ContextDrawer;
|
use cosmic::app::ContextDrawer;
|
||||||
|
use cosmic::{Element, Task};
|
||||||
use regex::Regex;
|
use regex::Regex;
|
||||||
use slotmap::{SecondaryMap, SlotMap, SparseSecondaryMap};
|
use slotmap::{SecondaryMap, SlotMap, SparseSecondaryMap};
|
||||||
use std::{
|
use std::any::{Any, TypeId};
|
||||||
any::{Any, TypeId},
|
use std::collections::HashMap;
|
||||||
collections::HashMap,
|
|
||||||
};
|
|
||||||
|
|
||||||
/// All settings pages are registered and managed by the [`Binder`].
|
/// All settings pages are registered and managed by the [`Binder`].
|
||||||
pub struct Binder<Message> {
|
pub struct Binder<Message> {
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,9 @@ mod binder;
|
||||||
pub use binder::{AutoBind, Binder};
|
pub use binder::{AutoBind, Binder};
|
||||||
|
|
||||||
mod insert;
|
mod insert;
|
||||||
use cosmic::{Element, Task, app::ContextDrawer, iced::Subscription};
|
use cosmic::app::ContextDrawer;
|
||||||
|
use cosmic::iced::Subscription;
|
||||||
|
use cosmic::{Element, Task};
|
||||||
use downcast_rs::{Downcast, impl_downcast};
|
use downcast_rs::{Downcast, impl_downcast};
|
||||||
pub use insert::Insert;
|
pub use insert::Insert;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,16 +6,15 @@ use futures_util::StreamExt;
|
||||||
use image::imageops::FilterType;
|
use image::imageops::FilterType;
|
||||||
use image::{DynamicImage, ImageBuffer, Rgba, RgbaImage};
|
use image::{DynamicImage, ImageBuffer, Rgba, RgbaImage};
|
||||||
use jxl_oxide::integration::JxlDecoder;
|
use jxl_oxide::integration::JxlDecoder;
|
||||||
|
use std::borrow::Cow;
|
||||||
|
use std::collections::HashMap;
|
||||||
|
use std::collections::hash_map::DefaultHasher;
|
||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
|
use std::hash::{Hash, Hasher};
|
||||||
|
use std::io::Read;
|
||||||
use std::os::unix::ffi::OsStrExt;
|
use std::os::unix::ffi::OsStrExt;
|
||||||
use std::{
|
use std::path::{Path, PathBuf};
|
||||||
borrow::Cow,
|
use std::pin::Pin;
|
||||||
collections::{HashMap, hash_map::DefaultHasher},
|
|
||||||
hash::{Hash, Hasher},
|
|
||||||
io::Read,
|
|
||||||
path::{Path, PathBuf},
|
|
||||||
pin::Pin,
|
|
||||||
};
|
|
||||||
use walkdir::WalkDir;
|
use walkdir::WalkDir;
|
||||||
|
|
||||||
pub const DEFAULT_COLORS: &[Color] = &[
|
pub const DEFAULT_COLORS: &[Color] = &[
|
||||||
|
|
@ -104,6 +103,7 @@ pub async fn load_each_from_path(
|
||||||
) -> Pin<Box<dyn Send + Stream<Item = (PathBuf, RgbaImage, RgbaImage)>>> {
|
) -> Pin<Box<dyn Send + Stream<Item = (PathBuf, RgbaImage, RgbaImage)>>> {
|
||||||
let candidate_paths: Vec<_> = WalkDir::new(path)
|
let candidate_paths: Vec<_> = WalkDir::new(path)
|
||||||
.max_depth(3)
|
.max_depth(3)
|
||||||
|
.follow_links(true)
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.filter_map(Result::ok)
|
.filter_map(Result::ok)
|
||||||
.filter(|entry| entry.file_type().is_file())
|
.filter(|entry| entry.file_type().is_file())
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
(
|
||||||
|
base: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
hover: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
pressed: (
|
||||||
|
red: 0.08610422,
|
||||||
|
green: 0.08610421,
|
||||||
|
blue: 0.08610421,
|
||||||
|
alpha: 0.5,
|
||||||
|
),
|
||||||
|
selected: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
selected_text: (
|
||||||
|
red: 0.3882353,
|
||||||
|
green: 0.8156863,
|
||||||
|
blue: 0.8745098,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
focus: (
|
||||||
|
red: 0.3882353,
|
||||||
|
green: 0.8156863,
|
||||||
|
blue: 0.8745098,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
divider: (
|
||||||
|
red: 0.7532969,
|
||||||
|
green: 0.7532969,
|
||||||
|
blue: 0.75329685,
|
||||||
|
alpha: 0.2,
|
||||||
|
),
|
||||||
|
on: (
|
||||||
|
red: 0.7532969,
|
||||||
|
green: 0.7532969,
|
||||||
|
blue: 0.75329685,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
disabled: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
on_disabled: (
|
||||||
|
red: 0.7532969,
|
||||||
|
green: 0.7532969,
|
||||||
|
blue: 0.75329685,
|
||||||
|
alpha: 0.65,
|
||||||
|
),
|
||||||
|
border: (
|
||||||
|
red: 0.743206,
|
||||||
|
green: 0.74320585,
|
||||||
|
blue: 0.74320585,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
disabled_border: (
|
||||||
|
red: 0.743206,
|
||||||
|
green: 0.74320585,
|
||||||
|
blue: 0.74320585,
|
||||||
|
alpha: 0.5,
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
(
|
||||||
|
base: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
hover: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
pressed: (
|
||||||
|
red: 0.74320567,
|
||||||
|
green: 0.743206,
|
||||||
|
blue: 0.74320585,
|
||||||
|
alpha: 0.5,
|
||||||
|
),
|
||||||
|
selected: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
selected_text: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.32156864,
|
||||||
|
blue: 0.3529412,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
focus: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.32156864,
|
||||||
|
blue: 0.3529412,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
divider: (
|
||||||
|
red: 0.15292808,
|
||||||
|
green: 0.15292814,
|
||||||
|
blue: 0.15292796,
|
||||||
|
alpha: 0.2,
|
||||||
|
),
|
||||||
|
on: (
|
||||||
|
red: 0.15292808,
|
||||||
|
green: 0.15292814,
|
||||||
|
blue: 0.15292796,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
disabled: (
|
||||||
|
red: 0.0,
|
||||||
|
green: 0.0,
|
||||||
|
blue: 0.0,
|
||||||
|
alpha: 0.0,
|
||||||
|
),
|
||||||
|
on_disabled: (
|
||||||
|
red: 0.15292808,
|
||||||
|
green: 0.15292814,
|
||||||
|
blue: 0.15292796,
|
||||||
|
alpha: 0.65,
|
||||||
|
),
|
||||||
|
border: (
|
||||||
|
red: 0.08610404,
|
||||||
|
green: 0.08610427,
|
||||||
|
blue: 0.08610421,
|
||||||
|
alpha: 1.0,
|
||||||
|
),
|
||||||
|
disabled_border: (
|
||||||
|
red: 0.08610404,
|
||||||
|
green: 0.08610427,
|
||||||
|
blue: 0.08610421,
|
||||||
|
alpha: 0.5,
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
@ -1,3 +1,3 @@
|
||||||
[toolchain]
|
[toolchain]
|
||||||
channel = "1.90.0"
|
channel = "1.93.0"
|
||||||
components = ["clippy", "rustfmt"]
|
components = ["clippy", "rustfmt"]
|
||||||
|
|
|
||||||
1
rustfmt.toml
Normal file
1
rustfmt.toml
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
imports_granularity = "Module"
|
||||||
|
|
@ -7,8 +7,8 @@ rust-version.workspace = true
|
||||||
publish = true
|
publish = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols" }
|
cosmic-protocols = { path = "../../../cosmic-protocols" }
|
||||||
iced_futures = { git = "https://github.com/pop-os/libcosmic" }
|
iced_futures = { path = "../../../libcosmic/iced/futures" }
|
||||||
num-derive = "0.4.2"
|
num-derive = "0.4.2"
|
||||||
num-traits = "0.2.19"
|
num-traits = "0.2.19"
|
||||||
sctk.workspace = true
|
sctk.workspace = true
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,11 @@
|
||||||
use cosmic_protocols::a11y::v1::client::cosmic_a11y_manager_v1::{self, ActiveState};
|
use cosmic_protocols::a11y::v1::client::cosmic_a11y_manager_v1::{self, ActiveState};
|
||||||
use num_derive::{FromPrimitive, ToPrimitive};
|
use num_derive::{FromPrimitive, ToPrimitive};
|
||||||
use sctk::{
|
use sctk::reexports::calloop::{self, LoopSignal, channel};
|
||||||
reexports::{
|
use sctk::reexports::calloop_wayland_source::WaylandSource;
|
||||||
calloop::{self, LoopSignal, channel},
|
use sctk::reexports::client::globals::{GlobalListContents, registry_queue_init};
|
||||||
calloop_wayland_source::WaylandSource,
|
use sctk::reexports::client::protocol::wl_registry;
|
||||||
client::{
|
use sctk::reexports::client::{ConnectError, Connection, Dispatch, Proxy, WEnum};
|
||||||
ConnectError, Connection, Dispatch, Proxy, WEnum,
|
use sctk::registry::RegistryState;
|
||||||
globals::{GlobalListContents, registry_queue_init},
|
|
||||||
protocol::wl_registry,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
registry::RegistryState,
|
|
||||||
};
|
|
||||||
use tokio::sync::mpsc;
|
use tokio::sync::mpsc;
|
||||||
|
|
||||||
#[derive(Debug, Clone, Copy)]
|
#[derive(Debug, Clone, Copy)]
|
||||||
|
|
|
||||||
|
|
@ -7,9 +7,9 @@ rust-version.workspace = true
|
||||||
publish = true
|
publish = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
cosmic-dbus-a11y = { git = "https://github.com/pop-os/dbus-settings-bindings" }
|
cosmic-dbus-a11y = { path = "../../../dbus-settings-bindings/a11y" }
|
||||||
futures = "0.3.32"
|
futures = "0.3.32"
|
||||||
iced_futures = { git = "https://github.com/pop-os/libcosmic" }
|
iced_futures = { path = "../../../libcosmic/iced/futures" }
|
||||||
tokio = { version = "1.49.0", features = ["sync", "time"] }
|
tokio = { version = "1.49.0", features = ["sync", "time"] }
|
||||||
tracing = "0.1.44"
|
tracing = "0.1.44"
|
||||||
zbus = "5.13"
|
zbus = "5.13"
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue