Skip to content

fix: address code review feedback from noctalia-dev maintainer (PR #310)#1

Closed
blackbartblues wants to merge 1 commit intoXimoCP:mainfrom
blackbartblues:main
Closed

fix: address code review feedback from noctalia-dev maintainer (PR #310)#1
blackbartblues wants to merge 1 commit intoXimoCP:mainfrom
blackbartblues:main

Conversation

@blackbartblues
Copy link
Copy Markdown

Summary

Fixes raised by maintainer ItsLemmy in noctalia-dev/noctalia-plugins#310.

  • Rename: Plugin name → Hyprland Visual Layer, added hyprland tag in manifest
  • Main.qml: Added IpcHandler with toggle() for keybind compatibility; pluginDir resolved via Settings.configDir (portable path, no hardcoded $HOME)
  • Translations: All comments and fallback strings translated from Spanish → English; removed custom tr() wrappers from all modules — now uses pluginApi?.tr("key") || "fallback" everywhere
  • Logger: All console.log / console.error replaced with Logger.i / Logger.e
  • API: openPanel()togglePanel() (correct pluginApi method); removed non-functional Settings context menu
  • Memory leaks: Added Component.onDestruction to Panel.qml, AnimationModule, BorderModule, ShaderModule to terminate bash processes
  • Style constants: All hardcoded spacing/margin values replaced with Style.marginXXS / Style.marginXS / Style.marginS / Style.marginM / Style.marginL
  • Bug fix: Scanner processes now guard against empty pluginDir on startup; re-run via onPluginDirChanged
  • Cleanup: Removed runHypr: null unused property; removed orphaned widget.menu_settings i18n key from all 16 language files; removed font.family: Style.fontMono (property doesn't exist)

Test plan

  • Plugin loads without errors in Quickshell
  • Bar widget icon appears and toggles panel on click
  • Animations / Borders / Shaders tabs populate correctly
  • qs ipc call plugin:noctalia-visual-layer toggle keybind works
  • No memory leaks on panel close (processes terminated)
  • All UI strings display in correct language

- Add Main.qml with IpcHandler and toggle() for keybind support
- Rename plugin to "Hyprland Visual Layer", add hyprland tag
- Replace all console.log/error with Logger.i/e
- Remove custom tr() wrappers, use pluginApi?.tr() directly
- Replace hardcoded Quickshell.env("HOME") paths with Settings.configDir
- Add Component.onDestruction cleanup for all Process objects
- Fix BarWidget: openPanel() → togglePanel(), remove broken Settings menu
- Replace all hardcoded spacing values with Style.margin* constants
- Remove unused runHypr property from all modules
- Remove orphaned widget.menu_settings key from all i18n files
- Translate all Spanish comments and fallback strings to English
- Guard scanner startup against empty pluginDir
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant