This release reduces the frequency of, and possibly eliminates, an issue in which the Hide n' Seek UI occasionally disappears (#11). Since the issue seems to be related to a bug in Chrome that causes service worker listeners to become unresponsive, I redesigned and optimized some logic and was able to create a version of Hide n' Seek that now works with less dependence on some of the affected listeners. The following are some details of these changes:
The listener for chrome.tabs.onActivated has been removed. Previously, the callback would update the badge, but this update was unnecessary. The badge is now only updated when relevant storage properties are updated or when a change in the content script prompts an update.
The listener for chrome.tabs.onUpdated has been removed. Previously, the callback would listen for loading tabs, try to find a URL match for linkedin.com or indeed.com, and then inject a content script. Now, this is no longer necessary because content scripts are statically declared within the manifest. Since content scripts are no longer injected programmatically, this change allowed for the removal of scripting from permissions, as well as the removal of a global variable that was used to guard against multiple script injections.
The updateBadgeTextAndTitle method of the JobBoards class now takes a list of tabs as an argument and only updates those tabs. Previously, it would take a jobBoardId and then update all badges on all tabs with a matching jobBoardId. However, updating all badges was not always necessary.
The getTabsWithJobBoardId method of the JobBoards class now queries tabs with a filter for URL match patterns for linkedin.com and indeed.com, and a filter for window type. Previously, it would query all tabs without any filters, resulting in all tabs being returned.
Some unnecessary async/await logic was removed.
After a few days of testing, I have not seen a recurrence of this issue, but I will continue testing and tracking this issue and provide updates on #11.
Another bug unrelated to the previous was also fixed: Previously, the popup's main (body) scrollbar, which is only necessary when page zoom is greater than 100%, was available, but not visible, because it was black on top of a black background. Now the scrollbar is visible so that users with a page zoom greater than 100% can easily use it.
This release reduces the frequency of, and possibly eliminates, an issue in which the Hide n' Seek UI occasionally disappears (#11). Since the issue seems to be related to a bug in Chrome that causes service worker listeners to become unresponsive, I redesigned and optimized some logic and was able to create a version of Hide n' Seek that now works with less dependence on some of the affected listeners. The following are some details of these changes:
After a few days of testing, I have not seen a recurrence of this issue, but I will continue testing and tracking this issue and provide updates on #11.
Another bug unrelated to the previous was also fixed: Previously, the popup's main (body) scrollbar, which is only necessary when page zoom is greater than 100%, was available, but not visible, because it was black on top of a black background. Now the scrollbar is visible so that users with a page zoom greater than 100% can easily use it.