help on mac permissons

This commit is contained in:
rustdesk 2022-05-02 02:44:16 +08:00
parent 0e4e7fcb9b
commit 8a3da687c1
10 changed files with 46 additions and 6 deletions

View File

@ -266,5 +266,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "点击 [启动服务] 或打开 [屏幕录制] 权限开启手机屏幕共享服务。"),
("Account", "账号"),
("Quit", "退出"),
("doc_mac_permission", "https://rustdesk.com/docs/zh-cn/manual/mac/#启用权限"),
("Help", "帮助"),
].iter().cloned().collect();
}

View File

@ -266,5 +266,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "Tippen Sie auf [Dienst starten] oder ÖFFNEN Sie die Berechtigung [Bildschirmaufnahme], um den Bildschirmfreigabedienst zu starten."),
("Account", "Konto"),
("Quit", "Ausgang"),
("Help", "Hilfe"),
].iter().cloned().collect();
}

View File

@ -24,5 +24,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_stop_service_tip", "Closing the service will automatically close all established connections."),
("android_version_audio_tip", "The current Android version does not support audio capture, please upgrade to Android 10 or higher."),
("android_start_service_tip", "Tap [Start Service] or OPEN [Screen Capture] permission to start the screen sharing service."),
("doc_mac_permission", "https://rustdesk.com/docs/en/manual/mac/#enable-permissions"),
].iter().cloned().collect();
}

View File

@ -266,5 +266,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "Appuyez sur [Démarrer le service] ou sur l'autorisation OUVRIR [Capture d'écran] pour démarrer le service de partage d'écran."),
("Account", "Compte"),
("Quit", "Quitter"),
("Help", "Aider"),
].iter().cloned().collect();
}

View File

@ -266,5 +266,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "Toccare [Avvia servizio] o APRI l'autorizzazione [Cattura schermo] per avviare il servizio di condivisione dello schermo."),
("Account", "Account"),
("Quit", "Esci"),
("Help", "Aiuto"),
].iter().cloned().collect();
}

View File

@ -266,5 +266,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "Toque [Iniciar Serviço] ou ABRA a permissão [Captura de Tela] para iniciar o serviço de compartilhamento de tela."),
("Account", "Conta"),
("Quit", "Saída"),
("Help", "Ajuda"),
].iter().cloned().collect();
}

View File

@ -266,5 +266,6 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "Коснитесь [Запуск промежуточного сервера] или ОТКРЫТЬ разрешение [Скриншот], чтобы запустить службу демонстрации экрана."),
("Account", "Аккаунт"),
("Quit", "Выйти"),
("Help", "Помощь"),
].iter().cloned().collect();
}

View File

@ -266,5 +266,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("android_start_service_tip", "點擊 [啟動服務] 或打開 [屏幕錄製] 權限開啟手機屏幕共享服務。"),
("Account", "帳戶"),
("Quit", "退出"),
("doc_mac_permission", "https://rustdesk.com/docs/zh-tw/manual/mac/#啟用權限"),
("Help", "幫助"),
].iter().cloned().collect();
}

View File

@ -352,6 +352,11 @@ div.trust-me > div:nth-child(3) {
font-weight: bold;
}
div.trust-me > div:nth-child(4) {
margin-top: 0.5em;
text-align: center;
}
div#myid {
position: relative;
}

View File

@ -526,10 +526,11 @@ class SystemError: Reactor.Component {
class TrustMe: Reactor.Component {
function render() {
return <div .trust-me>
return <div .trust-me #trust-me-box>
<div>{translate('Permissions')}</div>
<div>{translate('config_acc')}</div>
<div #trust-me .link>{translate('Configure')}</div>
<div #help-me .link>{translate('Help')}</div>
</div>;
}
@ -537,20 +538,29 @@ class TrustMe: Reactor.Component {
handler.is_process_trusted(true);
watch_trust();
}
event click $(#help-me) {
handler.open_url(translate("doc_mac_permission"));
}
}
class CanScreenRecording: Reactor.Component {
function render() {
return <div .trust-me>
return <div .trust-me #screen-recording-box>
<div>{translate('Permissions')}</div>
<div>{translate('config_screen')}</div>
<div #screen-recording .link>{translate('Configure')}</div>
<div #help-me .link>{translate('Help')}</div>
</div>;
}
event click $(#screen-recording) {
handler.is_can_screen_recording(true);
watch_trust();
watch_screen_recording();
}
event click $(#help-me) {
handler.open_url(translate("doc_mac_permission"));
}
}
@ -574,7 +584,7 @@ class FixWayland: Reactor.Component {
<div>{translate('Warning')}</div>
<div>{translate('Login screen using Wayland is not supported')}</div>
<div #fix-wayland .link>{translate('Fix it')}</div>
<div style="text-align: center">({translate('Reboot required')})</div>
<div>({translate('Reboot required')})</div>
</div>;
}
@ -590,7 +600,7 @@ class ModifyDefaultLogin: Reactor.Component {
<div>{translate('Warning')}</div>
<div>{translate('Current Wayland display server is not supported')}</div>
<div #modify-default-login .link>{translate('Fix it')}</div>
<div style="text-align: center">({translate('Reboot required')})</div>
<div>({translate('Reboot required')})</div>
</div>;
}
@ -605,7 +615,7 @@ class ModifyDefaultLogin: Reactor.Component {
function watch_trust() {
// not use TrustMe::update, because it is buggy
var trusted = handler.is_process_trusted(false);
var el = $(div.trust-me);
var el = $(div#trust-me-box);
if (el) {
el.style.set {
display: trusted ? "none" : "block",
@ -618,6 +628,21 @@ function watch_trust() {
self.timer(1s, watch_trust);
}
function watch_screen_recording() {
var trusted = handler.is_can_screen_recording(false);
var el = $(div#screen-recording-box);
if (el) {
el.style.set {
display: trusted ? "none" : "block",
};
}
if (trusted) {
app.update();
return;
}
self.timer(1s, watch_screen_recording);
}
class PasswordEyeArea : Reactor.Component {
render() {
return