diff --git a/flutter/assets/screen.svg b/flutter/assets/screen.svg
new file mode 100644
index 000000000..c1d560b29
--- /dev/null
+++ b/flutter/assets/screen.svg
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/flutter/lib/desktop/pages/desktop_setting_page.dart b/flutter/lib/desktop/pages/desktop_setting_page.dart
index 4609d4f47..af7f7f968 100644
--- a/flutter/lib/desktop/pages/desktop_setting_page.dart
+++ b/flutter/lib/desktop/pages/desktop_setting_page.dart
@@ -1318,6 +1318,7 @@ class _DisplayState extends State<_Display> {
Widget other(BuildContext context) {
return _Card(title: 'Other Default Options', children: [
+ otherRow('Show monitors in menu bar', 'show_monitors_menubar'),
otherRow('Show remote cursor', 'show_remote_cursor'),
otherRow('Zoom cursor', 'zoom-cursor'),
otherRow('Show quality monitor', 'show_quality_monitor'),
diff --git a/flutter/lib/desktop/pages/remote_page.dart b/flutter/lib/desktop/pages/remote_page.dart
index 2099f2e95..2b1999b42 100644
--- a/flutter/lib/desktop/pages/remote_page.dart
+++ b/flutter/lib/desktop/pages/remote_page.dart
@@ -22,7 +22,7 @@ import '../../models/model.dart';
import '../../models/platform_model.dart';
import '../../common/shared_state.dart';
import '../../utils/image.dart';
-import '../widgets/remote_menubar.dart';
+import '../widgets/remote_toolbar.dart';
import '../widgets/kb_layout_type_chooser.dart';
bool _isCustomCursorInited = false;
diff --git a/flutter/lib/desktop/pages/remote_tab_page.dart b/flutter/lib/desktop/pages/remote_tab_page.dart
index d810650fd..f9c30e8c1 100644
--- a/flutter/lib/desktop/pages/remote_tab_page.dart
+++ b/flutter/lib/desktop/pages/remote_tab_page.dart
@@ -9,7 +9,7 @@ import 'package:flutter_hbb/common/shared_state.dart';
import 'package:flutter_hbb/consts.dart';
import 'package:flutter_hbb/models/state_model.dart';
import 'package:flutter_hbb/desktop/pages/remote_page.dart';
-import 'package:flutter_hbb/desktop/widgets/remote_menubar.dart';
+import 'package:flutter_hbb/desktop/widgets/remote_toolbar.dart';
import 'package:flutter_hbb/desktop/widgets/tabbar_widget.dart';
import 'package:flutter_hbb/desktop/widgets/material_mod_popup_menu.dart'
as mod_menu;
diff --git a/flutter/lib/desktop/widgets/remote_menubar.dart b/flutter/lib/desktop/widgets/remote_toolbar.dart
similarity index 94%
rename from flutter/lib/desktop/widgets/remote_menubar.dart
rename to flutter/lib/desktop/widgets/remote_toolbar.dart
index 01e41609b..41c2ef21f 100644
--- a/flutter/lib/desktop/widgets/remote_menubar.dart
+++ b/flutter/lib/desktop/widgets/remote_toolbar.dart
@@ -356,7 +356,7 @@ class _RemoteMenubarState extends State {
return Align(
alignment: Alignment.topCenter,
child: Obx(() => show.value
- ? _buildMenubar(context)
+ ? _buildToolbar(context)
: _buildDraggableShowHide(context)),
);
}
@@ -384,30 +384,39 @@ class _RemoteMenubarState extends State {
});
}
- Widget _buildMenubar(BuildContext context) {
- final List menubarItems = [];
+ Widget _buildToolbar(BuildContext context) {
+ final List toolbarItems = [];
if (!isWebDesktop) {
- menubarItems.add(_PinMenu(state: widget.state));
- menubarItems.add(
+ toolbarItems.add(_PinMenu(state: widget.state));
+ toolbarItems.add(
_FullscreenMenu(state: widget.state, setFullscreen: _setFullscreen));
- menubarItems.add(_MobileActionMenu(ffi: widget.ffi));
+ toolbarItems.add(_MobileActionMenu(ffi: widget.ffi));
}
- menubarItems.add(_MonitorMenu(id: widget.id, ffi: widget.ffi));
- menubarItems
+
+ if (PrivacyModeState.find(widget.id).isFalse &&
+ stateGlobal.displaysCount.value > 1) {
+ toolbarItems.add(
+ bind.mainGetUserDefaultOption(key: 'show_monitors_menubar') == 'Y'
+ ? _MultiMonitorMenu(id: widget.id, ffi: widget.ffi)
+ : _MonitorMenu(id: widget.id, ffi: widget.ffi),
+ );
+ }
+
+ toolbarItems
.add(_ControlMenu(id: widget.id, ffi: widget.ffi, state: widget.state));
- menubarItems.add(_DisplayMenu(
+ toolbarItems.add(_DisplayMenu(
id: widget.id,
ffi: widget.ffi,
state: widget.state,
setFullscreen: _setFullscreen,
));
- menubarItems.add(_KeyboardMenu(id: widget.id, ffi: widget.ffi));
+ toolbarItems.add(_KeyboardMenu(id: widget.id, ffi: widget.ffi));
if (!isWeb) {
- menubarItems.add(_ChatMenu(id: widget.id, ffi: widget.ffi));
- menubarItems.add(_VoiceCallMenu(id: widget.id, ffi: widget.ffi));
+ toolbarItems.add(_ChatMenu(id: widget.id, ffi: widget.ffi));
+ toolbarItems.add(_VoiceCallMenu(id: widget.id, ffi: widget.ffi));
}
- menubarItems.add(_RecordMenu());
- menubarItems.add(_CloseMenu(id: widget.id, ffi: widget.ffi));
+ toolbarItems.add(_RecordMenu());
+ toolbarItems.add(_CloseMenu(id: widget.id, ffi: widget.ffi));
return Column(
mainAxisSize: MainAxisSize.min,
children: [
@@ -427,7 +436,7 @@ class _RemoteMenubarState extends State {
child: Row(
children: [
SizedBox(width: _MenubarTheme.buttonHMargin * 2),
- ...menubarItems,
+ ...toolbarItems,
SizedBox(width: _MenubarTheme.buttonHMargin * 2)
],
),
@@ -527,10 +536,6 @@ class _MonitorMenu extends StatelessWidget {
@override
Widget build(BuildContext context) {
- if (PrivacyModeState.find(id).isTrue ||
- stateGlobal.displaysCount.value < 2) {
- return Offstage();
- }
return _IconSubmenuButton(
tooltip: 'Select Monitor',
icon: icon(),
@@ -549,19 +554,20 @@ class _MonitorMenu extends StatelessWidget {
alignment: Alignment.center,
children: [
SvgPicture.asset(
- "assets/display.svg",
+ "assets/screen.svg",
color: Colors.white,
),
- Padding(
- padding: const EdgeInsets.only(bottom: 3.9),
- child: Obx(() {
- RxInt display = CurrentDisplayState.find(id);
- return Text(
- '${display.value + 1}/${pi.displays.length}',
- style: const TextStyle(color: Colors.white, fontSize: 8),
- );
- }),
- )
+ Obx(() {
+ RxInt display = CurrentDisplayState.find(id);
+ return Text(
+ '${display.value + 1}/${pi.displays.length}',
+ style: const TextStyle(
+ color: _MenubarTheme.blueColor,
+ fontSize: 8,
+ fontWeight: FontWeight.bold,
+ ),
+ );
+ }),
],
);
}
@@ -584,19 +590,17 @@ class _MonitorMenu extends StatelessWidget {
alignment: Alignment.center,
children: [
SvgPicture.asset(
- "assets/display.svg",
+ "assets/screen.svg",
color: Colors.white,
),
- Padding(
- padding: const EdgeInsets.only(bottom: 3.5 /*2.5*/),
- child: Text(
- (i + 1).toString(),
- style: TextStyle(
- color: Colors.white,
- fontSize: 12,
- ),
+ Text(
+ (i + 1).toString(),
+ style: TextStyle(
+ color: _MenubarTheme.blueColor,
+ fontSize: 12,
+ fontWeight: FontWeight.bold,
),
- )
+ ),
],
),
),
@@ -2206,3 +2210,69 @@ Widget _buildPointerTrackWidget(Widget child, FFI ffi) {
),
);
}
+
+class _MultiMonitorMenu extends StatelessWidget {
+ final String id;
+ final FFI ffi;
+
+ const _MultiMonitorMenu({
+ super.key,
+ required this.id,
+ required this.ffi,
+ });
+
+ @override
+ Widget build(BuildContext context) {
+ final List rowChildren = [];
+ final pi = ffi.ffiModel.pi;
+
+ for (int i = 0; i < pi.displays.length; i++) {
+ rowChildren.add(
+ Obx(() {
+ RxInt display = CurrentDisplayState.find(id);
+ return _IconMenuButton(
+ topLevel: false,
+ color: i == display.value
+ ? _MenubarTheme.blueColor
+ : Colors.grey[800]!,
+ hoverColor: i == display.value
+ ? _MenubarTheme.hoverBlueColor
+ : Colors.grey[850]!,
+ icon: Container(
+ alignment: AlignmentDirectional.center,
+ constraints:
+ const BoxConstraints(minHeight: _MenubarTheme.height),
+ child: Stack(
+ alignment: Alignment.center,
+ children: [
+ SvgPicture.asset(
+ "assets/screen.svg",
+ color: Colors.white,
+ ),
+ Obx(
+ () => Text(
+ (i + 1).toString(),
+ style: TextStyle(
+ color: i == display.value
+ ? _MenubarTheme.blueColor
+ : Colors.grey[800]!,
+ fontSize: 12,
+ fontWeight: FontWeight.bold,
+ ),
+ ),
+ ),
+ ],
+ ),
+ ),
+ onPressed: () {
+ if (display.value != i) {
+ bind.sessionSwitchDisplay(id: id, value: i);
+ }
+ },
+ );
+ }),
+ );
+ }
+ return Row(children: rowChildren);
+ }
+}
diff --git a/src/lang/ca.rs b/src/lang/ca.rs
index 34671474f..7a8e5e437 100644
--- a/src/lang/ca.rs
+++ b/src/lang/ca.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/cn.rs b/src/lang/cn.rs
index 6778a8818..0781a2a97 100644
--- a/src/lang/cn.rs
+++ b/src/lang/cn.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "此文件与对方的一致")
+ ("identical_file_tip", "此文件与对方的一致"),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/cs.rs b/src/lang/cs.rs
index b60b927f0..03f8d6240 100644
--- a/src/lang/cs.rs
+++ b/src/lang/cs.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/da.rs b/src/lang/da.rs
index 9b6ac2be5..cfb66528d 100644
--- a/src/lang/da.rs
+++ b/src/lang/da.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", "Tom brugernavn"),
("Empty Password", "Tom adgangskode"),
("Me", "Mig"),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/de.rs b/src/lang/de.rs
index 042756885..ab1e2976b 100644
--- a/src/lang/de.rs
+++ b/src/lang/de.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", "Leerer Benutzername"),
("Empty Password", "Leeres Passwort"),
("Me", "Ich"),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/el.rs b/src/lang/el.rs
index 771fa8797..e7defa943 100644
--- a/src/lang/el.rs
+++ b/src/lang/el.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", "Κενό όνομα χρήστη"),
("Empty Password", "Κενός κωδικός πρόσβασης"),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/en.rs b/src/lang/en.rs
index c44c9c9f9..eb09dacd2 100644
--- a/src/lang/en.rs
+++ b/src/lang/en.rs
@@ -52,6 +52,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("empty_favorite_tip", "No favorite peers yet?\nLet's find someone to connect with and add it to your favorites!"),
("empty_lan_tip", "Oh no, it looks like we haven't discovered any peers yet."),
("empty_address_book_tip", "Oh dear, it appears that there are currently no peers listed in your address book."),
- ("identical_file_tip", "This file is identical with the peer's one.")
+ ("identical_file_tip", "This file is identical with the peer's one."),
+ ("show_monitors_tip", "Show monitors in toolbar")
].iter().cloned().collect();
}
diff --git a/src/lang/eo.rs b/src/lang/eo.rs
index 3219e3b42..2eb430d32 100644
--- a/src/lang/eo.rs
+++ b/src/lang/eo.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/es.rs b/src/lang/es.rs
index 58f331d01..12a537216 100644
--- a/src/lang/es.rs
+++ b/src/lang/es.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", "Nombre de usuario vacío"),
("Empty Password", "Contraseña vacía"),
("Me", "Yo"),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/fa.rs b/src/lang/fa.rs
index b57f0dbe9..c6aa36d58 100644
--- a/src/lang/fa.rs
+++ b/src/lang/fa.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/fr.rs b/src/lang/fr.rs
index ed8089774..b327972b7 100644
--- a/src/lang/fr.rs
+++ b/src/lang/fr.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/hu.rs b/src/lang/hu.rs
index 3b281a25f..b4df936bb 100644
--- a/src/lang/hu.rs
+++ b/src/lang/hu.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/id.rs b/src/lang/id.rs
index 7e6095715..465f2082c 100644
--- a/src/lang/id.rs
+++ b/src/lang/id.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/it.rs b/src/lang/it.rs
index f860dbc88..94fea4e03 100644
--- a/src/lang/it.rs
+++ b/src/lang/it.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", "Nome Utente Vuoto"),
("Empty Password", "Password Vuota"),
("Me", "Io"),
- ("identical_file_tip", "")
+ ("identical_file_tip", "Questo file è identico a quello del peer."),
+ ("show_monitors_tip", "Mostra schermi nella barra degli strumenti"),
].iter().cloned().collect();
}
diff --git a/src/lang/ja.rs b/src/lang/ja.rs
index 366082cc4..d5bd2e973 100644
--- a/src/lang/ja.rs
+++ b/src/lang/ja.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ko.rs b/src/lang/ko.rs
index 5244704bb..83ba01915 100644
--- a/src/lang/ko.rs
+++ b/src/lang/ko.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/kz.rs b/src/lang/kz.rs
index 120bcb81e..de33f7e57 100644
--- a/src/lang/kz.rs
+++ b/src/lang/kz.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/nl.rs b/src/lang/nl.rs
index dadc27705..05fc9a65c 100644
--- a/src/lang/nl.rs
+++ b/src/lang/nl.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", "Gebruikersnaam Leeg"),
("Empty Password", "Wachtwoord Leeg"),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/pl.rs b/src/lang/pl.rs
index c75b392da..e93635ca5 100644
--- a/src/lang/pl.rs
+++ b/src/lang/pl.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/pt_PT.rs b/src/lang/pt_PT.rs
index 0ed7642f3..a2189a7b0 100644
--- a/src/lang/pt_PT.rs
+++ b/src/lang/pt_PT.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ptbr.rs b/src/lang/ptbr.rs
index 66dbcd6b7..19db9e989 100644
--- a/src/lang/ptbr.rs
+++ b/src/lang/ptbr.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ro.rs b/src/lang/ro.rs
index 3efbcc281..382844fba 100644
--- a/src/lang/ro.rs
+++ b/src/lang/ro.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ru.rs b/src/lang/ru.rs
index 91ef210c8..ee35e598a 100644
--- a/src/lang/ru.rs
+++ b/src/lang/ru.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sk.rs b/src/lang/sk.rs
index 0b891ff03..43d1539a9 100644
--- a/src/lang/sk.rs
+++ b/src/lang/sk.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sl.rs b/src/lang/sl.rs
index 29fb6be3c..56539fa74 100755
--- a/src/lang/sl.rs
+++ b/src/lang/sl.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sq.rs b/src/lang/sq.rs
index 3a923d742..65e18b517 100644
--- a/src/lang/sq.rs
+++ b/src/lang/sq.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sr.rs b/src/lang/sr.rs
index cf077ac58..c16a0c039 100644
--- a/src/lang/sr.rs
+++ b/src/lang/sr.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/sv.rs b/src/lang/sv.rs
index 66f140e99..b5529c05b 100644
--- a/src/lang/sv.rs
+++ b/src/lang/sv.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/template.rs b/src/lang/template.rs
index 9f4ad1835..4f29f7dc3 100644
--- a/src/lang/template.rs
+++ b/src/lang/template.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/th.rs b/src/lang/th.rs
index 1ada40612..72355ee5d 100644
--- a/src/lang/th.rs
+++ b/src/lang/th.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/tr.rs b/src/lang/tr.rs
index 9215464ea..ba4c33bea 100644
--- a/src/lang/tr.rs
+++ b/src/lang/tr.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/tw.rs b/src/lang/tw.rs
index b18488b26..90cb0bf61 100644
--- a/src/lang/tw.rs
+++ b/src/lang/tw.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/ua.rs b/src/lang/ua.rs
index f5c0c22f7..68b46e700 100644
--- a/src/lang/ua.rs
+++ b/src/lang/ua.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}
diff --git a/src/lang/vn.rs b/src/lang/vn.rs
index e8bc76c8e..43e339331 100644
--- a/src/lang/vn.rs
+++ b/src/lang/vn.rs
@@ -477,6 +477,7 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Empty Username", ""),
("Empty Password", ""),
("Me", ""),
- ("identical_file_tip", "")
+ ("identical_file_tip", ""),
+ ("show_monitors_tip", ""),
].iter().cloned().collect();
}