The left navigation bar in the DSH Web settings interface may have content obscured when there are many plugins and the settings sections exceed the viewport height, causing some buttons to be unclickable. The dsh-settings-nav-scroll plugin resolves this limitation by adding a vertical scrollbar to the navigation area, ensuring that all settings entries can be accessed by scrolling.

Feature Scope

The plugin only applies to settings navigation containing buttons inside navigation with the [role="dialog"] attribute. It uses host theme variables, is compatible with light and dark themes, and supports scrollbar styling in Chromium/WebKit and Firefox.

The plugin does not modify core DSH files. After the plugin is disabled or uninstalled, the styles are automatically removed.

Installation and Enablement

Run the following command in a terminal to install the plugin.

dsh plugin --profile web add github:luxi233/dsh-settings-nav-scroll

After installation, restart DSH Web and refresh the browser page.

Verification

After installation, you can verify the plugin status using the following commands.

npm test
npm run check

Uninstallation

To remove the plugin, run the following command.

dsh plugin --profile web remove dsh-settings-nav-scroll

Applicable Scenarios and Notes

Applicable Scenario: When the left navigation in the DSH Web settings page contains too much content and exceeds the visible screen area, this plugin restores scrolling accessibility.

Note: The plugin runs with the permissions of the current dsh process. It is recommended to review the source code and license (MIT) before installation.