Advertisement |
What is the "Always Active Window" extension and how can I use it?
The extension injects a small JavaScript code into the selected HTML page before they load (you need to refresh already loaded tabs for the script to take effect). This script performs the following main tasks:
document.visibilityState
and document.hidden
for all browsers, as well as document.mozHidden
for Firefox and document.webkitHidden
for all Chromium-based browsers. This ensures that if a JavaScript code checks the current visibility state, it will only receive a "visible" state, making the code believe that the page is active.visibilitychange
, webkitvisibilitychange
, and mozvisibilitychange
. These events are typically used to alter page behavior based on visibility status.requestAnimationFrame
method continues to be called even when the page is hidden. Normally, browsers stop calling this method on hidden tabs for efficiency reasons.recommended The "Save Tabs" extension for Chrome, Edge, and Firefox browsers.
The "Save Tabs" extension allows you to save and restore tabs across different windows, helping reduce memory usage or revisit tabs later while preserving their state. It also supports syncing across devices and offers optional password protection for session security, all without affecting browser performance when not in use. Read more here.
What's new in this version?
Please check the Logs section.
[Before 0.4.0 release] Is it possible to turn off this extension on certain web pages or restrict it to only certain ones?
Currently, this extension does not offer black- or white-list filtering. If you require such filtering, you can submit your request on the review section of this page. For now, if you need to enable this extension on a few specific hostnames, you can create a different browser profile for those hostnames and install the extension only on that profile. Additionally, on Chromium-based browsers, you can limit the extension's access from the action button. There is an "allow access" option that can be used to restrict the extension's access.
[Deprecated] Is it possible to use this extension to verify if a webpage is checking for visibility state?
Although the extension does not have an options page, you can still turn on real-time logging information in the browser console. Simply open the extension's console, enter the command localStorage.setItem('log', true)
, then press Enter. When you no longer need to log information, use localStorage.setItem('log', false)
to prevent clutter in the browser console. The extension features two logging methods: one for page visibility events and one for checking the visibility state with JavaScript code.
[Before 0.4.0 release] Can I limit the extension's access to specific hostnames although it doesn't support the exception list?
While the extension doesn't currently support the exception list, if you're using it on a Chromium browser, you can disallow the extension from having access to all hostnames. Right-click on the browser action button of the extension and change the "This can Read and Change Site Data" radio from the "On all Sites" option to the "On this Hostname" option. By selecting this option, the extension will only inject its blocker script into the active hostname, effectively creating a whitelist. Make sure to perform this action on all hostnames where you want the extension to protect the visibility state.
How can I resolve issues with certain website functionalities while using this extension?
This extension is designed to block certain events to prevent websites from detecting changes in the visibility state, which can cause some websites to malfunction. For example, a website may need to detect when your mouse leaves the page, but this extension blocks this event by default. It is recommended to check FAQ5 for instructions on how to globally disable the extension and only activate it on necessary websites. However, if you still want to use the extension while accessing a problematic website, you can partially disable it using the "Policies" section on the options page. In this section, you can create a JSON object with the website hostname as the key and an array of specific events to unblock as the value. The supported events are blur
, focus
, mouseleave
, and visibility
. For example, if you want to unblock the blur
event on Google Docs, you can use docs.google.com
as the key and ["blur"]
as the value.
Is there a way to prevent tab throttling on Chromium browsers for a website that frequently updates its content, even when the tab is inactive?
Yes, Chromium browsers have a built-in feature called tab throttling, which reduces the resource usage of inactive tabs. This throttling can significantly reduce the number of times a website updates its content when it is inactive. However, you can turn off this feature by opening Chrome with the --disable-background-timer-throttling
argument. This will prevent tab throttling for all tabs in the browser. Keep in mind that this may have an impact on the overall performance of your system.
On Windows, close all Chrome browser windows. From the Start menu, search for the "Run" program. On the "Open:" input type the following command and hit the Enter key.
%ProgramFiles%/Google/Chrome/Application/chrome.exe --disable-background-timer-throttling
Also visit Chrome internal flags related to throttling by opening chrome://flags/#throttling
in a new tab.How can I test this extension?
You can use an online service that monitors different visibility events like webbrowsertools.com/test-always-active service. Make sure to enable the extension for this hostname.
Please keep reviews clean, avoid improper language, and do not post any personal information. Also, please consider sharing your valuable input on the official store.
Permission | Description |
---|---|
storage | to store and retrieve internal preference |