RustDesk/flutter/lib/models
RustDesk 6c3515588f
- UI display: display_name first (#14358)
* - UI display: display_name first
  - Fallback: name
  - Technical identity: still name

  ### What changed

  - Added account display helpers and display_name state in user model:
      - flutter/lib/models/user_model.dart:16
  - Account/logout label now uses display_name (@name) when both exist:
      - flutter/lib/mobile/pages/settings_page.dart:689
      - flutter/lib/desktop/pages/desktop_setting_page.dart:2016
      - flutter/lib/desktop/pages/desktop_setting_page.dart:2135
  - Desktop Account info now shows both when applicable:
      - Display Name: ...
      - Username: ...
      - flutter/lib/desktop/pages/desktop_setting_page.dart:2039
  - Previously done group-list behavior remains:
      - group user list displays display_name with name fallback
      - flutter/lib/common/widgets/my_group.dart:187
  - Persistence path for display_name remains enabled (including group cache/submodule field):
      - libs/hbb_common/src/config.rs:2347
  - src/client.rs:2630
  - LoginRequest.my_name now resolves as:
      1. OPTION_DISPLAY_NAME (manual override)
      2. user_info.display_name
      3. user_info.name
      4. OS username fallback

* 1. GUID key (...Uninstall\{GUID}) is MSI-native metadata generated by Windows Installer.
  2. Non-GUID key (...Uninstall\RustDesk) is explicitly written by RustDesk’s MSI compatibility component in res/msi/Package/Components/Regs.wxs:44, populated by preprocess.py --arp from .github/workflows/
     flutter-build.yml:262.

  So they were not using the same EstimatedSize logic:

  - MSI GUID key: MSI-calculated size (KB).
  - RustDesk key: custom script value from res/msi/preprocess.py:339 (previously bytes, now fixed to KB).

  That mismatch is exactly why you saw different sizes.

* improve display name handling

  - Append (@username) when multiple users share the same display name
  - Trim whitespace from display_name before comparison and display
  - Add missing translate() for Logout button on desktop

Signed-off-by: 21pages <sunboeasy@gmail.com>

* group peer filter match both user's display name and user's name

Signed-off-by: 21pages <sunboeasy@gmail.com>

* case-insensitive search in group peer filter

Signed-off-by: 21pages <sunboeasy@gmail.com>

---------

Signed-off-by: 21pages <sunboeasy@gmail.com>
Co-authored-by: 21pages <sunboeasy@gmail.com>
2026-02-22 14:59:25 +08:00
..
ab_model.dart remove gzip encoding in Legacy AB pushes (#13937) 2026-01-02 10:24:47 +08:00
chat_model.dart fix: web chat (#9588) 2024-10-08 15:23:00 +08:00
cm_file_model.dart feat(fs): delegate win --server file reading to CM (#13736) 2025-12-28 15:39:35 +08:00
desktop_render_texture.dart view camera (#11040) 2025-03-10 21:06:53 +08:00
file_model.dart feat(fs): delegate win --server file reading to CM (#13736) 2025-12-28 15:39:35 +08:00
group_model.dart set allowMalformed to true when decode utf8 (#12693) 2025-08-20 14:55:52 +08:00
input_model.dart fix(ios): capsLock, workaround #5871 (#14194) 2026-01-30 17:32:18 +08:00
model.dart fix(mobile): account for safe area padding in canvas size calculation (#14285) 2026-02-15 14:52:27 +08:00
native_model.dart fix: ios, file transfer, home dir (#12657) 2025-08-15 00:00:05 +08:00
peer_model.dart show peer note (#13140) 2025-10-12 14:59:42 +08:00
peer_tab_model.dart disable-discovery-pane 2025-09-01 17:07:29 +08:00
platform_model.dart fix: web send audit note (#9582) 2024-10-07 21:37:43 +08:00
printer_model.dart feat: take screenshot (#11591) 2025-04-30 17:23:35 +08:00
relative_mouse_model.dart feat: Add relative mouse mode (#13928) 2026-01-09 10:03:14 +08:00
server_model.dart keep-awake-during-incoming-sessions (#14082) 2026-01-21 16:25:57 +08:00
state_model.dart feat: Add relative mouse mode (#13928) 2026-01-09 10:03:14 +08:00
terminal_model.dart fix(terminal): fix new tab auto-focus and NaN error on data before layout (#14357) 2026-02-20 14:44:25 +08:00
user_model.dart - UI display: display_name first (#14358) 2026-02-22 14:59:25 +08:00
web_model.dart Revert "try fix firefox v2 paste problem" (#12126) 2025-06-19 22:31:40 +08:00