added a flag to hide settings (#5263)

Added an optional flag in settings.yml to hide the settings button in no
login servers. When hidden, users can no longer:

- Open the Settings modal at all (gear button is hidden)
- Change General preferences (tool picker mode, hide unavailable
tools/conversions, auto‑unzip and file limit)
- Configure keyboard shortcuts (Hotkeys / Keyboard Shortcuts section)
- Use the in‑app update checker UI (see current/latest version, check
for updates, view update details)
- Note: When enableLogin === true, the flag is ignored and the Settings
button remains visible.

---------

Co-authored-by: Anthony Stirling <[email protected]>
Co-authored-by: Reece Browne <[email protected]>
This commit is contained in:
EthanHealy01
2025-12-24 20:56:22 +00:00
committed by GitHub
co-authored by Anthony Stirling Reece Browne
parent 69b035c6e1
commit 1b0a1e938e
6 changed files with 17 additions and 5 deletions
@@ -84,6 +84,9 @@ public class ConfigController {
boolean enableLogin =
applicationProperties.getSecurity().isEnableLogin() && userService != null;
configData.put("enableLogin", enableLogin);
configData.put(
"showSettingsWhenNoLogin",
applicationProperties.getSystem().isShowSettingsWhenNoLogin());
// Mail settings - check both SMTP enabled AND invites enabled
boolean smtpEnabled = applicationProperties.getMail().isEnabled();