Makes the currently selected table row more visible.

Latest Version

Version
1.2.1
Update
March 2, 2020
Size
7.74KiB
Developer
Category
Users
187
Rating
2.66667 ★
Manifest Version
2
Web Store Status
Languages Support
English
See more
Permissions
ContextMenus
ActiveTab
See more

Highlight Active Row Extension

This extension helps prevent mistaken data entry by making the currently selected table row more visible. Anytime an input box inside of a table is selected the entire table row gets its style changed. The goal is to make it extremely obvious which row you are currently inputting data on to reduce the chances of inputting data on the wrong row.


How it works:
The extension injects a small script that adds a 'focusin'/'focusout' event listener to the root document object.

When the 'focusin' event fires it starts at the event.target and traverses the DOM in search of a parent element. If is found it sets the inline style to a preset highlight style.

When the 'focusout' event fires it starts at the event.target and traverses the DOM in search of a parent element. If is found it clears the inline style.

Extra Details:
* The extension needs to be enabled the first time you visit a new website by clicking the extension icon and selecting `Enable Highlight Active Row on this domain` from the context menu. This allows the user to only run the extension on select websites.
* Currently has a hard set MAX_DEPTH of 5 which limits how many parents it check before stopping. This should prevent all unnecessary DOM traversing for nodes not connected to a table, but also allow some wiggle room if the input is in a
or two.

Future features:
- add an options page that allows the user to set a custom highlight style

This is an open source project. Visit Highlight-Active-Row's Github page for source code, to report bugs or to contribute.
https://github.com/tomrule007/highlight-active-row


Version History:
1.2.1: Fixed bug that required user to reload the extension on page changes.
1.2.0: Allow the user to enable/disable the extension for each website domain
1.1.0: Switched to focusin/focusout events & delegation which works with dynamically added content.
1.0.0: Event listener were attached to each input element on load & didn't work with dynamically added content.
Read more

Source Manifest.json

{"update_url": "https://clients2.google.com/service/update2/crx", "name": "Highlight Active Row", "version": "1.2.1", "description": "Makes the currently selected table row more visible.", "permissions": ["contextMenus", "activeTab"], "optional_permissions": ["http://*/*", "https://*/*"], "background": { "scripts": ["background.js"], "persistent": false }, "browser_action": { "default_icon": "./images/highlightActiveRowIcon16OFF.png" }, "icons": { "16": "./images/highlightActiveRowIcon16.png", "48": "./images/highlightActiveRowIcon48.png", "128": "./images/highlightActiveRowIcon128.png" }, "manifest_version": 2}
Read more