Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk
This commit is contained in:
commit
d56356e595
5
.github/workflows/history.yml
vendored
5
.github/workflows/history.yml
vendored
@ -14,16 +14,13 @@ env:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-for-history-windows:
|
build-for-history-windows:
|
||||||
name: ${{ matrix.job.date }})
|
name: ${{ matrix.job.date }}
|
||||||
runs-on: ${{ matrix.job.os }}
|
runs-on: ${{ matrix.job.os }}
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
job:
|
job:
|
||||||
# - { target: i686-pc-windows-msvc , os: windows-2019 }
|
|
||||||
# - { target: x86_64-pc-windows-gnu , os: windows-2019 }
|
|
||||||
- { target: x86_64-pc-windows-msvc, os: windows-2019, arch: x86_64, date: 2023-08-04, ref: 72c198a1e94cc1e0242fce88f92b3f3caedcd0c3 }
|
- { target: x86_64-pc-windows-msvc, os: windows-2019, arch: x86_64, date: 2023-08-04, ref: 72c198a1e94cc1e0242fce88f92b3f3caedcd0c3 }
|
||||||
# - { target: aarch64-pc-windows-msvc, os: windows-2019, arch: aarch64 }
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout source code
|
- name: Checkout source code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
@ -163,7 +163,7 @@ class AbModel {
|
|||||||
void addPeer(Peer peer) {
|
void addPeer(Peer peer) {
|
||||||
final index = peers.indexWhere((e) => e.id == peer.id);
|
final index = peers.indexWhere((e) => e.id == peer.id);
|
||||||
if (index >= 0) {
|
if (index >= 0) {
|
||||||
peers[index] = merge(peer, peers[index]);
|
merge(peer, peers[index]);
|
||||||
} else {
|
} else {
|
||||||
peers.add(peer);
|
peers.add(peer);
|
||||||
}
|
}
|
||||||
@ -365,18 +365,14 @@ class AbModel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Peer merge(Peer r, Peer p) {
|
void merge(Peer r, Peer p) {
|
||||||
return Peer(
|
p.hash = r.hash.isEmpty ? p.hash : r.hash;
|
||||||
id: p.id,
|
p.username = r.username.isEmpty ? p.username : r.username;
|
||||||
hash: r.hash.isEmpty ? p.hash : r.hash,
|
p.hostname = r.hostname.isEmpty ? p.hostname : r.hostname;
|
||||||
username: r.username.isEmpty ? p.username : r.username,
|
p.alias = p.alias.isEmpty ? r.alias : p.alias;
|
||||||
hostname: r.hostname.isEmpty ? p.hostname : r.hostname,
|
p.forceAlwaysRelay = r.forceAlwaysRelay;
|
||||||
platform: r.platform.isEmpty ? p.platform : r.platform,
|
p.rdpPort = r.rdpPort;
|
||||||
alias: p.alias.isEmpty ? r.alias : p.alias,
|
p.rdpUsername = r.rdpUsername;
|
||||||
tags: p.tags,
|
|
||||||
forceAlwaysRelay: r.forceAlwaysRelay,
|
|
||||||
rdpPort: r.rdpPort,
|
|
||||||
rdpUsername: r.rdpUsername);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> syncFromRecent({bool push = true}) async {
|
Future<void> syncFromRecent({bool push = true}) async {
|
||||||
@ -445,14 +441,14 @@ class AbModel {
|
|||||||
needSync = true;
|
needSync = true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (!r.equal(peers[index])) {
|
|
||||||
uiChanged = true;
|
|
||||||
}
|
|
||||||
Peer old = Peer.copy(peers[index]);
|
Peer old = Peer.copy(peers[index]);
|
||||||
peers[index] = merge(r, peers[index]);
|
merge(r, peers[index]);
|
||||||
if (!peerSyncEqual(peers[index], old)) {
|
if (!peerSyncEqual(peers[index], old)) {
|
||||||
needSync = true;
|
needSync = true;
|
||||||
}
|
}
|
||||||
|
if (!old.equal(peers[index])) {
|
||||||
|
uiChanged = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Be careful with loop calls
|
// Be careful with loop calls
|
||||||
|
@ -7,9 +7,9 @@ import 'package:collection/collection.dart';
|
|||||||
class Peer {
|
class Peer {
|
||||||
final String id;
|
final String id;
|
||||||
String hash;
|
String hash;
|
||||||
final String username;
|
String username;
|
||||||
final String hostname;
|
String hostname;
|
||||||
final String platform;
|
String platform;
|
||||||
String alias;
|
String alias;
|
||||||
List<dynamic> tags;
|
List<dynamic> tags;
|
||||||
bool forceAlwaysRelay = false;
|
bool forceAlwaysRelay = false;
|
||||||
|
@ -17,7 +17,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
|
|||||||
("Transfer File", "Transferir archivo"),
|
("Transfer File", "Transferir archivo"),
|
||||||
("Connect", "Conectar"),
|
("Connect", "Conectar"),
|
||||||
("Recent Sessions", "Sesiones recientes"),
|
("Recent Sessions", "Sesiones recientes"),
|
||||||
("Address Book", "Libreta de direcciones"),
|
("Address Book", "Directorio"),
|
||||||
("Confirmation", "Confirmación"),
|
("Confirmation", "Confirmación"),
|
||||||
("TCP Tunneling", "Túnel TCP"),
|
("TCP Tunneling", "Túnel TCP"),
|
||||||
("Remove", "Quitar"),
|
("Remove", "Quitar"),
|
||||||
@ -412,7 +412,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
|
|||||||
("wayland_experiment_tip", "El soporte para Wayland está en fase experimental, por favor, use X11 si necesita acceso desatendido."),
|
("wayland_experiment_tip", "El soporte para Wayland está en fase experimental, por favor, use X11 si necesita acceso desatendido."),
|
||||||
("Right click to select tabs", "Clic derecho para seleccionar pestañas"),
|
("Right click to select tabs", "Clic derecho para seleccionar pestañas"),
|
||||||
("Skipped", "Omitido"),
|
("Skipped", "Omitido"),
|
||||||
("Add to Address Book", "Añadir a la libreta de direcciones"),
|
("Add to Address Book", "Añadir al directorio"),
|
||||||
("Group", "Grupo"),
|
("Group", "Grupo"),
|
||||||
("Search", "Búsqueda"),
|
("Search", "Búsqueda"),
|
||||||
("Closed manually by web console", "Cerrado manualmente por la consola web"),
|
("Closed manually by web console", "Cerrado manualmente por la consola web"),
|
||||||
@ -472,7 +472,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
|
|||||||
("empty_recent_tip", "¡Vaya, no hay conexiones recientes!\nEs hora de planificar una nueva."),
|
("empty_recent_tip", "¡Vaya, no hay conexiones recientes!\nEs hora de planificar una nueva."),
|
||||||
("empty_favorite_tip", "¿Sin pares favoritos aún?\nEncontremos uno al que conectarte y ¡añádelo a tus favoritos!"),
|
("empty_favorite_tip", "¿Sin pares favoritos aún?\nEncontremos uno al que conectarte y ¡añádelo a tus favoritos!"),
|
||||||
("empty_lan_tip", "Oh no, parece que aún no has descubierto ningún par."),
|
("empty_lan_tip", "Oh no, parece que aún no has descubierto ningún par."),
|
||||||
("empty_address_book_tip", "Parece que actualmente no hay pares en tu libreta de direcciones."),
|
("empty_address_book_tip", "Parece que actualmente no hay pares en tu directorio."),
|
||||||
("eg: admin", "ej.: admin"),
|
("eg: admin", "ej.: admin"),
|
||||||
("Empty Username", "Nombre de usuario vacío"),
|
("Empty Username", "Nombre de usuario vacío"),
|
||||||
("Empty Password", "Contraseña vacía"),
|
("Empty Password", "Contraseña vacía"),
|
||||||
@ -531,12 +531,12 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
|
|||||||
("Change Password", "Cambiar contraseña"),
|
("Change Password", "Cambiar contraseña"),
|
||||||
("Refresh Password", "Refrescar contraseña"),
|
("Refresh Password", "Refrescar contraseña"),
|
||||||
("ID", ""),
|
("ID", ""),
|
||||||
("Grid View", "Ver en Cuadrícula"),
|
("Grid View", "Vista Cuadrícula"),
|
||||||
("List View", "Ver en Lista"),
|
("List View", "Vista Lista"),
|
||||||
("Select", "Seleccionar"),
|
("Select", "Seleccionar"),
|
||||||
("Toggle Tags", "Alternar Etiquetas"),
|
("Toggle Tags", "Alternar Etiquetas"),
|
||||||
("pull_ab_failed_tip", ""),
|
("pull_ab_failed_tip", "No se ha podido refrescar el directorio"),
|
||||||
("push_ab_failed_tip", ""),
|
("push_ab_failed_tip", "No se ha podido sincronizar el directorio con el servidor"),
|
||||||
("synced_peer_readded_tip", ""),
|
("synced_peer_readded_tip", "Los dispositivos presentes en sesiones recientes se sincronizarán con el directorio."),
|
||||||
].iter().cloned().collect();
|
].iter().cloned().collect();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user