Compare commits

..

680 Commits
1.2.0 ... 1.2.2

Author SHA1 Message Date
RustDesk
9383d4c97c Merge pull request #5469 from 21pages/ab2
filter tags with union, not intersection
2023-08-22 09:43:08 +08:00
RustDesk
39e3b136dc Merge pull request #5468 from jimmyGALLAND/fix_peer_tab_page_count_selected_translate
fix peer tab page count selected translate
2023-08-22 09:42:35 +08:00
21pages
a48532d0b1 fix mobile missing tag color
Signed-off-by: 21pages <pages21@163.com>
2023-08-22 09:01:11 +08:00
21pages
83d9cb55f1 filter tags with union, not intersection
Signed-off-by: 21pages <pages21@163.com>
2023-08-22 08:54:01 +08:00
Jimmy GALLAND
d8ace7e38b fix peer tab page count selected translate 2023-08-21 22:42:16 +02:00
RustDesk
8524192a91 Merge pull request #5465 from jimmyGALLAND/master-1
Improve some translate fr.rs
2023-08-21 22:40:04 +08:00
RustDesk
23e2040797 Merge pull request #5464 from cacing69/master
fix some mistake on README-ID
2023-08-21 22:26:41 +08:00
jimmyGALLAND
afe12154a2 Improve some translate fr.rs 2023-08-21 16:26:23 +02:00
Ibnul Mutaki
cabfdccfa4 fix a little err 2023-08-21 21:22:11 +07:00
Ibnul Mutaki
16da5ccc91 fix some mistake on README-ID 2023-08-21 21:20:21 +07:00
RustDesk
24f8506740 Merge pull request #5461 from cacing69/master
add and fixing some translate Indonesia
2023-08-21 17:17:11 +08:00
Ibnul Mutaki
e03399749a add and fixing some translate Indonesia 2023-08-21 16:10:55 +07:00
rustdesk
f8a6423bf4 interesting, armv6 build very well on oracle arm64 2023-08-21 11:14:33 +08:00
RustDesk
ce993ea63a Merge pull request #5455 from jimmyGALLAND/master-1
Update fr.rs
2023-08-21 10:53:09 +08:00
RustDesk
25e784fe8a Merge pull request #5456 from 21pages/ab
always sync recent/ab password
2023-08-21 10:50:08 +08:00
21pages
b5411b686d recent/ab password keep same: sync connected password to addressbook anyway, delete recent password
also delete ab password

Signed-off-by: 21pages <pages21@163.com>
2023-08-21 10:04:16 +08:00
jimmyGALLAND
71f136be20 Update fr.rs 2023-08-20 18:41:53 +02:00
RustDesk
1f0b9bf798 Merge pull request #5449 from 21pages/fix
save ab password to recent PeerConfig when connected with it
2023-08-20 21:44:47 +08:00
rustdesk
cff872dd07 arm runner 2023-08-20 21:44:13 +08:00
RustDesk
662a768d83 Merge pull request #5446 from NicKoehler/master-1
Update it.rs
2023-08-20 17:39:08 +08:00
21pages
c3abd3e2b3 save user info when refreshCurrentUser
Signed-off-by: 21pages <pages21@163.com>
2023-08-20 17:14:52 +08:00
21pages
7ec462737b save ab password to recent PeerConfig when connected with it
Signed-off-by: 21pages <pages21@163.com>
2023-08-20 15:49:00 +08:00
21pages
ee8510cec7 peer_to_map function serde password
Signed-off-by: 21pages <pages21@163.com>
2023-08-20 11:24:55 +08:00
NicKoehler
3cc6ba005a Update it.rs 2023-08-19 19:39:58 +00:00
RustDesk
7c9068cf17 Merge pull request #5444 from 21pages/fix
encrypt return emtpy if exceed max len to avoid another encrypt
2023-08-19 22:00:32 +08:00
21pages
e1ae3601c4 encrypt return emtpy if exceed max len to avoid another encrypt
Signed-off-by: 21pages <pages21@163.com>
2023-08-19 20:44:54 +08:00
rustdesk
8ce51cbf53 revert amd64 backto github runner 2023-08-19 19:38:32 +08:00
rustdesk
0cffb3651c Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-08-19 19:35:36 +08:00
RustDesk
90e6c016a6 Merge pull request #5443 from 21pages/ab
fix refresh icon stops after switching tab
2023-08-19 18:30:36 +08:00
21pages
9cba0a0b89 fix refresh icon stops after switching tab
Signed-off-by: 21pages <pages21@163.com>
2023-08-19 18:12:03 +08:00
RustDesk
f68ef1492f Update flutter-build.yml 2023-08-19 17:41:28 +08:00
RustDesk
535e1bd2ce Merge pull request #5442 from 21pages/ab
restore online status after pullAb
2023-08-19 15:30:43 +08:00
21pages
df02292338 restore online status after pullAb
Signed-off-by: 21pages <pages21@163.com>
2023-08-19 15:28:53 +08:00
RustDesk
e2d38208c4 Merge pull request #5440 from 21pages/opt
opt peer tab ui
2023-08-19 12:25:28 +08:00
21pages
cdb264d47b opt ui: hover decoration of peer tab icon, add tile card
checkbox  margin

Signed-off-by: 21pages <pages21@163.com>
2023-08-19 11:33:56 +08:00
rustdesk
73c19803a2 upgrade tao which may solve tray theme issue on windows 2023-08-19 10:45:55 +08:00
RustDesk
622b2f3858 Merge pull request #5438 from fufesou/fix/linux_crash_rdev_xdisplay
fix, linux crash, rdev, xdisplay
2023-08-19 09:00:20 +08:00
fufesou
83061afe6f fix, linux crash, rdev, xdisplay
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-08-19 01:21:55 +08:00
RustDesk
24547c11cb Merge pull request #5437 from 21pages/ab
fix missing await in pullAb
2023-08-18 19:53:06 +08:00
RustDesk
cfdc9ad03c Merge pull request #5436 from leroyloren/master-2
Update cs.rs
2023-08-18 19:52:54 +08:00
RustDesk
a012414f9f Merge pull request #5435 from leroyloren/master
Update cs.rs
2023-08-18 19:52:43 +08:00
21pages
ce5abfc3cd fix missing await in pullAb
Signed-off-by: 21pages <pages21@163.com>
2023-08-18 19:46:50 +08:00
leroyloren
30b260ab21 Update cs.rs 2023-08-18 12:58:55 +02:00
leroyloren
15839d9815 Update cs.rs 2023-08-18 12:56:44 +02:00
RustDesk
08af0d4bf2 Merge pull request #5433 from 21pages/ab
replace offstage with if-else for LinearProgressIndicator in dialog
2023-08-18 16:19:36 +08:00
21pages
979203cbdb replace offstage with if-else for LinearProgressIndicator in dialog
Signed-off-by: 21pages <pages21@163.com>
2023-08-18 16:16:21 +08:00
21pages
a7163c6a04 when connecting with ab, if recent peer's alias is empty, set it to ab's alias
Signed-off-by: 21pages <pages21@163.com>
2023-08-18 15:49:15 +08:00
rustdesk
8b5f389cd7 Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-08-18 14:58:44 +08:00
rustdesk
d30a9b545e went back to flutter 3.10.6, because 3.13 does not work well with bridge 2023-08-18 14:58:05 +08:00
RustDesk
d26d680390 Merge pull request #5431 from 21pages/ab
don't use Offstage as widget of  animated loading, reuse refresh as loading
2023-08-18 13:10:14 +08:00
21pages
24e6b54650 don't use Offstage as widget of animated loading, reuse refresh as
loading

Signed-off-by: 21pages <pages21@163.com>
2023-08-18 12:58:37 +08:00
rustdesk
d56356e595 Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-08-18 12:11:12 +08:00
rustdesk
be11c7127d flutter 3.13.0 for fixing flutter sluggish caused by combination of
offstage and loading animation in ab, issue #5410
2023-08-18 12:09:52 +08:00
RustDesk
cf557bc63e Merge pull request #5430 from 21pages/ab
fix ab ui update on every time callback
2023-08-18 10:51:48 +08:00
RustDesk
78c620126c Merge pull request #5427 from flusheDData/master
Update es.rs
2023-08-18 10:51:19 +08:00
Miguel F. G
17a6c697c7 Update es.rs
A few updates plus new terms
2023-08-17 16:43:12 +02:00
21pages
2279c1ce70 fix ab ui update on every time callback
Signed-off-by: 21pages <pages21@163.com>
2023-08-17 21:17:31 +08:00
RustDesk
7fa1bcfdfb Update history.yml 2023-08-17 21:07:20 +08:00
RustDesk
5102adfd5c Merge pull request #5426 from open-trade/master
update history ci
2023-08-17 19:27:33 +08:00
2mao
9f3a0699f6 Merge branch 'rustdesk:master' into master 2023-08-17 19:26:46 +08:00
RustDesk
81bf4bc028 Merge pull request #5425 from 21pages/ab
fix searching alias doesn't take effect in address book
2023-08-17 19:24:13 +08:00
21pages
d2c84c5fc2 fix splash not using onetime-password when changing peer tab
Signed-off-by: 21pages <pages21@163.com>
2023-08-17 19:21:06 +08:00
2mao
8b6be8234d Update history.yml 2023-08-17 19:20:47 +08:00
21pages
d7f0acd96d ab: unremember password in ab also unremember password in recent, and set alias also sync to recent
Signed-off-by: 21pages <pages21@163.com>
2023-08-17 19:20:07 +08:00
2mao
d805d74f05 Update history.yml 2023-08-17 19:09:01 +08:00
2mao
37d540544a Update history.yml 2023-08-17 18:50:47 +08:00
2mao
8651466cf2 Update history.yml 2023-08-17 18:49:03 +08:00
2mao
90c55c0096 Update history.yml 2023-08-17 18:41:47 +08:00
RustDesk
87d489207c Merge pull request #5424 from leroyloren/master-1
Update cs.rs
2023-08-17 18:24:21 +08:00
21pages
6045b5fead fix search alias doesn't match in address book
Signed-off-by: 21pages <pages21@163.com>
2023-08-17 17:20:08 +08:00
leroyloren
1976fd6164 Update cs.rs 2023-08-17 09:56:35 +02:00
leroyloren
be4c64de71 Update cs.rs 2023-08-17 09:49:35 +02:00
leroyloren
443d9669b6 Update cs.rs 2023-08-17 09:45:59 +02:00
leroyloren
8dcb2e073a Update cs.rs
some fixes
2023-08-17 09:41:13 +02:00
RustDesk
b34282e1f3 Merge pull request #5423 from solokot/master
Update ru.rs
2023-08-17 15:13:50 +08:00
solokot
21bb40fce5 Update ru.rs 2023-08-17 10:12:13 +03:00
RustDesk
2a95d13eae Merge pull request #5420 from dignow/fix/busy_cursor
fix, portable version, busy cursor last for a long time
2023-08-17 11:24:28 +08:00
RustDesk
b1331a6259 Merge pull request #5418 from Mr-Update/master-3
Update de.rs
2023-08-17 11:21:41 +08:00
RustDesk
2e2b6555fa Merge pull request #5417 from leroyloren/master-1
Update cs.rs
2023-08-17 11:21:11 +08:00
RustDesk
be55926cfe Merge pull request #5415 from 21pages/ab
fix ab sync judge
2023-08-17 11:20:47 +08:00
dignow
1ff94d1035 fix, portable version, busy cursor last for a long time
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-17 09:51:43 +08:00
21pages
8e9f3e2b4d fix ab sync judge
Signed-off-by: 21pages <pages21@163.com>
2023-08-17 08:28:51 +08:00
Mr-Update
4aac3d076f Update de.rs 2023-08-16 22:25:21 +02:00
leroyloren
014ce28e3a Update cs.rs 2023-08-16 20:14:29 +02:00
RustDesk
1ef2ca83a9 Merge pull request #5413 from dignow/fix/move_tab_to_new_window_unregister_texture
Do not unregister texture if move to new window
2023-08-16 21:54:35 +08:00
dignow
1dc96e4fd2 Do not unregister texture if move to new window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-16 21:48:49 +08:00
rustdesk
542d86b667 remove active_mouse_ which is very bad implementation 2023-08-16 18:57:56 +08:00
RustDesk
9ac4346850 Merge pull request #5408 from 21pages/ab
ab: add full check in pullAb && sync recent check login
2023-08-16 16:21:36 +08:00
RustDesk
df32e4e7b6 Merge pull request #5409 from bovirus/master
Update italian language
2023-08-16 16:21:15 +08:00
bovirus
7ccd8e2c87 Update italian language 2023-08-16 09:54:13 +02:00
21pages
da4679f0ae ab: add full check in pullAb && sync recent check login
Signed-off-by: 21pages <pages21@163.com>
2023-08-16 15:39:56 +08:00
rustdesk
416897994a update readme 2023-08-16 14:34:03 +08:00
RustDesk
fc8c1793f2 Merge pull request #5405 from Integral-Tech/master
Update cn.rs
2023-08-16 14:32:13 +08:00
rustdesk
f9cd9a97ef fix readme 2023-08-16 14:29:41 +08:00
Integral
b063740d3e Update cn.rs 2023-08-16 14:20:15 +08:00
rustdesk
c37732be9b correct translation 2023-08-16 14:09:06 +08:00
RustDesk
1141b99cf4 Merge pull request #5404 from 21pages/ab
fix ab ui not updating immediately
2023-08-16 14:04:11 +08:00
21pages
6f8483aecd ab: full check for adding peers from recent/batch operation
Signed-off-by: 21pages <pages21@163.com>
2023-08-16 13:30:38 +08:00
21pages
1e75b172d6 ab: opt reaction and message hint
Signed-off-by: 21pages <pages21@163.com>
2023-08-16 12:09:01 +08:00
21pages
553a3798a1 ab: sync all recent peers if option enabled
Signed-off-by: 21pages <pages21@163.com>
2023-08-16 11:36:16 +08:00
21pages
29c661d919 ab: fix ui not updating immediately
Signed-off-by: 21pages <pages21@163.com>
2023-08-16 11:35:42 +08:00
rustdesk
309cb1010c handle .exe.exe, since ext hidden, clients likely append exetra .exe 2023-08-16 11:02:07 +08:00
rustdesk
1bcac047aa fix conn log 2023-08-15 21:19:59 +08:00
RustDesk
0e6bd87e19 Merge pull request #5398 from bovirus/master
Update italian language
2023-08-15 19:33:50 +08:00
RustDesk
1bb48e1979 Merge pull request #5397 from Mr-Update/master-2
Update de.rs
2023-08-15 19:33:17 +08:00
RustDesk
f2381a34c7 Merge pull request #5396 from solokot/master
Update ru.rs
2023-08-15 19:32:58 +08:00
bovirus
4e20e9c91a Update italian language 2023-08-15 10:46:47 +02:00
Mr-Update
124fc98116 Update de.rs 2023-08-15 10:31:29 +02:00
solokot
3131d25de4 Update ru.rs 2023-08-15 11:27:20 +03:00
RustDesk
b8b1d9e991 Merge pull request #5395 from 21pages/fix
fix gzip threshold changed by mistake
2023-08-15 12:59:25 +08:00
21pages
4c25f94bd1 fix gzip threshold changed by mistake
Signed-off-by: 21pages <pages21@163.com>
2023-08-15 12:55:54 +08:00
RustDesk
a1215749d2 Merge pull request #5394 from 21pages/ab
opt ab json decode
2023-08-15 12:11:39 +08:00
21pages
d45def7cbe opt ab json decode
Signed-off-by: 21pages <pages21@163.com>
2023-08-15 12:09:33 +08:00
RustDesk
fb02334b46 Merge pull request #5392 from 21pages/ab
address book error banner
2023-08-15 10:55:10 +08:00
21pages
923d76cf69 opt add ab id and delete file dialog ui
Signed-off-by: 21pages <pages21@163.com>
2023-08-15 10:22:34 +08:00
21pages
e01377e100 tag color same as tag name if name is color, remove yellow random tag color
Signed-off-by: 21pages <pages21@163.com>
2023-08-15 10:22:34 +08:00
21pages
57b8ec178c sync ab alias
Signed-off-by: 21pages <pages21@163.com>
2023-08-15 10:22:33 +08:00
21pages
b2f5e2f927 ab:deal push error, show error banner, fix splash empty by remove reset
Signed-off-by: 21pages <pages21@163.com>
2023-08-15 10:22:31 +08:00
RustDesk
5112398ad3 Merge pull request #5377 from dignow/fix/handle_peer_info_cached
Fix, check if is cached peer info when handle_peer_info
2023-08-14 20:55:26 +08:00
RustDesk
e8d1d5f5fc Merge pull request #5383 from flusheDData/master
Update es.rs
2023-08-14 16:49:26 +08:00
Miguel F. G
91d091aaba Update es.rs
New terms added
2023-08-14 10:47:17 +02:00
RustDesk
cf1631130d Merge pull request #5382 from bovirus/master
Update italian language
2023-08-14 15:24:21 +08:00
bovirus
d5a0d0cfa0 Update italian language 2023-08-14 09:15:17 +02:00
RustDesk
bf9ed4753e Merge pull request #5381 from solokot/master
Update ru.rs
2023-08-14 15:08:30 +08:00
solokot
9eb1fd0151 Update ru.rs 2023-08-14 09:41:31 +03:00
RustDesk
96d46b4770 Merge pull request #5378 from dignow/fix/restore_resolution
Fix, do not restore resolution if it is not changed through the session
2023-08-14 12:13:51 +08:00
RustDesk
b60d2501cb Merge pull request #5373 from 21pages/fix
fix macos minisized after checking permission
2023-08-14 12:01:24 +08:00
21pages
a5bba37cae add tag color
Signed-off-by: 21pages <pages21@163.com>
2023-08-14 11:58:18 +08:00
RustDesk
bbcb1e3d25 Merge pull request #5365 from razavioo/master
Fix create-dmg issue on macosx
2023-08-14 09:31:33 +08:00
RustDesk
6f3af14623 Merge pull request #5177 from SelfRef/bugfix/icon-name-in-desktop-file
Fix icon name in .desktop entry to allow theming
2023-08-14 09:04:46 +08:00
dignow
0d6356c855 Fix, do not restore resolution if it is not changed through the session
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-13 22:38:47 +08:00
dignow
845fdec015 update displays
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-13 22:01:56 +08:00
dignow
aeae2b3ef7 Fix, check if is cached peer info when handle_peer_info
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-13 21:46:39 +08:00
RustDesk
3d49909fc9 Merge pull request #5376 from Mr-Update/master-1
Missing translation for tooltips in #5363 added
2023-08-13 21:28:54 +08:00
Mr-Update
0bb03a083a Add files via upload 2023-08-13 14:12:14 +02:00
Mr-Update
ff3ca6f719 Update peer_tab_page.dart 2023-08-13 14:09:41 +02:00
rustdesk
4b33ee6309 fix uninstall service on mac from main window because of ipc close
myself
2023-08-13 19:51:02 +08:00
21pages
ae640dda56 fix macos minisized after checking permission
Signed-off-by: 21pages <pages21@163.com>
2023-08-13 17:50:19 +08:00
rustdesk
722b82e1a5 keep rs-ny.rustdesk.com only 2023-08-13 15:59:07 +08:00
rustdesk
089078472f my bad 2023-08-13 15:37:29 +08:00
RustDesk
214e4285be Merge pull request #5372 from dignow/fix/window_border_on_maximized
Fix, Windows and Linux, window border on maximize
2023-08-13 14:44:20 +08:00
dignow
8870283f6f Fix, Windows and Linux, window border on maximize
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-13 14:30:14 +08:00
Seyyed Emad Razavi
815f10876c Merge pull request #1 from razavioo/razavioo-fix-create-dmg-macosx
Fix create-dmg issue on macosx
2023-08-12 13:36:19 +03:30
Seyyed Emad Razavi
591d631b0d Fix create-dmg issue on macosx 2023-08-12 13:35:16 +03:30
RustDesk
a1780d43bb Merge pull request #5363 from sahilyeole/master
Add more tooltips
2023-08-12 15:40:51 +08:00
sahilyeole
f722c6f684 add more desktop_home_page tooltips
Signed-off-by: sahilyeole <sahilyeole93@gmail.com>
2023-08-12 12:52:31 +05:30
sahilyeole
d18250d1e7 add more peer_tab_page tooltips
Signed-off-by: sahilyeole <sahilyeole93@gmail.com>
2023-08-12 12:52:31 +05:30
rustdesk
85c149d8e4 mainly for mac, if somehow --server not killed 2023-08-12 15:17:00 +08:00
rustdesk
0e6d368970 fix --server not killed when stop service on mac 2023-08-12 15:10:38 +08:00
rustdesk
886fb73521 Some time it is RustDesk, sometimes it is rustdesk on mac, so make it
case insensitive
2023-08-12 15:07:08 +08:00
RustDesk
64dd1dc967 Merge pull request #5355 from PeterDaveHello/OptimizePNG
Optimize PNG images losslessly using zopflipng
2023-08-12 11:51:39 +08:00
Peter Dave Hello
098df81754 Optimize PNG images losslessly using zopflipng
59 PNG images recompressed as below:

