mirror of
https://github.com/rustdesk/rustdesk.git
synced 2025-12-13 11:35:56 +00:00
Refact. Flutter web, mid commit (#7482)
Signed-off-by: fufesou <shuanglongchen@yeah.net>
This commit is contained in:
@@ -3,19 +3,19 @@
|
||||
"version": "1.0.0",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "./gen_js_from_hbb.py > src/gen_js_from_hbb.ts && ./ts_proto.py && tsc && vite build",
|
||||
"build": "python ./gen_js_from_hbb.py > src/gen_js_from_hbb.ts && python ./ts_proto.py && tsc && vite build",
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^4.4.4",
|
||||
"vite": "^2.7.2"
|
||||
"vite": "2.8"
|
||||
},
|
||||
"dependencies": {
|
||||
"fast-sha256": "^1.3.0",
|
||||
"libsodium": "^0.7.9",
|
||||
"libsodium-wrappers": "^0.7.9",
|
||||
"pcm-player": "^0.0.11",
|
||||
"ts-proto": "^1.101.0",
|
||||
"ts-proto": "^1.169.1",
|
||||
"wasm-feature-detect": "^1.2.11",
|
||||
"zstddec": "^0.0.2"
|
||||
}
|
||||
|
||||
@@ -443,9 +443,9 @@ export default class Connection {
|
||||
if (this._videoTestSpeed[0] >= 30) {
|
||||
console.log(
|
||||
"video decoder: " +
|
||||
parseInt(
|
||||
"" + this._videoTestSpeed[1] / this._videoTestSpeed[0]
|
||||
)
|
||||
parseInt(
|
||||
"" + this._videoTestSpeed[1] / this._videoTestSpeed[0]
|
||||
)
|
||||
);
|
||||
this._videoTestSpeed = [0, 0];
|
||||
}
|
||||
@@ -456,6 +456,7 @@ export default class Connection {
|
||||
}
|
||||
|
||||
handlePeerInfo(pi: message.PeerInfo) {
|
||||
localStorage.setItem('last_remote_id', this._id);
|
||||
this._peerInfo = pi;
|
||||
if (pi.displays.length == 0) {
|
||||
this.msgbox("error", "Remote Error", "No Display");
|
||||
@@ -540,6 +541,15 @@ export default class Connection {
|
||||
return this._options[name];
|
||||
}
|
||||
|
||||
// TODO:
|
||||
getStatus(): String {
|
||||
return JSON.stringify({status_num: 10});
|
||||
}
|
||||
|
||||
// TODO:
|
||||
checkConnStatus() {
|
||||
}
|
||||
|
||||
setOption(name: string, value: any) {
|
||||
if (value == undefined) {
|
||||
delete this._options[name];
|
||||
|
||||
@@ -257,6 +257,14 @@ window.setByName = (name, value) => {
|
||||
value = JSON.parse(value);
|
||||
localStorage.setItem(value.name, value.value);
|
||||
break;
|
||||
case 'option:local':
|
||||
value = JSON.parse(value);
|
||||
localStorage.setItem('option:local:' + value.name, value.value);
|
||||
break;
|
||||
case 'option:flutter:local':
|
||||
value = JSON.parse(value);
|
||||
localStorage.setItem('option:flutter:local:' + value.name, value.value);
|
||||
break;
|
||||
case 'peer_option':
|
||||
value = JSON.parse(value);
|
||||
curConn.setOption(value.name, value.value);
|
||||
@@ -264,6 +272,15 @@ window.setByName = (name, value) => {
|
||||
case 'input_os_password':
|
||||
curConn.inputOsPassword(value);
|
||||
break;
|
||||
case 'check_conn_status':
|
||||
curConn.checkConnStatus();
|
||||
break;
|
||||
case 'remove_discovered':
|
||||
removeDiscovered(value);
|
||||
break;
|
||||
case 'discover':
|
||||
// TODO: discover
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -300,6 +317,10 @@ function _getByName(name, arg) {
|
||||
return curConn.getOption(arg) || false;
|
||||
case 'option':
|
||||
return localStorage.getItem(arg);
|
||||
case 'option:local':
|
||||
return localStorage.getItem('option:local:' + arg);
|
||||
case 'option:flutter:local':
|
||||
return localStorage.getItem('option:flutter:local:' + arg);
|
||||
case 'image_quality':
|
||||
return curConn.getImageQuality();
|
||||
case 'translate':
|
||||
@@ -307,10 +328,38 @@ function _getByName(name, arg) {
|
||||
return translate(arg.locale, arg.text);
|
||||
case 'peer_option':
|
||||
return curConn.getOption(arg);
|
||||
case 'get_conn_status':
|
||||
if (curConn) {
|
||||
return curConn.getStatus();
|
||||
} else {
|
||||
return JSON.stringify({ status_num: 0 });
|
||||
}
|
||||
case 'test_if_valid_server':
|
||||
break;
|
||||
case 'version':
|
||||
return version;
|
||||
case 'load_recent_peers':
|
||||
const peersRecent = localStorage.getItem('peers-recent');
|
||||
if (peersRecent) {
|
||||
onRegisteredEvent(JSON.stringify({ name: 'load_recent_peers', peers: peersRecent }));
|
||||
}
|
||||
break;
|
||||
case 'load_fav_peers':
|
||||
const peersFav = localStorage.getItem('peers-fav');
|
||||
if (peersFav) {
|
||||
onRegisteredEvent(JSON.stringify({ name: 'load_fav_peers', peers: peersFav }));
|
||||
}
|
||||
break;
|
||||
case 'load_lan_peers':
|
||||
const peersLan = localStorage.getItem('peers-lan');
|
||||
if (peersLan) {
|
||||
onRegisteredEvent(JSON.stringify({ name: 'load_lan_peers', peers: peersLan }));
|
||||
}
|
||||
break;
|
||||
case 'load_recent_peers_sync':
|
||||
return localStorage.getItem('peers-recent') ?? '{}';
|
||||
case 'load_lan_peers_sync':
|
||||
return localStorage.getItem('peers-lan') ?? '{}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
@@ -342,8 +391,20 @@ window.init = async () => {
|
||||
}
|
||||
|
||||
export function getPeers() {
|
||||
return _getJsonObj('peers');
|
||||
}
|
||||
|
||||
export function getRecentPeers() {
|
||||
return _getJsonObj('peers-recent');
|
||||
}
|
||||
|
||||
export function getLanPeers() {
|
||||
return _getJsonObj('peers-lan');
|
||||
}
|
||||
|
||||
export function getJsonObj(key) {
|
||||
try {
|
||||
return JSON.parse(localStorage.getItem('peers')) || {};
|
||||
return JSON.parse(localStorage.getItem(key)) || {};
|
||||
} catch (e) {
|
||||
return {};
|
||||
}
|
||||
@@ -380,4 +441,18 @@ export function copyToClipboard(text) {
|
||||
document.body.removeChild(textarea);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ========================== peers begin ==========================
|
||||
function removeDiscovered(id) {
|
||||
try {
|
||||
const v = localStorage.getItem('discovered');
|
||||
if (!v) return;
|
||||
const discovered = JSON.parse(localStorage.getItem('discovered'));
|
||||
delete discovered[id];
|
||||
localStorage.setItem('discovered', JSON.stringify(discovered));
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
// ========================== peers end ===========================
|
||||
|
||||
Reference in New Issue
Block a user