diff --git a/omega-target-chromium-extension/overlay/manifest-firefox.json b/omega-target-chromium-extension/overlay/manifest-firefox.json index 1e27404..a5d535a 100644 --- a/omega-target-chromium-extension/overlay/manifest-firefox.json +++ b/omega-target-chromium-extension/overlay/manifest-firefox.json @@ -1,7 +1,7 @@ { "manifest_version": 3, "name": "ZeroOmega--Proxy Switchy manifest v3 version", - "version": "3.2.0", + "version": "3.2.1", "description": "__MSG_manifest_app_description__", "icons": { "16": "img/icons/omega-action-16.png", diff --git a/omega-target-chromium-extension/overlay/manifest.json b/omega-target-chromium-extension/overlay/manifest.json index dd7fff8..d3aaca6 100644 --- a/omega-target-chromium-extension/overlay/manifest.json +++ b/omega-target-chromium-extension/overlay/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 3, "name": "ZeroOmega--Proxy Switchy manifest v3 version", - "version": "3.2.0", + "version": "3.2.1", "description": "__MSG_manifest_app_description__", "icons": { "16": "img/icons/omega-action-16.png", diff --git a/omega-target-chromium-extension/src/module/options.coffee b/omega-target-chromium-extension/src/module/options.coffee index 029b23f..31312f6 100644 --- a/omega-target-chromium-extension/src/module/options.coffee +++ b/omega-target-chromium-extension/src/module/options.coffee @@ -9,7 +9,10 @@ Url = require('url') TEMPPROFILEKEY = 'tempProfileState' +globalThis.isBrowserRestart = false + chrome.runtime.onStartup.addListener -> + globalThis.isBrowserRestart = true console.log('delete temp profile') idbKeyval.del(TEMPPROFILEKEY).then(-> console.log('delete temp profile success') @@ -22,6 +25,13 @@ class ChromeOptions extends OmegaTarget.Options constructor: (args...) -> super(args...) + chrome.alarms.onAlarm.addListener (alarm) => + switch alarm.name + when 'omega.updateProfile' + console.log('update profile interval') + @ready.then( => + @updateProfile() + ) chrome.contextMenus.onClicked.addListener((info, tab) => @ready.then( => switch info.menuItemId @@ -224,18 +234,11 @@ class ChromeOptions extends OmegaTarget.Options port.onDisconnect.addListener => delete @_tabRequestInfoPorts[tabId] if tabId? - _alarms: null - schedule: (name, periodInMinutes, callback) -> + schedule: (name, periodInMinutes) -> name = 'omega.' + name - if not _alarms? - @_alarms = {} - chrome.alarms.onAlarm.addListener (alarm) => - @_alarms[alarm.name]?() if periodInMinutes < 0 - delete @_alarms[name] chrome.alarms.clear(name) else - @_alarms[name] = callback chrome.alarms.create(name, { periodInMinutes: periodInMinutes }) diff --git a/omega-target/src/options.coffee b/omega-target/src/options.coffee index e85e811..be4c823 100644 --- a/omega-target/src/options.coffee +++ b/omega-target/src/options.coffee @@ -160,7 +160,7 @@ class Options ### init: -> @ready = @loadOptions().then(=> - if @_options['-startupProfileName'] + if globalThis.isBrowserRestart and @_options['-startupProfileName'] @applyProfile(@_options['-startupProfileName']) else @_state.get({ @@ -384,8 +384,7 @@ class Options if changes['-enableQuickSwitch']? or quickSwitchProfiles? @reloadQuickSwitch() if changes['-downloadInterval']? - @schedule 'updateProfile', @_options['-downloadInterval'], => - @updateProfile() + @schedule 'updateProfile', @_options['-downloadInterval'] if changes['-showInspectMenu']? or changes == @_options showMenu = @_options['-showInspectMenu'] if not showMenu? diff --git a/omega-web/src/popup/css/index.css b/omega-web/src/popup/css/index.css index b70bb47..2ad0142 100644 --- a/omega-web/src/popup/css/index.css +++ b/omega-web/src/popup/css/index.css @@ -17,6 +17,7 @@ html, body { body { min-width: 12em; + margin: 5px; } .om-hidden {