fastlane/metadata/android/en-US/images/phoneScreenshots/1.png                   | Bin 27006 -> 26922 bytes
fastlane/metadata/android/en-US/images/phoneScreenshots/2.png                   | Bin 326177 -> 325660 bytes
fastlane/metadata/android/en-US/images/phoneScreenshots/3.png                   | Bin 431697 -> 428945 bytes
fastlane/metadata/android/en-US/images/sevenInchScreenshots/6.png               | Bin 462394 -> 461442 bytes
fastlane/metadata/android/en-US/images/sevenInchScreenshots/7.png               | Bin 388078 -> 387416 bytes
fastlane/metadata/android/en-US/images/sevenInchScreenshots/8.png               | Bin 273393 -> 272856 bytes
flutter/android/app/src/main/res/mipmap-hdpi/ic_launcher.png                    | Bin 3990 -> 3479 bytes
flutter/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png         | Bin 7492 -> 6026 bytes
flutter/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png              | Bin 6161 -> 5107 bytes
flutter/android/app/src/main/res/mipmap-hdpi/ic_stat_logo.png                   | Bin 1028 -> 487 bytes
flutter/android/app/src/main/res/mipmap-ldpi/ic_launcher.png                    | Bin 1667 -> 1524 bytes
flutter/android/app/src/main/res/mipmap-mdpi/ic_launcher.png                    | Bin 2207 -> 1987 bytes
flutter/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png         | Bin 4348 -> 3641 bytes
flutter/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png              | Bin 3525 -> 3017 bytes
flutter/android/app/src/main/res/mipmap-mdpi/ic_stat_logo.png                   | Bin 715 -> 383 bytes
flutter/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png                   | Bin 4827 -> 4237 bytes
flutter/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png        | Bin 9515 -> 7659 bytes
flutter/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png             | Bin 7604 -> 6202 bytes
flutter/android/app/src/main/res/mipmap-xhdpi/ic_stat_logo.png                  | Bin 1524 -> 719 bytes
flutter/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png                  | Bin 9171 -> 7498 bytes
flutter/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png       | Bin 33762 -> 22530 bytes
flutter/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png            | Bin 13879 -> 10713 bytes
flutter/android/app/src/main/res/mipmap-xxhdpi/ic_stat_logo.png                 | Bin 2091 -> 884 bytes
flutter/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png                 | Bin 9893 -> 7409 bytes
flutter/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png      | Bin 41583 -> 31138 bytes
flutter/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png           | Bin 16113 -> 11189 bytes
flutter/android/app/src/main/res/mipmap-xxxhdpi/ic_stat_logo.png                | Bin 3162 -> 1389 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png | Bin 49903 -> 32239 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png     | Bin 669 -> 511 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png     | Bin 1344 -> 989 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png     | Bin 2049 -> 1545 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png     | Bin 969 -> 755 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png     | Bin 1948 -> 1510 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png     | Bin 3139 -> 2299 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png     | Bin 1344 -> 989 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png     | Bin 2846 -> 2086 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png     | Bin 4240 -> 3087 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png     | Bin 4240 -> 3087 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png     | Bin 6893 -> 4914 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png     | Bin 2594 -> 1964 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png     | Bin 5794 -> 4152 bytes
flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png | Bin 6468 -> 4494 bytes
flutter/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png       | Bin 37517 -> 35842 bytes
flutter/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png         | Bin 448 -> 420 bytes
flutter/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png        | Bin 6198 -> 6071 bytes
flutter/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png         | Bin 875 -> 827 bytes
flutter/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png        | Bin 13870 -> 13288 bytes
flutter/web/icons/Icon-192.png                                                  | Bin 8908 -> 6339 bytes
flutter/web/icons/Icon-512.png                                                  | Bin 25973 -> 17282 bytes
flutter/web/icons/Icon-maskable-192.png                                         | Bin 8908 -> 6339 bytes
flutter/web/icons/Icon-maskable-512.png                                         | Bin 25973 -> 17282 bytes
libs/clipboard/docs/assets/scene3.png                                           | Bin 5480 -> 5475 bytes
libs/clipboard/docs/assets/win_A_B.png                                          | Bin 43658 -> 43619 bytes
libs/clipboard/docs/assets/win_B_A.png                                          | Bin 43515 -> 43447 bytes
res/128x128@2x.png                                                              | Bin 10623 -> 7689 bytes
res/icon.png                                                                    | Bin 60426 -> 40256 bytes
res/mac-icon.png                                                                | Bin 37517 -> 35842 bytes
res/mac-tray-dark-x2.png                                                        | Bin 703 -> 651 bytes
res/mac-tray-light-x2.png                                                       | Bin 728 -> 586 bytes
2023-08-12 02:25:04 +08:00
RustDesk
53218409d7 Merge pull request #5353 from dignow/refact/remove_login_device_info_in_sciter
refactor, remove login device info in sciter
2023-08-11 22:19:10 +08:00
RustDesk
a7a460a29d Merge pull request #5352 from dignow/fix/window_maximize_state
fix, window maximized state
2023-08-11 22:18:29 +08:00
RustDesk
b4e34b6158 Merge pull request #5351 from BestiaPL/master
Update pl.rs
2023-08-11 22:15:14 +08:00
dignow
6608bf882f refactor, remove login device info in sciter
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-11 19:28:25 +08:00
dignow
f5493ab0c4 fix, window maximized state
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-11 19:03:09 +08:00
Andrzej Rudnik
f9f06e91f5 Update pl.rs 2023-08-11 12:31:52 +02:00
RustDesk
3c3d1a84ef Merge pull request #5349 from dignow/fix/save_frame_maximized
fix windowOnTop, maxmized state
2023-08-11 17:28:32 +08:00
dignow
e85c0d16b6 fix set minimized state
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-11 16:08:47 +08:00
RustDesk
ef022c91bb Merge pull request #5348 from 21pages/ab
ab: use cache for display and display peers while loading
2023-08-11 15:59:12 +08:00
dignow
d66b10b508 fix windowOnTop, maxmized state
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-11 15:54:21 +08:00
21pages
bea88f31e0 use ab cache init show and show custom loading when ab not emtpy
Signed-off-by: 21pages <pages21@163.com>
2023-08-11 15:39:42 +08:00
RustDesk
8b82db1220 Merge pull request #5347 from dignow/fix/save_frame_maximized
Fix/save frame maximized
2023-08-11 15:19:01 +08:00
dignow
14cbd842f5 fix https://github.com/rustdesk/rustdesk/issues/5340
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-11 15:03:06 +08:00
dignow
26cd24d92f fix saving frame, maximized
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-11 15:03:06 +08:00
rustdesk
e2fdd69524 remove rs-ny.rustdesk.com 2023-08-11 14:00:26 +08:00
rustdesk
71996c9509 fix --assign 2023-08-11 13:19:23 +08:00
RustDesk
544cb203ea Merge pull request #5346 from 21pages/fix
fix temporary password not update right now when length changed
2023-08-11 12:24:21 +08:00
21pages
fdd24dcb72 fix temporary password not update right now when length changed
Signed-off-by: 21pages <pages21@163.com>
2023-08-11 11:38:26 +08:00
RustDesk
ea12eccc90 Merge pull request #5344 from 21pages/fix
remove not save peer config when version is zero
2023-08-11 08:41:13 +08:00
21pages
87600d36e4 remove not save peer config when version is zero
Signed-off-by: 21pages <pages21@163.com>
2023-08-11 08:37:02 +08:00
rustdesk
85e6ed32a1 tooltip for monitor icon 2023-08-11 08:34:14 +08:00
RustDesk
c749ebff46 Merge pull request #5334 from sahilyeole/master
Improve tooltip consistency
2023-08-11 08:07:49 +08:00
RustDesk
39f0edcb32 Merge pull request #5331 from dignow/fix/save_peer_window_pos
fix saving peer window pos
2023-08-11 08:04:57 +08:00
Sahil Yeole
823632ccba remove multi monitor tooltip
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-10 20:09:43 +05:30
Sahil Yeole
86fa3928a7 Merge branch 'rustdesk:master' into master 2023-08-10 20:07:51 +05:30
dignow
7f6b18fc9c change ffi flutter_config to flutter_option
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 22:27:35 +08:00
RustDesk
8301b4bf4e Merge pull request #5332 from 21pages/ab
not show waitingForImage dialog when already get first image
2023-08-10 22:04:15 +08:00
21pages
16c94fb1d0 hide multiselect icon if peers is empty
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 21:32:26 +08:00
21pages
1be383e50e not show waitingForImage when already get first image
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 21:28:02 +08:00
Sahil Yeole
66b90c2a08 add global tooltip wait duration
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-10 18:32:10 +05:30
Sahil Yeole
f502eb0ea5 enable tooltip for menu buttons
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-10 18:32:10 +05:30
dignow
7921be45f5 fix saving peer window pos
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 19:48:26 +08:00
RustDesk
a1095b8844 Merge pull request #5326 from 21pages/ab
delete ab cache and show login button on http 401
2023-08-10 19:23:51 +08:00
RustDesk
399af2fbf6 Merge pull request #5329 from Mr-Update/master-5
Update de.rs
2023-08-10 19:23:06 +08:00
Mr-Update
d54c96e455 Update de.rs 2023-08-10 12:09:56 +02:00
21pages
eb8231af14 delete ab cache and show login button on http 401
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 17:38:51 +08:00
RustDesk
59c865293f Merge pull request #5325 from bovirus/master
Update Italian language
2023-08-10 17:14:52 +08:00
bovirus
72cfe05323 Update Italian language 2023-08-10 11:04:20 +02:00
RustDesk
aaa03db69c Merge pull request #5322 from solokot/master
Update ru.rs
2023-08-10 16:41:04 +08:00
solokot
c4f642258b Update ru.rs 2023-08-10 07:55:48 +03:00
RustDesk
67c90eda4b Merge pull request #5320 from SergeyMy/master-1
Update desktop_setting_page.dart
2023-08-10 12:43:48 +08:00
SergeyMy
d2413b1899 Update desktop_setting_page.dart
FIX
bc0a5bf6e1/src/lang/template.rs (L527)
2023-08-10 09:17:03 +05:00
RustDesk
bc0a5bf6e1 Merge pull request #5319 from 21pages/ab
fix tag rename
2023-08-10 11:43:01 +08:00
21pages
54a396ed1b fix tag rename
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 11:12:58 +08:00
RustDesk
7e9084e10f Merge pull request #5318 from 21pages/ab
rename tag
2023-08-10 10:59:38 +08:00
21pages
db45552a05 rename tag
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 10:35:46 +08:00
RustDesk
46b3cf1871 Merge pull request #5317 from dignow/fix/desktop_touchscreen_support_long_press
fix, desktop touchscreen support long press
2023-08-10 09:39:28 +08:00
dignow
96e3d9496d fix, desktop touchscreen support long press
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-10 09:29:07 +08:00
RustDesk
f3e13cd9dd Merge pull request #5311 from PeterDaveHello/tw
Update and improve tw translation
2023-08-10 08:33:03 +08:00
RustDesk
8645e92951 Merge pull request #5316 from 21pages/select
refactor peer card multi select
2023-08-10 08:32:07 +08:00
21pages
3fd58bb69d opt peer card multi select
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 08:23:34 +08:00
21pages
5028b8a93d fix keep peer card order when connect failed
Signed-off-by: 21pages <pages21@163.com>
2023-08-10 06:55:31 +08:00
Peter Dave Hello
9d5027b932 Update and improve tw translation 2023-08-10 00:46:39 +08:00
RustDesk
064d00f136 Merge pull request #5308 from dignow/fix/login_device_info
fix, login device info
2023-08-09 21:29:58 +08:00
rustdesk
723a1897b9 revert get_env_tries tries back to 10, https://github.com/rustdesk/rustdesk/pull/5276#issuecomment-1671288661 2023-08-09 21:28:12 +08:00
dignow
9a6c38f0e8 remove global login device info
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-09 21:25:56 +08:00
RustDesk
d3b305ced3 Merge pull request #5276 from sahilyeole/master
Improved fix for connection refused on restart/logout lightdm
2023-08-09 21:21:19 +08:00
dignow
e6dd082b0f fix, login device info
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-09 20:27:52 +08:00
Sahil Yeole
ebfebdffa7 add check for seat0 active user
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-09 17:55:59 +05:30
Sahil Yeole
0d2c46a893 Revert "skip env tries for lightdm login screen"
This reverts commit d28d3baf05.
2023-08-09 17:55:59 +05:30
Sahil Yeole
6b17644d98 Revert "add delay in refresh"
This reverts commit 897dc1c2ba.
2023-08-09 17:55:59 +05:30
Sahil Yeole
6c38dc7d4a Merge branch 'rustdesk:master' into master 2023-08-09 17:52:10 +05:30
RustDesk
714f191a9d Merge pull request #5307 from dignow/fix/show_after_setting_pos
fix, set window position before show when reusing window
2023-08-09 19:13:42 +08:00
dignow
28cbe0f464 fix, set window position before show when reusing window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-09 18:37:09 +08:00
RustDesk
09a6b3c30a Merge pull request #5305 from dignow/fix/move_tab_to_new_window
fix move tab to new window
2023-08-09 17:39:51 +08:00
dignow
0d16f54c2f fix move tab to new window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-09 17:17:18 +08:00
RustDesk
47956871e8 Merge pull request #5303 from 21pages/fix
remove extra dismiss waiting for image
2023-08-09 16:07:37 +08:00
21pages
de85c9448a remove extra dismiss waiting for image
Signed-off-by: 21pages <pages21@163.com>
2023-08-09 15:32:51 +08:00
RustDesk
f022cbb93f Merge pull request #5302 from 21pages/fix
fix waiting for image, should not await dialogManager.show
2023-08-09 15:19:13 +08:00
21pages
52bffd4030 fix waiting for image, should not await dialogManager.show
Signed-off-by: 21pages <pages21@163.com>
2023-08-09 15:12:24 +08:00
RustDesk
a35635f4bb Merge pull request #5301 from 21pages/fix
add missing Get.delete, android can update id controller
2023-08-09 14:00:52 +08:00
21pages
fbde794d39 add missing Get.delete, android can update id controller
Signed-off-by: 21pages <pages21@163.com>
2023-08-09 13:54:09 +08:00
RustDesk
9121de746f Merge pull request #5300 from dignow/fix/render_texture_instance
Fix/render texture instance
2023-08-09 13:00:51 +08:00
dignow
9a7a600407 remove global render texture instance
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-09 12:46:40 +08:00
dignow
3ecf0cc685 fix session render texture instance
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-09 12:29:53 +08:00
RustDesk
38d4f29e51 Merge pull request #5298 from 21pages/opt
opt peercard order
2023-08-09 10:52:46 +08:00
21pages
e830a59c2a skip PeerConfig saving when not receiving peerinfo to keep peercard order
Signed-off-by: 21pages <pages21@163.com>
2023-08-09 07:42:22 +08:00
RustDesk
6fbc23a096 Merge pull request #5296 from dignow/fix/id_server
oidc does not use api server cache & fix logout after changing server
2023-08-08 21:40:18 +08:00
RustDesk
9093d29ae4 Merge pull request #5297 from dignow/doc/get_flutter_config_from_file
add comments
2023-08-08 21:38:42 +08:00
dignow
7692dcd629 fix logout
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 21:37:34 +08:00
dignow
dcad52cf52 add comments
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 21:34:46 +08:00
dignow
6a500f2ede oidc does not use api server cache & fix logout after changing server
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 21:25:44 +08:00
21pages
312c6324d2 opt delete dialog title
Signed-off-by: 21pages <pages21@163.com>
2023-08-08 21:20:08 +08:00
21pages
21cf2a01c7 update idController when create new connection
Signed-off-by: 21pages <pages21@163.com>
2023-08-08 21:20:06 +08:00
RustDesk
3ba979a9d7 Merge pull request #5295 from dignow/fix/separate_window_pos
Fix/separate windows pos
2023-08-08 21:16:04 +08:00
dignow
7defb54f15 save window pos
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 19:58:30 +08:00
rustdesk
a926cc0dce opt auth svg 2023-08-08 18:41:38 +08:00
dignow
32fe330946 restore window pos
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 18:14:01 +08:00
RustDesk
8dac38d844 Merge pull request #5290 from bovirus/master
Update italian language
2023-08-08 17:10:21 +08:00
RustDesk
28829ce671 Merge pull request #5291 from Mr-Update/master-4
Update de.rs
2023-08-08 17:09:57 +08:00
Mr-Update
bebe2b5282 Update de.rs 2023-08-08 10:31:09 +02:00
bovirus
db2ec7df8f Update italian language 2023-08-08 10:24:46 +02:00
RustDesk
4d3f5373d4 Merge pull request #5289 from solokot/master
Update ru.rs
2023-08-08 14:56:45 +08:00
solokot
c9c1ad5829 Update ru.rs 2023-08-08 09:53:53 +03:00
rustdesk
8c8b5cbb1c fix words 2023-08-08 14:45:58 +08:00
RustDesk
d91d87b67f Merge pull request #5288 from dignow/feat/open_conn_opts
Feat/open conn opts
2023-08-08 14:39:26 +08:00
dignow
772548dbf9 remove unused translation
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 14:34:45 +08:00
dignow
9b614c8b32 remove peer card menu
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 14:22:32 +08:00
dignow
836a2b0fbd fix label
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 14:07:40 +08:00
dignow
b5679df7f9 refact, peer card menu, open in tabs action
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 13:50:29 +08:00
dignow
ac88f55f25 refact, peer card menu, open in tabs or windows
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-08 13:10:01 +08:00
RustDesk
6b375cb0a3 Merge pull request #5285 from BestiaPL/master
Update pl.rs
2023-08-08 08:20:27 +08:00
RustDesk
be45ec13c0 Merge pull request #5286 from Mr-Update/master-3
Fix typo
2023-08-08 08:20:01 +08:00
RustDesk
f56def14d2 Merge pull request #5282 from 21pages/record
enable keyframe interval when recording
2023-08-08 08:19:06 +08:00
Mr-Update
d43af7d8ad Add files via upload 2023-08-07 21:42:42 +02:00
Mr-Update
b6abcaee7a Update install_page.dart 2023-08-07 21:38:54 +02:00
Andrzej Rudnik
6a818763fd Update pl.rs 2023-08-07 20:00:33 +02:00
21pages
9905695699 enable keyframe interval when recording
Signed-off-by: 21pages <pages21@163.com>
2023-08-07 21:32:36 +08:00
RustDesk
278ce0281d Merge pull request #5278 from Mr-Update/master-2
Supplement for "fix some words"
2023-08-07 20:43:14 +08:00
Mr-Update
b34f745837 Supplement for "fix some words" from yesterday 2023-08-07 14:20:20 +02:00
Mr-Update
0c50feeb1b Supplement for "fix some words" from yesterday 2023-08-07 14:17:14 +02:00
RustDesk
c44b641cce Merge pull request #5277 from dignow/refact/common_oidc
Refact/common OIDC
2023-08-07 19:37:34 +08:00
dignow
2c86fac208 refact, common oidc
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 19:08:43 +08:00
dignow
4e1d7ca3de update svg
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 17:25:46 +08:00
dignow
35c1cee18b common oidc, add auth0
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 17:25:46 +08:00
dignow
0bf007e63c common oidc, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 17:25:46 +08:00
dignow
3f3c45b663 common oidc, tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 17:25:46 +08:00
dignow
dab956fe85 common oidc
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 17:25:46 +08:00
Sahil Yeole
d28d3baf05 skip env tries for lightdm login screen
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-07 12:42:11 +05:30
Sahil Yeole
897dc1c2ba add delay in refresh
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-07 12:14:35 +05:30
Sahil Yeole
dd97dc580b remove get seat0 tries
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-08-07 12:12:30 +05:30
RustDesk
8d830382de Merge pull request #5270 from PeterDaveHello/ImproveDockerfile
Optimize Dockerfile
2023-08-07 11:25:18 +08:00
RustDesk
e39be54afa Merge pull request #5272 from Mr-Update/master-1
Update de.rs
2023-08-07 10:46:35 +08:00
RustDesk
7f7e8692a8 Merge pull request #5274 from 21pages/fix
remove flutter extra "waiting for image"
2023-08-07 10:44:33 +08:00
RustDesk
36d509238d Merge pull request #5273 from dignow/fix/separate_windows_stream_leak
fix, separate window, 100%CPU & event stream leak
2023-08-07 10:27:05 +08:00
21pages
a8cddb5b19 split waiting for image
Signed-off-by: 21pages <pages21@163.com>
2023-08-07 09:51:05 +08:00
21pages
186f5ed39c remove flutter extra "waiting for image"
Signed-off-by: 21pages <pages21@163.com>
2023-08-07 09:23:08 +08:00
dignow
46233a0f4c fix, event stream key
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 09:12:43 +08:00
dignow
7dcb28ce33 fix, separate window, event stream leak
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-07 09:01:31 +08:00
Mr-Update
f4b52890e0 Update de.rs 2023-08-06 23:01:46 +02:00
Peter Dave Hello
99bcbaa601 Drop wget dependency in Dockerfile 2023-08-07 00:14:36 +08:00
Peter Dave Hello
d665d91920 Clean up apt cache in Dockerfile 2023-08-06 23:57:47 +08:00
Peter Dave Hello
70d16ab097 Optimize git clone process in Dockerfile 2023-08-06 23:57:47 +08:00
RustDesk
6111042907 Merge pull request #5268 from dignow/fix/reuse_inactive_window
fix, reuse inactive window
2023-08-06 18:40:17 +08:00
dignow
0533f7c3d6 fix, reuse inactive window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 18:31:02 +08:00
RustDesk
221fe6223a Merge pull request #5267 from dignow/fix/separate_windows_keyboard
fix, separate window, keyboard input
2023-08-06 17:19:16 +08:00
dignow
baf8d2511d fix, separate window, keyboard input
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 17:12:53 +08:00
RustDesk
9dd7b4d5d8 Merge pull request #5266 from dignow/refact/separate_remote_window
fix, reuse window type
2023-08-06 16:55:58 +08:00
dignow
3edba4e2db fix, reuse window type
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 16:47:41 +08:00
RustDesk
3c1465692e Merge pull request #5265 from bovirus/master
Update italian language
2023-08-06 16:45:33 +08:00
rustdesk
68835586a9 Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-08-06 16:42:56 +08:00
rustdesk
26ba25d2ae Move restart to tab right menu, and remove some items 2023-08-06 16:42:13 +08:00
bovirus
7eec6e2cc0 Update italian language 2023-08-06 09:56:26 +02:00
RustDesk
be9cddcad8 Merge pull request #5262 from solokot/master
Update ru.rs
2023-08-06 15:38:10 +08:00
solokot
fdfdbb3ffc Update ru.rs 2023-08-06 09:41:07 +03:00
rustdesk
5124cc49b3 fix some words 2023-08-06 14:05:48 +08:00
RustDesk
a47db31d46 Merge pull request #5261 from dignow/refact/separate_remote_window
Refact/separate remote window
2023-08-06 11:30:44 +08:00
dignow
d02dc1797c refact, change default separate window option
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 11:24:03 +08:00
dignow
7ddc706f2d refact, change 'Split' to 'Move tab to new window'
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 11:21:07 +08:00
RustDesk
755353dc0b Merge pull request #5260 from dignow/refact/separate_remote_window
Refact/separate remote window
2023-08-06 11:00:49 +08:00
dignow
2692c29519 refact, split window, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 10:56:57 +08:00
dignow
e2228cc448 refact, split tab to separate window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-06 10:19:30 +08:00
RustDesk
152616a261 Merge pull request #5256 from dignow/refact/separate_remote_window
Refact/separate remote window
2023-08-06 09:31:05 +08:00
RustDesk
21850b4444 Merge pull request #5259 from 21pages/fix
try fix waiting for image when already shown
2023-08-06 08:19:29 +08:00
21pages
bc039a31c5 try fix waiting for image when already shown
Signed-off-by: 21pages <pages21@163.com>
2023-08-05 22:13:11 +08:00
dignow
2db8f1f9d1 refact, separate remote window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 19:48:32 +08:00
dignow
5817e48e17 fix build
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 19:20:20 +08:00
dignow
bf42d66171 refact, separate remote window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:09 +08:00
dignow
30c2c92970 refact, separate window, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:08 +08:00
dignow
01ab0cf196 tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:08 +08:00
dignow
fd12f69afa tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:08 +08:00
dignow
53e87352da tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:08 +08:00
dignow
e12d0ef4aa tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:07 +08:00
dignow
e4ac34da0d refact, separate remote window, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:07 +08:00
dignow
e121ed8ecb refact, separate remote window, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:07 +08:00
dignow
1970795093 refact, separate remote window, tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:07 +08:00
dignow
902f56c499 refact, separate remote window, add offset
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:06 +08:00
dignow
1a8463015f refact, separate remote window, connect(separate window)
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:06 +08:00
dignow
688ecef4cc refact, separate remote window, save session position
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:06 +08:00
dignow
773a74e2a9 refact, separate remote window, try active session
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:05 +08:00
dignow
f495bf105f refact, separate remote window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-05 18:01:05 +08:00
rustdesk
72c198a1e9 add uuid to heartbeat 2023-08-04 23:19:10 +08:00
RustDesk
bf2dbf5ff4 Merge pull request #5252 from 21pages/batch
simple ab store and add batch operation toast
2023-08-04 15:38:53 +08:00
21pages
2f5ae54c08 simple ab store and add batch operation toast
Signed-off-by: 21pages <pages21@163.com>
2023-08-04 15:32:09 +08:00
RustDesk
7c36bb7b52 Merge pull request #5250 from 21pages/batch
left shift key for peer card select
2023-08-04 14:20:44 +08:00
21pages
f5cf291f55 left shift key for peer card select
Signed-off-by: 21pages <pages21@163.com>
2023-08-04 13:17:44 +08:00
rustdesk
f000e05267 fix license migration 2023-08-04 11:27:33 +08:00
RustDesk
12e565fb03 Merge pull request #5244 from 21pages/batch
peer card batch operation
2023-08-04 10:23:48 +08:00
rustdesk
a9c4bd4a30 Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-08-03 22:06:31 +08:00
rustdesk
56c8e00b8b unify name 2023-08-03 22:06:09 +08:00
21pages
5a0865559c peer card batch operation
Signed-off-by: 21pages <pages21@163.com>
2023-08-03 21:35:16 +08:00
RustDesk
0f611d03dd Merge pull request #5240 from dignow/fix/better_restore_window_size
better restore window size
2023-08-03 18:33:09 +08:00
dignow
f64dd3794a better restore window size
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-03 18:15:50 +08:00
RustDesk
bdc5cded22 Merge pull request #5236 from 21pages/ab
refactor addressbook sync
2023-08-02 23:18:13 +08:00
21pages
cd5658f01d refactor addressbook sync
Signed-off-by: 21pages <pages21@163.com>
2023-08-02 22:25:54 +08:00
rustdesk
e12717fe5f --assign 2023-08-02 19:48:33 +08:00
rustdesk
7cd12f151c it seems firewall has no dir=inout, change to two rule for safety 2023-08-02 10:28:34 +08:00
SelfRef
5cb4413655 Add missing dirs 2023-08-01 19:33:06 +02:00
rustdesk
e148cc7e51 fix issue #5224 2023-08-01 22:24:13 +08:00
RustDesk
17587bb299 Merge pull request #5223 from dignow/refact/win_clipboard_use_ref_instead_of_box_ref
win clipboard context, use ref instead of box ref
2023-08-01 22:12:01 +08:00
dignow
4ecbf7aec6 win clipboard context, use ref instead of box ref
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-01 21:26:40 +08:00
RustDesk
c33dd8e2ef Merge pull request #5222 from dignow/refact/win_file_clipboard_on_control_side
refact, win file clipboard enable
2023-08-01 20:48:17 +08:00
dignow
a7e73df801 simple change
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-01 20:15:37 +08:00
dignow
2ffc528986 refact, win file clipboard enable
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-01 20:12:56 +08:00
RustDesk
11595be199 Merge pull request #5219 from dignow/fix/check_main_args
Fix/check main args
2023-08-01 17:27:22 +08:00
dignow
7640a51726 check empty uni link arg
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-01 17:10:21 +08:00
dignow
d59be68e52 Fix check main args
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-01 15:57:38 +08:00
RustDesk
6fa48b4ada Merge pull request #5218 from 21pages/fix
opt _OptionCheckBox reaction
2023-08-01 13:25:11 +08:00
21pages
6c475bf02a opt _OptionCheckBox reaction
Signed-off-by: 21pages <pages21@163.com>
2023-08-01 12:54:33 +08:00
RustDesk
d6cbcae08f Merge pull request #5213 from dignow/fix/build
fix build
2023-08-01 10:05:40 +08:00
dignow
e978d1d0fd fix build
Signed-off-by: dignow <linlong1265@gmail.com>
2023-08-01 09:56:46 +08:00
rustdesk
897bfbaf0e use 20 tries as what in seat:` 2023-08-01 09:38:19 +08:00
RustDesk
bd914497c9 Merge pull request #5212 from sahilyeole/master
seat tries for sovling connection refuse problem while login
2023-08-01 09:37:26 +08:00
SelfRef
8595d3e569 Add scalable icon for Unix packages 2023-08-01 00:54:21 +02:00
SelfRef
4401ccd6fa Change icon location in Unix packages 2023-08-01 00:36:19 +02:00
RustDesk
5555cf8fbe Merge pull request #5210 from dignow/refact/no_sync_file_clipboard_before_conn
Do not sync file clipboard before conn
2023-07-31 23:26:21 +08:00
Sahil Yeole
cc9f69d63b add wrapper function _get_values_of_seat0_tries for attempts
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-07-31 20:54:05 +05:30
dignow
9ca01b0898 Do not sync file clipboard before conn
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-31 22:31:26 +08:00
RustDesk
9b7e5b38ad Merge pull request #5208 from dignow/fix/win_clipboard
fix, win file clipboard, when authorized by the remote
2023-07-31 22:21:34 +08:00
rustdesk
f47f2a9151 change to inout firewall rule 2023-07-31 22:08:59 +08:00
rustdesk
4c32bea702 remove system requirement, and remove dialgo 2023-07-31 21:57:37 +08:00
dignow
4009fd77e8 init sync file clipboard, local to remote
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-31 21:40:55 +08:00
dignow
433059f8a0 fix, win clipboard, send clipboard message only after first frame is received
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-31 20:56:48 +08:00
dignow
416cdac1fe fix, win clipboard, remove duplicated state
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-31 20:33:19 +08:00
dignow
e143493d7b simple changes
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-31 20:02:01 +08:00
dignow
f7c1b8d88f fix, win file clipboard, when authrized by the remote
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-31 19:59:21 +08:00
RustDesk
63ac61d920 Merge pull request #5207 from 21pages/fix
fix addressbook pull uri
2023-07-31 18:42:58 +08:00
rustdesk
3f1a4d581b Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-07-31 18:14:11 +08:00
rustdesk
ac60ba40a2 fix #5205 2023-07-31 18:13:54 +08:00
21pages
831a50e702 fix addressbook pull uri
Signed-off-by: 21pages <pages21@163.com>
2023-07-31 17:22:41 +08:00
RustDesk
4bc7466da3 Merge pull request #5202 from FastAct/patch-18
Update nl.rs
2023-07-31 15:07:55 +08:00
RustDesk
d649d13c97 Update nl.rs 2023-07-31 15:07:23 +08:00
FastAct
086c48cea9 Update nl.rs 2023-07-31 08:44:54 +02:00
Sahil Yeole
cf6fbae30a add attempts for getting values of seat0 for gdm_wayland
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-07-30 17:58:14 +05:30
Sahil Yeole
30c002831e make multiple attempts for _get_values_of_seat0
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-07-30 17:45:36 +05:30
RustDesk
2ab513893d Merge pull request #5166 from dignow/feat/minimize_on_fullscreen
add minimize button on fullscreen toolbar
2023-07-30 19:23:26 +08:00
dignow
a4600dd8a8 refact, minimize on fullscreen
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-30 19:12:51 +08:00
RustDesk
285387c4c1 Merge pull request #5198 from dignow/fix/win_file_clipboard
Fix/win file clipboard
2023-07-30 18:09:18 +08:00
Sahil Yeole
c88219b769 retry _get_values_of_seat0 function to fix connection refused error
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2023-07-30 15:07:17 +05:30
dignow
50c737694f remove debug log
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-30 17:25:35 +08:00
dignow
549dc05713 add debug log
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-30 17:16:25 +08:00
dignow
ac743ca2fe check IsClipboardFormatAvailable(CF_HDROP) on clipboard update
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-30 16:42:39 +08:00
RustDesk
97f14d21e8 Merge pull request #5197 from 21pages/opt
log nothing if config file not found
2023-07-30 12:53:42 +08:00
21pages
2c619cbe41 quite if config file not found, remove HW_CODEC_CONFIG, option env LIBGL_ALWAYS_SOFTWARE=1
Signed-off-by: 21pages <pages21@163.com>
2023-07-30 12:42:23 +08:00
rustdesk
dd4f52b63d move closing-tabs to local config, and add glgetstring to stack check 2023-07-30 12:16:00 +08:00
RustDesk
69f1969e60 Merge pull request #5191 from fufesou/refact/linux_headless_allow_option
Refact/linux headless allow option
2023-07-30 11:04:50 +08:00
fufesou
64b680e7cf fix build
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 22:26:14 +08:00
fufesou
ddaefddc6e refact, linux headless option
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 21:37:33 +08:00
fufesou
3343210e8b remove translation
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 18:02:12 +08:00
fufesou
2e256c0fca refact, wayland login screen translate
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 17:35:44 +08:00
fufesou
5403166552 refact, linux headless option, debug
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 17:16:53 +08:00
fufesou
d761d2f00e fix build
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 16:09:10 +08:00
fufesou
19c8ba719a refact, linux headless option, ui
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 15:51:42 +08:00
fufesou
55972bfac5 refact, linux headless option, debug
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 15:51:42 +08:00
fufesou
c0ead118a2 refact, option, allow linux headless
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 15:51:42 +08:00
fufesou
c15e3c306e refact, option, allow linux headless
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-29 15:50:29 +08:00
RustDesk
3c4852a254 Merge pull request #5187 from 21pages/fix
fix IDTextEditingController extra character
2023-07-29 13:54:02 +08:00
21pages
61a48b5367 fix IDTextEditingController extra character
Signed-off-by: 21pages <pages21@163.com>
2023-07-29 13:47:59 +08:00
RustDesk
7f4548021b Merge pull request #5186 from 21pages/fix
remove System::new_all in hwcodec check
2023-07-29 11:52:03 +08:00
21pages
0a29fa87f0 remove System::new_all in hwcodec check
Signed-off-by: 21pages <pages21@163.com>
2023-07-29 11:41:44 +08:00
RustDesk
8d92ee424f Merge pull request #5183 from Integral-Tech/master
Update cn.rs
2023-07-29 11:30:27 +08:00
Integral
ceb78aa095 Update cn.rs 2023-07-28 23:50:50 +08:00
rustdesk
6dd476fecb fix --option 2023-07-28 17:55:33 +08:00
rustdesk
e5bdbffbcf ab compression 2023-07-28 17:53:02 +08:00
rustdesk
1de50e8170 --option 2023-07-28 17:52:43 +08:00
SelfRef
27353f98ff Fix icon name in .desktop entry to allow theming 2023-07-28 11:29:17 +02:00
RustDesk
ef097c7a7a Merge pull request #5171 from Mr-Update/patch-17
Update de.rs
2023-07-28 10:59:06 +08:00
RustDesk
33606eee9f Merge pull request #5169 from flusheDData/master
Update es.rs
2023-07-28 10:58:55 +08:00
RustDesk
ac2b9a6fc1 Merge pull request #5168 from 21pages/opt
opt bitrate change
2023-07-28 10:57:05 +08:00
Mr-Update
264b282f5c Update de.rs 2023-07-27 22:55:34 +02:00
dignow
9321a4f486 refact fullscreen and minimize button
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-27 22:19:38 +08:00
Miguel F. G
ffbc6e0c8b Update es.rs
New terms added
2023-07-27 16:18:15 +02:00
21pages
fa420c4825 fix sciter more bitrate, change max bitrate to 2000%
Signed-off-by: 21pages <pages21@163.com>
2023-07-27 21:55:49 +08:00
dignow
4d2036512a add minimize button on fullscreen toolbar
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-27 20:45:29 +08:00
Bob Weinand
63bf4b5fa8 Add flutter support for extended bitrate 2023-07-27 18:34:06 +08:00
Bob Weinand
4b58f0b4dd Allow to explicitly increase the bitrate massively
This has the benefit - over direct connections - to be able to send a lot more data.
In particular fast moving frames may avoid fps drops with a higher target bitrate.
2023-07-27 18:34:01 +08:00
21pages
029e6a015e minisize vpx/aom q_min for bitrate 200%
Signed-off-by: 21pages <pages21@163.com>
2023-07-27 18:29:46 +08:00
rustdesk
5d6b1223cc fix #5163 2023-07-27 17:02:01 +08:00
rustdesk
813c51b0ca Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-07-27 16:49:57 +08:00
rustdesk
4d7a6dd661 install-service/uninstall-service 2023-07-27 16:49:19 +08:00
RustDesk
954df86f3c Merge pull request #5156 from bovirus/master
Update italian language
2023-07-27 14:10:31 +08:00
bovirus
da1126a5a9 Update italian language 2023-07-27 08:06:35 +02:00
rustdesk
0e1e8d2b16 revert my stupid 2023-07-27 10:51:27 +08:00
rustdesk
9967bb993f more flexible for --get-id 2023-07-27 10:46:48 +08:00
RustDesk
8f851bc781 Merge pull request #5151 from dignow/fix/window_save_restore_position
Fix/window save restore position
2023-07-27 10:18:24 +08:00
RustDesk
c6d0322080 Merge pull request #5150 from solokot/master
Update ru.rs
2023-07-27 10:15:39 +08:00
dignow
6467b14486 window, pos save and restore, add min window space to the top
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-27 09:17:07 +08:00
dignow
88ce98e716 debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-27 09:13:39 +08:00
dignow
343bcbb363 adjust window offset on start
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-27 09:11:43 +08:00
dignow
5228b3490d window, save and restore pos, maxmium
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-27 08:03:18 +08:00
solokot
0f40279060 Update ru.rs 2023-07-27 00:02:55 +02:00
dignow
731aa5e9f3 support negative window position
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-26 21:29:35 +08:00
rustdesk
791645fa59 add ab full check 2023-07-26 20:43:18 +08:00
rustdesk
4fe85cdd4a fix tags hidden in mobile 2023-07-26 19:57:42 +08:00
rustdesk
8b8f50ed0f fix syninfo, add ab two menutiems: sync ab with recent sessions and sort tags 2023-07-26 19:53:57 +08:00
rustdesk
c711084807 ci 2023-07-26 10:42:25 +08:00
RustDesk
88efd13acb Merge pull request #5125 from dignow/fix/window_save_pos
Fix/window save pos
2023-07-26 10:21:43 +08:00
RustDesk
f72eed064a Merge pull request #5124 from bwoebi/patch-1
Fix sciter build on MacOS
2023-07-26 10:13:53 +08:00
dignow
6c0ca4cec8 update pubspec.lock
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-26 10:13:37 +08:00
RustDesk
71ffa21db0 Merge pull request #5121 from dignow/fix/android_mouse_mode
Fix/android mouse mode
2023-07-26 09:23:16 +08:00
RustDesk
bd6b7cdfc4 Merge pull request #5122 from SergeyMy/patch-6
Update ru.rs
2023-07-26 09:19:17 +08:00
dignow
b7123c5be8 fix, window save pos, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-26 07:52:40 +08:00
Bob Weinand
20b39c7215 Fix sciter build on MacOS
c86a8fff03 accidentally duplicated that part of the code from send_mouse. Removing it.
2023-07-25 22:12:50 +02:00
dignow
5e9841e7ab fix window save pos, debug win
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-26 00:40:03 +08:00
SergeyMy
09d2502f53 Update ru.rs 2023-07-25 20:31:09 +05:00
dignow
033645a7e0 fix mobile mouse mode
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-25 22:09:42 +08:00
RustDesk
eb8b264b18 Merge pull request #5120 from bovirus/master
Update italian language
2023-07-25 20:45:56 +08:00
bovirus
b7c9c187e5 Update italian language 2023-07-25 14:44:26 +02:00
rustdesk
b543e6d143 fix #5119 2023-07-25 20:29:16 +08:00
rustdesk
4bbef031d5 chore: https://github.com/rustdesk/rustdesk-server-pro/issues/32#issuecomment-1649403386 2023-07-25 17:07:55 +08:00
rustdesk
006df4d20b chore 2023-07-25 16:37:39 +08:00
RustDesk
0ef2ae4ac4 Merge pull request #5115 from 21pages/fix
fix qos and add auto_adjust_fps
2023-07-25 16:32:21 +08:00
21pages
e70f3f2125 fix qos and add auto_adjust_fps
Signed-off-by: 21pages <pages21@163.com>
2023-07-25 15:49:50 +08:00
dignow
20cdb87e28 try fix android mouse mode
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-25 15:32:42 +08:00
rustdesk
28ef64cba1 remove the annoying message 2023-07-25 13:38:42 +08:00
RustDesk
b89bf86f03 Merge pull request #5106 from 21pages/fix
update hwcodec
2023-07-24 21:57:26 +08:00
21pages
58e252a875 update hwcodec to specify nvenc gpu via env
Signed-off-by: 21pages <pages21@163.com>
2023-07-24 21:49:35 +08:00
RustDesk
5cf2f47b12 Merge pull request #5104 from bovirus/master
Add Italian docs
2023-07-24 19:48:32 +08:00
bovirus
088f4a76a7 Add Italian docs 2023-07-24 13:39:06 +02:00
RustDesk
7bff325a7d Merge pull request #5103 from bovirus/master
Update README-IT.md
2023-07-24 17:47:37 +08:00
bovirus
5e36710cde Update README-IT.md 2023-07-24 11:46:05 +02:00
RustDesk
5639ce82bd Merge pull request #5100 from 21pages/fix
fix win cpu monitor run once
2023-07-24 15:40:35 +08:00
RustDesk
29e3616237 Merge pull request #5099 from FastAct/patch-17
Update nl.rs
2023-07-24 15:32:25 +08:00
rustdesk
9a28bab5b2 try fix cargo test no space in ci 2023-07-24 15:31:36 +08:00
21pages
02456280d4 fix win cpu monitor run once
Signed-off-by: 21pages <pages21@163.com>
2023-07-24 14:54:15 +08:00
FastAct
93a6410360 Update nl.rs 2023-07-24 07:11:55 +02:00
RustDesk
dc0f21298e Merge pull request #5046 from 21pages/fps3
multi user video qos and fix quality change
2023-07-23 20:38:53 +08:00
21pages
aa740f4263 remove many unwrap and enum_value_or_default
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 20:00:58 +08:00
21pages
31b3c5d721 codec thread count depending on cpu condition
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 20:00:52 +08:00
21pages
2133f91089 codec set quality seperately and refactor network delay
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 19:54:42 +08:00
21pages
633c80d5e4 Revert "vpx use webrtc parameter"
This reverts commit d23fd902d7.
2023-07-23 19:54:42 +08:00
21pages
22ca7177a6 Revert "fix ci"
This reverts commit a0e09d3e33.
2023-07-23 19:54:42 +08:00
21pages
fd9f5475f3 multiuser video qos and client increace fps support
Signed-off-by: 21pages <pages21@163.com>
2023-07-23 19:54:42 +08:00
RustDesk
96f367943c Merge pull request #5089 from dignow/fix/flutter_settings
fix, settings on main window
2023-07-23 18:27:28 +08:00
dignow
dfd5ea8a7f add wrapper for min modifications
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-23 18:01:00 +08:00
dignow
b80051bb35 fix, settings on main window
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-23 17:07:30 +08:00
RustDesk
d49dd9377e Merge pull request #5088 from mehdi-song/patch-35
Update fa.rs
2023-07-23 12:48:06 +08:00
mehdi-song
5662121cdb Update fa.rs 2023-07-23 04:24:50 +00:00
rustdesk
e4544d8a22 Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-07-22 19:21:31 +08:00
rustdesk
c763478f66 fix typo and os info 2023-07-22 19:21:12 +08:00
RustDesk
8c741bdfd3 Merge pull request #5084 from flusheDData/master
Update es.rs
2023-07-22 16:40:03 +08:00
Miguel F. G
ac9e4a5582 Update es.rs 2023-07-22 10:27:00 +02:00
rustdesk
07137ac566 sys info 2023-07-22 14:30:47 +08:00
RustDesk
b52795bd59 Merge pull request #5077 from flusheDData/master
Update es.rs
2023-07-21 22:59:37 +08:00
Miguel F. G
893a88bb02 Update es.rs
New terms added
2023-07-21 16:19:16 +02:00
RustDesk
e198dd626b Merge pull request #5068 from malina-popa/master
update romanian language
2023-07-21 20:47:08 +08:00
Mălina-Ioana Popa
ef615baaeb update romanian language 2023-07-20 12:43:05 +02:00
rustdesk
072338afae Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-07-20 10:40:45 +08:00
rustdesk
2ec773e9bf issue #5062 2023-07-20 10:40:26 +08:00
RustDesk
5e7efd24eb Merge pull request #5060 from xalt7x/master
Update ua.rs
2023-07-20 08:25:57 +08:00
Yevhen
5dbfa71b2c Update ua.rs
Update Ukrainian UI translation
2023-07-19 23:38:51 +03:00
RustDesk
b9ad4b2379 Merge pull request #5059 from malina-popa/master
update romanian language
2023-07-20 01:17:08 +08:00
Mălina-Ioana Popa
ca0e00ea5e update romanian language 2023-07-19 18:58:58 +02:00
rustdesk
e48f36a227 prepare device_info upload, change sync interval from 30s to 15s, also
enable android
2023-07-19 21:46:15 +08:00
rustdesk
c9d19115e9 fix CI 2023-07-19 17:24:58 +08:00
rustdesk
9ac3128309 --set-id and --config, not tested yet 2023-07-19 17:11:57 +08:00
rustdesk
aacffd979b make config in exe name has highest priority, also overwrite config if
installation,
https://github.com/rustdesk/rustdesk-server-pro/issues/21#issuecomment-1638259580,
not tested yet
2023-07-19 14:45:11 +08:00
RustDesk
b40c3aae52 Merge pull request #5049 from dignow/fix/desktop_touchpad_scale
Fix/desktop touchpad scale
2023-07-19 09:26:40 +08:00
dignow
31fc018526 change message.proto
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-19 07:33:35 +08:00
dignow
b17c6983ce win, touch scale, debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-19 01:26:43 +08:00
dignow
c86a8fff03 add pointer device event
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-19 01:18:10 +08:00
dignow
780cb37d46 tmp debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-18 23:10:42 +08:00
dignow
7bbc5183db trackpad scale, mid commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-18 21:04:12 +08:00
RustDesk
f0ded8498a Merge pull request #5040 from fufesou/fix/macos_convertion_key
try fix macos convertion key
2023-07-18 11:08:02 +08:00
fufesou
e37745d0b4 fix build
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-18 09:36:06 +08:00
fufesou
2ce0f724bb https://github.com/rustdesk/rustdesk/issues/5027
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-18 07:35:20 +08:00
fufesou
5ebb2565ca try fix macos convertion key
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-17 23:43:25 +08:00
RustDesk
84dc0b8be8 Merge pull request #5036 from dignow/feat/touch_screen_input
Feat/touch screen input
2023-07-17 21:35:44 +08:00
dignow
74a492e52e remove debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-17 20:51:46 +08:00
dignow
2badecba2a debug, touch screen input
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-17 20:48:58 +08:00
dignow
c01c8d0afc touch screen input
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-17 20:07:55 +08:00
rustdesk
76a6b4e09e alloc_console does work, but it create another cmd window, seems not
better than dialog
2023-07-17 18:52:43 +08:00
RustDesk
4ed9aa39c7 Merge pull request #5034 from BestiaPL/master
Updated Polish translation
2023-07-17 17:25:05 +08:00
RustDesk
52aebb3bcc Merge pull request #5033 from SergeyMy/patch-5
Update ru.rs
2023-07-17 17:24:27 +08:00
rustdesk
c950ed1701 fix CI error, though remove error, but do not know if it is correct 2023-07-17 17:22:33 +08:00
Andrzej Rudnik
f97f5d94ae Update pl.rs 2023-07-17 11:00:49 +02:00
SergeyMy
5c5413075e Update ru.rs 2023-07-17 13:50:53 +05:00
RustDesk
806c2130b5 Merge pull request #5032 from 21pages/fix
fix runas version to 1.0
2023-07-17 16:41:41 +08:00
Andrzej Rudnik
8cc7dc0a3e Update pl.rs 2023-07-17 10:00:19 +02:00
21pages
5fc88fb6e4 fix runas version to 1.0
Signed-off-by: 21pages <pages21@163.com>
2023-07-17 15:45:17 +08:00
RustDesk
77eca6bcdc Merge pull request #5031 from 21pages/opt
opt linux ci
2023-07-17 11:27:14 +08:00
21pages
195018e22d opt linux ci: remove unused and use stable version
Signed-off-by: 21pages <pages21@163.com>
2023-07-17 10:52:34 +08:00
RustDesk
552871d98c Merge pull request #5029 from 21pages/fix_ci_no_local
remove local registry
2023-07-17 10:42:34 +08:00
21pages
71e3f86024 1.71.0 and remove local registry
Signed-off-by: 21pages <pages21@163.com>
2023-07-17 07:52:18 +08:00
RustDesk
07f7a9318c Merge pull request #5025 from cgcel/patch-1
Update README-ZH.md
2023-07-16 22:12:02 +08:00
GC Chen
7f539a2de3 Update README-ZH.md
Update README-ZH to match the current README.md.
2023-07-16 22:09:11 +08:00
rustdesk
30d6edf502 rust 1.71 2023-07-16 21:15:02 +08:00
rustdesk
60f0a3485f revert ci to old 18.04 status 2023-07-16 21:12:14 +08:00
rustdesk
ebf25282e3 change distro back to 18.04 because some ci problem 2023-07-16 20:54:30 +08:00
RustDesk
59bc97c2f5 Merge pull request #4838 from dignow/refact/install_cert_
cert installation, add or replace cert store
2023-07-16 11:53:52 +08:00
RustDesk
a24a7e8d0f Merge pull request #5017 from 21pages/fix
clear hwcodec config rather than remove
2023-07-16 11:53:32 +08:00
RustDesk
bf33b28483 Merge pull request #5016 from fufesou/fix/wayland_change_resolutions
fix, wayland, change resolutions
2023-07-16 11:52:00 +08:00
RustDesk
b60c4bd952 Merge pull request #5015 from Mr-Update/patch-16
Update de.rs
2023-07-16 11:50:29 +08:00
RustDesk
0f56aecadf Merge pull request #5014 from bovirus/master
Update italian language
2023-07-16 11:50:15 +08:00
21pages
ec34470284 clear hwcodec config rather than remove
Signed-off-by: 21pages <pages21@163.com>
2023-07-16 09:59:46 +08:00
fufesou
77231f6538 simple refact
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-16 09:52:32 +08:00
fufesou
fa0b1436c2 try fix CI
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-16 09:35:11 +08:00
fufesou
7bc98ee434 simple refactor
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-16 08:41:32 +08:00
fufesou
2051bee3cf fix, wayland, change resolutions
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-07-16 08:29:26 +08:00
Mr-Update
6d70c8af50 Update de.rs 2023-07-15 19:30:56 +02:00
bovirus
2cfa61602f Update italian language 2023-07-15 17:09:07 +02:00
RustDesk
fbfad5f86d Merge pull request #5008 from 21pages/logout
logout confirm
2023-07-15 09:57:39 +08:00
RustDesk
889415fb26 Update en.rs 2023-07-15 09:57:15 +08:00
21pages
ebd8903c9b logout confirm
Signed-off-by: 21pages <pages21@163.com>
2023-07-15 07:21:54 +08:00
RustDesk
314d7f4387 Update flutter-build.yml 2023-07-15 00:13:49 +08:00
rustdesk
5875cb1896 core 2023-07-14 19:03:34 +08:00
rustdesk
7a2e151079 remove gstreamer1.0-pipewire in AppImageBuilder-aarch64.yml since we
have no 20.04 image yet
2023-07-14 14:55:16 +08:00
RustDesk
7bdf0d0b90 Merge pull request #4992 from Mr-Update/patch-15
Update de.rs
2023-07-13 19:04:17 +08:00
Mr-Update
ee3e7938c2 Update de.rs 2023-07-13 13:02:14 +02:00
RustDesk
058a82c79c Merge pull request #4991 from bovirus/master
Update italian language
2023-07-13 17:46:33 +08:00
bovirus
3a831085eb Update italian language 2023-07-13 11:43:57 +02:00
RustDesk
9a54cf664b Merge pull request #4990 from 5idereal/patch-1
update tw.rs
2023-07-13 16:47:11 +08:00
RustDesk
5d4f6ff80e Merge pull request #4984 from dignow/refact/desc_of_cert_installation
The correct description when installing the certificate
2023-07-13 16:42:16 +08:00
5idereal
afae2d110c update tw.rs 2023-07-13 16:38:26 +08:00
dignow
a0171f9cc8 modify description
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-13 12:52:09 +08:00
dignow
261c4b9833 trivial change
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-13 12:08:00 +08:00
dignow
f96fd806c0 The correct description when installing the certificate
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-13 11:59:27 +08:00
rustdesk
126114dea4 Merge branch 'master' of github.com-rustdesk:rustdesk/rustdesk 2023-07-13 11:25:24 +08:00
rustdesk
3fd1d66f12 we have no 20.04 image yet, https://github.com/rustdesk-org/run-on-arch-action/tree/amd64-support/Dockerfiles 2023-07-13 11:25:02 +08:00
RustDesk
cdc412afd0 Merge pull request #4975 from solokot/master
Update ru.rs
2023-07-12 23:57:40 +08:00
solokot
1772c66694 Update ru.rs 2023-07-12 18:34:54 +03:00
rustdesk
5e6e921790 upgrade 18.04 -> 20.04 in ci, since 18.04 is outdated 2023-07-12 21:34:43 +08:00
rustdesk
7d7cfe391a inputs.upload-artifact is bool 2023-07-12 16:07:55 +08:00
RustDesk
a9f0223ea3 Merge pull request #4967 from 21pages/fix
fix port-forward/rdp empty show
2023-07-12 15:09:17 +08:00
RustDesk
9577439a58 Merge pull request #4965 from FastAct/patch-16
Update nl.rs
2023-07-12 14:59:22 +08:00
21pages
d5f615f8d6 fix port-forward/rdp empty show
Signed-off-by: 21pages <pages21@163.com>
2023-07-12 14:58:16 +08:00
FastAct
99801258a2 Update nl.rs 2023-07-12 08:47:40 +02:00
rustdesk
018f551d13 add gstreamer1.0-pipewire dep to ubuntu, do not add it to fedora,
because it occurs since fedora 33, and since fedora 34, it was installed
with the system by default
2023-07-12 13:18:18 +08:00
rustdesk
63cb39f365 failed to use if: ${{ matrix.job.arch == 'armv7' || inputs.upload-artifact == 'true' }} 2023-07-11 23:09:32 +08:00
RustDesk
6bb6535d3e Merge pull request #4959 from Mr-Update/patch-14
Update de.rs
2023-07-11 22:56:05 +08:00
rustdesk
25011331ed fix ci 2023-07-11 22:54:57 +08:00
Mr-Update
b3f799a7dd Update de.rs 2023-07-11 14:46:32 +02:00
Mr-Update
9a110c703e Update de.rs 2023-07-11 14:40:14 +02:00
rustdesk
c076d4a17c try to disable arm ci again 2023-07-11 16:34:06 +08:00
RustDesk
de36ec5b2c Merge pull request #4948 from mehdi-song/patch-33
Update fa.rs
2023-07-11 13:05:40 +08:00
RustDesk
5ce9037310 Merge pull request #4949 from mehdi-song/patch-34
Update fa.rs
2023-07-11 13:05:05 +08:00
RustDesk
e7ac67effc Merge pull request #4947 from dignow/fix/win_elevate_prompt_on_start
fix, win, elevate prompt on start
2023-07-11 13:04:07 +08:00
mehdi-song
17dbd27cfd Update fa.rs 2023-07-11 04:54:46 +00:00
mehdi-song
dcc0a1425e Update fa.rs 2023-07-11 04:33:09 +00:00
dignow
97359d6eae fix, win, elevate prompt on start
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-11 12:19:28 +08:00
rustdesk
cfcfd127b2 remove tags for the other ci 2023-07-11 10:35:52 +08:00
RustDesk
21a172478c Merge pull request #4946 from 21pages/fix
revert cm show
2023-07-11 10:17:45 +08:00
21pages
3db0f90af9 revert cm fixed width
Signed-off-by: 21pages <pages21@163.com>
2023-07-11 10:05:31 +08:00
21pages
d7ef3df2b3 Revert "try fix linux cm abnormal show"
This reverts commit 193426a3c1.
2023-07-11 10:01:56 +08:00
RustDesk
e927d49aa2 Merge pull request #4944 from bovirus/master
Update italian language
2023-07-10 23:42:05 +08:00
bovirus
4b8017292e Update italian language 2023-07-10 17:40:04 +02:00
rustdesk
6b8d2a33c0 fix lang 2023-07-10 23:02:26 +08:00
RustDesk
3c5e27b0ca Merge pull request #4943 from 21pages/fix_chat
opt mobile chat
2023-07-10 22:46:37 +08:00
21pages
fcf6b5466a mobile show chat icon overlay on main page
Signed-off-by: 21pages <pages21@163.com>
2023-07-10 22:21:03 +08:00
21pages
745f33a8c1 opt mobile unread and autoSizeTextField
Signed-off-by: 21pages <pages21@163.com>
2023-07-10 22:21:01 +08:00
21pages
193426a3c1 try fix linux cm abnormal show
Signed-off-by: 21pages <pages21@163.com>
2023-07-10 22:20:38 +08:00
RustDesk
e4f0a7b1d5 Merge pull request #4941 from Mr-Update/patch-13
Update de.rs
2023-07-10 17:32:41 +08:00
RustDesk
48a11cd8ca Merge pull request #4940 from bovirus/master
Update italian language
2023-07-10 17:32:28 +08:00
rustdesk
a96eb236c1 try to fix issue #3261 with new api, but not sure if it works 2023-07-10 17:31:04 +08:00
Mr-Update
2acb5d58cf Update de.rs 2023-07-10 11:14:40 +02:00
bovirus
c890cbf611 Update italian language 2023-07-10 10:29:44 +02:00
RustDesk
4e19777ba0 Merge pull request #4939 from 21pages/fix_chat
opt chat model
2023-07-10 16:10:23 +08:00
21pages
22994ee8f2 opt chatModel, linux same startup height as dart
Signed-off-by: 21pages <pages21@163.com>
2023-07-10 16:02:47 +08:00
rustdesk
142813a7e7 fix bump.sh 2023-07-10 15:48:15 +08:00
rustdesk
21c1c06a20 change to 1.2.1 2023-07-10 14:38:13 +08:00
RustDesk
8028b23086 Merge pull request #4934 from 21pages/fix_chat
opt mobile chat page
2023-07-10 13:27:09 +08:00
21pages
6c6f6c081e mobile unread chat
Signed-off-by: 21pages <pages21@163.com>
2023-07-10 12:57:38 +08:00
rustdesk
e1bd925877 fix lang 2023-07-10 09:30:41 +08:00
rustdesk
8a2d702348 fix lang 2023-07-10 09:28:54 +08:00
RustDesk
13abacf6e0 Merge pull request #4930 from dignow/fix/wrong_verification_code
wrong verification code
2023-07-10 09:27:25 +08:00
dignow
2bc41bfd90 wrong verification code
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-10 00:24:35 +08:00
21pages
65529b10b6 opt mobile chat message store
Signed-off-by: 21pages <pages21@163.com>
2023-07-09 21:45:35 +08:00
rustdesk
f5d0cece43 add res/osx-dist.sh 2023-07-09 17:59:01 +08:00
rustdesk
99d25002f7 add libappindicator3-1 to deb package 2023-07-09 16:30:27 +08:00
RustDesk
be4cc32e2f Merge pull request #4926 from dignow/refact/remote_toolbar_menu
Refact/remote toolbar menu
2023-07-09 15:03:31 +08:00
dignow
02c9d3fe2c refact, remote toolbar menu, sub menu
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 14:40:16 +08:00
dignow
317bc21a1b refact, remote toolbar menu, macos
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 14:40:16 +08:00
dignow
3148ab214a refact, remote toolbar menu, windows
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 14:40:16 +08:00
dignow
e21502e6a5 refact, remote toolbar, menu
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 14:40:16 +08:00
rustdesk
147391eaa1 tab theme minor adjustment 2023-07-09 14:26:46 +08:00
RustDesk
081ac7b4d1 Merge pull request #4925 from mehdi-song/patch-32
Update fa.rs
2023-07-09 13:41:13 +08:00
mehdi-song
f2a02c154c Update fa.rs 2023-07-09 04:32:01 +00:00
RustDesk
6762ef220f Merge pull request #4921 from dignow/fix/win_privacy_broker
Fix/win privacy broker
2023-07-09 11:10:06 +08:00
21pages
89b3e68788 add chatbox border
Signed-off-by: 21pages <pages21@163.com>
2023-07-09 10:35:10 +08:00
dignow
e80da4af0d debug, win, privacy mode, broker
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 02:06:24 +08:00
dignow
32c349dd8b tmp commit
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 02:06:24 +08:00
dignow
8bb851704a kill broker on exit service
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 02:06:24 +08:00
dignow
1648895156 fix, win privacy mode, broker process
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-09 02:06:24 +08:00
RustDesk
84d7115e36 Merge pull request #4920 from 21pages/fix_cm
fixed cm control page width
2023-07-08 22:34:25 +08:00
21pages
9f1d4e8ba6 fixed cm control page width and not resizable
Signed-off-by: 21pages <pages21@163.com>
2023-07-08 19:30:50 +08:00
rustdesk
8c186edd18 new cm tab style 2023-07-08 17:55:55 +08:00
RustDesk
94763e9fe0 Merge pull request #4918 from dtemme/fixPrivacyUrl
Fix privacy URL
2023-07-08 16:47:30 +08:00
RustDesk
91c53b1db4 Merge pull request #4917 from 21pages/fix_chat
Fix chat
2023-07-08 16:40:31 +08:00
Daniel Temme
ebe0681748 Fix privacy URL 2023-07-08 10:37:56 +02:00
21pages
76987105c1 fix android show chat overly out of remote page
Signed-off-by: 21pages <pages21@163.com>
2023-07-08 16:08:23 +08:00
21pages
b0f22d8693 fix cm unread and add vertical divider
Signed-off-by: 21pages <pages21@163.com>
2023-07-08 14:52:12 +08:00
rustdesk
778f46bbb2 do not use is_root, use check_super_user_permission instead, because on
windows, not easy to run as system
2023-07-08 12:43:55 +08:00
rustdesk
afd77181ff println in winmain 2023-07-08 12:34:40 +08:00
rustdesk
685d960b1e revert back to old window_on_top, it works fine in my test 2023-07-07 22:18:14 +08:00
rustdesk
53fdddb1a9 new on_top not work on macos 2023-07-07 21:57:52 +08:00
RustDesk
54d03b2ecf Merge pull request #4902 from 21pages/urilink
add missing uri pattern
2023-07-07 21:08:52 +08:00
21pages
beb14f90b9 add missing uri pattern: rustdesk://<id>
Signed-off-by: 21pages <pages21@163.com>
2023-07-07 19:18:48 +08:00
RustDesk
daa59af5be Merge pull request #4901 from 21pages/urilink
flutter: file transfer/port forward/rdp command line support
2023-07-07 18:12:32 +08:00
21pages
1f137b3542 flutter: file-transfer/port forward/rdp support
Signed-off-by: 21pages <pages21@163.com>
2023-07-07 17:03:18 +08:00
rustdesk
12149bf3e3 let's maintain ny and sg only 2023-07-07 15:59:03 +08:00
rustdesk
b85cb81d9e maintain one id server only 2023-07-07 15:55:51 +08:00
rustdesk
1954f905af fix #4896 2023-07-07 13:33:08 +08:00
RustDesk
e5dad3467b Merge pull request #4892 from flusheDData/master
Update es.rs
2023-07-06 22:40:57 +08:00
Miguel F. G
5a9d50db46 Update es.rs
Removal of a space before text
2023-07-06 16:37:30 +02:00
RustDesk
6c8c3b4a7a Merge pull request #4885 from NT-VPS/master
+free public server
2023-07-06 14:39:07 +08:00
RustDesk
d6709e069c Merge pull request #4889 from 21pages/fix_remote_chat
opt remote chat page
2023-07-06 14:37:35 +08:00
21pages
a5675c06e7 when remote page receive chat message: if minimized, top page and switch tab, otherwise add unread message count
Signed-off-by: 21pages <pages21@163.com>
2023-07-06 14:14:19 +08:00
Konstantin
099a5edef3 +free public server 2023-07-05 20:03:13 +03:00
RustDesk
3dfe8b27e1 Merge pull request #4878 from 21pages/fix_chat
Fix chat
2023-07-05 22:26:48 +08:00
rustdesk
3bb9417a9d fix #4880 2023-07-05 22:12:54 +08:00
RustDesk
b225494137 Merge pull request #4882 from jacotec/master
Add missing definition for "upload-tag"
2023-07-05 22:01:22 +08:00
Marco Jakobs
4bde36e186 Update flutter-build.yml 2023-07-05 15:24:44 +02:00
21pages
87e06e974e desktop block remote click chat page
Signed-off-by: 21pages <pages21@163.com>
2023-07-05 20:20:51 +08:00
21pages
7c4c69aa75 cm unread message count
Signed-off-by: 21pages <pages21@163.com>
2023-07-05 20:20:51 +08:00
21pages
769e46d3e6 fix cm window_on_top when behind other window
Signed-off-by: 21pages <pages21@163.com>
2023-07-05 20:20:49 +08:00
rustdesk
dce35ff881 flutter-tag.yml 2023-07-05 17:47:10 +08:00
RustDesk
16ecbf117c Merge pull request #4875 from bovirus/master
Update italian language
2023-07-05 16:31:26 +08:00
RustDesk
dc45952558 Merge pull request #4876 from dignow/fix/revert_desktop_login_
revert desktop login dialog
2023-07-05 16:31:13 +08:00
dignow
4707e0ed2e revert desktop login dialog
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-05 16:15:39 +08:00
bovirus
1ea009ff61 Update italian language 2023-07-05 10:12:52 +02:00
RustDesk
bf4854a444 Merge pull request #4874 from dignow/refact/mobile_dismiss_login_before_verification
dismiss login dialog before verification
2023-07-05 16:05:01 +08:00
dignow
a3024fdd14 trivial change
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-05 15:48:30 +08:00
dignow
92a4d88532 dismiss login dialog before verification
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-05 14:53:29 +08:00
RustDesk
5cef21fd40 Merge pull request #4873 from 21pages/fix
fix config load
2023-07-05 11:02:32 +08:00
RustDesk
b52661083c Merge pull request #4872 from rustdesk/revert-4869-fix
Revert "remove cm use peer info as title"
2023-07-05 10:57:08 +08:00
RustDesk
b41c6be341 Revert "remove cm use peer info as title" 2023-07-05 10:56:54 +08:00
21pages
07c21ced70 update confy, not create if not exist when load
Signed-off-by: 21pages <pages21@163.com>
2023-07-05 10:56:36 +08:00
21pages
533fc082bd fix relay_hint_tip
Signed-off-by: 21pages <pages21@163.com>
2023-07-05 10:38:33 +08:00
21pages
9ad9cb8ff2 Revert "remove peers platform filter for failed connections"
This reverts commit b5cf959206.
2023-07-05 09:58:00 +08:00
RustDesk
f47a5600b1 Merge pull request #4869 from 21pages/fix
remove cm use peer info as title
2023-07-05 09:24:24 +08:00
21pages
31a7d817da remove cm use peer info as title
Signed-off-by: 21pages <pages21@163.com>
2023-07-05 08:15:09 +08:00
RustDesk
65924cb134 Merge pull request #4859 from dignow/fix/toolbar_os_password
Fix/toolbar os password
2023-07-04 23:16:43 +08:00
dignow
437b5f2ca3 debug
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-04 20:26:43 +08:00
dignow
b75edd9710 fix os password
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-04 19:43:39 +08:00
RustDesk
06af880b12 Merge pull request #4846 from xalt7x/master
Update ua.rs
2023-07-04 12:46:22 +08:00
rustdesk
bb79abffe4 remove lightsail 2023-07-04 12:45:37 +08:00
Yevhen
89933bb2bd Update ua.rs 2023-07-03 22:57:08 +03:00
dignow
d99ff80714 cert installation, add or replace cert store
Signed-off-by: dignow <linlong1265@gmail.com>
2023-07-03 20:59:52 +08:00
277 changed files with 10370 additions and 5223 deletions

View File

@@ -6,7 +6,7 @@ on:
workflow_call:
env:
FLUTTER_VERSION: "3.10.5"
FLUTTER_VERSION: "3.10.6"
FLUTTER_RUST_BRIDGE_VERSION: "1.75.3"
jobs:
@@ -42,7 +42,6 @@ jobs:
- uses: Swatinem/rust-cache@v2
with:
prefix-key: bridge-${{ matrix.job.os }}
workspace: "/tmp/flutter_rust_bridge/frb_codegen"
- name: Cache Bridge
id: cache-bridge

View File

@@ -13,8 +13,6 @@ on:
push:
branches:
- master
tags:
- '*'
paths-ignore:
- ".github/**"
- "docs/**"
@@ -126,7 +124,12 @@ jobs:
with:
use-cross: ${{ matrix.job.use-cross }}
command: build
args: --locked --release --target=${{ matrix.job.target }}
args: --locked --target=${{ matrix.job.target }}
- name: clean
shell: bash
run: |
cargo clean
# - name: Strip debug information from executable
# id: strip

View File

@@ -6,20 +6,23 @@ on:
upload-artifact:
type: boolean
default: true
upload-tag:
type: string
default: "nightly"
env:
CARGO_NDK_VERSION: "3.1.2"
LLVM_VERSION: "15.0.6"
FLUTTER_VERSION: "3.10.5"
FLUTTER_VERSION: "3.10.6"
FLUTTER_RUST_BRIDGE_VERSION: "1.75.3"
# for arm64 linux
FLUTTER_ELINUX_VERSION: "3.10.5"
FLUTTER_ELINUX_VERSION: "3.10.6"
FLUTTER_ELINUX_COMMIT_ID: "410b3ca42f2cd0c485edf517a1666652bab442d4"
TAG_NAME: "nightly"
TAG_NAME: "${{ inputs.upload-tag }}"
# vcpkg version: 2023.04.15
# for multiarch gcc compatibility
VCPKG_COMMIT_ID: "501db0f17ef6df184fcdbfbe0f87cde2313b6ab1"
VERSION: "1.2.0"
VERSION: "1.2.2"
NDK_VERSION: "r25c"
#signing keys env variable checks
ANDROID_SIGNING_KEY: '${{ secrets.ANDROID_SIGNING_KEY }}'
@@ -374,6 +377,7 @@ jobs:
uses: ./.github/workflows/bridge.yml
build-rustdesk-ios:
if: ${{ inputs.upload-artifact }}
needs: [generate-bridge-linux]
name: build rustdesk ios ipa ${{ matrix.job.target }} (${{ matrix.job.os }}) [${{ matrix.job.extra-build-features }}]
runs-on: ${{ matrix.job.os }}
@@ -650,7 +654,7 @@ jobs:
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
sudo apt update -y
sudo apt install qemu-user-static
sudo apt install qemu-user-static -y
- name: Checkout source code
uses: actions/checkout@v3
@@ -662,7 +666,8 @@ jobs:
- name: Free Space
run: |
df
df -h
free -m
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
@@ -671,27 +676,11 @@ jobs:
target: ${{ matrix.job.target }}
override: true
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: rustdesk-lib-cache
key: ${{ matrix.job.target }}-${{ matrix.job.extra-build-features }}
cache-directories: "/opt/rust-registry"
- name: Install local registry
- name: Save Rust toolchain version
run: |
mkdir -p /opt/rust-registry
cargo install cargo-local-registry
- name: Build local registry
uses: nick-fields/retry@v2
id: build-local-registry
continue-on-error: true
with:
max_attempts: 3
timeout_minutes: 15
retry_on: error
command: cargo local-registry --sync ./Cargo.lock /opt/rust-registry
RUST_TOOLCHAIN_VERSION=$(cargo --version | awk '{print $2}')
echo "RUST_TOOLCHAIN_VERSION=$RUST_TOOLCHAIN_VERSION" >> $GITHUB_ENV
- name: Disable rust bridge build
run: |
@@ -725,7 +714,6 @@ jobs:
dockerRunArgs: |
--volume "${PWD}:/workspace"
--volume "/opt/artifacts:/opt/artifacts"
--volume "/opt/rust-registry:/opt/rust-registry"
shell: /bin/bash
install: |
apt update -y
@@ -742,19 +730,15 @@ jobs:
# rust
pushd /opt
# do not use rustup, because memory overflow in qemu
wget -O rust.tar.gz https://static.rust-lang.org/dist/rust-1.70.0-${{ matrix.job.target }}.tar.gz
wget -O rust.tar.gz https://static.rust-lang.org/dist/rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }}.tar.gz
tar -zxvf rust.tar.gz > /dev/null && rm rust.tar.gz
cd rust-1.70.0-${{ matrix.job.target }} && ./install.sh
rm -rf rust-1.70.0-${{ matrix.job.target }}
cd rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }} && ./install.sh
rm -rf rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }}
# edit config
mkdir -p ~/.cargo/
echo """
[source.crates-io]
registry = 'https://github.com/rust-lang/crates.io-index'
replace-with = 'local-registry'
[source.local-registry]
local-registry = '/opt/rust-registry/'
""" > ~/.cargo/config
cat ~/.cargo/config
# start build
@@ -779,9 +763,10 @@ jobs:
path: target/release/liblibrustdesk.so
build-rustdesk-lib-linux-arm:
if: ${{ inputs.upload-artifact }}
needs: [generate-bridge-linux, build-vcpkg-deps-linux]
name: build-rust-lib ${{ matrix.job.target }} (${{ matrix.job.os }}) [${{ matrix.job.extra-build-features }}]
runs-on: ${{ matrix.job.os }}
runs-on: [self-hosted, Linux, ARM64]
strategy:
fail-fast: false
matrix:
@@ -814,25 +799,26 @@ jobs:
# - { arch: armv7, target: armv7-unknown-linux-gnueabihf , os: ubuntu-20.04, use-cross: true, extra-build-features: "appimage" }
# - { target: arm-unknown-linux-musleabihf, os: ubuntu-20.04, use-cross: true }
steps:
- name: Maximize build space
run: |
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
sudo apt update -y
sudo apt install qemu-user-static
#- name: Maximize build space
# run: |
# sudo rm -rf /opt/ghc
# sudo rm -rf /usr/local/lib/android
# sudo rm -rf /usr/share/dotnet
# sudo apt update -y
# sudo apt install qemu-user-static -y
- name: Checkout source code
uses: actions/checkout@v3
- name: Set Swap Space
uses: pierotofy/set-swap-space@master
with:
swap-size-gb: 12
#- name: Set Swap Space
# uses: pierotofy/set-swap-space@master
# with:
# swap-size-gb: 12
- name: Free Space
run: |
df
df -h
free -m
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
@@ -841,27 +827,11 @@ jobs:
target: ${{ matrix.job.target }}
override: true
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: rustdesk-lib-cache
key: ${{ matrix.job.target }}-${{ matrix.job.extra-build-features }}
cache-directories: "/opt/rust-registry"
- name: Install local registry
- name: Save Rust toolchain version
run: |
mkdir -p /opt/rust-registry
cargo install cargo-local-registry
- name: Build local registry
uses: nick-fields/retry@v2
id: build-local-registry
continue-on-error: true
with:
max_attempts: 3
timeout_minutes: 15
retry_on: error
command: cargo local-registry --sync ./Cargo.lock /opt/rust-registry
RUST_TOOLCHAIN_VERSION=$(cargo --version | awk '{print $2}')
echo "RUST_TOOLCHAIN_VERSION=$RUST_TOOLCHAIN_VERSION" >> $GITHUB_ENV
- name: Disable rust bridge build
run: |
@@ -893,7 +863,6 @@ jobs:
dockerRunArgs: |
--volume "${PWD}:/workspace"
--volume "/opt/artifacts:/opt/artifacts"
--volume "/opt/rust-registry:/opt/rust-registry"
shell: /bin/bash
install: |
apt update -y
@@ -910,19 +879,15 @@ jobs:
# rust
pushd /opt
# do not use rustup, because memory overflow in qemu
wget -O rust.tar.gz https://static.rust-lang.org/dist/rust-1.70.0-${{ matrix.job.target }}.tar.gz
wget -O rust.tar.gz https://static.rust-lang.org/dist/rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }}.tar.gz
tar -zxvf rust.tar.gz > /dev/null && rm rust.tar.gz
cd rust-1.70.0-${{ matrix.job.target }} && ./install.sh
rm -rf rust-1.70.0-${{ matrix.job.target }}
cd rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }} && ./install.sh
rm -rf rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }}
# edit config
mkdir -p ~/.cargo/
echo """
[source.crates-io]
registry = 'https://github.com/rust-lang/crates.io-index'
replace-with = 'local-registry'
[source.local-registry]
local-registry = '/opt/rust-registry/'
""" > ~/.cargo/config
cat ~/.cargo/config
# start build
@@ -932,6 +897,7 @@ jobs:
if ${{ matrix.job.enable-headless }}; then
export DEFAULT_FEAT=linux_headless
fi
export CARGO_INCREMENTAL=0
cargo build --lib --features flutter,flutter_texture_render,${{ matrix.job.extra-build-features }},$DEFAULT_FEAT --release
- name: Upload Artifacts
@@ -941,9 +907,10 @@ jobs:
path: target/release/liblibrustdesk.so
build-rustdesk-sciter-arm:
if: ${{ inputs.upload-artifact }}
needs: [build-vcpkg-deps-linux]
name: build-rustdesk(sciter) ${{ matrix.job.target }} (${{ matrix.job.os }}) [${{ matrix.job.extra-build-features }}]
runs-on: ${{ matrix.job.os }}
runs-on: [self-hosted, Linux, ARM64]
strategy:
fail-fast: false
matrix:
@@ -962,25 +929,26 @@ jobs:
# - { target: arm-unknown-linux-musleabihf, os: ubuntu-20.04, use-cross: true }
steps:
- name: Maximize build space
run: |
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
sudo apt update -y
sudo apt install qemu-user-static
#- name: Maximize build space
# run: |
# sudo rm -rf /opt/ghc
# sudo rm -rf /usr/local/lib/android
# sudo rm -rf /usr/share/dotnet
# sudo apt update -y
# sudo apt install qemu-user-static -y
- name: Checkout source code
uses: actions/checkout@v3
- name: Set Swap Space
uses: pierotofy/set-swap-space@master
with:
swap-size-gb: 12
#- name: Set Swap Space
# uses: pierotofy/set-swap-space@master
# with:
# swap-size-gb: 12
- name: Free Space
run: |
df
df -h
free -m
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
@@ -989,27 +957,11 @@ jobs:
target: ${{ matrix.job.target }}
override: true
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: rustdesk-lib-cache
key: ${{ matrix.job.target }}-${{ matrix.job.extra-build-features }}
cache-directories: "/opt/rust-registry"
- name: Install local registry
- name: Save Rust toolchain version
run: |
mkdir -p /opt/rust-registry
cargo install cargo-local-registry
- name: Build local registry
uses: nick-fields/retry@v2
id: build-local-registry
continue-on-error: true
with:
max_attempts: 3
timeout_minutes: 15
retry_on: error
command: cargo local-registry --sync ./Cargo.lock /opt/rust-registry
RUST_TOOLCHAIN_VERSION=$(cargo --version | awk '{print $2}')
echo "RUST_TOOLCHAIN_VERSION=$RUST_TOOLCHAIN_VERSION" >> $GITHUB_ENV
- name: Restore vcpkg files
uses: actions/download-artifact@master
@@ -1029,7 +981,6 @@ jobs:
dockerRunArgs: |
--volume "${PWD}:/workspace"
--volume "/opt/artifacts:/opt/artifacts"
--volume "/opt/rust-registry:/opt/rust-registry"
shell: /bin/bash
install: |
apt update -y
@@ -1042,19 +993,15 @@ jobs:
# rust
pushd /opt
# do not use rustup, because memory overflow in qemu
wget -O rust.tar.gz https://static.rust-lang.org/dist/rust-1.70.0-${{ matrix.job.target }}.tar.gz
wget -O rust.tar.gz https://static.rust-lang.org/dist/rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }}.tar.gz
tar -zxvf rust.tar.gz > /dev/null && rm rust.tar.gz
cd rust-1.70.0-${{ matrix.job.target }} && ./install.sh
rm -rf rust-1.70.0-${{ matrix.job.target }}
cd rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }} && ./install.sh
rm -rf rust-${{env.RUST_TOOLCHAIN_VERSION}}-${{ matrix.job.target }}
# edit config
mkdir -p ~/.cargo/
echo """
[source.crates-io]
registry = 'https://github.com/rust-lang/crates.io-index'
replace-with = 'local-registry'
[source.local-registry]
local-registry = '/opt/rust-registry/'
""" > ~/.cargo/config
cat ~/.cargo/config
@@ -1064,6 +1011,7 @@ jobs:
export VCPKG_ROOT=/opt/artifacts/vcpkg
export ARCH=armhf
export DEFAULT_FEAT=""
export CARGO_INCREMENTAL=0
if ${{ matrix.job.enable-headless }}; then
export DEFAULT_FEAT=linux_headless
fi
@@ -1099,6 +1047,7 @@ jobs:
path: rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}-sciter.deb
build-rustdesk-linux-arm:
if: ${{ inputs.upload-artifact }}
needs: [build-rustdesk-lib-linux-arm]
name: build-rustdesk ${{ matrix.job.target }} (${{ matrix.job.os }}) [${{ matrix.job.extra-build-features }}]
runs-on: ubuntu-20.04 # 20.04 has more performance on arm build
@@ -1209,6 +1158,7 @@ jobs:
sed -i "s/x64\/release/arm\/release/g" ./build.py
;;
esac
export CARGO_INCREMENTAL=0
python3 ./build.py --flutter --hwcodec --skip-cargo
# rpm package
echo -e "start packaging fedora package"
@@ -1226,7 +1176,7 @@ jobs:
pushd ~/rpmbuild/RPMS/${{ matrix.job.arch }}
mkdir -p /opt/artifacts/rpm
for name in rustdesk*??.rpm; do
mv "$name" "/opt/artifacts/rpm/${name%%.rpm}-fedora28-centos8.rpm"
mv "$name" "/opt/artifacts/rpm/${name%%.rpm}.rpm"
done
# rpm suse package
echo -e "start packaging suse package"
@@ -1351,7 +1301,7 @@ jobs:
# files: |
# res/rustdesk*.zst
- name: Publish fedora28/centos8 package
- name: Publish fedora package
if: matrix.job.extra-build-features == '' && env.UPLOAD_ARTIFACT == 'true'
uses: softprops/action-gh-release@v1
with:
@@ -1450,7 +1400,7 @@ jobs:
pushd ~/rpmbuild/RPMS/${{ matrix.job.arch }}
mkdir -p /opt/artifacts/rpm
for name in rustdesk*??.rpm; do
mv "$name" "/opt/artifacts/rpm/${name%%.rpm}-fedora28-centos8.rpm"
mv "$name" "/opt/artifacts/rpm/${name%%.rpm}.rpm"
done
# rpm suse package
pushd /workspace
@@ -1565,7 +1515,7 @@ jobs:
files: |
./appimage/rustdesk-${{ env.VERSION }}-*.AppImage
- name: Publish fedora28/centos8 package
- name: Publish fedora package
if: matrix.job.extra-build-features == '' && env.UPLOAD_ARTIFACT == 'true'
uses: softprops/action-gh-release@v1
with:

View File

@@ -9,8 +9,6 @@ on:
push:
branches:
- master
tags:
- '*'
paths-ignore:
- ".github/**"
- "docs/**"
@@ -21,4 +19,4 @@ jobs:
uses: ./.github/workflows/flutter-build.yml
with:
upload-artifact: false

View File

@@ -12,3 +12,4 @@ jobs:
secrets: inherit
with:
upload-artifact: true
upload-tag: "nightly"

18
.github/workflows/flutter-tag.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
name: Flutter Tag Build
on:
workflow_dispatch:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
- '[0-9]+.[0-9]+.[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+-[0-9]+'
- '[0-9]+.[0-9]+.[0-9]+-[0-9]+'
jobs:
run-flutter-tag-build:
uses: ./.github/workflows/flutter-build.yml
secrets: inherit
with:
upload-artifact: true
upload-tag: "1.2.2"

View File

@@ -4,30 +4,28 @@ on: [workflow_dispatch]
env:
LLVM_VERSION: "10.0"
# Note: currently 3.0.5 does not support arm64 officially, we use latest stable version first.
FLUTTER_VERSION: "3.0.5"
FLUTTER_VERSION: "3.10.6"
TAG_NAME: "tmp"
FLUTTER_RUST_BRIDGE_VERSION: "1.75.3"
# vcpkg version: 2022.05.10
# for multiarch gcc compatibility
VCPKG_COMMIT_ID: "14e7bb4ae24616ec54ff6b2f6ef4e8659434ea44"
VERSION: "1.2.0"
VCPKG_COMMIT_ID: "501db0f17ef6df184fcdbfbe0f87cde2313b6ab1"
VERSION: "1.2.2"
jobs:
build-for-windows-2022-12-05:
name: ${{ matrix.job.target }} (${{ matrix.job.os }})
build-for-history-windows:
name: ${{ matrix.job.date }}
runs-on: ${{ matrix.job.os }}
strategy:
fail-fast: false
matrix:
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 }
- { target: x86_64-pc-windows-msvc, os: windows-2019, arch: x86_64, date: 2023-08-04, ref: 72c198a1e94cc1e0242fce88f92b3f3caedcd0c3 }
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
ref: '8d1254cf14b69f545c9cefa026c5eeb0e7dd3e7c'
ref: ${{ matrix.job.ref }}
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v1
@@ -41,49 +39,30 @@ jobs:
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Replace engine with rustdesk custom flutter engine
run: |
flutter doctor -v
flutter precache --windows
Invoke-WebRequest -Uri https://github.com/Kingtous/engine/releases/download/v3.0.5-rustdesk.2/windows-x64-flutter-release.zip -OutFile windows-x64-flutter-release.zip
Expand-Archive windows-x64-flutter-release.zip -DestinationPath engine
mv -Force engine/* C:/hostedtoolcache/windows/flutter/stable-3.0.5-x64/bin/cache/artifacts/engine/windows-x64-release/
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: "1.62"
toolchain: stable
target: ${{ matrix.job.target }}
override: true
components: rustfmt
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: ${{ matrix.job.os }}
- name: Install flutter rust bridge deps
run: |
dart pub global activate ffigen --version 5.0.1
$exists = Test-Path ~/.cargo/bin/flutter_rust_bridge_codegen.exe
Push-Location ..
git clone https://github.com/SoLongAndThanksForAllThePizza/flutter_rust_bridge --depth=1
Push-Location flutter_rust_bridge/frb_codegen ; cargo install --path . ; Pop-Location
Pop-Location
cargo install flutter_rust_bridge_codegen --version ${{ env.FLUTTER_RUST_BRIDGE_VERSION }} --features "uuid"
Push-Location flutter ; flutter pub get ; Pop-Location
~/.cargo/bin/flutter_rust_bridge_codegen --rust-input ./src/flutter_ffi.rs --dart-output ./flutter/lib/generated_bridge.dart
- name: Restore from cache and install vcpkg
uses: lukka/run-vcpkg@v7
with:
setupOnly: true
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT_ID }}
- name: Install vcpkg dependencies
run: |
$VCPKG_ROOT/vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static
shell: bash
cd C:\
git clone https://github.com/Kingtous/rustdesk_thirdpary_lib --depth=1
- name: Build rustdesk
run: python3 .\build.py --portable --hwcodec --flutter
env:
VCPKG_ROOT: C:\rustdesk_thirdpary_lib\vcpkg
run: python3 .\build.py --portable --hwcodec --flutter --feature IddDriver
- name: Build self-extracted executable
shell: bash
@@ -92,274 +71,7 @@ jobs:
python3 ./generate.py -f ../../flutter/build/windows/runner/Release/ -o . -e ../../flutter/build/windows/runner/Release/rustdesk.exe
popd
mkdir -p ./SignOutput
mv ./target/release/rustdesk-portable-packer.exe ./SignOutput/rustdesk-2022-12-05-${{ matrix.job.target }}.exe
- name: Publish Release
uses: softprops/action-gh-release@v1
with:
prerelease: true
tag_name: ${{ env.TAG_NAME }}
files: |
./SignOutput/rustdesk-*.exe
build-for-windows-2022-12-12:
name: ${{ matrix.job.target }} (${{ matrix.job.os }})
runs-on: ${{ matrix.job.os }}
strategy:
fail-fast: false
matrix:
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 }
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
ref: '3dd43b79ec0409fc38103bed0c7eb0bc3cd993d5'
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v1
with:
version: ${{ env.LLVM_VERSION }}
- name: Install flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Replace engine with rustdesk custom flutter engine
run: |
flutter doctor -v
flutter precache --windows
Invoke-WebRequest -Uri https://github.com/Kingtous/engine/releases/download/v3.0.5-rustdesk.2/windows-x64-flutter-release.zip -OutFile windows-x64-flutter-release.zip
Expand-Archive windows-x64-flutter-release.zip -DestinationPath engine
mv -Force engine/* C:/hostedtoolcache/windows/flutter/stable-3.0.5-x64/bin/cache/artifacts/engine/windows-x64-release/
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: "1.62"
target: ${{ matrix.job.target }}
override: true
components: rustfmt
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: ${{ matrix.job.os }}
- name: Install flutter rust bridge deps
run: |
dart pub global activate ffigen --version 5.0.1
$exists = Test-Path ~/.cargo/bin/flutter_rust_bridge_codegen.exe
Push-Location ..
git clone https://github.com/SoLongAndThanksForAllThePizza/flutter_rust_bridge --depth=1
Push-Location flutter_rust_bridge/frb_codegen ; cargo install --path . ; Pop-Location
Pop-Location
Push-Location flutter ; flutter pub get ; Pop-Location
~/.cargo/bin/flutter_rust_bridge_codegen --rust-input ./src/flutter_ffi.rs --dart-output ./flutter/lib/generated_bridge.dart
- name: Restore from cache and install vcpkg
uses: lukka/run-vcpkg@v7
with:
setupOnly: true
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT_ID }}
- name: Install vcpkg dependencies
run: |
$VCPKG_ROOT/vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static
shell: bash
- name: Build rustdesk
run: python3 .\build.py --portable --hwcodec --flutter
- name: Build self-extracted executable
shell: bash
run: |
pushd ./libs/portable
python3 ./generate.py -f ../../flutter/build/windows/runner/Release/ -o . -e ../../flutter/build/windows/runner/Release/rustdesk.exe
popd
mkdir -p ./SignOutput
mv ./target/release/rustdesk-portable-packer.exe ./SignOutput/rustdesk-2022-12-12-${{ matrix.job.target }}.exe
- name: Publish Release
uses: softprops/action-gh-release@v1
with:
prerelease: true
tag_name: ${{ env.TAG_NAME }}
files: |
./SignOutput/rustdesk-*.exe
build-for-windows-2022-12-19:
name: ${{ matrix.job.target }} (${{ matrix.job.os }})
runs-on: ${{ matrix.job.os }}
strategy:
fail-fast: false
matrix:
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 }
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
ref: '1054715891c4e73ad9b164acec6dadecfc599a65'
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v1
with:
version: ${{ env.LLVM_VERSION }}
- name: Install flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Replace engine with rustdesk custom flutter engine
run: |
flutter doctor -v
flutter precache --windows
Invoke-WebRequest -Uri https://github.com/Kingtous/engine/releases/download/v3.0.5-rustdesk.2/windows-x64-flutter-release.zip -OutFile windows-x64-flutter-release.zip
Expand-Archive windows-x64-flutter-release.zip -DestinationPath engine
mv -Force engine/* C:/hostedtoolcache/windows/flutter/stable-3.0.5-x64/bin/cache/artifacts/engine/windows-x64-release/
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: "1.62"
target: ${{ matrix.job.target }}
override: true
components: rustfmt
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: ${{ matrix.job.os }}
- name: Install flutter rust bridge deps
run: |
dart pub global activate ffigen --version 5.0.1
$exists = Test-Path ~/.cargo/bin/flutter_rust_bridge_codegen.exe
Push-Location ..
git clone https://github.com/SoLongAndThanksForAllThePizza/flutter_rust_bridge --depth=1
Push-Location flutter_rust_bridge/frb_codegen ; cargo install --path . ; Pop-Location
Pop-Location
Push-Location flutter ; flutter pub get ; Pop-Location
~/.cargo/bin/flutter_rust_bridge_codegen --rust-input ./src/flutter_ffi.rs --dart-output ./flutter/lib/generated_bridge.dart
- name: Restore from cache and install vcpkg
uses: lukka/run-vcpkg@v7
with:
setupOnly: true
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT_ID }}
- name: Install vcpkg dependencies
run: |
$VCPKG_ROOT/vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static
shell: bash
- name: Build rustdesk
run: python3 .\build.py --portable --hwcodec --flutter
- name: Build self-extracted executable
shell: bash
run: |
pushd ./libs/portable
python3 ./generate.py -f ../../flutter/build/windows/runner/Release/ -o . -e ../../flutter/build/windows/runner/Release/rustdesk.exe
popd
mkdir -p ./SignOutput
mv ./target/release/rustdesk-portable-packer.exe ./SignOutput/rustdesk-2022-12-19-${{ matrix.job.target }}.exe
- name: Publish Release
uses: softprops/action-gh-release@v1
with:
prerelease: true
tag_name: ${{ env.TAG_NAME }}
files: |
./SignOutput/rustdesk-*.exe
build-for-windows-2022-12-26:
name: ${{ matrix.job.target }} (${{ matrix.job.os }})
runs-on: ${{ matrix.job.os }}
strategy:
fail-fast: false
matrix:
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 }
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
ref: 'b241925fe093dc4da804a5aac419375f4ca7653f'
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v1
with:
version: ${{ env.LLVM_VERSION }}
- name: Install flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Replace engine with rustdesk custom flutter engine
run: |
flutter doctor -v
flutter precache --windows
Invoke-WebRequest -Uri https://github.com/Kingtous/engine/releases/download/v3.0.5-rustdesk.2/windows-x64-flutter-release.zip -OutFile windows-x64-flutter-release.zip
Expand-Archive windows-x64-flutter-release.zip -DestinationPath engine
mv -Force engine/* C:/hostedtoolcache/windows/flutter/stable-3.0.5-x64/bin/cache/artifacts/engine/windows-x64-release/
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: "1.62"
target: ${{ matrix.job.target }}
override: true
components: rustfmt
profile: minimal # minimal component installation (ie, no documentation)
- uses: Swatinem/rust-cache@v2
with:
prefix-key: ${{ matrix.job.os }}
- name: Install flutter rust bridge deps
run: |
dart pub global activate ffigen --version 5.0.1
$exists = Test-Path ~/.cargo/bin/flutter_rust_bridge_codegen.exe
Push-Location ..
git clone https://github.com/SoLongAndThanksForAllThePizza/flutter_rust_bridge --depth=1
Push-Location flutter_rust_bridge/frb_codegen ; cargo install --path . ; Pop-Location
Pop-Location
Push-Location flutter ; flutter pub get ; Pop-Location
~/.cargo/bin/flutter_rust_bridge_codegen --rust-input ./src/flutter_ffi.rs --dart-output ./flutter/lib/generated_bridge.dart
- name: Restore from cache and install vcpkg
uses: lukka/run-vcpkg@v7
with:
setupOnly: true
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT_ID }}
- name: Install vcpkg dependencies
run: |
$VCPKG_ROOT/vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static
shell: bash
- name: Build rustdesk
run: python3 .\build.py --portable --hwcodec --flutter
- name: Build self-extracted executable
shell: bash
run: |
pushd ./libs/portable
python3 ./generate.py -f ../../flutter/build/windows/runner/Release/ -o . -e ../../flutter/build/windows/runner/Release/rustdesk.exe
popd
mkdir -p ./SignOutput
mv ./target/release/rustdesk-portable-packer.exe ./SignOutput/rustdesk-2022-12-26-${{ matrix.job.target }}.exe
mv ./target/release/rustdesk-portable-packer.exe ./SignOutput/rustdesk-${{ matrix.job.date }}-${{ matrix.job.target }}.exe
- name: Publish Release
uses: softprops/action-gh-release@v1

74
Cargo.lock generated
View File

@@ -1054,7 +1054,7 @@ dependencies = [
[[package]]
name = "confy"
version = "0.4.0-2"
source = "git+https://github.com/open-trade/confy#9f231b2039cf8a8f8cdf6b829c5ac0016e146077"
source = "git+https://github.com/open-trade/confy#7855cd3c32b1a60b44e5076ee8f6b4131da10350"
dependencies = [
"directories-next",
"serde 1.0.163",
@@ -1197,7 +1197,7 @@ dependencies = [
"js-sys",
"libc",
"mach2",
"ndk 0.7.0",
"ndk",
"ndk-context",
"oboe",
"once_cell",
@@ -2987,8 +2987,8 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[package]]
name = "hwcodec"
version = "0.1.0"
source = "git+https://github.com/21pages/hwcodec?branch=stable#3ea79865a10387b7e1b7630c2ae068bd2081f680"
version = "0.1.1"
source = "git+https://github.com/21pages/hwcodec?branch=stable#82cdc15457e42feaf14e1b38622506b2d54baf76"
dependencies = [
"bindgen 0.59.2",
"cc",
@@ -3764,19 +3764,6 @@ dependencies = [
"getrandom",
]
[[package]]
name = "ndk"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4"
dependencies = [
"bitflags",
"jni-sys",
"ndk-sys 0.3.0",
"num_enum",
"thiserror",
]
[[package]]
name = "ndk"
version = "0.7.0"
@@ -3785,7 +3772,7 @@ checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0"
dependencies = [
"bitflags",
"jni-sys",
"ndk-sys 0.4.1+23.1.7779620",
"ndk-sys",
"num_enum",
"raw-window-handle",
"thiserror",
@@ -3797,15 +3784,6 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
[[package]]
name = "ndk-sys"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97"
dependencies = [
"jni-sys",
]
[[package]]
name = "ndk-sys"
version = "0.4.1+23.1.7779620"
@@ -4116,7 +4094,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8868cc237ee02e2d9618539a23a8d228b9bb3fc2e7a5b11eed3831de77c395d0"
dependencies = [
"jni 0.20.0",
"ndk 0.7.0",
"ndk",
"ndk-context",
"num-derive",
"num-traits 0.2.15",
@@ -4894,7 +4872,7 @@ dependencies = [
[[package]]
name = "rdev"
version = "0.5.0-2"
source = "git+https://github.com/fufesou/rdev#ab48d5798c86303b9398727684509b1b43ecfdab"
source = "git+https://github.com/fufesou/rdev#ee3057bd97c91529e8b9daf2ca133a5c49f0c0eb"
dependencies = [
"cocoa",
"core-foundation",
@@ -5146,7 +5124,7 @@ dependencies = [
[[package]]
name = "rustdesk"
version = "1.2.0"
version = "1.2.2"
dependencies = [
"android_logger",
"arboard",
@@ -5409,7 +5387,7 @@ dependencies = [
"jni 0.21.1",
"lazy_static",
"log",
"ndk 0.7.0",
"ndk",
"num_cpus",
"pkg-config",
"quest",
@@ -5841,9 +5819,9 @@ dependencies = [
[[package]]
name = "sysinfo"
version = "0.29.0"
version = "0.29.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "02f1dc6930a439cc5d154221b5387d153f8183529b07c19aca24ea31e0a167e1"
checksum = "c7cb97a5a85a136d84e75d5c3cf89655090602efb1be0d8d5337b7e386af2908"
dependencies = [
"cfg-if 1.0.0",
"core-foundation-sys 0.8.4",
@@ -5915,8 +5893,8 @@ dependencies = [
[[package]]
name = "tao"
version = "0.19.1"
source = "git+https://github.com/rustdesk-org/tao?branch=muda#173f128608d282dc4036f213c1c42137464ff096"
version = "0.22.2"
source = "git+https://github.com/rustdesk-org/tao?branch=dev#1e5b97258cf42a30f80f85a6aa0b1a4aece1977e"
dependencies = [
"bitflags",
"cairo-rs",
@@ -5937,13 +5915,13 @@ dependencies = [
"gtk",
"image",
"instant",
"jni 0.20.0",
"jni 0.21.1",
"lazy_static",
"libc",
"log",
"ndk 0.6.0",
"ndk",
"ndk-context",
"ndk-sys 0.3.0",
"ndk-sys",
"objc",
"once_cell",
"parking_lot",
@@ -5952,16 +5930,18 @@ dependencies = [
"scopeguard",
"tao-macros",
"unicode-segmentation",
"url",
"uuid",
"windows 0.44.0",
"windows 0.48.0",
"windows-implement",
"x11-dl",
"zbus",
]
[[package]]
name = "tao-macros"
version = "0.1.1"
source = "git+https://github.com/rustdesk-org/tao?branch=muda#173f128608d282dc4036f213c1c42137464ff096"
version = "0.1.2"
source = "git+https://github.com/rustdesk-org/tao?branch=dev#1e5b97258cf42a30f80f85a6aa0b1a4aece1977e"
dependencies = [
"proc-macro2 1.0.63",
"quote 1.0.27",
@@ -6850,8 +6830,6 @@ version = "0.44.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b"
dependencies = [
"windows-implement",
"windows-interface",
"windows-targets 0.42.2",
]
@@ -6870,14 +6848,16 @@ version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
dependencies = [
"windows-implement",
"windows-interface",
"windows-targets 0.48.0",
]
[[package]]
name = "windows-implement"
version = "0.44.0"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ce87ca8e3417b02dc2a8a22769306658670ec92d78f1bd420d6310a67c245c6"
checksum = "5e2ee588991b9e7e6c8338edf3333fbe4da35dc72092643958ebb43f0ab2c49c"
dependencies = [
"proc-macro2 1.0.63",
"quote 1.0.27",
@@ -6886,9 +6866,9 @@ dependencies = [
[[package]]
name = "windows-interface"
version = "0.44.0"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "853f69a591ecd4f810d29f17e902d40e349fb05b0b11fff63b08b826bfe39c7f"
checksum = "e6fb8df20c9bcaa8ad6ab513f7b40104840c8867d5751126e4df3b08388d0cc7"
dependencies = [
"proc-macro2 1.0.63",
"quote 1.0.27",

View File

@@ -1,6 +1,6 @@
[package]
name = "rustdesk"
version = "1.2.0"
version = "1.2.2"
authors = ["rustdesk <info@rustdesk.com>"]
edition = "2021"
build= "build.rs"
@@ -48,7 +48,7 @@ lazy_static = "1.4"
sha2 = "0.10"
repng = "0.2"
parity-tokio-ipc = { git = "https://github.com/open-trade/parity-tokio-ipc" }
runas = "1.0"
runas = "=1.0" # https://github.com/mitsuhiko/rust-runas/issues/13
magnum-opus = { git = "https://github.com/rustdesk/magnum-opus" }
dasp = { version = "0.11", features = ["signal", "interpolate-linear", "interpolate"], optional = true }
rubato = { version = "0.12", optional = true }
@@ -111,7 +111,7 @@ objc_id = "0.1"
[target.'cfg(any(target_os = "macos", target_os = "linux", target_os = "windows"))'.dependencies]
tray-icon = { git = "https://github.com/rustdesk-org/tray-icon" }
tao = { git = "https://github.com/rustdesk-org/tao", branch = "muda" }
tao = { git = "https://github.com/rustdesk-org/tao", branch = "dev" }
image = "0.24"
[target.'cfg(any(target_os = "macos", target_os = "linux"))'.dependencies]

View File

@@ -1,15 +1,15 @@
FROM debian
WORKDIR /
RUN apt update -y && apt install -y g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake unzip zip sudo libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev cmake ninja-build
RUN apt update -y && apt install -y g++ gcc git curl nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake unzip zip sudo libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev cmake ninja-build && rm -rf /var/lib/apt/lists/*
RUN git clone https://github.com/microsoft/vcpkg && cd vcpkg && git checkout 2023.04.15
RUN git clone --branch 2023.04.15 --depth=1 https://github.com/microsoft/vcpkg
RUN /vcpkg/bootstrap-vcpkg.sh -disableMetrics
RUN /vcpkg/vcpkg --disable-metrics install libvpx libyuv opus aom
RUN groupadd -r user && useradd -r -g user user --home /home/user && mkdir -p /home/user && chown user /home/user && echo "user ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/user
WORKDIR /home/user
RUN wget https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so
RUN curl -LO https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so
USER user
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh
RUN chmod +x rustup.sh

View File

@@ -34,9 +34,7 @@ RustDesk welcomes contribution from everyone. See [CONTRIBUTING.md](docs/CONTRIB
Below are the servers you are using for free, they may change over time. If you are not close to one of these, your network may be slow.
| Location | Vendor | Specification |
| --------- | ------------- | ------------------ |
| South Korea (Seoul) | [AWS lightsail](https://aws.amazon.com) | 1 vCPU / 0.5 GB RAM |
| Germany | [Hetzner](https://www.hetzner.com) | 2 vCPU / 4 GB RAM |
| Germany | [Codext](https://codext.de) | 4 vCPU / 8 GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4 GB RAM |
## Dev Container

View File

@@ -2,12 +2,13 @@
version: 1
script:
- rm -rf ./AppDir || true
- bsdtar -zxvf ../rustdesk-1.2.0.deb
- bsdtar -zxvf ../rustdesk-1.2.2.deb
- tar -xvf ./data.tar.xz
- mkdir ./AppDir
- mv ./usr ./AppDir/usr
# 32x32 icon
- for i in {32,64,128}; do mkdir -p ./AppDir/usr/share/icons/hicolor/$i\x$i/apps/; cp ../res/$i\x$i.png ./AppDir/usr/share/icons/hicolor/$i\x$i/apps/rustdesk.png; done
- mkdir -p ./AppDir/usr/share/icons/hicolor/scalable/apps/; cp ../res/scalable.svg ./AppDir/usr/share/icons/hicolor/scalable/apps/rustdesk.svg
# desktop file
# - sed -i "s/Icon=\/usr\/share\/rustdesk\/files\/rustdesk.png/Icon=rustdesk/g" ./AppDir/usr/share/applications/rustdesk.desktop
- rm -rf ./AppDir/usr/share/applications
@@ -17,7 +18,7 @@ AppDir:
id: rustdesk
name: rustdesk
icon: rustdesk
version: 1.2.0
version: 1.2.2
exec: usr/lib/rustdesk/rustdesk
exec_args: $@
apt:

View File

@@ -2,12 +2,13 @@
version: 1
script:
- rm -rf ./AppDir || true
- bsdtar -zxvf ../rustdesk-1.2.0.deb
- bsdtar -zxvf ../rustdesk-1.2.2.deb
- tar -xvf ./data.tar.xz
- mkdir ./AppDir
- mv ./usr ./AppDir/usr
# 32x32 icon
- for i in {32,64,128}; do mkdir -p ./AppDir/usr/share/icons/hicolor/$i\x$i/apps/; cp ../res/$i\x$i.png ./AppDir/usr/share/icons/hicolor/$i\x$i/apps/rustdesk.png; done
- mkdir -p ./AppDir/usr/share/icons/hicolor/scalable/apps/; cp ../res/scalable.svg ./AppDir/usr/share/icons/hicolor/scalable/apps/rustdesk.svg
# desktop file
# - sed -i "s/Icon=\/usr\/share\/rustdesk\/files\/rustdesk.png/Icon=rustdesk/g" ./AppDir/usr/share/applications/rustdesk.desktop
- rm -rf ./AppDir/usr/share/applications
@@ -17,7 +18,7 @@ AppDir:
id: rustdesk
name: rustdesk
icon: rustdesk
version: 1.2.0
version: 1.2.2
exec: usr/lib/rustdesk/rustdesk
exec_args: $@
apt:
@@ -52,6 +53,7 @@ AppDir:
- libva-x11-2
- libvdpau1
- libgstreamer-plugins-base1.0-0
- gstreamer1.0-pipewire
- libwayland-cursor0
- libwayland-egl1
- libpulse0

View File

@@ -71,14 +71,14 @@ def parse_rc_features(feature):
return 'osx' in platforms
else:
return 'linux' in platforms
def get_all_features():
features = []
for (feat, feat_info) in available_features.items():
if platform_check(feat_info['platform']):
features.append(feat)
return features
if isinstance(feature, str) and feature.upper() == 'ALL':
return get_all_features()
elif isinstance(feature, list):
@@ -285,7 +285,7 @@ Version: %s
Architecture: %s
Maintainer: rustdesk <info@rustdesk.com>
Homepage: https://rustdesk.com
Depends: libgtk-3-0, libxcb-randr0, libxdo3, libxfixes3, libxcb-shape0, libxcb-xfixes0, libasound2, libsystemd0, curl, libva-drm2, libva-x11-2, libvdpau1, libgstreamer-plugins-base1.0-0, libpam0g
Depends: libgtk-3-0, libxcb-randr0, libxdo3, libxfixes3, libxcb-shape0, libxcb-xfixes0, libasound2, libsystemd0, curl, libva-drm2, libva-x11-2, libvdpau1, libgstreamer-plugins-base1.0-0, libpam0g, libappindicator3-1, gstreamer1.0-pipewire
Description: A remote control software.
""" % (version, get_arch())
@@ -311,6 +311,8 @@ def build_flutter_deb(version, features):
system2('mkdir -p tmpdeb/etc/rustdesk/')
system2('mkdir -p tmpdeb/etc/pam.d/')
system2('mkdir -p tmpdeb/usr/share/rustdesk/files/systemd/')
system2('mkdir -p tmpdeb/usr/share/icons/hicolor/256x256/apps/')
system2('mkdir -p tmpdeb/usr/share/icons/hicolor/scalable/apps/')
system2('mkdir -p tmpdeb/usr/share/applications/')
system2('mkdir -p tmpdeb/usr/share/polkit-1/actions')
system2('rm tmpdeb/usr/bin/rustdesk || true')
@@ -319,7 +321,9 @@ def build_flutter_deb(version, features):
system2(
'cp ../res/rustdesk.service tmpdeb/usr/share/rustdesk/files/systemd/')
system2(
'cp ../res/128x128@2x.png tmpdeb/usr/share/rustdesk/files/rustdesk.png')
'cp ../res/128x128@2x.png tmpdeb/usr/share/icons/hicolor/256x256/apps/rustdesk.png')
system2(
'cp ../res/scalable.svg tmpdeb/usr/share/icons/hicolor/scalable/apps/rustdesk.svg')
system2(
'cp ../res/rustdesk.desktop tmpdeb/usr/share/applications/rustdesk.desktop')
system2(
@@ -351,6 +355,8 @@ def build_deb_from_folder(version, binary_folder):
system2('mkdir -p tmpdeb/usr/bin/')
system2('mkdir -p tmpdeb/usr/lib/rustdesk')
system2('mkdir -p tmpdeb/usr/share/rustdesk/files/systemd/')
system2('mkdir -p tmpdeb/usr/share/icons/hicolor/256x256/apps/')
system2('mkdir -p tmpdeb/usr/share/icons/hicolor/scalable/apps/')
system2('mkdir -p tmpdeb/usr/share/applications/')
system2('mkdir -p tmpdeb/usr/share/polkit-1/actions')
system2('rm tmpdeb/usr/bin/rustdesk || true')
@@ -359,7 +365,9 @@ def build_deb_from_folder(version, binary_folder):
system2(
'cp ../res/rustdesk.service tmpdeb/usr/share/rustdesk/files/systemd/')
system2(
'cp ../res/128x128@2x.png tmpdeb/usr/share/rustdesk/files/rustdesk.png')
'cp ../res/128x128@2x.png tmpdeb/usr/share/icons/hicolor/256x256/apps/rustdesk.png')
system2(
'cp ../res/scalable.svg tmpdeb/usr/share/icons/hicolor/scalable/apps/rustdesk.svg')
system2(
'cp ../res/rustdesk.desktop tmpdeb/usr/share/applications/rustdesk.desktop')
system2(
@@ -556,7 +564,7 @@ def main():
codesign -s "Developer ID Application: {0}" --force --options runtime ./target/release/bundle/osx/RustDesk.app/Contents/MacOS/*
codesign -s "Developer ID Application: {0}" --force --options runtime ./target/release/bundle/osx/RustDesk.app
'''.format(pa))
system2('create-dmg target/release/bundle/osx/RustDesk.app')
system2('create-dmg "RustDesk %s.dmg" "target/release/bundle/osx/RustDesk.app"' % version)
os.rename('RustDesk %s.dmg' %
version, 'rustdesk-%s.dmg' % version)
if pa:
@@ -581,10 +589,14 @@ def main():
'mv target/release/bundle/deb/rustdesk*.deb ./rustdesk.deb')
system2('dpkg-deb -R rustdesk.deb tmpdeb')
system2('mkdir -p tmpdeb/usr/share/rustdesk/files/systemd/')
system2('mkdir -p tmpdeb/usr/share/icons/hicolor/256x256/apps/')
system2('mkdir -p tmpdeb/usr/share/icons/hicolor/scalable/apps/')
system2(
'cp res/rustdesk.service tmpdeb/usr/share/rustdesk/files/systemd/')
system2(
'cp res/128x128@2x.png tmpdeb/usr/share/rustdesk/files/rustdesk.png')
'cp res/128x128@2x.png tmpdeb/usr/share/icons/hicolor/256x256/apps/rustdesk.png')
system2(
'cp res/scalable.svg tmpdeb/usr/share/icons/hicolor/scalable/apps/rustdesk.svg')
system2(
'cp res/rustdesk.desktop tmpdeb/usr/share/applications/rustdesk.desktop')
system2(

37
docs/CONTRIBUTING-IT.md Normal file
View File

@@ -0,0 +1,37 @@
# Contribuzione a RustDesk
RustDesk accoglie con favore il contributo di tutti.
Ecco le linee guida se stai pensando di aiutarci.
## Contribuzione
I contributi a RustDesk o alle sue dipendenze dovrebbero essere forniti sotto forma di richieste pull GitHub.
Ogni richiesta pull verr<72> esaminata da un collaboratore principale (qualcuno con il permesso di applicare) ed <20> abilitato all'uso dell'albero principale o dare un feedback per le modifiche che sarebbero necessarie.
Tutti i contributi dovrebbero seguire questo formato, anche quelli dei contributori principali.
Se desideri lavorare su un problema, rivendicalo prima commentando
il problema di GitHub su cui vuoi lavorare.
Questo per evitare duplicati sforzi dei contributori sullo stesso problema.
## Elenco di controllo delle richieste pull
- Branch del master branch e, se necessario, rebase al master attuale branch prima di inviare la richiesta pull.
Se l'unione non <20> in mod pulito con il master ti potrebbe essere chiesto di effettuare il rebase delle modifiche.
- Le modifiche dovrebbero essere le pi<70> piccole possibile, assicurando al tempo stesso che ogni modifica sia corretta in modo indipendente (ovvero, ogni modifica dovrebbe essere compilabile e superare i test).
- Le modifiche devono essere accompagnati da un certificato di origine per sviluppatori firmato (http://developercertificate.org), che indica che tu (e il tuo datore di lavoro se applicabile) accetti di essere vincolato dai termini della [licenza progetto](../LICENCE). In git, questa <20> l'opzione `-s` di `git commit`
- Se la tua patch non viene esaminata o hai bisogno che una persona specifica la esamini, puoi @-rispondere ad un revisore chiedendo una revisione nella richiesta pull o un commento, oppure puoi chiedere una revisione tramite [email](mailto:info@rustdesk.com).
- Aggiungi test relativi al bug corretto o alla nuova funzionalit<69>.
Per istruzioni specifiche su git, vedi [Workflow GitHub - 101](https://github.com/servo/servo/wiki/GitHub-workflow).
## Condotta
https://github.com/rustdesk/rustdesk/blob/master/docs/CODE_OF_CONDUCT-IT.md
## Comunicazioni
I contributori di RustDesk frequentano [Discord](https://discord.gg/nDceKgxnkV).

14
docs/DEVCONTAINER-IT.md Normal file
View File

@@ -0,0 +1,14 @@
Dopo l'avvio di devcontainer nel contenitore docker, viene creato un binario linux in modalità debug.
Attualmente devcontainer consente creazione build Linux e Android sia in modalità debug che in modalità rilascio.
Di seguito è riportata la tabella dei comandi da eseguire dalla root del progetto per la creazione di build specifiche.
Comando|Tipo build|Modo
-|-|-|
`.devcontainer/build.sh --debug linux`|Linux|debug
`.devcontainer/build.sh --release linux`|Linux|release
`.devcontainer/build.sh --debug android`|android-arm64|debug
`.devcontainer/build.sh --release android`|android-arm64|release

View File

@@ -32,9 +32,8 @@
فيما يلي الخوادم التي تستخدمها مجانًا، وقد تتغير طوال الوقت. إذا لم تكن قريبًا من أحد هؤلاء، فقد تكون شبكتك بطيئة.
| الموقع | المورد | المواصفات |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4 GB RAM |
## التبعيات

View File

@@ -27,9 +27,8 @@ Projekt RustDesk vítá přiložení ruky k dílu od každého. Jak začít se d
Níže jsou uvedeny servery zdarma k vašemu použití (údaje se mohou v čase měnit). Pokud se nenacházíte v oblastech světa poblíž nich, spojení může být pomalé.
| umístění | dodavatel | parametry |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4 GB RAM |
## Softwarové součásti, na kterých závisí

View File

@@ -25,9 +25,7 @@ Nedenfor er de servere, du bruger gratis, det kan ændre sig med tiden. Hvis du
| Beliggenhed | Udbyder | Specifikation |
| ---------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## Afhængigheder

View File

@@ -34,9 +34,7 @@ RustDesk heißt jegliche Mitarbeit willkommen. Schauen Sie sich [CONTRIBUTING-DE
Nachfolgend sind die Server gelistet, die Sie kostenlos nutzen können. Es kann sein, dass sich diese Liste immer mal wieder ändert. Falls Sie nicht in der Nähe einer dieser Server sind, kann es sein, dass Ihre Verbindung langsam sein wird.
| Standort | Anbieter | Spezifikation |
| --------- | ------------- | ------------------ |
| Südkorea (Seoul) | [AWS lightsail](https://aws.amazon.com/de/) | 1 vCPU / 0,5 GB RAM |
| Deutschland | [Hetzner](https://www.hetzner.com/de/) | 2 vCPU / 4 GB RAM |
| Deutschland | [Codext](https://codext.de/) | 4 vCPU / 8 GB RAM |
| Ukraine (Kiew) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4 GB RAM |
## Dev-Container

View File

@@ -24,9 +24,7 @@ RustDesk bonvenigas kontribuon de ĉiuj. Vidu [`docs/CONTRIBUTING.md`](CONTRIBUT
Malsupre estas la serviloj, kiuj vi uzas senpage, ĝi povas ŝanĝi laŭlonge de la tempo. Se vi ne estas proksima de unu de tiuj, via reto povas esti malrapida.
| Situo | Vendanto | Detaloj |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dependantaĵoj

View File

@@ -31,9 +31,7 @@ A continuación se muestran los servidores gratuitos, pueden cambiar a medida qu
| Ubicación | Compañía | Especificación |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dependencias

View File

@@ -30,9 +30,7 @@
شما مي‌توانید از سرورهای زیر به رایگان استفاده کنید. این لیست ممکن است به مرور زمان تغییر می‌کند. اگر به این سرورها نزدیک نیستید، ممکن است اتصال شما کند باشد.
| موقعیت | سرویس دهنده | مشخصات |
| --------- | ------------- | ------------------ |
| کره‌ی جنوبی، سئول | AWS lightsail | 1 vCPU / 0.5GB RAM |
| آلمان | Hetzner | 2 vCPU / 4GB RAM |
| آلمان | Codext | 4 vCPU / 8GB RAM |
## وابستگی ها

View File

@@ -24,9 +24,7 @@ RustDesk toivottaa avustukset tervetulleiksi kaikilta. Katso lisätietoja [`docs
Alla on palvelimia, joita voit käyttää ilmaiseksi, ne saattavat muuttua ajan mittaan. Jos et ole lähellä yhtä näistä, verkkosi voi olla hidas.
| Sijainti | Myyjä | Määrittely |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Riippuvuudet

