Release v2.15.0
This release brings significant refinements to the user experience with improved tooltips, enhanced taskbar functionality, better multi-monitor support, and comprehensive internationalization updates—making Noctalia Shell more polished, accessible, and intuitive than ever.
The noctalia-shell
package has been updated to v2.15.0
.
What's New
- Global tooltip system: Enjoy consistent, polished tooltips throughout the interface with improved clipping behavior and a lighter, more modern look.
- Smarter taskbar: Filter windows by workspace and output, keep apps sorted intelligently, and experience better focus tracking across multi-monitor setups.
- Dock-to-output filtering: Show dock applications only on their respective outputs, with support for outputs without bars.
- Per-widget font scaling: Customize font sizes for individual widgets with new scaling options and convenient reset buttons.
- Enhanced session controls: Quickly lock and suspend your system with a new combined action in the session menu.
- Improved brightness control: Multi-monitor brightness synchronization now works flawlessly with proper signal handling.
- Terminal launcher integration: Launch applications directly in your terminal with new command support in the launcher.
- Media player enhancements: The MediaMini widget now displays a proper placeholder when no player is active.
- Clock widget customization: Configure your clock display with widget-specific font settings for maximum flexibility.
Improvements
- Internationalization overhaul: Massively improved Chinese (zh-CN) translations with proper language code handling and auto-translation system for rapid localization updates.
- Optimized initialization: Streamlined startup sequence ensures translations and settings load before UI components, eliminating visual glitches.
- Memory management: Background wallpapers now free up memory more efficiently, reducing resource usage.
- Flatpak integration: Notification service now properly recognizes and displays Flatpak application names.
- UI consistency: Redesigned buttons with better hover states, proper SpinBox text input, and refined radio button text handling.
- Ghostty configuration: Refreshed terminal emulator configuration for better compatibility.
- Nix flake: Settings now write to fallback path with automatic systemd service restart on updates
Bug Fixes
- Fixed focused window detection with active workspace implementation
- Fixed DateTime widget locale handling
- Fixed disc wallpaper animation
- Fixed icon sizing in tray menu
- Fixed custom ControlCenter icon
For Developers
- Cleaner logging with shortened path strings
- Enhanced code organization with Row/Column to Layout conversions
- Better hot-reload support for tooltips
Changes since v2.14.4
- Release v2.15.0 (8c9396f3) by Ly-sec
- Taskbar: inactive icon bumped from 0.5 to 0.6 opacity (afccf048) by ItsLemmy
- Clock: removed useMonospacedFont to keep things simple, + translations + cleanup (f3762571) by ItsLemmy
- Merge pull request #398 from DiscoCevapi/add-clock-font-setting (cad8fd67) by Lemmy
- Move clock font settings to widget-specific configuration (68e76abf) by DiscoNiri
- Merge pull request #358 from lonerOrz/fix/brightness (45c8fe77) by Lemmy
- i18n: launcher terminal-command (5ebf4b53) by ItsLemmy
- Merge pull request #377 from lonerOrz/fix/launcher (59fbe92f) by Lemmy
- i18n: updated all translations via autotranslate! (b051e19f) by ItsLemmy
- i18n: added basic auto translation (6b9370ac) by ItsLemmy
- Merge branch 'main' into fix/launcher (9702a300) by lonerorz
- Taskbar: Improved the look of the focused app. Made unfocused app icons semi transparent. (b0436646) by ItsLemmy
- .gitignore cleanup (368e80da) by ItsLemmy
- Wallpaper: fix double wallpaper init. (056217bf) by ItsLemmy
- Default settings updated with Dock's: only same output. (c1abb3a7) by ItsLemmy
- MediaMini: fix another binding loop. (52d20556) by ItsLemmy
- NiriService: added safe guards to avoid issue with wrong window indexes. (e324a331) by ItsLemmy
- MediaMini: fix binding loop + edge case where no icon would appear. Also set Autohide to false by default for ActiveWindow and MediaMini (6f4aa1a1) by ItsLemmy
- Merge pull request #402 from luleyleo/output-filtered-dock (f49462f9) by Lemmy
- i18n: Add German translation for new dock settings. (4fb1e2de) by Leopold Luley
- Dock: Reformat code. (6d05a205) by Leopold Luley
- Dock: Allow showing the dock on outputs without a bar. (ec2fbb53) by Leopold Luley
- Dock: Add option to filter by output. (fdc61acf) by Leopold Luley
- MediaMini: replace placeholder icon (32712c70) by Ly-sec
- MediaMini: add no active player placeholder (a0f6d143) by Ly-sec
- Merge pull request #400 from acdcbyl/main (6ae8d853) by Lysec
- i18n: Optimize Chinese translation (650dcb88) by Aiser
- Niri: temp warning fix (970684e3) by ItsLemmy
- Merge pull request #394 from ixxie/feat/temp-settings (e786946a) by Lemmy
- Merge pull request #396 from luleyleo/mouse-sorted-taskbar (da046cad) by Lemmy
- More pointSize cleanup (43dee793) by ItsLemmy
- Merge pull request #399 from pugaizai/main (0a893f9c) by Lysec
- NIcon: fix fontSize (23887574) by Ly-sec
- update sessionmenu translation (2008ba85) by pugaizai
- NIcon: use textSize for font.pointSize (77331819) by Ly-sec
- i18n: update zh-CN translations (78cf0bc8) by pugaizai
- Add clock font setting for customizable clock displays (8b0e0f6e) by DiscoNiri
- Merge pull request #397 from msdevpt/apply-theme (8c6b3a79) by Lysec
- chore: refresh ghostty configuration (4c3eca80) by M.Silva
- NiriService: Keep windows sorted when moving them with the mouse. (f61f9a58) by Leopold Luley
- SystemMonitor: apply fontScale to TextMetrics for smarted calculation (518e90d9) by ItsLemmy
- Font: added reset button for scaling (d2e5d066) by ItsLemmy
- TrayMenu: fix icon size (602d79c9) by ItsLemmy
- Font: added per font family scaling. removed billboard font (4b13e89a) by ItsLemmy
- NiriService: syntax fix (1e8b1229) by ItsLemmy
- ControlCenter: fix custom image (1f257ce8) by Ly-sec
- feat(flake): write settings to a fallback path (df355893) by Matan Bendix Shenhav
- feat(flake): restart systemd service on package update (c92478d2) by Matan Bendix Shenhav
- Merge pull request #393 from luleyleo/sorted-taskbar (ffe39e0e) by Lemmy
- Background Wallpaper: attempt to free up memory earlier. (b12cf345) by ItsLemmy
- Shader: fix "disc" shader (no disc at 0 progress) (fc4418be) by ItsLemmy
- NiriService: Fix stale focus state when opening a new window. (82bfa346) by Leopold Luley
- NiriService: Sort windows by their scrolling position. (26ee5046) by Leopold Luley
- Compositor: fix getFocusedWindow() (51ed6ea2) by ItsLemmy
- Compositor: fix getFocusedWindowTitle. Since active workspace has been implemented. (c53dd6fa) by ItsLemmy
- Merge pull request #386 from luleyleo/filtered-taskbar (bb24b690) by Lemmy
- Merge branch 'main' of https://github.com/noctalia-dev/noctalia-shell (d5857e33) by Ly-sec
- Launcher: add pin to dock button if dock is enabled (559609be) by Ly-sec
- Scaling: fix scaling not properly applied on startup. (5cea6111) by ItsLemmy
- DateTime: proper locale usage. Fix #390 (22794ea9) by ItsLemmy
- Init Sequence: minor reordering (933ba546) by ItsLemmy
- Wallpaper Selector: added a shortcut to the wallpaper settings in the top bar. (0d0b9a21) by ItsLemmy
- Init Sequence: removed a bunch of no longer necessary Settings.isLoaded (9ed92310) by ItsLemmy
- SessionMenu: move lockAndSuspend to CompositorService (b8b54825) by Ly-sec
- Revert "Matugen: add custom-colors.toml" (250822e8) by Ly-sec
- Matugen: add custom-colors.toml (ece9789f) by Ly-sec
- Background: "explicitly set currentWallpaper.source to nothing as an attempt to fix the odd memory usage after a few hours" (f11d27bc) by Ly-sec
- Background: fix short flash of default wallpaper before actual wallpaper shows (0e692562) by Ly-sec
- Taskbar: Add German translation for Taskbar settings. (fa49d4aa) by Leopold Luley
- Taskbar: Add settings. (b1f7ae5d) by Leopold Luley
- Taskbar: Filter by same output and active workspaces. (e6b0be77) by Leopold Luley
- Shell: changed init sequence so that i18n + Settings are fully loaded before any UI component spawn. (49961882) by ItsLemmy
- NSpinBox: fixes (c1d2d82f) by ItsLemmy
- Use Color.transparent instead of "transparent" (c35f37c7) by ItsLemmy
- Merge pull request #388 from MrDowntempo/Consistent-Hover (e23cb90c) by Lemmy
- More conversion of Row/Column to Layout (b2688e91) by ItsLemmy
- Log cleanup (avoid super long string with path) (7f3842dd) by ItsLemmy
- DockMenu: use RowLayout and ColumnLayout (68b2c83b) by ItsLemmy
- Back to Chevrons. +/- were inconsistent sizes. Better alignment (97fa2fb1) by Corey Woodworth
- Tooltips: fix clipping for tooltips with long sentences. (0ed8ed7f) by ItsLemmy
- Removed gradient and redesigned buttons (a41be0b5) by Corey Woodworth
- Bar vs Dock: Dock are loaded only once the bar is fully loaded. This ensure the vertical bar use the full screen height if the dock is exclusive. (072d80e2) by ItsLemmy
- Merge remote-tracking branch 'upstream/main' into fix/launcher (1f898171) by loner
- Resolve conflict (ef64395d) by loner
- fix(services): emit brightnessUpdated signal in setBrightness (a5c89fad) by loner
- fix: Fix brightness synchronization in multi-monitor setups (cccf0e60) by loner
- i18n: add lock-and-suspend to all languages (5da47400) by Ly-sec
- SessionMenu: add lock & suspend option as requested in #301 (ffd2cdaf) by Ly-sec
- Update NSpinBox.qml (5f3c088f) by MrDowntempo
- Merge branch 'main' into Consistent-Hover (382116e7) by MrDowntempo
- NotificationService: add flatpak name support (c7c49433) by Ly-sec
- Nicer SpinBox with better mTertiary hover (0d2d0f19) by Corey Woodworth
- Merge branch 'main' of https://github.com/noctalia-dev/noctalia-shell (2e947edc) by Ly-sec
- NSpinBox: add text input support (cdc32f3e) by Ly-sec
- DockMenu: auto hides when not hovering the menu, simplified with a single mouse area. (21736b30) by ItsLemmy
- Tray: close the menu on re-hovering the tooltip (48852a9c) by ItsLemmy
- Tray: Fixing hiding tooltip (65fab7b3) by ItsLemmy
- NRadioButton: proper elipsis. Fix #385 (dc414df9) by ItsLemmy
- LockScreen: adapted custom tooltips to the new lighter look. (69a6c052) by ItsLemmy
- Merge branch 'main' of github.com:noctalia-dev/noctalia-shell (c422435d) by ItsLemmy
- Tooltips: proper tooltip service (fc1742e1) by ItsLemmy
- Tooltips: proper tooltip service (061e7f32) by ItsLemmy
- Merge pull request #371 from pugaizai/main (8dda0078) by Lemmy
- Merge from upstream (1cdff28c) by pugaizai
- Rename zh.json to zh-CN.json (f32a34e3) by 铺盖崽
- allow zh-CN like language code (0d0088bd) by 铺盖崽
- Merge branch 'tooltips' (a7a7a965) by ItsLemmy
- Tooltips: more robust tooltips after hot-reload (026d6027) by ItsLemmy
- Aya: rename to ayu (probably a typo) (5b54be63) by Ly-sec
- Merge pull request #383 from acdcbyl/main (3bb10e95) by Lysec
- i18n: Optimize Chinese translation (b9b233a8) by Aiser
- i18n: add description to all Bar widget settings (388824bf) by Ly-sec
- ColorSchemeTab: hide predefined colorschemes when matugen is enabled (25eb3174) by Ly-sec
- Merge pull request #382 from acdcbyl/main (f7109b0b) by Lysec
- i18n: Optimize Chinese translation (c41fa1ae) by Aiser
- i18n: Optimize Chinese translation (1a0ea389) by Aiser
- Tooltip: Refactoring in a single global tooltip. (0593543d) by ItsLemmy
- v2.14.4-dev (fbf80ab5) by ItsLemmy
- i18n(zh): add translation for terminal command (b27728e5) by loner
- i18n(pt): add translation for terminal command (2379ad13) by loner
- i18n(fr): add translation for terminal command (3ab9ffed) by loner
- i18n(es): add translation for terminal command (3182d196) by loner
- i18n(de): add translation for terminal command (591d0992) by loner
- feat(launcher): add configurable terminal command (256f9b4a) by loner
- test kitty (ff150993) by loner
- Fix brightness sync after external command changes (2c7038c5) by loner