From 75df3fcea3fa717dafe5993ea6604e705b8624c0 Mon Sep 17 00:00:00 2001 From: NiLuJe Date: Sat, 7 Jul 2018 17:06:58 +0200 Subject: [PATCH] Dismiss Wi-Fi scan popup after connection (#4055) * Add a config switch to automatically dismiss the WiFi scan popup on connect --- Makefile | 6 +++--- base | 2 +- frontend/ui/elements/filemanager_menu_order.lua | 1 + frontend/ui/elements/reader_menu_order.lua | 1 + frontend/ui/network/manager.lua | 10 ++++++++++ frontend/ui/widget/networksetting.lua | 5 ++++- 6 files changed, 20 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 993378a80..895c51871 100644 --- a/Makefile +++ b/Makefile @@ -67,7 +67,7 @@ ifneq ($(or $(EMULATE_READER),$(WIN32)),) cd $(INSTALL_DIR)/koreader/spec/front/unit && test -e data || \ ln -sf ../../test ./data else - $(RCP) -fL $(KOR_BASE)/$(OUTPUT_DIR)/* $(INSTALL_DIR)/koreader/ + $(RCP) -fL $(KOR_BASE)/$(OUTPUT_DIR)/. $(INSTALL_DIR)/koreader/. endif for f in $(INSTALL_FILES); do \ ln -sf ../../$$f $(INSTALL_DIR)/koreader/; \ @@ -82,12 +82,12 @@ ifdef WIN32 endif @echo "[*] Install plugins" @# TODO: link istead of cp? - $(RCP) plugins/* $(INSTALL_DIR)/koreader/plugins/ + $(RCP) plugins/. $(INSTALL_DIR)/koreader/plugins/. @# purge deleted plugins for d in $$(ls $(INSTALL_DIR)/koreader/plugins); do \ test -d plugins/$$d || rm -rf $(INSTALL_DIR)/koreader/plugins/$$d ; done @echo "[*] Installresources" - $(RCP) -pL resources/fonts/* $(INSTALL_DIR)/koreader/fonts/ + $(RCP) -pL resources/fonts/. $(INSTALL_DIR)/koreader/fonts/. install -d $(INSTALL_DIR)/koreader/{screenshots,data/{dict,tessdata},fonts/host,ota} ifeq ($(or $(EMULATE_READER),$(WIN32)),) @echo "[*] Clean up, remove unused files for releases" diff --git a/base b/base index cc7011462..cbbebcc43 160000 --- a/base +++ b/base @@ -1 +1 @@ -Subproject commit cc701146299d8c5ee2d5a1f207f67905480bf097 +Subproject commit cbbebcc43db3c9e00d056b46a081e2c5ee54e3a8 diff --git a/frontend/ui/elements/filemanager_menu_order.lua b/frontend/ui/elements/filemanager_menu_order.lua index 98347b009..7bc962886 100644 --- a/frontend/ui/elements/filemanager_menu_order.lua +++ b/frontend/ui/elements/filemanager_menu_order.lua @@ -39,6 +39,7 @@ local order = { "network_restore", "network_info", "network_before_wifi_action", + "network_dismiss_scan", "----------------------------", "ssh", }, diff --git a/frontend/ui/elements/reader_menu_order.lua b/frontend/ui/elements/reader_menu_order.lua index 3a556b9da..44295c39d 100644 --- a/frontend/ui/elements/reader_menu_order.lua +++ b/frontend/ui/elements/reader_menu_order.lua @@ -59,6 +59,7 @@ local order = { "network_restore", "network_info", "network_before_wifi_action", + "network_dismiss_scan", "----------------------------", "ssh", }, diff --git a/frontend/ui/network/manager.lua b/frontend/ui/network/manager.lua index 563612886..55c05aa7e 100644 --- a/frontend/ui/network/manager.lua +++ b/frontend/ui/network/manager.lua @@ -244,12 +244,22 @@ function NetworkMgr:getBeforeWifiActionMenuTable() } end +function NetworkMgr:getDismissScanMenuTable() + return { + text = _("Dismiss Wi-Fi scan popup after connection"), + checked_func = function() return G_reader_settings:nilOrTrue("auto_dismiss_wifi_scan") end, + --enabled_func = function() return Device:isKobo() end, + callback = function(menu) G_reader_settings:flipNilOrTrue("auto_dismiss_wifi_scan") end, + } +end + function NetworkMgr:getMenuTable(common_settings) common_settings.network_wifi = self:getWifiMenuTable() common_settings.network_proxy = self:getProxyMenuTable() common_settings.network_restore = self:getRestoreMenuTable() common_settings.network_info = self:getInfoMenuTable() common_settings.network_before_wifi_action = self:getBeforeWifiActionMenuTable() + common_settings.network_dismiss_scan = self:getDismissScanMenuTable() end function NetworkMgr:showNetworkMenu(complete_callback) diff --git a/frontend/ui/widget/networksetting.lua b/frontend/ui/widget/networksetting.lua index 4227b3927..b9078f055 100644 --- a/frontend/ui/widget/networksetting.lua +++ b/frontend/ui/widget/networksetting.lua @@ -384,7 +384,7 @@ function NetworkSetting:init() local items = {} table.sort(self.network_list, function(l, r) return l.signal_quality > r.signal_quality end) - for idx,network in ipairs(self.network_list) do + for idx, network in ipairs(self.network_list) do local bg if idx % 2 == 0 then bg = gray_bg @@ -462,6 +462,9 @@ function NetworkSetting:init() local connected_item = self:getConnectedItem() if connected_item ~= nil then obtainIP() + if G_reader_settings:nilOrTrue("auto_dismiss_wifi_scan") then + UIManager:close(self, 'ui', self.dimen) + end UIManager:show(InfoMessage:new{ text = T(_("Connected to network %1"), connected_item.info.ssid) })