View File

@@ -25,9 +25,7 @@ Ci-dessous se trouvent les serveurs que vous utilisez gratuitement, cela peut ch
| Location | Vendor | Specification |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## Dépendances

View File

@@ -34,9 +34,7 @@
Παρακάτω είναι οι διακομιστές που χρησιμοποιούνται δωρεάν, ενδέχεται να αλλάξουν με την πάροδο του χρόνου. Εάν δεν είστε κοντά σε ένα από αυτούς, το δίκτυό σας ίσως να είναι αργό.
| Περιοχή | Πάροχος | Προδιαγραφές |
| --------- | ------------- | ------------------ |
| Σεούλ | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Γερμανία | Hetzner | 2 vCPU / 4GB RAM |
| Γερμανία | Codext | 4 vCPU / 8GB RAM |
| Ουκρανία (Κίεβο) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dev Container

View File

@@ -32,9 +32,7 @@ A RustDesk szívesen fogad minden contributiont, támogatást mindenkitől. Lás
Ezalatt az üzenet alatt találhatóak azok a publikus szerverek, amelyeket ingyen használhatsz. Ezek a szerverek változhatnak a jövőben, illetve a hálózatuk lehet hogy lassú lehet.
| Hely | Host | Specifikáció |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dependencies

View File

@@ -6,54 +6,64 @@
<a href="#file-structure">Structure</a> •
<a href="#snapshot">Snapshot</a><br>
[<a href="../README.md">English</a>] | [<a href="README-UA.md">Українська</a>] | [<a href="README-CS.md">česky</a>] | [<a href="README-ZH.md">中文</a>] | [<a href="README-HU.md">Magyar</a>] | [<a href="README-ES.md">Español</a>] | [<a href="README-FA.md">فارسی</a>] | [<a href="README-FR.md">Français</a>] | [<a href="README-DE.md">Deutsch</a>] | [<a href="README-PL.md">Polski</a>] | [<a href="README-FI.md">Suomi</a>] | [<a href="README-ML.md">മലയാളം</a>] | [<a href="README-JP.md">日本語</a>] | [<a href="README-NL.md">Nederlands</a>] | [<a href="README-IT.md">Italiano</a>] | [<a href="README-RU.md">Русский</a>] | [<a href="README-PTBR.md">Português (Brasil)</a>] | [<a href="README-EO.md">Esperanto</a>] | [<a href="README-KR.md">한국어</a>] | [<a href="README-AR.md">العربي</a>] | [<a href="README-VN.md">Tiếng Việt</a>] | [<a href="README-GR.md">Ελληνικά</a>]<br>
<b>Kami membutuhkan bantuan Anda untuk menerjemahkan README ini dan <a href="https://github.com/rustdesk/rustdesk/tree/master/src/lang">RustDesk UI</a> ke bahasa asli anda</b>
<b>Kami membutuhkan bantuanmu untuk menterjemahkan file README dan <a href="https://github.com/rustdesk/rustdesk/tree/master/src/lang">RustDesk UI</a> ke Bahasa Indonesia</b>
</p>
Birbincang bersama kami: [Discord](https://discord.gg/nDceKgxnkV) | [Twitter](https://twitter.com/rustdesk) | [Reddit](https://www.reddit.com/r/rustdesk)
Mari mengobrol bersama kami: [Discord](https://discord.gg/nDceKgxnkV) | [Twitter](https://twitter.com/rustdesk) | [Reddit](https://www.reddit.com/r/rustdesk)
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/I2I04VU09)
Perangkat lunak desktop jarak jauh lainnya, ditulis dengan Rust. Bekerja begitu saja, tidak memerlukan konfigurasi. Anda memiliki kendali penuh atas data Anda, tanpa khawatir tentang keamanan. Anda dapat menggunakan server rendezvous/relay kami, [konfigurasi server sendiri](https://rustdesk.com/server), or [tulis rendezvous/relay server anda sendiri](https://github.com/rustdesk/rustdesk-server-demo).
Merupakan perangkat lunak Remote Desktop yang baru, dibangun dengan Rust. kamu bisa langsung menggunakannya tanpa perlu konfigurasi tambahan. Serta ,emiliki kontrol penuh terhadap semua data, tanpa perlu merasa was-was tentang isu keamanan, dan yang lebih menarik adalah memiliki opsi untuk menggunakan server rendezvous/relay milik kami, [konfigurasi server sendiri](https://rustdesk.com/server), atau [tulis rendezvous/relay server anda sendiri](https://github.com/rustdesk/rustdesk-server-demo).
RustDesk menyambut baik kontribusi dari semua orang. Lihat [`docs/CONTRIBUTING.md`](CONTRIBUTING.md) untuk membantu sebelum memulai.
RustDesk mengajak semua orang untuk ikut berkontribusi. Lihat [`docs/CONTRIBUTING.md`](CONTRIBUTING.md) untuk melihat panduan.
[**BINARY DOWNLOAD**](https://github.com/rustdesk/rustdesk/releases)
[**UNDUH BINARY**](https://github.com/rustdesk/rustdesk/releases)
## Publik Server Gratis
## Server Publik Gratis
Di bawah ini adalah server yang bisa Anda gunakan secara gratis, dapat berubah seiring waktu. Jika Anda tidak dekat dengan salah satu dari ini, jaringan Anda mungkin lambat.
| Lokasi | Vendor | Spesifikasi |
Di bawah ini merupakan server gratis yang bisa kamu gunakan, seiring waktu kemungkinan akan terjadi perubahan spesifikasi pada setiap server. Jika lokasi kamu berada jauh dengan salah satu server yang tersedia, kemungkinan koneksi akan terasa lambat ketika melakukan proses remote.
| Lokasi | Penyedia | Spesifikasi |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
| Jerman | [Hetzner](https://www.hetzner.com) | 2 vCPU / 4GB RAM |
| Ukraina (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dependencies
## Dev Container
Versi desktop menggunakan [sciter](https://sciter.com/) untuk GUI, silahkan download sendiri sciter dynamic library.
[![Open in Dev Containers](https://img.shields.io/static/v1?label=Dev%20Container&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/rustdesk/rustdesk)
Apabila kamu sudah menginstall VS Code dan Docker, kamu bisa mengklik badge yang ada diatas untuk memulainya. Dengan mengklik badge tersebut secara otomatis akan menginstal ekstensi pada VS Code, lakukan kloning (clone) source code kedalam container volume, dan aktifkan dev container untuk menggunakannya.
## Dependensi
Pada versi desktop, antarmuka pengguna (GUI) menggunakan [Sciter](https://sciter.com/) atau flutter, tutorial ini hanya berlaku untuk Sciter
Kamu bisa mengunduh Sciter dynamic library disini.
[Windows](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.win/x64/sciter.dll) |
[Linux](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so) |
[MacOS](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.osx/libsciter.dylib)
## Langkah untuk RAW Build
## Langkah awal untuk memulai
- Siapkan env pengembangan Rust dan C++ build env
- Siapkan env development Rust dan env build C++
- Install [vcpkg](https://github.com/microsoft/vcpkg), dan arahkan `VCPKG_ROOT` env variable dengan benar
- Install [vcpkg](https://github.com/microsoft/vcpkg), dan atur variabel env `VCPKG_ROOT` dengan benar
- Windows: vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static aom:x64-windows-static
- Linux/MacOS: vcpkg install libvpx libyuv opus aom
- jalankan `cargo run`
## Bagaimana Build di Linux
## [Build](https://rustdesk.com/docs/en/dev/build/)
## Cara Build di Linux
### Ubuntu 18 (Debian 10)
```sh
sudo apt install -y g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake
sudo apt install -y zip g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev \
libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake make \
libclang-dev ninja-build libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
```
### Fedora 28 (CentOS 8)
@@ -80,7 +90,7 @@ export VCPKG_ROOT=$HOME/vcpkg
vcpkg/vcpkg install libvpx libyuv opus aom
```
### Perbaiki libvpx (Untuk Fedora)
### Mengatasi masalah libvpx (Untuk Fedora)
```sh
cd vcpkg/buildtrees/libvpx/src
@@ -106,13 +116,40 @@ mv libsciter-gtk.so target/debug
VCPKG_ROOT=$HOME/vcpkg cargo run
```
### Ubah Wayland menjadi X11 (Xorg)
### Mengubah Wayland ke X11 (Xorg)
RustDesk tidak mendukung Wayland. Cek [ini](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) untuk mengonfigurasi Xorg sebagai sesi GNOME default.
RustDesk tidak mendukung Wayland. Cek [ini](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) untuk mengonfigurasi Xorg sebagai sesi standar di GNOME.
## Bagaimana build dengan Docker
## Kompatibilitas dengan Wayland
Mulailah dengan mengkloning repositori dan build dengan docker container:
Sepertinya Wayland tidak memiliki API untuk mengirimkan ketukan tombol ke jendela lain. Maka dari itu, RustDesk menggunakan API dari level yang lebih rendah, lebih tepatnya perangkat `/dev/uinput` (linux kernel level)
Saat Wayland menjadi sisi yang dikendalikan atau sisi yang sedang diremote, kamu harus memulai dengan cara ini
```bash
# Start uinput service
$ sudo rustdesk --service
$ rustdesk
```
**Harap Diperhatikan**: Saat Perekaman layar menggunakan Wayland antarmuka (UI) yang ditampilkan akan berbeda. Untuk saat ini RustDesk hanya mendukung org.freedesktop.portal.ScreenCast.
```bash
$ dbus-send --session --print-reply \
--dest=org.freedesktop.portal.Desktop \
/org/freedesktop/portal/desktop \
org.freedesktop.DBus.Properties.Get \
string:org.freedesktop.portal.ScreenCast string:version
# Not support
Error org.freedesktop.DBus.Error.InvalidArgs: No such interface “org.freedesktop.portal.ScreenCast”
# Support
method return time=1662544486.931020 sender=:1.54 -> destination=:1.139 serial=257 reply_serial=2
variant uint32 4
```
## Cara Build dengan Docker
Mulailah dengan melakukan kloning (clone) repositori dan build dengan docker container:
```sh
git clone https://github.com/rustdesk/rustdesk
@@ -120,25 +157,25 @@ cd rustdesk
docker build -t "rustdesk-builder" .
```
Kemudian, setiap kali Anda perlu build aplikasi, jalankan perintah berikut:
Selanjutnya, setiap kali ketika kamu akan melakukan build aplikasi, jalankan perintah berikut:
```sh
docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user/.cargo/git -v rustdesk-registry-cache:/home/user/.cargo/registry -e PUID="$(id -u)" -e PGID="$(id -g)" rustdesk-builder
```
Perhatikan bahwa build pertama mungkin memerlukan waktu lebih lama sebelum dependensi di-cache, build berikutnya akan lebih cepat. Selain itu, jika Anda perlu menentukan argumen yang berbeda untuk perintah build, Anda dapat melakukannya di akhir perintah di posisi `<OPTIONAL-ARGS>`. Misalnya, jika Anda ingin membangun versi rilis yang dioptimalkan, Anda akan menjalankan perintah di atas diikuti oleh `--release`. Hasil eksekusi akan tersedia pada target folder di sistem anda, dan dapat dijalankan dengan:
Perlu diingat bahwa pada saat build pertama kali, mungkin memerlukan waktu lebih lama sebelum dependensi di-cache, build berikutnya akan lebih cepat. Selain itu, jika perlu menentukan argumen yang berbeda untuk perintah build, kamu dapat melakukannya di akhir perintah di posisi `<OPTIONAL-ARGS>`. Misalnya, jika ingin membangun versi rilis yang dioptimalkan, jalankan perintah di atas dan tambahkan `--release`. Hasil eksekusi perintah tersebut akan tersimpan pada target folder di sistem kamu, dan dapat dijalankan dengan:
```sh
target/debug/rustdesk
```
Atau, jika Anda menjalankan rilis yang dapat dieksekusi:
Atau, jika kamu menjalankan rilis yang dapat dieksekusi:
```sh
target/release/rustdesk
```
Harap pastikan bahwa Anda menjalankan perintah ini dari root repositori RustDesk, jika tidak, aplikasi mungkin tidak dapat menemukan sumber daya yang diperlukan. Perhatikan juga perintah cargo seperti `install` atau `run` saat ini tidak didukung melalui metode ini karena mereka akan menginstal atau menjalankan program di dalam container bukan pada host.
Harap pastikan bahwa kamu menjalankan perintah ini dari repositori root RustDesk, jika tidak demikian, aplikasi mungkin tidak dapat menemukan sumber yang diperlukan. Dan juga, perintah cargo seperti `install` atau `run` saat ini tidak didukung melalui metode ini karena, proses menginstal atau menjalankan program terjadi di dalam container bukan pada host.
## Struktur File

View File

@@ -1,37 +1,40 @@
<p align="center">
<img src="../res/logo-header.svg" alt="RustDesk - Your remote desktop"><br>
<a href="#server-pubblici-gratuiti">Servers</a> •
<img src="../res/logo-header.svg" alt="RustDesk - il tuo desktop remoto"><br>
<a href="#server-pubblici-gratuiti">Server</a> •
<a href="#passaggi-per-la-compilazione">Compilazione</a> •
<a href="#come-compilare-con-docker">Docker</a> •
<a href="#struttura-dei-file">Struttura</a> •
<a href="#screenshots">Screenshots</a><br>
<a href="#screenshots">Schermate</a><br>
[<a href="../README.md">English</a>] | [<a href="README-UA.md">Українська</a>] | [<a href="README-CS.md">česky</a>] | [<a href="README-ZH.md">中文</a>] | [<a href="README-HU.md">Magyar</a>] | [<a href="README-ES.md">Español</a>] | [<a href="README-FA.md">فارسی</a>] | [<a href="README-FR.md">Français</a>] | [<a href="README-DE.md">Deutsch</a>] | [<a href="README-PL.md">Polski</a>] | [<a href="README-ID.md">Indonesian</a>] | [<a href="README-FI.md">Suomi</a>] | [<a href="README-ML.md">മലയാളം</a>] | [<a href="README-JP.md">日本語</a>] | [<a href="README-NL.md">Nederlands</a>] | [<a href="README-RU.md">Русский</a>] | [<a href="README-PTBR.md">Português (Brasil)</a>] | [<a href="README-EO.md">Esperanto</a>] | [<a href="README-KR.md">한국어</a>] | [<a href="README-AR.md">العربي</a>] | [<a href="README-VN.md">Tiếng Việt</a>] | [<a href="README-GR.md">Ελληνικά</a>]<br>
<b>Abbiamo bisogno del tuo aiuto per tradurre questo README e la <a href="https://github.com/rustdesk/rustdesk/tree/master/src/lang">RustDesk UI</a> nella tua lingua nativa</b>
<b>Abbiamo bisogno del tuo aiuto per tradurre questo file README e la <a href="https://github.com/rustdesk/rustdesk/tree/master/src/lang">UI RustDesk</a> nella tua lingua nativa</b>
</p>
Chatta con noi: [Discord](https://discord.gg/nDceKgxnkV) | [Twitter](https://twitter.com/rustdesk) | [Reddit](https://www.reddit.com/r/rustdesk)
Chatta con noi su: [Discord](https://discord.gg/nDceKgxnkV) | [Twitter](https://twitter.com/rustdesk) | [Reddit](https://www.reddit.com/r/rustdesk)
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/I2I04VU09)
Ancora un altro software per il controllo remoto del desktop, scritto in Rust. Funziona immediatamente, nessuna configurazione richiesta. Hai il pieno controllo dei tuoi dati, senza preoccupazioni per la sicurezza. Puoi utilizzare il nostro server rendezvous/relay, [configurare il tuo](https://rustdesk.com/server) o [scrivere il tuo rendezvous/relay server](https://github.com/rustdesk/rustdesk-server-demo).
Ancora un altro software per il controllo remoto del desktop, scritto in Rust.
Funziona immediatamente, nessuna configurazione richiesta. Hai il pieno controllo dei tuoi dati, senza preoccupazioni per la sicurezza.
Puoi usare il nostro server rendezvous/relay, [configurare il tuo server](https://rustdesk.com/server) o [realizzare il tuo server rendezvous/relay](https://github.com/rustdesk/rustdesk-server-demo).
RustDesk accoglie il contributo di tutti. Per ulteriori informazioni su come inizare a contribuire, vedere [`docs/CONTRIBUTING.md`](CONTRIBUTING.md).
RustDesk accoglie il contributo di tutti.
Per ulteriori informazioni su come iniziare a contribuire, vedi [`docs/CONTRIBUTING-IT.md`](CONTRIBUTING.md).
[**BINARY DOWNLOAD**](https://github.com/rustdesk/rustdesk/releases)
[**DOWNLOAD PROGRAMMA**](https://github.com/rustdesk/rustdesk/releases)
## Server pubblici gratuiti
Qui sotto trovate i server che possono essere usati gratuitamente, la lista potrebbe cambiare nel tempo. Se non si è vicini a uno di questi server, la vostra connessione potrebbe essere lenta.
| Posizione | Vendor | Specifiche |
Qui sotto trovi i server che possono essere usati gratuitamente, la lista potrebbe cambiare nel tempo.
Se non sei vicino a uno di questi server, la connessione potrebbe essere lenta.
| Posizione | Venditore | Specifiche |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
| Germania | Hetzner | 2 vCPU / 4GB RAM |
| Ucraina (Kyev) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dipendenze
La versione Desktop utilizza [sciter](https://sciter.com/) per la GUI, per favore scarica sciter dynamic library.
La versione Desktop usa per la GUI [sciter](https://sciter.com/), per favore scarica la libreria dinamica sciter.
[Windows](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.win/x64/sciter.dll) |
[Linux](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so) |
@@ -48,7 +51,7 @@ La versione Desktop utilizza [sciter](https://sciter.com/) per la GUI, per favor
- Esegui `cargo run`
## Come compilare su Linux
## Come compilare in Linux
### Ubuntu 18 (Debian 10)
@@ -68,7 +71,7 @@ sudo yum -y install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-
sudo pacman -Syu --needed unzip git cmake gcc curl wget yasm nasm zip make pkg-config clang gtk3 xdotool libxcb libxfixes alsa-lib pipewire
```
### Installare vcpkg
### Installa vcpkg
```sh
git clone https://github.com/microsoft/vcpkg
@@ -80,7 +83,7 @@ export VCPKG_ROOT=$HOME/vcpkg
vcpkg/vcpkg install libvpx libyuv opus aom
```
### Fix libvpx (Per Fedora)
### Correzione libvpx (per Fedora)
```sh
cd vcpkg/buildtrees/libvpx/src
@@ -106,13 +109,14 @@ mv libsciter-gtk.so target/debug
VCPKG_ROOT=$HOME/vcpkg cargo run
```
### Cambiare Wayland a X11 (Xorg)
### Cambiare Wayland in X11 (Xorg)
RustDesk non supporta Wayland. Controlla [questo](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) per configurare Xorg come sessione di default di GNOME.
RustDesk non supporta Wayland.
Controlla [qui](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) per configurare Xorg come sessione predefinita di GNOME.
## Come compilare con Docker
Cominciare clonando il repository e compilare i container docker:
Clona il repository e compila i container docker:
```sh
git clone https://github.com/rustdesk/rustdesk
@@ -120,38 +124,42 @@ cd rustdesk
docker build -t "rustdesk-builder" .
```
Quindi, ogni volta che devi compilare l'applicazione, esegui il comando seguente:
Quindi, ogni volta che devi compilare l'applicazione, esegui il seguente comando:
```sh
docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user/.cargo/git -v rustdesk-registry-cache:/home/user/.cargo/registry -e PUID="$(id -u)" -e PGID="$(id -g)" rustdesk-builder
```
Tieni presente che la prima build potrebbe richiedere più tempo prima che le dipendenze vengano memorizzate nella cache, le build successive saranno più veloci. Inoltre, se hai bisogno di specificare argomenti diversi per il comando build, puoi farlo alla fine del comando nella posizione `<OPTIONAL-ARGS>`. Ad esempio, se si desidera creare una versione di rilascio ottimizzata, eseguire il comando sopra seguito da `--release`. L'eseguibile generato sarà creato nella cartella di destinazione del proprio sistema e può essere eseguito con:
Tieni presente che la prima build potrebbe richiedere più tempo prima che le dipendenze vengano memorizzate nella cache, le build successive saranno più veloci.
Inoltre, se hai bisogno di specificare argomenti diversi per il comando build, puoi farlo alla fine del comando nella posizione `<OPTIONAL-ARGS>`.
Ad esempio, se vuoi creare una versione di rilascio ottimizzata, esegui il comando precedentemente indicato seguito da `--release`.
L'eseguibile generato sarà creato nella cartella destinazione del sistema e può essere eseguito con:
```sh
target/debug/rustdesk
```
Oppure, se si sta eseguendo un eseguibile di rilascio:
Oppure, se stai avviando un eseguibile di rilascio:
```sh
target/release/rustdesk
```
Assicurati di eseguire questi comandi dalla radice del repository RustDesk, altrimenti l'applicazione potrebbe non essere in grado di trovare le risorse richieste. Notare inoltre che altri sottocomandi cargo come `install` o `run` non sono attualmente supportati tramite questo metodo poiché installerebbero o eseguirebbero il programma all'interno del container anziché nell'host.
Assicurati di eseguire questi comandi dalla radice del repository RustDesk, altrimenti l'applicazione potrebbe non essere in grado di trovare le risorse richieste.
Nota inoltre che altri sottocomandi cargo come `install` o `run` non sono attualmente supportati tramite questo metodo poiché installerebbero o eseguirebbero il programma all'interno del container anziché nell'host.
## Struttura dei file
- **[libs/hbb_common](https://github.com/rustdesk/rustdesk/tree/master/libs/hbb_common)**: video codec, config, tcp/udp wrapper, protobuf, fs funzioni per il trasferimento file, e altre funzioni utili.
- **[libs/hbb_common](https://github.com/rustdesk/rustdesk/tree/master/libs/hbb_common)**: codec video, config, wrapper tcp/udp, protobuf, funzioni per il trasferimento file, e altre funzioni utili.
- **[libs/scrap](https://github.com/rustdesk/rustdesk/tree/master/libs/scrap)**: cattura dello schermo
- **[libs/enigo](https://github.com/rustdesk/rustdesk/tree/master/libs/enigo)**: controllo tastiera/mouse specifico della piattaforma
- **[src/ui](https://github.com/rustdesk/rustdesk/tree/master/src/ui)**: GUI
- **[src/server](https://github.com/rustdesk/rustdesk/tree/master/src/server)**: servizi audio/appunti/input/video e connessioni di rete
- **[src/client.rs](https://github.com/rustdesk/rustdesk/tree/master/src/client.rs)**: avviare una connessione peer
- **[src/client.rs](https://github.com/rustdesk/rustdesk/tree/master/src/client.rs)**: avvio di una connessione peer
- **[src/rendezvous_mediator.rs](https://github.com/rustdesk/rustdesk/tree/master/src/rendezvous_mediator.rs)**: Comunica con [rustdesk-server](https://github.com/rustdesk/rustdesk-server), attende la connessione remota diretta (TCP hole punching) oppure indiretta (relayed)
- **[src/platform](https://github.com/rustdesk/rustdesk/tree/master/src/platform)**: codice specifico della piattaforma
## Screenshots
## Schermate
![image](https://user-images.githubusercontent.com/71636191/113112362-ae4deb80-923b-11eb-957d-ff88daad4f06.png)

View File

@@ -29,9 +29,7 @@ RustDeskは誰からの貢献も歓迎します。 貢献するには [`docs/CON
下記のサーバーは、無料で使用できますが、後々変更されることがあります。これらのサーバーから遠い場合、接続が遅い可能性があります。
| Location | Vendor | Specification |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## 依存関係

View File

@@ -29,9 +29,7 @@ RustDesk는 모든 기여를 환영합니다. 기여하고자 한다면 [`docs/C
표에 있는 서버는 무료로 사용할 수 있지만 추후 변경될 수도 있습니다. 이 서버에서 멀다면, 네트워크가 느려질 가능성도 있습니다.
| Location | Vendor | Specification |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## 의존관계

View File

@@ -24,9 +24,7 @@
നിങ്ങൾ സൗജന്യമായി ഉപയോഗിക്കുന്ന സെർവറുകൾ ചുവടെയുണ്ട്, അത് സമയത്തിനനുസരിച്ച് മാറിയേക്കാം. നിങ്ങൾ ഇവയിലൊന്നിനോട് അടുത്തല്ലെങ്കിൽ, നിങ്ങളുടെ നെറ്റ്‌വർക്ക് സ്ലോ ആയേക്കാം.
| സ്ഥാനം | കച്ചവടക്കാരൻ | വിവരണം |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## ഡിപെൻഡൻസികൾ

View File

@@ -32,9 +32,7 @@ RustDesk verwelkomt bijdragen van iedereen. Zie [`docs/CONTRIBUTING.md`](CONTRIB
Hieronder staan de servers die u gratis gebruikt, ze kunnen in de loop van de tijd veranderen. Als u niet in de buurt van een van deze servers bevindt, kan uw vervinding langzamer zijn.
| Locatie | Aanbieder | Specificaties |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Duitsland | Hetzner | 2 vCPU / 4GB RAM |
| Duitsland | Codext | 4 vCPU / 8GB RAM |
| Oekraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dev Container

View File

@@ -34,9 +34,7 @@ RustDesk zaprasza do współpracy każdego. Zobacz [`docs/CONTRIBUTING-PL.md`](C
Poniżej znajdują się serwery, z których można korzystać za darmo, może się to zmienić z upływem czasu. Jeśli nie znajdujesz się w pobliżu jednego z nich, Twoja prędkość połączenia może być niska.
| Lokalizacja | Dostawca | Specyfikacja |
| --------- | ------------- | ------------------ |
| Korea Płd. (Seul) | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Niemcy | Hetzner | 2 vCPU / 4GB RAM |
| Niemcy | Codext | 4 vCPU / 8GB RAM |
| Ukraina (Kijów) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Konterner Programisty (Dev Container)

View File

@@ -25,9 +25,7 @@ Abaixo estão os servidores que você está utilizando de graça, ele pode mudar
| Localização | Fornecedor | Especificações |
| ----------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## Dependências

View File

@@ -33,11 +33,7 @@ RustDesk приветствует вклад каждого. Ознакомьт
Ниже приведены бесплатные публичные сервера, используемые по умолчанию. Имейте ввиду, они могут меняться со временем. Также стоит отметить, что скорость работы сети зависит от вашего местоположения и расстояния до серверов. Подключение происходит к ближайшему доступному.
| Расположение | Поставщик | Технические характеристики |
| --------- | ------------- | ------------------ |
| Сеул | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Сингапур | Vultr | 1 vCPU / 1GB RAM |
| Даллас | Vultr | 1 vCPU / 1GB RAM |
| Германия | Hetzner | 2 vCPU / 4GB RAM |
| Германия | Codext | 4 vCPU / 8GB RAM |
## Зависимости

View File

@@ -34,11 +34,7 @@ RustDesk вітає внесок кожного. Дивіться [`docs/CONTRIB
Нижче наведені сервери, для безкоштовного використання, вони можуть змінюватися з часом. Якщо ви не перебуваєте поруч з одним із них, ваша мережа може працювати повільно.
| Місцезнаходження | Постачальник | Технічні характеристики |
| --------- | ------------- | ------------------ |
| Південна Корея (Сеул) | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Сінгапур | Vultr | 1 vCPU / 1GB RAM |
| США (Даллас) | Vultr | 1 vCPU / 1GB RAM
| Німеччина | Hetzner | 2 VCPU / 4GB RAM |
| Німеччина | Codext | 4 vCPU / 8GB RAM |
| Україна (Київ) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4GB RAM |
## Dev Container

View File

@@ -33,9 +33,7 @@ Dưới đây là những máy chủ mà bạn có thể sử dụng mà không
| Địa điểm | Nhà cung cấp | Cấu hình |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
## Dependencies

View File

@@ -1,8 +1,8 @@
<p align="center">
<img src="../res/logo-header.svg" alt="RustDesk - Your remote desktop"><br>
<a href="#免费公共服务器">服务器</a> •
<a href="#免费公共服务器">服务器</a> •
<a href="#基本构建步骤">编译</a> •
<a href="#使用Docker编译">Docker</a> •
<a href="#使用-Docker-编译">Docker</a> •
<a href="#文件结构">结构</a> •
<a href="#截图">截图</a><br>
[<a href="../README.md">English</a>] | [<a href="README-UA.md">Українська</a>] | [<a href="README-CS.md">česky</a>] | [<a href="README-HU.md">Magyar</a>] | [<a href="README-ES.md">Español</a>] | [<a href="README-FA.md">فارسی</a>] | [<a href="README-FR.md">Français</a>] | [<a href="README-DE.md">Deutsch</a>] | [<a href="README-PL.md">Polski</a>] | [<a href="README-ID.md">Indonesian</a>] | [<a href="README-FI.md">Suomi</a>] | [<a href="README-ML.md">മലയാളം</a>] | [<a href="README-JP.md">日本語</a>] | [<a href="README-NL.md">Nederlands</a>] | [<a href="README-IT.md">Italiano</a>] | [<a href="README-RU.md">Русский</a>] | [<a href="README-PTBR.md">Português (Brasil)</a>] | [<a href="README-EO.md">Esperanto</a>] | [<a href="README-KR.md">한국어</a>] | [<a href="README-AR.md">العربي</a>] | [<a href="README-VN.md">Tiếng Việt</a>] | [<a href="README-GR.md">Ελληνικά</a>]<br>
@@ -16,9 +16,19 @@ Chat with us: [知乎](https://www.zhihu.com/people/rustdesk) | [Discord](https:
或者[自己设置](https://rustdesk.com/server)
亦或者[开发您的版本](https://github.com/rustdesk/rustdesk-server-demo)。
欢迎大家贡献代码, 请看 [`docs/CONTRIBUTING.md`](CONTRIBUTING.md).
![image](https://user-images.githubusercontent.com/71636191/171661982-430285f0-2e12-4b1d-9957-4a58e375304d.png)
[**可执行程序下载**](https://github.com/rustdesk/rustdesk/releases)
RustDesk 期待各位的贡献. 如何参与开发? 详情请看 [CONTRIBUTING.md](docs/CONTRIBUTING.md).
[**FAQ**](https://github.com/rustdesk/rustdesk/wiki/FAQ)
[**BINARY DOWNLOAD**](https://github.com/rustdesk/rustdesk/releases)
[**NIGHTLY BUILD**](https://github.com/rustdesk/rustdesk/releases/tag/nightly)
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
alt="Get it on F-Droid"
height="80">](https://f-droid.org/en/packages/com.carriez.flutter_hbb)
## 免费的公共服务器
@@ -26,9 +36,16 @@ Chat with us: [知乎](https://www.zhihu.com/people/rustdesk) | [Discord](https:
| Location | Vendor | Specification |
| --------- | ------------- | ------------------ |
| Seoul | AWS lightsail | 1 vCPU / 0.5GB RAM |
| Germany | Hetzner | 2 vCPU / 4GB RAM |
| Germany | Codext | 4 vCPU / 8GB RAM |
| Germany | [Hetzner](https://www.hetzner.com) | 2 vCPU / 4 GB RAM |
| Ukraine (Kyiv) | [dc.volia](https://dc.volia.com) | 2 vCPU / 4 GB RAM |
## Dev Container
[![在 Dev Containers 中打开](https://img.shields.io/static/v1?label=Dev%20Container&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/rustdesk/rustdesk)
如果你已经安装了 VS Code 和 Docker, 你可以点击上面的徽章开始使用. 点击后, VS Code 将自动安装 Dev Containers 扩展(如果需要),将源代码克隆到容器卷中, 并启动一个 Dev 容器供使用.
Go through [DEVCONTAINER.md](docs/DEVCONTAINER.md) for more info.
## 依赖
@@ -38,16 +55,14 @@ Chat with us: [知乎](https://www.zhihu.com/people/rustdesk) | [Discord](https:
[Linux](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so) |
[macOS](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.osx/libsciter.dylib)
移动版本使用Flutter未来会将桌面版本从Sciter迁移到Flutter。
## 基本构建步骤
- 请准备好 Rust 开发环境和 C++编译环境
- 请准备好 Rust 开发环境和 C++ 编译环境
- 安装[vcpkg](https://github.com/microsoft/vcpkg), 正确设置`VCPKG_ROOT`环境变量
- 安装 [vcpkg](https://github.com/microsoft/vcpkg), 正确设置 `VCPKG_ROOT` 环境变量
- Windows: vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static aom:x64-windows-static
- Linux/Osx: vcpkg install libvpx libyuv opus aom
- Linux/macOS: vcpkg install libvpx libyuv opus aom
- 运行 `cargo run`
@@ -58,7 +73,15 @@ Chat with us: [知乎](https://www.zhihu.com/people/rustdesk) | [Discord](https:
### Ubuntu 18 (Debian 10)
```sh
sudo apt install -y g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake
sudo apt install -y zip g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev \
libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake make \
libclang-dev ninja-build libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
```
### openSUSE Tumbleweed
```sh
sudo zypper install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-devel libXfixes-devel cmake alsa-lib-devel gstreamer-devel gstreamer-plugins-base-devel xdotool-devel
```
### Fedora 28 (CentOS 8)
@@ -108,24 +131,52 @@ cd rustdesk
mkdir -p target/debug
wget https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so
mv libsciter-gtk.so target/debug
cargo run
VCPKG_ROOT=$HOME/vcpkg cargo run
```
### 把 Wayland 修改成 X11 (Xorg)
RustDesk 暂时不支持 Wayland不过正在积极开发中。
> [点我](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/)
查看 如何将Xorg设置成默认的GNOME session
查看如何将 Xorg 设置成默认的 GNOME session.
## Wayland 支持
Wayland 似乎没有提供任何将按键发送到其他窗口的 API. 因此, RustDesk 使用较低级别的 API, 即 `/dev/uinput` devices (Linux kernal level).
当 Wayland 是受控方时,您必须以下列方式开始操作:
```bash
# Start uinput service
$ sudo rustdesk --service
$ rustdesk
```
**Notice**: Wayland 屏幕录制使用不同的接口. RustDesk 目前只支持 org.freedesktop.portal.ScreenCast.
```bash
$ dbus-send --session --print-reply \
--dest=org.freedesktop.portal.Desktop \
/org/freedesktop/portal/desktop \
org.freedesktop.DBus.Properties.Get \
string:org.freedesktop.portal.ScreenCast string:version
# Not support
Error org.freedesktop.DBus.Error.InvalidArgs: No such interface “org.freedesktop.portal.ScreenCast”
# Support
method return time=1662544486.931020 sender=:1.54 -> destination=:1.139 serial=257 reply_serial=2
variant uint32 4
```
## 使用 Docker 编译
### 构建Docker容器
克隆版本库并构建 Docker 容器:
```sh
git clone https://github.com/rustdesk/rustdesk # 克隆Github存储库
cd rustdesk # 进入文件夹
docker build -t "rustdesk-builder" . # 构建容器
```
请注意:
* 针对国内网络访问问题,可以做以下几点优化:
1. Dockerfile 中修改系统的源到国内镜像
@@ -164,8 +215,9 @@ docker build -t "rustdesk-builder" . # 构建容器
docker build -t "rustdesk-builder" . --build-arg http_proxy=http://host:port --build-arg https_proxy=http://host:port
```
### 构建RustDesk程序
容器构建完成后运行下列指令以完成对RustDesk应用程序的构建
### 构建 RustDesk 程序
然后, 每次需要构建应用程序时, 运行以下命令:
```sh
docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user/.cargo/git -v rustdesk-registry-cache:/home/user/.cargo/registry -e PUID="$(id -u)" -e PGID="$(id -g)" rustdesk-builder
@@ -180,25 +232,25 @@ docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user
groupmod: Permission denied.
groupmod: cannot lock /etc/group; try again later.
```
> **原因:** 容器的entrypoint脚本会检测UIDGID在度判和给定的环境变量的不一致时会强行修改user的UID和GID并重新运行。但在重启后读不到环境中的UIDGID然后再次进入判错重启环节
> **原因:** 容器的 entrypoint 脚本会检测 UIDGID在度判和给定的环境变量的不一致时会强行修改 user 的 UID 和 GID 并重新运行。但在重启后读不到环境中的 UIDGID然后再次进入判错重启环节
### 运行RustDesk程序
### 运行 RustDesk 程序
生成的可执行程序在target目录下可直接通过指令运行调试(Debug)版本的RustDesk:
生成的可执行程序在 target 目录下,可直接通过指令运行调试 (Debug) 版本的 RustDesk:
```sh
target/debug/rustdesk
```
或者您想运行发行(Release)版本:
或者您想运行发行 (Release) 版本:
```sh
target/release/rustdesk
```
请注意:
* 请保证您运行的目录是在RustDesk库的根目录内否则软件会读不到文件。
* `install`、`run`等Cargo的子指令在容器内不可用宿主机才行。
* 请保证您运行的目录是在 RustDesk 库的根目录内,否则软件会读不到文件。
* `install`、`run`等 Cargo 的子指令在容器内不可用,宿主机才行。
## 文件结构

11
docs/SECURITY-IT.md Normal file
View File

@@ -0,0 +1,11 @@
# Policy sicurezza
## Segnalazione di una vulnerabilità
Attribuiamo grande importanza alla sicurezza del progetto.
Incoraggiamo tutti gli utenti a segnalare eventuali vulnerabilità di sicurezza che ci scoprono.
Se trovi una vulnerabilità nel progetto RustDesk, segnalala responsabilmente inviando un'email a info@rustdesk.com.
Al momento non abbiamo un programma di taglia sui bug.
Siamo una piccola squadra che cerca di risolvere un grosso problema.
Ti esortiamo a segnalare responsabilmente tutte le vulnerabilità in modo da poter continuare a sviluppare un'applicazione sicura per l'intera comunità.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 KiB

After

Width:  |  Height:  |  Size: 318 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 422 KiB

After

Width:  |  Height:  |  Size: 419 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 452 KiB

After

Width:  |  Height:  |  Size: 451 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 KiB

After

Width:  |  Height:  |  Size: 378 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 267 KiB

After

Width:  |  Height:  |  Size: 266 KiB

View File

@@ -4,7 +4,7 @@
"runtime-version": "21.08",
"sdk": "org.freedesktop.Sdk",
"command": "rustdesk",
"icon": "share/rustdesk/files/rustdesk.png",
"icon": "share/icons/hicolor/scalable/apps/rustdesk.svg",
"modules": [
"shared-modules/libappindicator/libappindicator-gtk3-12.10.json",
"xdotool.json",
@@ -12,20 +12,21 @@
"name": "rustdesk",
"buildsystem": "simple",
"build-commands": [
"bsdtar -zxvf rustdesk-1.2.0.deb",
"bsdtar -zxvf rustdesk-1.2.2.deb",
"tar -xvf ./data.tar.xz",
"cp -r ./usr/* /app/",
"mkdir -p /app/bin && ln -s /app/lib/rustdesk/rustdesk /app/bin/rustdesk",
"mv /app/share/applications/rustdesk.desktop /app/share/applications/com.rustdesk.RustDesk.desktop",
"sed -i '/^Icon=/ c\\Icon=com.rustdesk.RustDesk' /app/share/applications/com.rustdesk.RustDesk.desktop",
"sed -i '/^Icon=/ c\\Icon=com.rustdesk.RustDesk' /app/share/applications/rustdesk-link.desktop",
"mv /app/share/icons/hicolor/scalable/apps/rustdesk.svg /app/share/icons/hicolor/scalable/apps/com.rustdesk.RustDesk.svg",
"for size in 16 24 32 48 64 128 256 512; do\n rsvg-convert -w $size -h $size -f png -o $size.png logo.svg\n install -Dm644 $size.png /app/share/icons/hicolor/${size}x${size}/apps/com.rustdesk.RustDesk.png\n done"
],
"cleanup": ["/include", "/lib/pkgconfig", "/share/gtk-doc"],
"sources": [
{
"type": "file",
"path": "../rustdesk-1.2.0.deb"
"path": "../rustdesk-1.2.2.deb"
},
{
"type": "file",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 715 B

After

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 719 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 884 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.7 KiB

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"><path fill="#fff" d="M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.509 11.509 0 0 1 12 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12z"/></svg>

Before

Width:  |  Height:  |  Size: 792 B

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024"><circle cx="512" cy="512" r="512" fill="#999"/><path fill="#fff" d="M407.2 722.1c-10.1-6.7-19-15-26.5-24.5-8.2-9.9-15.7-20.3-22.7-31-16.3-23.9-29.1-50-38-77.5-10.7-32-15.8-62.7-15.8-92.7 0-33.5 7.2-62.7 21.4-87.2 10.4-19.2 26-35.2 44.8-46.5 18.1-11.3 39.2-17.5 60.6-17.9 7.5 0 15.6 1.1 24.1 3.2 6.2 1.7 13.6 4.5 22.8 7.9 11.7 4.5 18.1 7.2 20.3 7.9 6.8 2.6 12.6 3.6 17.1 3.6 3.4 0 8.3-1.1 13.8-2.8 3.1-1.1 9-3 17.3-6.6 8.2-3 14.8-5.5 19.9-7.5 7.9-2.3 15.5-4.5 22.4-5.5 8.3-1.3 16.6-1.7 24.5-1.1 15.1 1.1 29 4.3 41.4 9 21.7 8.7 39.3 22.4 52.4 41.8-5.5 3.4-10.7 7.4-15.5 11.7-10.4 9.2-19.2 20-26.2 32.1-9.2 16.4-13.9 35-13.7 53.7.3 23.1 6.2 43.4 17.9 61 8.3 12.8 19.3 23.8 32.7 32.7 6.6 4.5 12.4 7.6 17.9 9.6-2.6 8-5.4 15.8-8.6 23.5-7.4 17.2-16.2 33.7-26.7 49.3-9.2 13.4-16.5 23.5-22 30.1-8.6 10.2-16.8 17.9-25.2 23.4-9.2 6.1-19.9 9.3-31 9.3-7.5.3-14.9-.6-22-2.7-6.2-2-12.3-4.3-18.3-6.9-6.2-2.9-12.7-5.3-19.3-7.2-8.1-2.1-16.4-3.2-24.8-3.1-8.5 0-16.8 1.1-24.7 3.1-6.6 1.9-13 4.2-19.3 6.9-9 3.7-14.8 6.2-18.2 7.2-6.9 2-14 3.3-21.1 3.7-11.1 0-21.4-3.2-31.7-9.6zm146.1-393.6c-14.5 7.2-28.3 10.3-42.1 9.3-2.1-13.8 0-27.9 5.8-43.4 5.1-13.2 11.9-25.2 21.3-35.8 9.8-11.1 21.5-20.3 34.8-26.9 14.1-7.2 27.5-11.1 40.3-11.7 1.7 14.5 0 28.8-5.3 44.1-4.9 13.6-12.1 26.2-21.3 37.5-9.3 11.1-20.8 20.3-33.8 26.9z"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1 @@
<svg width="32" height="32"><path d="M29.307 9.932 26.161 0H5.796L2.692 9.932c-1.802 5.75.042 12.271 5.089 16.021L16.01 32l8.208-6.068c5.005-3.75 6.911-10.25 5.089-16.021l-8.214 6.104 3.12 9.938-8.208-6.13-8.208 6.104 3.141-9.911-8.25-6.063 10.177-.063 3.146-9.891 3.141 9.87z"/></svg>

After

Width:  |  Height:  |  Size: 285 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="199"><path fill="#0089d6" d="M118.432 187.698c32.89-5.81 60.055-10.618 60.367-10.684l.568-.12-31.052-36.935c-17.078-20.314-31.051-37.014-31.051-37.11 0-.182 32.063-88.477 32.243-88.792.06-.105 21.88 37.567 52.893 91.32 29.035 50.323 52.973 91.815 53.195 92.203l.405.707-98.684-.012-98.684-.013 59.8-10.564zM0 176.435c0-.052 14.631-25.451 32.514-56.442l32.514-56.347 37.891-31.799C123.76 14.358 140.867.027 140.935.001c.069-.026-.205.664-.609 1.534s-18.919 40.582-41.145 88.25l-40.41 86.67-29.386.037c-16.162.02-29.385-.005-29.385-.057z"/></svg>

After

Width:  |  Height:  |  Size: 604 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120"><path d="M142.554 52.81c0-4.113 1.078-6.374 5.369-11.26 17.207-19.593 57.193-19.593 74.4 0 4.291 4.886 5.37 7.147 5.37 11.26v5.145h-85.14zm71.239-42.863 6.676-6.692 10.462 10.74 25.49-25.453 6.133 6.543-31.536 32.356-17.225-17.494Zm-34.474 3.377c-15.027-5.337-19.348-22.264-8.57-33.575 10.85-11.387 29.85-6.099 34.149 9.503 2.523 9.161-4.38 21.951-12.951 23.995-4.39 1.58-8.73 1.433-12.628.077z" style="fill:#024eff;fill-opacity:1;stroke-width:.999998" transform="translate(-142.554 44.365)"/></svg>

After

Width:  |  Height:  |  Size: 564 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><rect width="512" height="512" fill="#1877f2" rx="76.8"/><path fill="#fff" d="m355.6 330 11.4-74h-71v-48c0-20.2 9.9-40 41.7-40H370v-63s-29.3-5-57.3-5c-58.5 0-96.7 35.4-96.7 99.6V256h-65v74h65v182h80V330z"/></svg>

After

Width:  |  Height:  |  Size: 274 B

View File

@@ -0,0 +1 @@
<svg viewBox="0 0 24 24"><path fill="#231f20" d="M12 1A10.89 10.89 0 0 0 1 11.77 10.79 10.79 0 0 0 8.52 22c.55.1.75-.23.75-.52v-1.83c-3.06.65-3.71-1.44-3.71-1.44a2.86 2.86 0 0 0-1.22-1.58c-1-.66.08-.65.08-.65a2.31 2.31 0 0 1 1.68 1.11 2.37 2.37 0 0 0 3.2.89 2.33 2.33 0 0 1 .7-1.44c-2.44-.27-5-1.19-5-5.32a4.15 4.15 0 0 1 1.11-2.91 3.78 3.78 0 0 1 .11-2.84s.93-.29 3 1.1a10.68 10.68 0 0 1 5.5 0c2.1-1.39 3-1.1 3-1.1a3.78 3.78 0 0 1 .11 2.84A4.15 4.15 0 0 1 19 11.2c0 4.14-2.58 5.05-5 5.32a2.5 2.5 0 0 1 .75 2v2.95s.2.63.75.52A10.8 10.8 0 0 0 23 11.77 10.89 10.89 0 0 0 12 1"/></svg>

After

Width:  |  Height:  |  Size: 582 B

View File

@@ -0,0 +1 @@
<svg width="48" height="48"><path fill="#ffc107" d="M43.611 20.083H42V20H24v8h11.303c-1.649 4.657-6.08 8-11.303 8-6.627 0-12-5.373-12-12s5.373-12 12-12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 12.955 4 4 12.955 4 24s8.955 20 20 20 20-8.955 20-20c0-1.341-.138-2.65-.389-3.917z"/><path fill="#ff3d00" d="m6.306 14.691 6.571 4.819C14.655 15.108 18.961 12 24 12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 16.318 4 9.656 8.337 6.306 14.691z"/><path fill="#4caf50" d="M24 44c5.166 0 9.86-1.977 13.409-5.192l-6.19-5.238A11.91 11.91 0 0 1 24 36c-5.202 0-9.619-3.317-11.283-7.946l-6.522 5.025C9.505 39.556 16.227 44 24 44z"/><path fill="#1976d2" d="M43.611 20.083H42V20H24v8h11.303a12.04 12.04 0 0 1-4.087 5.571l.003-.002 6.19 5.238C36.971 39.205 44 34 44 24c0-1.341-.138-2.65-.389-3.917z"/></svg>

After

Width:  |  Height:  |  Size: 846 B

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
flutter/assets/checkbox.ttf Normal file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 669 B

After

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 989 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 969 B

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 989 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -26,6 +26,8 @@ class IDTextInputFormatter extends TextInputFormatter {
selection: TextSelection.collapsed(
offset: newID.length - selectionIndexFromTheRight,
),
// https://github.com/flutter/flutter/issues/78066#issuecomment-797869906
composing: newValue.composing,
);
}
}
@@ -33,6 +35,11 @@ class IDTextInputFormatter extends TextInputFormatter {
String formatID(String id) {
String id2 = id.replaceAll(' ', '');
String suffix = '';
if (id2.endsWith(r'\r') || id2.endsWith(r'/r')) {
suffix = id2.substring(id2.length - 2, id2.length);
id2 = id2.substring(0, id2.length - 2);
}
if (int.tryParse(id2) == null) return id;
String newID = '';
if (id2.length <= 3) {
@@ -45,7 +52,7 @@ String formatID(String id) {
newID += " ${id2.substring(i, i + 3)}";
}
}
return newID;
return newID + suffix;
}
String trimID(String id) {

View File

@@ -1,4 +1,5 @@
import 'dart:io';
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_hbb/models/peer_model.dart';
@@ -70,16 +71,6 @@ class PeerPayload {
}
}
class DeviceInfo {
static Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['os'] = Platform.operatingSystem;
data['type'] = "client";
data['name'] = bind.mainGetHostname();
return data;
}
}
class LoginRequest {
String? username;
String? password;
@@ -88,7 +79,6 @@ class LoginRequest {
bool? autoLogin;
String? type;
String? verificationCode;
Map<String, dynamic> deviceInfo = DeviceInfo.toJson();
LoginRequest(
{this.username,
@@ -110,6 +100,13 @@ class LoginRequest {
if (verificationCode != null) {
data['verificationCode'] = verificationCode;
}
Map<String, dynamic> deviceInfo = {};
try {
deviceInfo = jsonDecode(bind.mainGetLoginDeviceInfo());
} catch (e) {
debugPrint('Failed to decode get device info: $e');
}
data['deviceInfo'] = deviceInfo;
return data;
}

View File

@@ -285,6 +285,29 @@ class PeerStringOption {
Get.find<RxString>(tag: tag(id, opt));
}
class UnreadChatCountState {
static String tag(id) => 'unread_chat_count_$id';
static void init(String id) {
final key = tag(id);
if (!Get.isRegistered(tag: key)) {
final RxInt state = RxInt(0);
Get.put(state, tag: key);
} else {
Get.find<RxInt>(tag: key).value = 0;
}
}
static void delete(String id) {
final key = tag(id);
if (Get.isRegistered(tag: key)) {
Get.delete(tag: key);
}
}
static RxInt find(String id) => Get.find<RxInt>(tag: tag(id));
}
initSharedStates(String id) {
PrivacyModeState.init(id);
BlockInputState.init(id);
@@ -294,6 +317,7 @@ initSharedStates(String id) {
RemoteCursorMovedState.init(id);
FingerprintState.init(id);
PeerBoolOption.init(id, 'zoom-cursor', () => false);
UnreadChatCountState.init(id);
}
removeSharedStates(String id) {
@@ -305,4 +329,5 @@ removeSharedStates(String id) {
RemoteCursorMovedState.delete(id);
FingerprintState.delete(id);
PeerBoolOption.delete(id, 'zoom-cursor');
UnreadChatCountState.delete(id);
}

View File

@@ -3,11 +3,13 @@ import 'package:flutter_hbb/common/formatter/id_formatter.dart';
import 'package:flutter_hbb/common/widgets/peer_card.dart';
import 'package:flutter_hbb/common/widgets/peers_view.dart';
import 'package:flutter_hbb/desktop/widgets/popup_menu.dart';
import '../../consts.dart';
import 'package:flutter_hbb/models/ab_model.dart';
import 'package:flutter_hbb/models/platform_model.dart';
import '../../desktop/widgets/material_mod_popup_menu.dart' as mod_menu;
import 'package:get/get.dart';
import '../../common.dart';
import 'dialog.dart';
import 'login.dart';
final hideAbTagsPanel = false.obs;
@@ -37,63 +39,115 @@ class _AddressBookState extends State<AddressBook> {
child: ElevatedButton(
onPressed: loginDialog, child: Text(translate("Login"))));
} else {
if (gFFI.abModel.abLoading.value) {
if (gFFI.abModel.abLoading.value && gFFI.abModel.emtpy) {
return const Center(
child: CircularProgressIndicator(),
);
}
if (gFFI.abModel.abError.isNotEmpty) {
return _buildShowError(gFFI.abModel.abError.value);
}
return isDesktop
? _buildAddressBookDesktop()
: _buildAddressBookMobile();
return Column(
children: [
// NOT use Offstage to wrap LinearProgressIndicator
if (gFFI.abModel.retrying.value) LinearProgressIndicator(),
_buildErrorBanner(
err: gFFI.abModel.pullError,
retry: null,
close: () => gFFI.abModel.pullError.value = ''),
_buildErrorBanner(
err: gFFI.abModel.pushError,
retry: () => gFFI.abModel.pushAb(isRetry: true),
close: () => gFFI.abModel.pushError.value = ''),
Expanded(
child: isDesktop
? _buildAddressBookDesktop()
: _buildAddressBookMobile())
],
);
}
});
Widget _buildShowError(String error) {
return Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(translate(error)),
TextButton(
onPressed: () {
gFFI.abModel.pullAb();
},
child: Text(translate("Retry")))
],
));
Widget _buildErrorBanner(
{required RxString err,
required Function? retry,
required Function close}) {
const double height = 25;
return Obx(() => Offstage(
offstage: !(!gFFI.abModel.abLoading.value && err.value.isNotEmpty),
child: Center(
child: Container(
height: height,
color: Color.fromARGB(255, 253, 238, 235),
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
FittedBox(
child: Icon(
Icons.info,
color: Color.fromARGB(255, 249, 81, 81),
),
).marginAll(4),
Flexible(
child: Align(
alignment: Alignment.centerLeft,
child: Tooltip(
message: translate(err.value),
child: Text(
translate(err.value),
overflow: TextOverflow.ellipsis,
),
)).marginSymmetric(vertical: 2),
),
if (retry != null)
InkWell(
onTap: () {
retry.call();
},
child: Text(
translate("Retry"),
style: TextStyle(color: MyTheme.accent),
)).marginSymmetric(horizontal: 5),
FittedBox(
child: InkWell(
onTap: () {
close.call();
},
child: Icon(Icons.close).marginSymmetric(horizontal: 5),
),
).marginAll(4)
],
),
)).marginOnly(bottom: 14),
));
}
Widget _buildAddressBookDesktop() {
return Row(
children: [
Offstage(
offstage: hideAbTagsPanel.value,
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(12),
border:
Border.all(color: Theme.of(context).colorScheme.background)),
child: Container(
width: 150,
height: double.infinity,
padding: const EdgeInsets.all(8.0),
child: Column(
children: [
_buildTagHeader().marginOnly(left: 8.0, right: 0),
Expanded(
child: Container(
width: double.infinity,
height: double.infinity,
child: _buildTags(),
),
)
],
),
),
).marginOnly(right: 12.0)),
offstage: hideAbTagsPanel.value,
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(12),
border: Border.all(
color: Theme.of(context).colorScheme.background)),
child: Container(
width: 150,
height: double.infinity,
padding: const EdgeInsets.all(8.0),
child: Column(
children: [
_buildTagHeader().marginOnly(left: 8.0, right: 0),
Expanded(
child: Container(
width: double.infinity,
height: double.infinity,
child: _buildTags(),
),
)
],
),
),
).marginOnly(right: 12.0)),
_buildPeersViews()
],
);
@@ -102,25 +156,27 @@ class _AddressBookState extends State<AddressBook> {
Widget _buildAddressBookMobile() {
return Column(
children: [
Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6),
border:
Border.all(color: Theme.of(context).colorScheme.background)),
child: Container(
padding: const EdgeInsets.all(8.0),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
_buildTagHeader().marginOnly(left: 8.0, right: 0),
Container(
width: double.infinity,
child: _buildTags(),
Offstage(
offstage: hideAbTagsPanel.value,
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6),
border: Border.all(
color: Theme.of(context).colorScheme.background)),
child: Container(
padding: const EdgeInsets.all(8.0),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
_buildTagHeader().marginOnly(left: 8.0, right: 0),
Container(
width: double.infinity,
child: _buildTags(),
),
],
),
],
),
),
).marginOnly(bottom: 12.0),
),
).marginOnly(bottom: 12.0)),
_buildPeersViews()
],
);
@@ -144,9 +200,16 @@ class _AddressBookState extends State<AddressBook> {
}
Widget _buildTags() {
return Obx(
() => Wrap(
children: gFFI.abModel.tags
return Obx(() {
final List tags;
if (gFFI.abModel.sortTags.value) {
tags = gFFI.abModel.tags.toList();
tags.sort();
} else {
tags = gFFI.abModel.tags;
}
return Wrap(
children: tags
.map((e) => AddressBookTag(
name: e,
tags: gFFI.abModel.selectedTags,
@@ -158,8 +221,8 @@ class _AddressBookState extends State<AddressBook> {
}
}))
.toList(),
),
);
);
});
}
Widget _buildPeersViews() {
@@ -174,11 +237,44 @@ class _AddressBookState extends State<AddressBook> {
);
}
@protected
MenuEntryBase<String> syncMenuItem() {
return MenuEntrySwitch<String>(
switchType: SwitchType.scheckbox,
text: translate('Sync with recent sessions'),
getter: () async {
return shouldSyncAb();
},
setter: (bool v) async {
bind.mainSetLocalOption(key: syncAbOption, value: v ? 'Y' : '');
},
dismissOnClicked: true,
);
}
@protected
MenuEntryBase<String> sortMenuItem() {
return MenuEntrySwitch<String>(
switchType: SwitchType.scheckbox,
text: translate('Sort tags'),
getter: () async {
return shouldSortTags();
},
setter: (bool v) async {
bind.mainSetLocalOption(key: sortAbTagsOption, value: v ? 'Y' : '');
gFFI.abModel.sortTags.value = v;
},
dismissOnClicked: true,
);
}
void _showMenu(RelativeRect pos) {
final items = [
getEntry(translate("Add ID"), abAddId),
getEntry(translate("Add Tag"), abAddTag),
getEntry(translate("Unselect all tags"), gFFI.abModel.unsetSelectedTags),
sortMenuItem(),
syncMenuItem(),
];
mod_menu.showMenu(
@@ -198,6 +294,9 @@ class _AddressBookState extends State<AddressBook> {
}
void abAddId() async {
if (gFFI.abModel.isFull(true)) {
return;
}
var isInProgress = false;
IDTextEditingController idController = IDTextEditingController(text: '');
TextEditingController aliasController = TextEditingController(text: '');
@@ -224,13 +323,14 @@ class _AddressBookState extends State<AddressBook> {
return;
}
gFFI.abModel.addId(id, aliasController.text.trim(), selectedTag);
await gFFI.abModel.pushAb();
gFFI.abModel.pushAb();
this.setState(() {});
// final currentPeers
}
close();
}
double marginBottom = 4;
return CustomAlertDialog(
title: Text(translate("Add ID")),
content: Column(
@@ -252,7 +352,7 @@ class _AddressBookState extends State<AddressBook> {
),
],
),
),
).marginOnly(bottom: marginBottom),
TextField(
controller: idController,
inputFormatters: [IDTextInputFormatter()],
@@ -264,7 +364,7 @@ class _AddressBookState extends State<AddressBook> {
translate('Alias'),
style: style,
),
).marginOnly(top: 8, bottom: 2),
).marginOnly(top: 8, bottom: marginBottom),
TextField(
controller: aliasController,
),
@@ -274,8 +374,9 @@ class _AddressBookState extends State<AddressBook> {
translate('Tags'),
style: style,
),
).marginOnly(top: 8),
Container(
).marginOnly(top: 8, bottom: marginBottom),
Align(
alignment: Alignment.centerLeft,
child: Wrap(
children: tags
.map((e) => AddressBookTag(
@@ -297,8 +398,8 @@ class _AddressBookState extends State<AddressBook> {
const SizedBox(
height: 4.0,
),
Offstage(
offstage: !isInProgress, child: const LinearProgressIndicator())
// NOT use Offstage to wrap LinearProgressIndicator
if (isInProgress) const LinearProgressIndicator(),
],
),
actions: [
@@ -331,7 +432,7 @@ class _AddressBookState extends State<AddressBook> {
for (final tag in tags) {
gFFI.abModel.addTag(tag);
}
await gFFI.abModel.pushAb();
gFFI.abModel.pushAb();
// final currentPeers
}
close();
@@ -363,8 +464,8 @@ class _AddressBookState extends State<AddressBook> {
const SizedBox(
height: 4.0,
),
Offstage(
offstage: !isInProgress, child: const LinearProgressIndicator())
// NOT use Offstage to wrap LinearProgressIndicator
if (isInProgress) const LinearProgressIndicator(),
],
),
actions: [
@@ -402,31 +503,71 @@ class AddressBookTag extends StatelessWidget {
pos = RelativeRect.fromLTRB(x, y, x, y);
}
const double radius = 8;
return GestureDetector(
onTap: onTap,
onTapDown: showActionMenu ? setPosition : null,
onSecondaryTapDown: showActionMenu ? setPosition : null,
onSecondaryTap: showActionMenu ? () => _showMenu(context, pos) : null,
onLongPress: showActionMenu ? () => _showMenu(context, pos) : null,
child: Obx(
() => Container(
decoration: BoxDecoration(
color: tags.contains(name)
? Colors.blue
: Theme.of(context).colorScheme.background,
borderRadius: BorderRadius.circular(6)),
margin: const EdgeInsets.symmetric(horizontal: 4.0, vertical: 8.0),
padding: const EdgeInsets.symmetric(vertical: 2.0, horizontal: 8.0),
child: Text(name,
style:
TextStyle(color: tags.contains(name) ? Colors.white : null)),
),
),
child: Obx(() => Container(
decoration: BoxDecoration(
color: tags.contains(name)
? str2color2(name, 0xFF)
: Theme.of(context).colorScheme.background,
borderRadius: BorderRadius.circular(4)),
margin: const EdgeInsets.symmetric(horizontal: 4.0, vertical: 4.0),
padding: const EdgeInsets.symmetric(vertical: 2.0, horizontal: 6.0),
child: IntrinsicWidth(
child: Row(
children: [
Container(
width: radius,
height: radius,
decoration: BoxDecoration(
shape: BoxShape.circle,
color: tags.contains(name)
? Colors.white
: str2color2(name)),
).marginOnly(right: radius / 2),
Expanded(
child: Text(name,
style: TextStyle(
overflow: TextOverflow.ellipsis,
color: tags.contains(name) ? Colors.white : null)),
),
],
),
),
)),
);
}
void _showMenu(BuildContext context, RelativeRect pos) {
final items = [
getEntry(translate("Rename"), () {
renameDialog(
oldName: name,
validator: (String? newName) {
if (newName == null || newName.isEmpty) {
return translate('Can not be empty');
}
if (newName != name && gFFI.abModel.tags.contains(newName)) {
return translate('Already exists');
}
return null;
},
onSubmit: (String newName) {
if (name != newName) {
gFFI.abModel.renameTag(name, newName);
gFFI.abModel.pushAb();
}
Future.delayed(Duration.zero, () => Get.back());
},
onCancel: () {
Future.delayed(Duration.zero, () => Get.back());
});
}),
getEntry(translate("Delete"), () {
gFFI.abModel.deleteTag(name);
gFFI.abModel.pushAb();
@@ -458,7 +599,6 @@ MenuEntryButton<String> getEntry(String title, VoidCallback proc) {
style: style,
),
proc: proc,
padding: kDesktopMenuPadding,
dismissOnClicked: true,
);
}

View File

@@ -1,11 +1,17 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
class AnimatedRotationWidget extends StatefulWidget {
final VoidCallback onPressed;
final ValueChanged<bool>? onHover;
final Widget child;
final RxBool? spinning;
const AnimatedRotationWidget(
{super.key, required this.onPressed, required this.child, this.onHover});
{super.key,
required this.onPressed,
required this.child,
this.spinning,
this.onHover});
@override
State<AnimatedRotationWidget> createState() => AnimatedRotationWidgetState();
@@ -14,14 +20,31 @@ class AnimatedRotationWidget extends StatefulWidget {
class AnimatedRotationWidgetState extends State<AnimatedRotationWidget> {
double turns = 0.0;
@override
void initState() {
super.initState();
widget.spinning?.listen((v) {
if (v && mounted) {
setState(() {
turns += 1;
});
}
});
}
@override
Widget build(BuildContext context) {
return AnimatedRotation(
turns: turns,
duration: const Duration(milliseconds: 200),
onEnd: () {
if (widget.spinning?.value == true && mounted) {
setState(() => turns += 1.0);
}
},
child: InkWell(
onTap: () {
setState(() => turns += 1.0);
if (mounted) setState(() => turns += 1.0);
widget.onPressed();
},
onHover: widget.onHover,

Some files were not shown because too many files have changed in this diff Show More