From d6544ef3a25f413031a834414c7ee04f33a183d2 Mon Sep 17 00:00:00 2001 From: Jake Walker Date: Fri, 7 Jun 2024 19:33:40 +0100 Subject: [PATCH] Mask wifi password in settings app --- modules/firmware_apps/settings_app.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/modules/firmware_apps/settings_app.py b/modules/firmware_apps/settings_app.py index 0a258b4..d0c8524 100644 --- a/modules/firmware_apps/settings_app.py +++ b/modules/firmware_apps/settings_app.py @@ -12,6 +12,13 @@ def string_formatter(value): return str(value) +def masked_string_formatter(value): + if value is None: + return "Default" + else: + return "*" * 8 + + def pct_formatter(value): if value is None: return "Default" @@ -41,6 +48,10 @@ async def string_editor(self, label, id, render_update): self.dialog = TextDialog(label, self) self.dialog._settings_id = id + async def masked_string_editor(self, label, id, render_update): + self.dialog = TextDialog(label, self, masked=True) + self.dialog._settings_id = id + async def _button_handler(self, event): if not self.overlays: layout_handled = await self.layout.button_event(event) @@ -168,7 +179,12 @@ def settings_options(self): None, ), ("wifi_ssid", "WiFi SSID", string_formatter, self.string_editor), - ("wifi_password", "WiFi password", string_formatter, self.string_editor), + ( + "wifi_password", + "WiFi password", + masked_string_formatter, + self.masked_string_editor, + ), ( "wifi_wpa2ent_username", "WPA2 Enterprise Username",