() as _;
m.dmDriverExtra = 0;
@@ -441,6 +447,7 @@ impl Displays {
// We get the display's details.
let desc = unsafe {
+ #[allow(invalid_value)]
let mut desc = mem::MaybeUninit::uninit().assume_init();
(*output.0).GetDesc(&mut desc);
desc
diff --git a/libs/scrap/src/wayland/pipewire.rs b/libs/scrap/src/wayland/pipewire.rs
index c1c84f98e..9c0ad9774 100644
--- a/libs/scrap/src/wayland/pipewire.rs
+++ b/libs/scrap/src/wayland/pipewire.rs
@@ -386,21 +386,22 @@ fn streams_from_response(response: OrgFreedesktopPortalRequestResponse) -> Vec>(),
- )
- })
- .next();
- if let Some(v) = v {
- if v.len() == 2 {
- info.position.0 = v[0] as _;
- info.position.1 = v[1] as _;
+ if let Some(pos) = attributes.get("position") {
+ let v = pos
+ .as_iter()?
+ .filter_map(|v| {
+ Some(
+ v.as_iter()?
+ .map(|x| x.as_i64().unwrap_or(0))
+ .collect::>(),
+ )
+ })
+ .next();
+ if let Some(v) = v {
+ if v.len() == 2 {
+ info.position.0 = v[0] as _;
+ info.position.1 = v[1] as _;
+ }
}
}
Some(info)
@@ -415,6 +416,12 @@ static mut INIT: bool = false;
const RESTORE_TOKEN: &str = "restore_token";
const RESTORE_TOKEN_CONF_KEY: &str = "wayland-restore-token";
+pub fn get_available_cursor_modes() -> Result {
+ let conn = SyncConnection::new_session()?;
+ let portal = get_portal(&conn);
+ portal.available_cursor_modes()
+}
+
// mostly inspired by https://gitlab.gnome.org/snippets/19
fn request_screen_cast(
capture_cursor: bool,
@@ -473,7 +480,17 @@ fn request_screen_cast(
args.insert("multiple".into(), Variant(Box::new(true)));
args.insert("types".into(), Variant(Box::new(1u32))); //| 2u32)));
- let cursor_mode = if capture_cursor { 2u32 } else { 1u32 };
+ let mut cursor_mode = 0u32;
+ let mut available_cursor_modes = 0u32;
+ if let Ok(modes) = portal.available_cursor_modes() {
+ available_cursor_modes = modes;
+ }
+ if capture_cursor {
+ cursor_mode = 2u32 & available_cursor_modes;
+ }
+ if cursor_mode == 0 {
+ cursor_mode = 1u32 & available_cursor_modes;
+ }
let plasma = std::env::var("DESKTOP_SESSION").map_or(false, |s| s.contains("plasma"));
if plasma && capture_cursor {
// Warn the user if capturing the cursor is tried on kde as this can crash
@@ -483,7 +500,9 @@ fn request_screen_cast(
desktop, see https://bugs.kde.org/show_bug.cgi?id=435042 for details! \
You have been warned.");
}
- args.insert("cursor_mode".into(), Variant(Box::new(cursor_mode)));
+ if cursor_mode > 0 {
+ args.insert("cursor_mode".into(), Variant(Box::new(cursor_mode)));
+ }
let session: dbus::Path = r
.results
.get("session_handle")
diff --git a/src/client.rs b/src/client.rs
index a6df6dbec..e0ac68c5d 100644
--- a/src/client.rs
+++ b/src/client.rs
@@ -956,7 +956,7 @@ impl LoginConfigHandler {
/// Check if the client should auto login.
/// Return password if the client should auto login, otherwise return empty string.
pub fn should_auto_login(&self) -> String {
- let l = self.lock_after_session_end;
+ let l = self.lock_after_session_end.v;
let a = !self.get_option("auto-login").is_empty();
let p = self.get_option("os-password");
if !p.is_empty() && l && a {
@@ -1063,32 +1063,32 @@ impl LoginConfigHandler {
let mut option = OptionMessage::default();
let mut config = self.load_config();
if name == "show-remote-cursor" {
- config.show_remote_cursor = !config.show_remote_cursor;
- option.show_remote_cursor = (if config.show_remote_cursor {
+ config.show_remote_cursor.v = !config.show_remote_cursor.v;
+ option.show_remote_cursor = (if config.show_remote_cursor.v {
BoolOption::Yes
} else {
BoolOption::No
})
.into();
} else if name == "disable-audio" {
- config.disable_audio = !config.disable_audio;
- option.disable_audio = (if config.disable_audio {
+ config.disable_audio.v = !config.disable_audio.v;
+ option.disable_audio = (if config.disable_audio.v {
BoolOption::Yes
} else {
BoolOption::No
})
.into();
} else if name == "disable-clipboard" {
- config.disable_clipboard = !config.disable_clipboard;
- option.disable_clipboard = (if config.disable_clipboard {
+ config.disable_clipboard.v = !config.disable_clipboard.v;
+ option.disable_clipboard = (if config.disable_clipboard.v {
BoolOption::Yes
} else {
BoolOption::No
})
.into();
} else if name == "lock-after-session-end" {
- config.lock_after_session_end = !config.lock_after_session_end;
- option.lock_after_session_end = (if config.lock_after_session_end {
+ config.lock_after_session_end.v = !config.lock_after_session_end.v;
+ option.lock_after_session_end = (if config.lock_after_session_end.v {
BoolOption::Yes
} else {
BoolOption::No
@@ -1096,15 +1096,15 @@ impl LoginConfigHandler {
.into();
} else if name == "privacy-mode" {
// try toggle privacy mode
- option.privacy_mode = (if config.privacy_mode {
+ option.privacy_mode = (if config.privacy_mode.v {
BoolOption::No
} else {
BoolOption::Yes
})
.into();
} else if name == "enable-file-transfer" {
- config.enable_file_transfer = !config.enable_file_transfer;
- option.enable_file_transfer = (if config.enable_file_transfer {
+ config.enable_file_transfer.v = !config.enable_file_transfer.v;
+ option.enable_file_transfer = (if config.enable_file_transfer.v {
BoolOption::Yes
} else {
BoolOption::No
@@ -1115,10 +1115,14 @@ impl LoginConfigHandler {
} else if name == "unblock-input" {
option.block_input = BoolOption::No.into();
} else if name == "show-quality-monitor" {
- config.show_quality_monitor = !config.show_quality_monitor;
+ config.show_quality_monitor.v = !config.show_quality_monitor.v;
} else {
- let v = self.options.get(&name).is_some();
- if v {
+ let is_set = self
+ .options
+ .get(&name)
+ .map(|o| !o.is_empty())
+ .unwrap_or(false);
+ if is_set {
self.config.options.remove(&name);
} else {
self.config.options.insert(name, "Y".to_owned());
@@ -1252,19 +1256,19 @@ impl LoginConfigHandler {
/// * `name` - The name of the toggle option.
pub fn get_toggle_option(&self, name: &str) -> bool {
if name == "show-remote-cursor" {
- self.config.show_remote_cursor
+ self.config.show_remote_cursor.v
} else if name == "lock-after-session-end" {
- self.config.lock_after_session_end
+ self.config.lock_after_session_end.v
} else if name == "privacy-mode" {
- self.config.privacy_mode
+ self.config.privacy_mode.v
} else if name == "enable-file-transfer" {
- self.config.enable_file_transfer
+ self.config.enable_file_transfer.v
} else if name == "disable-audio" {
- self.config.disable_audio
+ self.config.disable_audio.v
} else if name == "disable-clipboard" {
- self.config.disable_clipboard
+ self.config.disable_clipboard.v
} else if name == "show-quality-monitor" {
- self.config.show_quality_monitor
+ self.config.show_quality_monitor.v
} else {
!self.get_option(name).is_empty()
}
diff --git a/src/client/io_loop.rs b/src/client/io_loop.rs
index ff6d6c004..0178fe9e8 100644
--- a/src/client/io_loop.rs
+++ b/src/client/io_loop.rs
@@ -277,7 +277,7 @@ impl Remote {
}
if !SERVER_CLIPBOARD_ENABLED.load(Ordering::SeqCst)
|| !SERVER_KEYBOARD_ENABLED.load(Ordering::SeqCst)
- || lc.read().unwrap().disable_clipboard
+ || lc.read().unwrap().disable_clipboard.v
{
continue;
}
@@ -778,7 +778,7 @@ impl Remote {
|| self.handler.is_port_forward()
|| !SERVER_CLIPBOARD_ENABLED.load(Ordering::SeqCst)
|| !SERVER_KEYBOARD_ENABLED.load(Ordering::SeqCst)
- || self.handler.lc.read().unwrap().disable_clipboard)
+ || self.handler.lc.read().unwrap().disable_clipboard.v)
{
let txt = self.old_clipboard.lock().unwrap().clone();
if !txt.is_empty() {
@@ -808,7 +808,7 @@ impl Remote {
self.handler.set_cursor_position(cp);
}
Some(message::Union::Clipboard(cb)) => {
- if !self.handler.lc.read().unwrap().disable_clipboard {
+ if !self.handler.lc.read().unwrap().disable_clipboard.v {
#[cfg(not(any(target_os = "android", target_os = "ios")))]
update_clipboard(cb, Some(&self.old_clipboard));
#[cfg(any(target_os = "android", target_os = "ios"))]
@@ -1104,7 +1104,7 @@ impl Remote {
Some(misc::Union::PortableServiceRunning(b)) => {
if b {
self.handler.msgbox(
- "custom-nocancel",
+ "custom-nocancel-success",
"Successful",
"Elevate successfully",
"",
@@ -1121,7 +1121,7 @@ impl Remote {
self.handler.handle_test_delay(t, peer).await;
}
Some(message::Union::AudioFrame(frame)) => {
- if !self.handler.lc.read().unwrap().disable_audio {
+ if !self.handler.lc.read().unwrap().disable_audio.v {
self.audio_sender.send(MediaData::AudioFrame(frame)).ok();
}
}
@@ -1204,7 +1204,7 @@ impl Remote {
#[inline(always)]
fn update_privacy_mode(&mut self, on: bool) {
let mut config = self.handler.load_config();
- config.privacy_mode = on;
+ config.privacy_mode.v = on;
self.handler.save_config(config);
self.handler.update_privacy_mode();
@@ -1278,14 +1278,14 @@ impl Remote {
#[cfg(windows)]
{
let enabled = SERVER_FILE_TRANSFER_ENABLED.load(Ordering::SeqCst)
- && self.handler.lc.read().unwrap().enable_file_transfer;
+ && self.handler.lc.read().unwrap().enable_file_transfer.v;
ContextSend::enable(enabled);
}
}
#[cfg(windows)]
fn handle_cliprdr_msg(&self, clip: hbb_common::message_proto::Cliprdr) {
- if !self.handler.lc.read().unwrap().disable_clipboard {
+ if !self.handler.lc.read().unwrap().disable_clipboard.v {
#[cfg(feature = "flutter")]
if let Some(hbb_common::message_proto::cliprdr::Union::FormatList(_)) = &clip.union {
if self.client_conn_id
diff --git a/src/common.rs b/src/common.rs
index cdf57ae3d..c2d5a81f0 100644
--- a/src/common.rs
+++ b/src/common.rs
@@ -52,7 +52,7 @@ pub fn global_init() -> bool {
#[cfg(target_os = "linux")]
{
if !*IS_X11 {
- crate::server::wayland::set_wayland_scrap_map_err();
+ crate::server::wayland::init();
}
}
true
@@ -451,6 +451,7 @@ pub fn run_me>(args: Vec) -> std::io::Result String {
// fix bug of whoami
#[cfg(not(any(target_os = "android", target_os = "ios")))]
@@ -459,6 +460,14 @@ pub fn username() -> String {
return DEVICE_NAME.lock().unwrap().clone();
}
+#[inline]
+pub fn hostname() -> String {
+ #[cfg(not(any(target_os = "android", target_os = "ios")))]
+ return whoami::hostname();
+ #[cfg(any(target_os = "android", target_os = "ios"))]
+ return DEVICE_NAME.lock().unwrap().clone();
+}
+
#[inline]
pub fn check_port(host: T, port: i32) -> String {
hbb_common::socket_client::check_port(host, port)
@@ -581,9 +590,9 @@ pub fn get_api_server(api: String, custom: String) -> String {
if !s0.is_empty() {
let s = crate::increase_port(&s0, -2);
if s == s0 {
- format!("http://{}:{}", s, config::RENDEZVOUS_PORT - 2);
+ return format!("http://{}:{}", s, config::RENDEZVOUS_PORT - 2);
} else {
- format!("http://{}", s);
+ return format!("http://{}", s);
}
}
"https://admin.rustdesk.com".to_owned()
diff --git a/src/core_main.rs b/src/core_main.rs
index 8b99f6131..99d0e888e 100644
--- a/src/core_main.rs
+++ b/src/core_main.rs
@@ -1,4 +1,6 @@
-use hbb_common::log;
+use std::future::Future;
+
+use hbb_common::{log, ResultType};
/// shared by flutter and sciter main function
///
@@ -54,11 +56,6 @@ pub fn core_main() -> Option> {
return core_main_invoke_new_connection(std::env::args());
}
let click_setup = cfg!(windows) && args.is_empty() && crate::common::is_setup(&arg_exe);
- #[cfg(not(feature = "flutter"))]
- {
- _is_quick_support =
- cfg!(windows) && args.is_empty() && arg_exe.to_lowercase().ends_with("qs.exe");
- }
if click_setup {
args.push("--install".to_owned());
flutter_args.push("--install".to_string());
@@ -70,6 +67,14 @@ pub fn core_main() -> Option> {
println!("{}", crate::VERSION);
return None;
}
+ #[cfg(windows)]
+ {
+ _is_quick_support |= !crate::platform::is_installed()
+ && args.is_empty()
+ && (arg_exe.to_lowercase().ends_with("qs.exe")
+ || (!click_setup && crate::platform::is_elevated(None).unwrap_or(false)));
+ crate::portable_service::client::set_quick_support(_is_quick_support);
+ }
#[cfg(debug_assertions)]
{
use hbb_common::env_logger::*;
@@ -195,7 +200,7 @@ pub fn core_main() -> Option> {
{
std::thread::spawn(move || crate::start_server(true));
crate::platform::macos::hide_dock();
- crate::tray::make_tray();
+ crate::ui::macos::make_tray();
return None;
}
#[cfg(target_os = "linux")]
@@ -244,8 +249,6 @@ pub fn core_main() -> Option> {
#[cfg(feature = "flutter")]
crate::flutter::connection_manager::start_listen_ipc_thread();
crate::ui_interface::start_option_status_sync();
- #[cfg(target_os = "macos")]
- crate::platform::macos::hide_dock();
}
}
//_async_logger_holder.map(|x| x.flush());
@@ -291,8 +294,7 @@ fn import_config(path: &str) {
fn core_main_invoke_new_connection(mut args: std::env::Args) -> Option> {
args.position(|element| {
return element == "--connect";
- })
- .unwrap();
+ })?;
let peer_id = args.next().unwrap_or("".to_string());
if peer_id.is_empty() {
eprintln!("please provide a valid peer id");
@@ -304,9 +306,13 @@ fn core_main_invoke_new_connection(mut args: std::env::Args) -> Option Option Vec {
vec![String::from("")]
}
+pub fn main_get_hostname() -> SyncReturn {
+ SyncReturn(crate::common::hostname())
+}
+
pub fn main_change_id(new_id: String) {
change_id(new_id)
}
@@ -787,6 +788,14 @@ pub fn main_default_video_save_directory() -> String {
default_video_save_directory()
}
+pub fn main_set_user_default_option(key: String, value: String) {
+ set_user_default_option(key, value);
+}
+
+pub fn main_get_user_default_option(key: String) -> SyncReturn {
+ SyncReturn(get_user_default_option(key))
+}
+
pub fn session_add_port_forward(
id: String,
local_port: i32,
@@ -1237,16 +1246,38 @@ pub fn main_is_login_wayland() -> SyncReturn {
SyncReturn(is_login_wayland())
}
+pub fn main_hide_docker() -> SyncReturn {
+ #[cfg(target_os = "macos")]
+ crate::platform::macos::hide_dock();
+ SyncReturn(true)
+}
+
+/// Start an ipc server for receiving the url scheme.
+///
+/// * Should only be called in the main flutter window.
+/// * macOS only
+pub fn main_start_ipc_url_server() {
+ #[cfg(target_os = "macos")]
+ thread::spawn(move || crate::server::start_ipc_url_server());
+}
+
+/// Send a url scheme throught the ipc.
+///
+/// * macOS only
+pub fn send_url_scheme(url: String) {
+ #[cfg(target_os = "macos")]
+ thread::spawn(move || crate::ui::macos::handle_url_scheme(url));
+}
+
#[cfg(target_os = "android")]
pub mod server_side {
+ use hbb_common::log;
use jni::{
+ JNIEnv,
objects::{JClass, JString},
sys::jstring,
- JNIEnv,
};
- use hbb_common::log;
-
use crate::start_server;
#[no_mangle]
diff --git a/src/ipc.rs b/src/ipc.rs
index d4d803aec..d610fb84d 100644
--- a/src/ipc.rs
+++ b/src/ipc.rs
@@ -16,10 +16,10 @@ use hbb_common::{
config::{self, Config, Config2},
futures::StreamExt as _,
futures_util::sink::SinkExt,
- log, password_security as password, timeout, tokio,
+ log, password_security as password, ResultType, timeout,
+ tokio,
tokio::io::{AsyncRead, AsyncWrite},
tokio_util::codec::Framed,
- ResultType,
};
use crate::rendezvous_mediator::RendezvousMediator;
@@ -210,6 +210,7 @@ pub enum Data {
DataPortableService(DataPortableService),
SwitchSidesRequest(String),
SwitchSidesBack,
+ UrlLink(String)
}
#[tokio::main(flavor = "current_thread")]
@@ -832,3 +833,9 @@ pub async fn test_rendezvous_server() -> ResultType<()> {
c.send(&Data::TestRendezvousServer).await?;
Ok(())
}
+
+#[tokio::main(flavor = "current_thread")]
+pub async fn send_url_scheme(url: String) -> ResultType<()> {
+ connect(1_000, "_url").await?.send(&Data::UrlLink(url)).await?;
+ Ok(())
+}
diff --git a/src/lang/ca.rs b/src/lang/ca.rs
index 3c8df31b4..f2210f971 100644
--- a/src/lang/ca.rs
+++ b/src/lang/ca.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Silenciar"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Entrada d'àudio"),
("Enhancements", "Millores"),
("Hardware Codec", "Còdec de hardware"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Sortir"),
("Tags", ""),
("Search ID", "Cerca ID"),
- ("Current Wayland display server is not supported", "El servidor de visualització actual de Wayland no és compatible"),
("whitelist_sep", ""),
("Add ID", "Afegir ID"),
("Add Tag", "Afegir tag"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/cn.rs b/src/lang/cn.rs
index 537313e97..00d62946f 100644
--- a/src/lang/cn.rs
+++ b/src/lang/cn.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "静音"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "音频输入"),
("Enhancements", "增强功能"),
("Hardware Codec", "硬件编解码"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "登出"),
("Tags", "标签"),
("Search ID", "查找ID"),
- ("Current Wayland display server is not supported", "不支持 Wayland 显示服务器"),
("whitelist_sep", "可以使用逗号,分号,空格或者换行符作为分隔符"),
("Add ID", "增加ID"),
("Add Tag", "增加标签"),
@@ -278,12 +280,12 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Do you accept?", "是否接受?"),
("Open System Setting", "打开系统设置"),
("How to get Android input permission?", "如何获取安卓的输入权限?"),
- ("android_input_permission_tip1", "为了让远程设备通过鼠标或触屏控制您的安卓设备,你需要允許RustDesk使用\"无障碍\"服务。"),
+ ("android_input_permission_tip1", "为了让远程设备通过鼠标或触屏控制您的安卓设备,你需要允許 RustDesk 使用\"无障碍\"服务。"),
("android_input_permission_tip2", "请在接下来的系统设置页面里,找到并进入 [已安装的服务] 页面,将 [RustDesk Input] 服务开启。"),
("android_new_connection_tip", "收到新的连接控制请求,对方想要控制你当前的设备。"),
("android_service_will_start_tip", "开启录屏权限将自动开启服务,允许其他设备向此设备请求建立连接。"),
("android_stop_service_tip", "关闭服务将自动关闭所有已建立的连接。"),
- ("android_version_audio_tip", "当前安卓版本不支持音频录制,请升级至安卓10或更高。"),
+ ("android_version_audio_tip", "当前安卓版本不支持音频录制,请升级至安卓 10 或更高。"),
("android_start_service_tip", "点击 [启动服务] 或打开 [屏幕录制] 权限开启手机屏幕共享服务。"),
("Account", "账户"),
("Overwrite", "覆盖"),
@@ -373,7 +375,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Deny LAN Discovery", "拒绝局域网发现"),
("Write a message", "输入聊天消息"),
("Prompt", "提示"),
- ("Please wait for confirmation of UAC...", "请等待对方确认UAC..."),
+ ("Please wait for confirmation of UAC...", "请等待对方确认 UAC ..."),
("elevated_foreground_window_tip", "远端桌面的当前窗口需要更高的权限才能操作, 暂时无法使用鼠标键盘, 可以请求对方最小化当前窗口, 或者在连接管理窗口点击提升。为避免这个问题,建议在远端设备上安装本软件。"),
("Disconnected", "会话已结束"),
("Other", "其他"),
@@ -401,16 +403,16 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Request access to your device", "请求访问你的设备"),
("Hide connection management window", "隐藏连接管理窗口"),
("hide_cm_tip", "在只允许密码连接并且只用固定密码的情况下才允许隐藏"),
- ("wayland_experiment_tip", "Wayland支持处于实验阶段,如果你需要使用无人值守访问,请使用X11。"),
+ ("wayland_experiment_tip", "Wayland 支持处于实验阶段,如果你需要使用无人值守访问,请使用X11。"),
("Right click to select tabs", "右键选择选项卡"),
("Skipped", "已跳过"),
("Add to Address Book", "添加到地址簿"),
("Group", "小组"),
("Search", "搜索"),
- ("Closed manually by web console", "被web控制台手动关闭"),
+ ("Closed manually by web console", "被 web 控制台手动关闭"),
("Local keyboard type", "本地键盘类型"),
("Select local keyboard type", "请选择本地键盘类型"),
- ("software_render_tip", "如果你使用英伟达显卡, 并且远程窗口在会话建立后会立刻关闭, 那么安装nouveau驱动并且选择使用软件渲染可能会有帮助。重启软件后生效。"),
+ ("software_render_tip", "如果你使用英伟达显卡, 并且远程窗口在会话建立后会立刻关闭, 那么安装 nouveau 驱动并且选择使用软件渲染可能会有帮助。重启软件后生效。"),
("Always use software rendering", "使用软件渲染"),
("config_input", "为了能够通过键盘控制远程桌面, 请给予 RustDesk \"输入监控\" 权限。"),
("request_elevation_tip", "如果对面有人, 也可以请求提升权限。"),
@@ -419,9 +421,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Ask the remote user for authentication", "请求远端用户授权"),
("Choose this if the remote account is administrator", "当对面电脑是管理员账号时选择该选项"),
("Transmit the username and password of administrator", "发送管理员账号的用户名密码"),
- ("still_click_uac_tip", "依然需要被控端用戶在運行RustDesk的UAC窗口點擊確認。"),
+ ("still_click_uac_tip", "依然需要被控端用戶在運行 RustDesk 的 UAC 窗口點擊確認。"),
("Request Elevation", "请求提权"),
- ("wait_accept_uac_tip", "请等待远端用户确认UAC对话框。"),
+ ("wait_accept_uac_tip", "请等待远端用户确认 UAC 对话框。"),
("Elevate successfully", "提权成功"),
("uppercase", "大写字母"),
("lowercase", "小写字母"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", "反转访问方向"),
("Please confirm if you want to share your desktop?", "请确认要让对方访问你的桌面?"),
("Closed as expected", "正常关闭"),
+ ("Display", "显示"),
+ ("Default View Style", "默认显示方式"),
+ ("Default Scroll Style", "默认滚动方式"),
+ ("Default Image Quality", "默认图像质量"),
+ ("Default Codec", "默认编解码"),
+ ("Bitrate", "波特率"),
+ ("FPS", "帧率"),
+ ("Auto", "自动"),
+ ("Other Default Options", "其它默认选项"),
].iter().cloned().collect();
}
diff --git a/src/lang/cs.rs b/src/lang/cs.rs
index d5a65cdbb..453ecefb3 100644
--- a/src/lang/cs.rs
+++ b/src/lang/cs.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Ztlumit"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Vstup zvuku"),
("Enhancements", ""),
("Hardware Codec", ""),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Odhlásit se"),
("Tags", "Štítky"),
("Search ID", "Hledat identifikátor"),
- ("Current Wayland display server is not supported", "Zobrazovací server Wayland zatím není podporován"),
("whitelist_sep", "Odělováno čárkou, středníkem, mezerou nebo koncem řádku"),
("Add ID", "Přidat identifikátor"),
("Add Tag", "Přidat štítek"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/da.rs b/src/lang/da.rs
index eda3b8a58..dcaeb3eaa 100644
--- a/src/lang/da.rs
+++ b/src/lang/da.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Sluk for mikrofonen"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Lydindgang"),
("Enhancements", ""),
("Hardware Codec", ""),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "logger af"),
("Tags", "Nøgleord"),
("Search ID", "Søg ID"),
- ("Current Wayland display server is not supported", "Den aktuelle Wayland-Anzege-server understøttes ikke"),
("whitelist_sep", "Adskilt af komma, semikolon, rum eller linjepaus"),
("Add ID", "Tilføj ID"),
("Add Tag", "Tilføj nøgleord"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/de.rs b/src/lang/de.rs
index 774cac7e6..2d6d3d069 100644
--- a/src/lang/de.rs
+++ b/src/lang/de.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "Mit Herzblut programmiert - in einer Welt, die im Chaos versinkt!"),
("Privacy Statement", "Datenschutz"),
("Mute", "Stummschalten"),
+ ("Build Date", "Erstelldatum"),
+ ("Version", "Version"),
+ ("Home", "Startseite"),
("Audio Input", "Audioeingang"),
("Enhancements", "Verbesserungen"),
("Hardware Codec", "Hardware-Codec"),
@@ -197,7 +200,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Warning", "Warnung"),
("Login screen using Wayland is not supported", "Anmeldebildschirm mit Wayland wird nicht unterstützt."),
("Reboot required", "Neustart erforderlich"),
- ("Unsupported display server ", "Nicht unterstützter Display-Server"),
+ ("Unsupported display server ", "Nicht unterstützter Anzeigeserver"),
("x11 expected", "X11 erwartet"),
("Port", "Port"),
("Settings", "Einstellungen"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Abmelden"),
("Tags", "Schlagworte"),
("Search ID", "Suche ID"),
- ("Current Wayland display server is not supported", "Der aktuelle Wayland-Anzeigeserver wird nicht unterstützt."),
("whitelist_sep", "Getrennt durch Komma, Semikolon, Leerzeichen oder Zeilenumbruch"),
("Add ID", "ID hinzufügen"),
("Add Tag", "Stichwort hinzufügen"),
@@ -241,7 +243,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Remote ID", "Entfernte ID"),
("Paste", "Einfügen"),
("Paste here?", "Hier einfügen?"),
- ("Are you sure to close the connection?", "Möchten Sie diese Verbindung wirklich trennen?"),
+ ("Are you sure to close the connection?", "Möchten Sie diese Verbindung wirklich schließen?"),
("Download new version", "Neue Version herunterladen"),
("Touch mode", "Touch-Modus"),
("Mouse mode", "Mausmodus"),
@@ -264,8 +266,8 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Note", "Hinweis"),
("Connection", "Verbindung"),
("Share Screen", "Bildschirm freigeben"),
- ("CLOSE", "DEAKTIV."),
- ("OPEN", "AKTIVIER."),
+ ("CLOSE", "SCHLIEẞEN"),
+ ("OPEN", "ÖFFNEN"),
("Chat", "Chat"),
("Total", "Gesamt"),
("items", "Einträge"),
@@ -325,7 +327,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Mobile Actions", "Mobile Aktionen"),
("Select Monitor", "Bildschirm auswählen"),
("Control Actions", "Aktionen"),
- ("Display Settings", "Bildschirmeinstellungen"),
+ ("Display Settings", "Anzeigeeinstellungen"),
("Ratio", "Verhältnis"),
("Image Quality", "Bildqualität"),
("Scroll Style", "Scroll-Stil"),
@@ -336,7 +338,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Secure Connection", "Sichere Verbindung"),
("Insecure Connection", "Unsichere Verbindung"),
("Scale original", "Keine Skalierung"),
- ("Scale adaptive", "Automatische Skalierung"),
+ ("Scale adaptive", "Anpassbare Skalierung"),
("General", "Allgemein"),
("Security", "Sicherheit"),
("Theme", "Farbgebung"),
@@ -356,7 +358,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Clear", "Zurücksetzen"),
("Audio Input Device", "Audioeingabegerät"),
("Deny remote access", "Fernzugriff verbieten"),
- ("Use IP Whitelisting", "IP-Whitelist benutzen"),
+ ("Use IP Whitelisting", "IP-Whitelist verwenden"),
("Network", "Netzwerk"),
("Enable RDP", "RDP aktivieren"),
("Pin menubar", "Menüleiste anpinnen"),
@@ -384,7 +386,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Wayland requires Ubuntu 21.04 or higher version.", "Wayland erfordert Ubuntu 21.04 oder eine höhere Version."),
("Wayland requires higher version of linux distro. Please try X11 desktop or change your OS.", "Wayland erfordert eine höhere Version der Linux-Distribution. Bitte versuchen Sie den X11-Desktop oder ändern Sie Ihr Betriebssystem."),
("JumpLink", "View"),
- ("Please Select the screen to be shared(Operate on the peer side).", "Bitte wählen Sie den Bildschirm aus, der freigegeben werden soll (auf der Peer-Seite arbeiten)."),
+ ("Please Select the screen to be shared(Operate on the peer side).", "Bitte wählen Sie den freizugebenden Bildschirm aus (Bedienung auf der Peer-Seite)."),
("Show RustDesk", "RustDesk anzeigen"),
("This PC", "Dieser PC"),
("or", "oder"),
@@ -407,7 +409,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Add to Address Book", "Zum Adressbuch hinzufügen"),
("Group", "Gruppe"),
("Search", "Suchen"),
- ("Closed manually by web console", "Manuell über die Webkonsole beendet"),
+ ("Closed manually by web console", "Manuell über die Webkonsole geschlossen"),
("Local keyboard type", "Lokaler Tastaturtyp"),
("Select local keyboard type", "Lokalen Tastaturtyp auswählen"),
("software_render_tip", "Wenn Sie eine Nvidia-Grafikkarte haben und sich das entfernte Fenster sofort nach dem Herstellen der Verbindung schließt, kann es helfen, den Nouveau-Treiber zu installieren und Software-Rendering zu verwenden. Ein Neustart der Software ist erforderlich."),
@@ -433,6 +435,15 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Strong", "Stark"),
("Switch Sides", "Seiten wechseln"),
("Please confirm if you want to share your desktop?", "Bitte bestätigen Sie, ob Sie Ihren Desktop freigeben möchten."),
- ("Closed as expected", ""),
+ ("Closed as expected", "Wie erwartet geschlossen"),
+ ("Display", "Anzeige"),
+ ("Default View Style", "Standard-Ansichtsstil"),
+ ("Default Scroll Style", "Standard-Scroll-Stil"),
+ ("Default Image Quality", "Standard-Bildqualität"),
+ ("Default Codec", "Standard-Codec"),
+ ("Bitrate", "Bitrate"),
+ ("FPS", "fps"),
+ ("Auto", "Automatisch"),
+ ("Other Default Options", "Weitere Standardoptionen"),
].iter().cloned().collect();
}
diff --git a/src/lang/eo.rs b/src/lang/eo.rs
index 872cb30ec..0c7f13d7e 100644
--- a/src/lang/eo.rs
+++ b/src/lang/eo.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Muta"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Aŭdia enigo"),
("Enhancements", ""),
("Hardware Codec", ""),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Malkonekti"),
("Tags", "Etikedi"),
("Search ID", "Serĉi ID"),
- ("Current Wayland display server is not supported", "La aktuala bilda servilo Wayland ne estas subtenita"),
("whitelist_sep", "Vi povas uzi komon, punktokomon, spacon aŭ linsalton kiel apartigilo"),
("Add ID", "Aldoni identigilo"),
("Add Tag", "Aldoni etikedo"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/es.rs b/src/lang/es.rs
index b7cb52804..5fdb7ee2c 100644
--- a/src/lang/es.rs
+++ b/src/lang/es.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "Hecho con corazón en este mundo caótico!"),
("Privacy Statement", "Declaración de privacidad"),
("Mute", "Silenciar"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Entrada de audio"),
("Enhancements", "Mejoras"),
("Hardware Codec", "Códec de hardware"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Salir"),
("Tags", "Tags"),
("Search ID", "Buscar ID"),
- ("Current Wayland display server is not supported", "El servidor de visualización actual de Wayland no es compatible"),
("whitelist_sep", "Separados por coma, punto y coma, espacio o nueva línea"),
("Add ID", "Agregar ID"),
("Add Tag", "Agregar tag"),
@@ -433,6 +435,15 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Strong", "Fuerte"),
("Switch Sides", "Intercambiar lados"),
("Please confirm if you want to share your desktop?", "Por favor, confirma si quieres compartir tu escritorio"),
- ("Closed as expected", ""),
+ ("Closed as expected", "Cerrado como se esperaba"),
+ ("Display", "Pantalla"),
+ ("Default View Style", "Estilo de vista predeterminado"),
+ ("Default Scroll Style", "Estilo de desplazamiento predeterminado"),
+ ("Default Image Quality", "Calidad de imagen predeterminada"),
+ ("Default Codec", "Códec predeterminado"),
+ ("Bitrate", "Tasa de bits"),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", "Otras opciones predeterminadas"),
].iter().cloned().collect();
}
diff --git a/src/lang/fa.rs b/src/lang/fa.rs
index 52ccf3786..dd1c75bac 100644
--- a/src/lang/fa.rs
+++ b/src/lang/fa.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "بستن صدا"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "ورودی صدا"),
("Enhancements", "بهبودها"),
("Hardware Codec", "کدک سخت افزاری"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "خروج"),
("Tags", "برچسب ها"),
("Search ID", "جستجوی شناسه"),
- ("Current Wayland display server is not supported", "پشتیبانی نمی شود Wayland سرور نمایش فعلی"),
("whitelist_sep", "با کاما، نقطه ویرگول، فاصله یا خط جدید از هم جدا می شوند"),
("Add ID", "افزودن شناسه"),
("Add Tag", "افزودن برچسب"),
@@ -433,6 +435,15 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Strong", "قوی"),
("Switch Sides", "طرفین را عوض کنید"),
("Please confirm if you want to share your desktop?", "لطفاً تأیید کنید که آیا می خواهید دسکتاپ خود را به اشتراک بگذارید؟"),
- ("Closed as expected", ""),
+ ("Closed as expected", "طبق انتظار بسته شد"),
+ ("Display", "نمایش دادن"),
+ ("Default View Style", "سبک نمایش پیش فرض"),
+ ("Default Scroll Style", "سبک پیشفرض اسکرول"),
+ ("Default Image Quality", "کیفیت تصویر پیش فرض"),
+ ("Default Codec", "کدک پیش فرض"),
+ ("Bitrate", "میزان بیت صفحه نمایش"),
+ ("FPS", "FPS"),
+ ("Auto", "خودکار"),
+ ("Other Default Options", "سایر گزینه های پیش فرض"),
].iter().cloned().collect();
}
diff --git a/src/lang/fr.rs b/src/lang/fr.rs
index 2feb026ff..19b932d2f 100644
--- a/src/lang/fr.rs
+++ b/src/lang/fr.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "Fait avec cœur dans ce monde chaotique!"),
("Privacy Statement", "Déclaration de confidentialité"),
("Mute", "Muet"),
+ ("Build Date", "Date de compilation"),
+ ("Version", "Version"),
+ ("Home", "Accueil"),
("Audio Input", "Entrée audio"),
("Enhancements", "Améliorations"),
("Hardware Codec", "Transcodage matériel"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Déconnexion"),
("Tags", "Étiqueter"),
("Search ID", "Rechercher un ID"),
- ("Current Wayland display server is not supported", "Le serveur d'affichage Wayland n'est pas pris en charge"),
("whitelist_sep", "Vous pouvez utiliser une virgule, un point-virgule, un espace ou une nouvelle ligne comme séparateur"),
("Add ID", "Ajouter un ID"),
("Add Tag", "Ajouter une balise"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", "Inverser la prise de contrôle"),
("Please confirm if you want to share your desktop?", "Veuillez confirmer le partager de votre bureau ?"),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/gr.rs b/src/lang/gr.rs
index 8398fb72a..bc25ab6c6 100644
--- a/src/lang/gr.rs
+++ b/src/lang/gr.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Σίγαση"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Είσοδος ήχου"),
("Enhancements", "Βελτιώσεις"),
("Hardware Codec", "Κωδικοποιητής υλικού"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Αποσύνδεση"),
("Tags", "Ετικέτες"),
("Search ID", "Αναζήτηση ID"),
- ("Current Wayland display server is not supported", "Ο τρέχων διακομιστής εμφάνισης Wayland δεν υποστηρίζεται"),
("whitelist_sep", "Διαχωρίζονται με κόμμα, ερωτηματικό, διάστημα ή νέα γραμμή"),
("Add ID", "Προσθήκη αναγνωριστικού ID"),
("Add Tag", "Προσθήκη ετικέτας"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/hu.rs b/src/lang/hu.rs
index 96eb63656..49ce8f140 100644
--- a/src/lang/hu.rs
+++ b/src/lang/hu.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Némítás"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Hangátvitel"),
("Enhancements", "Fejlesztések"),
("Hardware Codec", "Hardware kodek"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Kilépés"),
("Tags", "Tagok"),
("Search ID", "Azonosító keresése..."),
- ("Current Wayland display server is not supported", "A Wayland display szerver nem támogatott"),
("whitelist_sep", "A címeket veszővel, pontosvesszővel, szóközzel, vagy új sorral válassza el"),
("Add ID", "Azonosító hozzáadása"),
("Add Tag", "Címke hozzáadása"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/id.rs b/src/lang/id.rs
index b966b7af9..0fa6e0293 100644
--- a/src/lang/id.rs
+++ b/src/lang/id.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", "Pernyataan Privasi"),
("Mute", "Bisukan"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Masukkan Audio"),
("Enhancements", "Peningkatan"),
("Hardware Codec", "Codec Perangkat Keras"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Keluar"),
("Tags", "Tag"),
("Search ID", "Cari ID"),
- ("Current Wayland display server is not supported", "Server tampilan Wayland saat ini tidak didukung"),
("whitelist_sep", "Dipisahkan dengan koma, titik koma, spasi, atau baris baru"),
("Add ID", "Tambah ID"),
("Add Tag", "Tambah Tag"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/it.rs b/src/lang/it.rs
index c144d7863..d84b56a8a 100644
--- a/src/lang/it.rs
+++ b/src/lang/it.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "Fatta con il cuore in questo mondo caotico!"),
("Privacy Statement", "Informativa sulla privacy"),
("Mute", "Silenzia"),
+ ("Build Date", "Data della build"),
+ ("Version", "Versione"),
+ ("Home", "Home"),
("Audio Input", "Input audio"),
("Enhancements", "Miglioramenti"),
("Hardware Codec", "Codifica Hardware"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Esci"),
("Tags", "Tag"),
("Search ID", "Cerca ID"),
- ("Current Wayland display server is not supported", "Questo display server Wayland non è supportato"),
("whitelist_sep", "Separati da virgola, punto e virgola, spazio o a capo"),
("Add ID", "Aggiungi ID"),
("Add Tag", "Aggiungi tag"),
@@ -433,6 +435,15 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Strong", "Forte"),
("Switch Sides", "Cambia lato"),
("Please confirm if you want to share your desktop?", "Vuoi condividere il tuo desktop?"),
- ("Closed as expected", ""),
+ ("Closed as expected", "Chiuso come previsto"),
+ ("Display", "Visualizzazione"),
+ ("Default View Style", "Stile Visualizzazione Predefinito"),
+ ("Default Scroll Style", "Stile Scorrimento Predefinito"),
+ ("Default Image Quality", "Qualità Immagine Predefinita"),
+ ("Default Codec", "Codec Predefinito"),
+ ("Bitrate", "Bitrate"),
+ ("FPS", "FPS"),
+ ("Auto", "Auto"),
+ ("Other Default Options", "Altre Opzioni Predefinite"),
].iter().cloned().collect();
}
diff --git a/src/lang/ja.rs b/src/lang/ja.rs
index 0466c48a9..35e20d7fd 100644
--- a/src/lang/ja.rs
+++ b/src/lang/ja.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "ミュート"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "音声入力デバイス"),
("Enhancements", "追加機能"),
("Hardware Codec", "ハードウェア コーデック"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "ログアウト"),
("Tags", "タグ"),
("Search ID", "IDを検索"),
- ("Current Wayland display server is not supported", "現在のWaylandディスプレイサーバーはサポートされていません"),
("whitelist_sep", "カンマやセミコロン、空白、改行で区切ってください"),
("Add ID", "IDを追加"),
("Add Tag", "タグを追加"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ko.rs b/src/lang/ko.rs
index c0d0bec8a..d03b07992 100644
--- a/src/lang/ko.rs
+++ b/src/lang/ko.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "음소거"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "오디오 입력"),
("Enhancements", ""),
("Hardware Codec", "하드웨어 코덱"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "로그아웃"),
("Tags", "태그"),
("Search ID", "ID 검색"),
- ("Current Wayland display server is not supported", "현재 Wayland 디스플레이 서버가 지원되지 않습니다"),
("whitelist_sep", "다음 글자로 구분합니다. ',(콤마) ;(세미콜론) 띄어쓰기 혹은 줄바꿈'"),
("Add ID", "ID 추가"),
("Add Tag", "태그 추가"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/kz.rs b/src/lang/kz.rs
index fd8b520f4..2006c67d1 100644
--- a/src/lang/kz.rs
+++ b/src/lang/kz.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Дыбыссыздандыру"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Аудио Еңгізу"),
("Enhancements", "Жақсартулар"),
("Hardware Codec", "Hardware Codec"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Шығу"),
("Tags", "Тақтар"),
("Search ID", "ID Іздеу"),
- ("Current Wayland display server is not supported", "Ағымдағы Wayland дисплей серберіне қолдау көрсетілмейді"),
("whitelist_sep", "Үтір, нүктелі үтір, бос орын және жаңа жолал арқылы бөлінеді"),
("Add ID", "ID Қосу"),
("Add Tag", "Тақ Қосу"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/pl.rs b/src/lang/pl.rs
index 8853afe5a..daf4a7846 100644
--- a/src/lang/pl.rs
+++ b/src/lang/pl.rs
@@ -3,7 +3,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
[
("Status", "Status"),
("Your Desktop", "Twój pulpit"),
- ("desk_tip", "W celu zestawienia połączenia z tym urządzeniem należy poniższego ID i hasła."),
+ ("desk_tip", "W celu połączenia się z tym urządzeniem należy użyć poniższego ID i hasła"),
("Password", "Hasło"),
("Ready", "Gotowe"),
("Established", "Nawiązano"),
@@ -38,10 +38,13 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Stop service", "Zatrzymaj usługę"),
("Change ID", "Zmień ID"),
("Website", "Strona internetowa"),
- ("About", "O"),
- ("Slogan_tip", ""),
- ("Privacy Statement", ""),
+ ("About", "O aplikacji"),
+ ("Slogan_tip", "Tworzone z miłością w tym pełnym chaosu świecie!"),
+ ("Privacy Statement", "Oświadczenie o ochronie prywatności"),
("Mute", "Wycisz"),
+ ("Build Date", "Zbudowano"),
+ ("Version", "Wersja"),
+ ("Home", "Pulpit"),
("Audio Input", "Wejście audio"),
("Enhancements", "Ulepszenia"),
("Hardware Codec", "Kodek sprzętowy"),
@@ -96,7 +99,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Directory", "Pusty katalog"),
("Not an empty directory", "Katalog nie jest pusty"),
("Are you sure you want to delete this file?", "Czy na pewno chcesz usunąć ten plik?"),
- ("Are you sure you want to delete this empty directory?", "Czy na pewno chcesz usunać ten pusty katalog?"),
+ ("Are you sure you want to delete this empty directory?", "Czy na pewno chcesz usunąć ten pusty katalog?"),
("Are you sure you want to delete the file of this directory?", "Czy na pewno chcesz usunąć pliki z tego katalogu?"),
("Do this for all conflicts", "wykonaj dla wszystkich konfliktów"),
("This is irreversible!", "To jest nieodwracalne!"),
@@ -118,7 +121,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Good image quality", "Dobra jakość obrazu"),
("Balanced", "Zrównoważony"),
("Optimize reaction time", "Zoptymalizuj czas reakcji"),
- ("Custom", "Własne"),
+ ("Custom", "Niestandardowe"),
("Show remote cursor", "Pokazuj zdalny kursor"),
("Show quality monitor", "Parametry połączenia"),
("Disable clipboard", "Wyłącz schowek"),
@@ -138,10 +141,10 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Failed to make direct connection to remote desktop", "Nie udało się nawiązać bezpośredniego połączenia z pulpitem zdalnym"),
("Set Password", "Ustaw hasło"),
("OS Password", "Hasło systemu operacyjnego"),
- ("install_tip", "RustDesk może nie działać poprawnie na maszynie zdalnej z przyczyn związanych z UAC. W celu uniknięcią problemów z UAC, kliknij poniższy przycisk by zainstalować RustDesk w swoim systemie."),
+ ("install_tip", "RustDesk może nie działać poprawnie na maszynie zdalnej z przyczyn związanych z UAC. W celu uniknięcia problemów z UAC, kliknij poniższy przycisk by zainstalować RustDesk w swoim systemie."),
("Click to upgrade", "Zaktualizuj"),
("Click to download", "Pobierz"),
- ("Click to update", "Uaktualinij"),
+ ("Click to update", "Uaktualnij"),
("Configure", "Konfiguruj"),
("config_acc", "Konfiguracja konta"),
("config_screen", "Konfiguracja ekranu"),
@@ -208,17 +211,16 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Run without install", "Uruchom bez instalacji"),
("Always connected via relay", "Zawsze połączony pośrednio"),
("Always connect via relay", "Zawsze łącz pośrednio"),
- ("whitelist_tip", "Zezwlaj na łączenie z tym komputerem tylko z adresów IP znajdujących się na białej liście"),
+ ("whitelist_tip", "Zezwalaj na łączenie z tym komputerem tylko z adresów IP znajdujących się na białej liście"),
("Login", "Zaloguj"),
- ("Verify", ""),
- ("Remember me", ""),
- ("Trust this device", ""),
- ("Verification code", ""),
- ("verification_tip", ""),
+ ("Verify", "Zweryfikuj"),
+ ("Remember me", "Zapamiętaj mnie"),
+ ("Trust this device", "Dodaj to urządzenie do zaufanych"),
+ ("Verification code", "Kod weryfikacyjny"),
+ ("verification_tip", "Nastąpiło logowanie z nowego urządzenia, kod weryfikacyjny został wysłany na podany adres email, wprowadź kod by kontynuować proces logowania"),
("Logout", "Wyloguj"),
("Tags", "Tagi"),
("Search ID", "Szukaj ID"),
- ("Current Wayland display server is not supported", "Obecny serwer wyświetlania Wayland nie jest obsługiwany"),
("whitelist_sep", "Oddzielone przecinkiem, średnikiem, spacją lub w nowej linii"),
("Add ID", "Dodaj ID"),
("Add Tag", "Dodaj Tag"),
@@ -232,7 +234,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Favorites", "Ulubione"),
("Add to Favorites", "Dodaj do ulubionych"),
("Remove from Favorites", "Usuń z ulubionych"),
- ("Empty", "Pusty"),
+ ("Empty", "Pusto"),
("Invalid folder name", "Nieprawidłowa nazwa folderu"),
("Socks5 Proxy", "Socks5 Proxy"),
("Hostname", "Nazwa hosta"),
@@ -331,7 +333,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Scroll Style", "Styl przewijania"),
("Show Menubar", "Pokaż pasek menu"),
("Hide Menubar", "Ukryj pasek menu"),
- ("Direct Connection", "Połącznie bezpośrednie"),
+ ("Direct Connection", "Połączenie bezpośrednie"),
("Relay Connection", "Połączenie przez bramkę"),
("Secure Connection", "Połączenie szyfrowane"),
("Insecure Connection", "Połączenie nieszyfrowane"),
@@ -344,12 +346,12 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Dark", "Ciemny"),
("Light", "Jasny"),
("Follow System", "Zgodne z systemem"),
- ("Enable hardware codec", "Włącz wsparcie sprzętowe dla kodeków"),
- ("Unlock Security Settings", "Odblokuj Ustawienia Zabezpieczeń"),
- ("Enable Audio", "Włącz Dźwięk"),
+ ("Enable hardware codec", "Włącz akcelerację sprzętową kodeków"),
+ ("Unlock Security Settings", "Odblokuj ustawienia zabezpieczeń"),
+ ("Enable Audio", "Włącz dźwięk"),
("Unlock Network Settings", "Odblokuj ustawienia Sieciowe"),
("Server", "Serwer"),
- ("Direct IP Access", "Bezpośredni Adres IP"),
+ ("Direct IP Access", "Bezpośredni adres IP"),
("Proxy", "Proxy"),
("Apply", "Zastosuj"),
("Disconnect all devices?", "Czy rozłączyć wszystkie urządzenia?"),
@@ -361,20 +363,20 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Enable RDP", "Włącz RDP"),
("Pin menubar", "Przypnij pasek menu"),
("Unpin menubar", "Odepnij pasek menu"),
- ("Recording", "Trwa nagrywanie"),
+ ("Recording", "Nagrywanie"),
("Directory", "Katalog"),
("Automatically record incoming sessions", "Automatycznie nagrywaj sesje przychodzące"),
("Change", "Zmień"),
("Start session recording", "Zacznij nagrywać sesję"),
("Stop session recording", "Zatrzymaj nagrywanie sesji"),
- ("Enable Recording Session", "Włącz Nagrywanie Sesji"),
+ ("Enable Recording Session", "Włącz nagrywanie Sesji"),
("Allow recording session", "Zezwól na nagrywanie sesji"),
("Enable LAN Discovery", "Włącz wykrywanie urządzenia w sieci LAN"),
("Deny LAN Discovery", "Zablokuj wykrywanie urządzenia w sieci LAN"),
("Write a message", "Napisz wiadomość"),
("Prompt", "Monit"),
- ("Please wait for confirmation of UAC...", "Oczekuje potwierdzenia ustawień UAC"),
- ("elevated_foreground_window_tip", ""),
+ ("Please wait for confirmation of UAC...", "Poczekaj na potwierdzenie uprawnień UAC"),
+ ("elevated_foreground_window_tip", "Aktualne okno zdalnego urządzenia wymaga wyższych uprawnień by poprawnie działać, chwilowo niemożliwym jest korzystanie z myszy i klawiatury. Możesz poprosić zdalnego użytkownika o minimalizację okna, lub nacisnąć przycisk podniesienia uprawnień w oknie zarządzania połączeniami. By uniknąć tego problemu, rekomendujemy instalację oprogramowania na urządzeniu zdalnym."),
("Disconnected", "Rozłączone"),
("Other", "Inne"),
("Confirm before closing multiple tabs", "Potwierdź przed zamknięciem wielu kart"),
@@ -382,7 +384,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Full Access", "Pełny dostęp"),
("Screen Share", "Udostępnianie ekranu"),
("Wayland requires Ubuntu 21.04 or higher version.", "Wayland wymaga Ubuntu 21.04 lub nowszego."),
- ("Wayland requires higher version of linux distro. Please try X11 desktop or change your OS.", "Wayland wymaga wyższej wersji dystrybucji Linuksa. Wypróbuj pulpit X11 lub zmień system operacyjny."),
+ ("Wayland requires higher version of linux distro. Please try X11 desktop or change your OS.", "Wayland wymaga nowszej dystrybucji Linuksa. Wypróbuj pulpit X11 lub zmień system operacyjny."),
("JumpLink", "View"),
("Please Select the screen to be shared(Operate on the peer side).", "Wybierz ekran do udostępnienia (działaj po stronie równorzędnej)."),
("Show RustDesk", "Pokaż RustDesk"),
@@ -400,39 +402,48 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("One-time password length", "Długość hasła jednorazowego"),
("Request access to your device", "Żądanie dostępu do Twojego urządzenia"),
("Hide connection management window", "Ukryj okno zarządzania połączeniem"),
- ("hide_cm_tip", ""),
- ("wayland_experiment_tip", ""),
- ("Right click to select tabs", ""),
- ("Skipped", ""),
+ ("hide_cm_tip", "Pozwalaj na ukrycie tylko gdy akceptujesz sesje za pośrednictwem hasła i używasz hasła permanentnego"),
+ ("wayland_experiment_tip", "Wsparcie dla Wayland jest niekompletne, użyj X11 jeżeli chcesz korzystać z dostępu nienadzorowanego"),
+ ("Right click to select tabs", "Kliknij prawym przyciskiem myszy by wybrać zakładkę"),
+ ("Skipped", "Pominięte"),
("Add to Address Book", "Dodaj do Książki Adresowej"),
("Group", "Grypy"),
("Search", "Szukaj"),
- ("Closed manually by web console", ""),
- ("Local keyboard type", ""),
- ("Select local keyboard type", ""),
- ("software_render_tip", ""),
- ("Always use software rendering", ""),
- ("config_input", ""),
- ("request_elevation_tip", ""),
- ("Wait", ""),
- ("Elevation Error", ""),
- ("Ask the remote user for authentication", ""),
- ("Choose this if the remote account is administrator", ""),
- ("Transmit the username and password of administrator", ""),
- ("still_click_uac_tip", ""),
- ("Request Elevation", ""),
- ("wait_accept_uac_tip", ""),
- ("Elevate successfully", ""),
- ("uppercase", ""),
- ("lowercase", ""),
- ("digit", ""),
- ("special character", ""),
- ("length>=8", ""),
- ("Weak", ""),
- ("Medium", ""),
- ("Strong", ""),
- ("Switch Sides", ""),
- ("Please confirm if you want to share your desktop?", ""),
- ("Closed as expected", ""),
+ ("Closed manually by web console", "Zakończone manualnie z konsoli Web"),
+ ("Local keyboard type", "Lokalny typ klawiatury"),
+ ("Select local keyboard type", "Wybierz lokalny typ klawiatury"),
+ ("software_render_tip", "Jeżeli posiadasz kartę graficzną Nvidia i okno zamyka się natychmiast po nawiązaniu połączenia, instalacja sterownika nouveau i wybór renderowania programowego mogą pomóc. Restart aplikacji jest wymagany."),
+ ("Always use software rendering", "Zawsze używaj renderowania programowego"),
+ ("config_input", "By kontrolować zdalne urządzenie przy pomocy klawiatury, musisz udzielić aplikacji RustDesk uprawnień do \"Urządzeń Wejściowych\"."),
+ ("request_elevation_tip", "Możesz poprosić o podniesienie uprawnień jeżeli ktoś posiada dostęp do zdalnego urządzenia."),
+ ("Wait", "Czekaj"),
+ ("Elevation Error", "Błąd przy podnoszeniu uprawnień"),
+ ("Ask the remote user for authentication", "Poproś użytkownika zdalnego o uwierzytelnienie"),
+ ("Choose this if the remote account is administrator", "Wybierz to jeżeli zdalne konto jest administratorem"),
+ ("Transmit the username and password of administrator", "Prześlij nazwę użytkownika i hasło administratora"),
+ ("still_click_uac_tip", "Nadal wymaga od zdalnego użytkownika potwierdzenia uprawnień UAC."),
+ ("Request Elevation", "Poproś o podniesienie uprawnień"),
+ ("wait_accept_uac_tip", "Prosimy czekać aż zdalny użytkownik potwierdzi uprawnienia UAC."),
+ ("Elevate successfully", "Pomyślnie podniesiono uprawnienia"),
+ ("uppercase", "wielkie litery"),
+ ("lowercase", "małe litery"),
+ ("digit", "cyfra"),
+ ("special character", "znak specjalny"),
+ ("length>=8", "długość>=8"),
+ ("Weak", "Słabe"),
+ ("Medium", "Średnie"),
+ ("Strong", "Mocne"),
+ ("Switch Sides", "Zmień Strony"),
+ ("Please confirm if you want to share your desktop?", "Czy na pewno chcesz udostępnić swój ekran?"),
+ ("Closed as expected", "Zamknięto pomyślnie"),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/pt_PT.rs b/src/lang/pt_PT.rs
index 4a391c3fb..64e5e9315 100644
--- a/src/lang/pt_PT.rs
+++ b/src/lang/pt_PT.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Silenciar"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Entrada de Áudio"),
("Enhancements", "Melhorias"),
("Hardware Codec", ""),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Sair"),
("Tags", "Tags"),
("Search ID", "Procurar ID"),
- ("Current Wayland display server is not supported", "Servidor de display Wayland atual não é suportado"),
("whitelist_sep", "Separado por vírcula, ponto-e-vírgula, espaços ou nova linha"),
("Add ID", "Adicionar ID"),
("Add Tag", "Adicionar Tag"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ptbr.rs b/src/lang/ptbr.rs
index b4a46c599..0f64ae67f 100644
--- a/src/lang/ptbr.rs
+++ b/src/lang/ptbr.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Desativar som"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Entrada de Áudio"),
("Enhancements", "Melhorias"),
("Hardware Codec", "Codec de hardware"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Sair"),
("Tags", "Tags"),
("Search ID", "Pesquisar ID"),
- ("Current Wayland display server is not supported", "Servidor de display Wayland atual não é suportado"),
("whitelist_sep", "Separado por vírcula, ponto-e-vírgula, espaços ou nova linha"),
("Add ID", "Adicionar ID"),
("Add Tag", "Adicionar Tag"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ro.rs b/src/lang/ro.rs
index 148723a5b..7e209dff8 100644
--- a/src/lang/ro.rs
+++ b/src/lang/ro.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Fără sunet"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Intrare audio"),
("Enhancements", "Îmbunătățiri"),
("Hardware Codec", "Codec hardware"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Deconectare"),
("Tags", "Etichetare"),
("Search ID", "Caută după ID"),
- ("Current Wayland display server is not supported", "Serverul de afișaj Wayland nu este acceptat"),
("whitelist_sep", "Poți folosi ca separator virgula, punctul și virgula, spațiul sau linia nouă"),
("Add ID", "Adaugă ID"),
("Add Tag", "Adaugă etichetă"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ru.rs b/src/lang/ru.rs
index 8e4411cb1..54b064c18 100644
--- a/src/lang/ru.rs
+++ b/src/lang/ru.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "Сделано с душой в этом безумном мире!"),
("Privacy Statement", "Заявление о конфиденциальности"),
("Mute", "Отключить звук"),
+ ("Build Date", "Дата сборки"),
+ ("Version", "Версия"),
+ ("Home", "Главная"),
("Audio Input", "Аудиовход"),
("Enhancements", "Улучшения"),
("Hardware Codec", "Аппаратный кодек"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Выйти"),
("Tags", "Метки"),
("Search ID", "Поиск по ID"),
- ("Current Wayland display server is not supported", "Текущий сервер отображения Wayland не поддерживается"),
("whitelist_sep", "Раздельно запятой, точкой с запятой, пробелом или новой строкой"),
("Add ID", "Добавить ID"),
("Add Tag", "Добавить ключевое слово"),
@@ -432,7 +434,16 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Medium", "Средний"),
("Strong", "Стойкий"),
("Switch Sides", "Переключить стороны"),
- ("Please confirm if you want to share your desktop?", "Подтвердите, что хотите поделиться своим рабочим столом?"),
- ("Closed as expected", ""),
+ ("Please confirm if you want to share your desktop?", "Подтверждаете, что хотите поделиться своим рабочим столом?"),
+ ("Closed as expected", "Закрыто по ожиданию"),
+ ("Display", "Отображение"),
+ ("Default View Style", "Стиль отображения по умолчанию"),
+ ("Default Scroll Style", "Стиль прокрутки по умолчанию"),
+ ("Default Image Quality", "Качество изображения по умолчанию"),
+ ("Default Codec", "Кодек по умолчанию"),
+ ("Bitrate", "Битрейт"),
+ ("FPS", "FPS"),
+ ("Auto", "Авто"),
+ ("Other Default Options", "Другие параметры по умолчанию"),
].iter().cloned().collect();
}
diff --git a/src/lang/sk.rs b/src/lang/sk.rs
index 582cb58ae..a703c0799 100644
--- a/src/lang/sk.rs
+++ b/src/lang/sk.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Stíšiť"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Zvukový vstup"),
("Enhancements", ""),
("Hardware Codec", ""),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Odhlásenie"),
("Tags", "Štítky"),
("Search ID", "Hľadať ID"),
- ("Current Wayland display server is not supported", "Zobrazovací (display) server Wayland nie je podporovaný"),
("whitelist_sep", "Oddelené čiarkou, bodkočiarkou, medzerou alebo koncom riadku"),
("Add ID", "Pridať ID"),
("Add Tag", "Pridať štítok"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sl.rs b/src/lang/sl.rs
index cc35e3f3f..16c948ceb 100755
--- a/src/lang/sl.rs
+++ b/src/lang/sl.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Izklopi zvok"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Avdio vhod"),
("Enhancements", "Izboljšave"),
("Hardware Codec", "Strojni kodek"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Odjavi"),
("Tags", "Oznake"),
("Search ID", "Išči ID"),
- ("Current Wayland display server is not supported", "Trenutni Wayland zaslonski strežnik ni podprt"),
("whitelist_sep", "Naslovi ločeni z vejico, podpičjem, presledkom ali novo vrstico"),
("Add ID", "Dodaj ID"),
("Add Tag", "Dodaj oznako"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sq.rs b/src/lang/sq.rs
index 3f11d72e1..285a51732 100644
--- a/src/lang/sq.rs
+++ b/src/lang/sq.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Pa zë"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Inputi zërit"),
("Enhancements", "Përmirësimet"),
("Hardware Codec", "Kodeku Harduerik"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Dalje"),
("Tags", "Tage"),
("Search ID", "Kerko ID"),
- ("Current Wayland display server is not supported", "Serveri aktual i ekranit Wayland nuk mbështetet"),
("whitelist_sep", "Të ndara me presje, pikëpresje, hapësira ose rresht të ri"),
("Add ID", "Shto ID"),
("Add Tag", "Shto Tag"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sr.rs b/src/lang/sr.rs
index 96ffa4d84..dd943e0e6 100644
--- a/src/lang/sr.rs
+++ b/src/lang/sr.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Utišaj"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Audio ulaz"),
("Enhancements", "Proširenja"),
("Hardware Codec", "Hardverski kodek"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Odjava"),
("Tags", "Oznake"),
("Search ID", "Traži ID"),
- ("Current Wayland display server is not supported", "Tekući Wazland server za prikaz nije podržan"),
("whitelist_sep", "Odvojeno zarezima, tačka zarezima, praznim mestima ili novim redovima"),
("Add ID", "Dodaj ID"),
("Add Tag", "Dodaj oznaku"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sv.rs b/src/lang/sv.rs
index 2069826ee..3050ff635 100644
--- a/src/lang/sv.rs
+++ b/src/lang/sv.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Tyst"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Ljud input"),
("Enhancements", "Förbättringar"),
("Hardware Codec", "Hårdvarucodec"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Logga ut"),
("Tags", "Taggar"),
("Search ID", "Sök ID"),
- ("Current Wayland display server is not supported", "Nuvarande Wayland displayserver stöds inte"),
("whitelist_sep", "Separerat av ett comma, semikolon, mellanslag eller ny linje"),
("Add ID", "Lägg till ID"),
("Add Tag", "Lägg till Tagg"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/template.rs b/src/lang/template.rs
index 26bc8ef51..7572da9de 100644
--- a/src/lang/template.rs
+++ b/src/lang/template.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", ""),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", ""),
("Enhancements", ""),
("Hardware Codec", ""),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", ""),
("Tags", ""),
("Search ID", ""),
- ("Current Wayland display server is not supported", ""),
("whitelist_sep", ""),
("Add ID", ""),
("Add Tag", ""),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/th.rs b/src/lang/th.rs
index 726bd8a9d..535e4e772 100644
--- a/src/lang/th.rs
+++ b/src/lang/th.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "ทำด้วยใจ ในโลกใบนี้ที่ยุ่งเหยิง!"),
("Privacy Statement", "คำแถลงเกี่ยวกับความเป็นส่วนตัว"),
("Mute", "ปิดเสียง"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "ออดิโออินพุท"),
("Enhancements", "การปรับปรุง"),
("Hardware Codec", "ฮาร์ดแวร์ codec"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "ออกจากระบบ"),
("Tags", "แท็ก"),
("Search ID", "ค้นหา ID"),
- ("Current Wayland display server is not supported", "เซิร์ฟเวอร์การแสดงผล Wayland ปัจจุบันไม่รองรับ"),
("whitelist_sep", "คั่นโดยเครื่องหมาย comma semicolon เว้นวรรค หรือ ขึ้นบรรทัดใหม่"),
("Add ID", "เพิ่ม ID"),
("Add Tag", "เพิ่มแท็ก"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/tr.rs b/src/lang/tr.rs
index c7eb27205..80b384c6c 100644
--- a/src/lang/tr.rs
+++ b/src/lang/tr.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Sustur"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Ses Girişi"),
("Enhancements", "Geliştirmeler"),
("Hardware Codec", "Donanımsal Codec"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Çıkış yap"),
("Tags", "Etiketler"),
("Search ID", "ID Arama"),
- ("Current Wayland display server is not supported", "Mevcut Wayland görüntüleme sunucusu desteklenmiyor"),
("whitelist_sep", "Virgül, noktalı virgül, boşluk veya yeni satır ile ayrılmış"),
("Add ID", "ID Ekle"),
("Add Tag", "Etiket Ekle"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/tw.rs b/src/lang/tw.rs
index e6d2dcb61..f5d9539d8 100644
--- a/src/lang/tw.rs
+++ b/src/lang/tw.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "靜音"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "音訊輸入"),
("Enhancements", "增強功能"),
("Hardware Codec", "硬件編解碼"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "登出"),
("Tags", "標籤"),
("Search ID", "搜尋 ID"),
- ("Current Wayland display server is not supported", "目前不支援 Wayland 顯示伺服器"),
("whitelist_sep", "使用逗號、分號、空白,或是換行來分隔"),
("Add ID", "新增 ID"),
("Add Tag", "新增標籤"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", "正常關閉"),
+ ("Display", "顯示"),
+ ("Default View Style", "默認顯示方式"),
+ ("Default Scroll Style", "默認滾動方式"),
+ ("Default Image Quality", "默認圖像質量"),
+ ("Default Codec", "默認編解碼"),
+ ("Bitrate", "波特率"),
+ ("FPS", "幀率"),
+ ("Auto", "自動"),
+ ("Other Default Options", "其它默認選項"),
].iter().cloned().collect();
}
diff --git a/src/lang/ua.rs b/src/lang/ua.rs
index 9276b184e..37a7d6bcd 100644
--- a/src/lang/ua.rs
+++ b/src/lang/ua.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", "Створено з душею в цьому хаотичному світі!"),
("Privacy Statement", "Декларація про конфіденційність"),
("Mute", "Вимкнути звук"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Аудіовхід"),
("Enhancements", "Покращення"),
("Hardware Codec", "Апаратний кодек"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Вийти"),
("Tags", "Ключові слова"),
("Search ID", "Пошук за ID"),
- ("Current Wayland display server is not supported", "Поточний графічний сервер Wayland не підтримується"),
("whitelist_sep", "Розділені комою, крапкою з комою, пробілом або новим рядком"),
("Add ID", "Додати ID"),
("Add Tag", "Додати ключове слово"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/vn.rs b/src/lang/vn.rs
index 6649fbaa3..d78f5aa7b 100644
--- a/src/lang/vn.rs
+++ b/src/lang/vn.rs
@@ -42,6 +42,9 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Tắt tiếng"),
+ ("Build Date", ""),
+ ("Version", ""),
+ ("Home", ""),
("Audio Input", "Đầu vào âm thanh"),
("Enhancements", "Các tiện itchs"),
("Hardware Codec", "Codec phần cứng"),
@@ -218,7 +221,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Logout", "Đăng xuất"),
("Tags", "Tags"),
("Search ID", "Tìm ID"),
- ("Current Wayland display server is not supported", "Máy chủ hình ảnh Wayland hiện không đuợc hỗ trợ"),
("whitelist_sep", "Đuợc cách nhau bởi dấu phẩy, dấu chấm phẩy, dấu cách hay dòng mới"),
("Add ID", "Thêm ID"),
("Add Tag", "Thêm Tag"),
@@ -434,5 +436,14 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Switch Sides", ""),
("Please confirm if you want to share your desktop?", ""),
("Closed as expected", ""),
+ ("Display", ""),
+ ("Default View Style", ""),
+ ("Default Scroll Style", ""),
+ ("Default Image Quality", ""),
+ ("Default Codec", ""),
+ ("Bitrate", ""),
+ ("FPS", ""),
+ ("Auto", ""),
+ ("Other Default Options", ""),
].iter().cloned().collect();
}
diff --git a/src/platform/linux.rs b/src/platform/linux.rs
index 34276426d..ac3b32a49 100644
--- a/src/platform/linux.rs
+++ b/src/platform/linux.rs
@@ -426,104 +426,11 @@ pub fn is_login_wayland() -> bool {
}
}
-pub fn fix_login_wayland() {
- let mut file = "/etc/gdm3/custom.conf".to_owned();
- if !std::path::Path::new(&file).exists() {
- file = "/etc/gdm/custom.conf".to_owned();
- }
- match std::process::Command::new("pkexec")
- .args(vec![
- "sed",
- "-i",
- "s/#WaylandEnable=false/WaylandEnable=false/g",
- &file,
- ])
- .output()
- {
- Ok(x) => {
- let x = String::from_utf8_lossy(&x.stderr);
- if !x.is_empty() {
- log::error!("fix_login_wayland failed: {}", x);
- }
- }
- Err(err) => {
- log::error!("fix_login_wayland failed: {}", err);
- }
- }
-}
-
pub fn current_is_wayland() -> bool {
let dtype = get_display_server();
return "wayland" == dtype && unsafe { UNMODIFIED };
}
-pub fn modify_default_login() -> String {
- let dsession = std::env::var("DESKTOP_SESSION").unwrap();
- let user_name = std::env::var("USERNAME").unwrap();
- if let Ok(x) = run_cmds("ls /usr/share/* | grep ${DESKTOP_SESSION}-xorg.desktop".to_owned()) {
- if x.trim_end().to_string() != "" {
- match std::process::Command::new("pkexec")
- .args(vec![
- "sed",
- "-i",
- &format!("s/={0}$/={0}-xorg/g", &dsession),
- &format!("/var/lib/AccountsService/users/{}", &user_name),
- ])
- .output()
- {
- Ok(x) => {
- let x = String::from_utf8_lossy(&x.stderr);
- if !x.is_empty() {
- log::error!("modify_default_login failed: {}", x);
- return "Fix failed! Please re-login with X server manually".to_owned();
- } else {
- unsafe {
- UNMODIFIED = false;
- }
- return "".to_owned();
- }
- }
- Err(err) => {
- log::error!("modify_default_login failed: {}", err);
- return "Fix failed! Please re-login with X server manually".to_owned();
- }
- }
- } else if let Ok(z) =
- run_cmds("ls /usr/share/* | grep ${DESKTOP_SESSION:0:-8}.desktop".to_owned())
- {
- if z.trim_end().to_string() != "" {
- match std::process::Command::new("pkexec")
- .args(vec![
- "sed",
- "-i",
- &format!("s/={}$/={}/g", &dsession, &dsession[..dsession.len() - 8]),
- &format!("/var/lib/AccountsService/users/{}", &user_name),
- ])
- .output()
- {
- Ok(x) => {
- let x = String::from_utf8_lossy(&x.stderr);
- if !x.is_empty() {
- log::error!("modify_default_login failed: {}", x);
- return "Fix failed! Please re-login with X server manually".to_owned();
- } else {
- unsafe {
- UNMODIFIED = false;
- }
- return "".to_owned();
- }
- }
- Err(err) => {
- log::error!("modify_default_login failed: {}", err);
- return "Fix failed! Please re-login with X server manually".to_owned();
- }
- }
- }
- }
- }
- return "Fix failed! Please re-login with X server manually".to_owned();
-}
-
// to-do: test the other display manager
fn _get_display_manager() -> String {
if let Ok(x) = std::fs::read_to_string("/etc/X11/default-display-manager") {
diff --git a/src/platform/windows.rs b/src/platform/windows.rs
index a77b92e07..2e0d56eab 100644
--- a/src/platform/windows.rs
+++ b/src/platform/windows.rs
@@ -49,6 +49,7 @@ use winreg::RegKey;
pub fn get_cursor_pos() -> Option<(i32, i32)> {
unsafe {
+ #[allow(invalid_value)]
let mut out = mem::MaybeUninit::uninit().assume_init();
if GetCursorPos(&mut out) == FALSE {
return None;
@@ -61,6 +62,7 @@ pub fn reset_input_cache() {}
pub fn get_cursor() -> ResultType