Commit Graph

84 Commits

Author SHA1 Message Date
Zach Karr
bfd47dd853 Feat: Add systray icon size option (#966)
* Feat: Add systray icon size option

Adds ability to adjust custom icon size for systray module

* Fix: (gjs warning/formating)

Fixes:

- gjs warning: theme parsing error - Not using units is deprecated.
Assuming 'px'. (defaults to rem units 1 by default)

- prettier formatting for MenuCustomIcon JSX element

* Fix: Update default icon size / size type def

Updated default icon size to 1.3rem and added type def to
configuration/modules/config/bar/systray/types.ts

* Fix: supposed to be 1.3em not 1.3rem default size

---------

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-06-14 13:18:45 -07:00
Jas Singh
2418d8ed52 Fix: The 1 px gap that would show up when the bar was hidden. (#996) 2025-06-03 23:19:45 -07:00
Jas Singh
8be178f5a9 Feature: Added lazy loading of settings dialog (#983)
* Feat: Added configurable lazy loading for the settings dialog.

* Allow lazyloading to be configurable
2025-06-02 02:30:10 -07:00
Jas Singh
1333149d25 Fix: Set max window title size to 300 to prevent crashing. (#977) 2025-06-01 22:27:15 -07:00
Jas Singh
7f3e9702cc Fix: Escape markup text for notifications. (#976) 2025-06-01 21:24:16 -07:00
Jas Singh
5c2bc9bc6d Fix: Weather service now uses the proper units on startup (#975)
* Fix: Weather service now uses the proper units on startup

* Fix: Screen recorder now creates the needed directory
2025-06-01 18:56:38 -07:00
Jas Singh
9698f9be7c Improve monitor reconnect/disconnect logic. (#974)
* WIP: Improve monitor reconnect logic

* Organize revealer into a controller and clean up bindings of destroyed bars.

* Improve monitor disconnect/reconnect logic.

* Add JSDoc
2025-06-01 18:23:36 -07:00
Jas Singh
13ad57650f Fix: playPause command name and json editor theme asset loading (#959) 2025-05-26 23:01:13 -07:00
Jas Singh
8cf5806766 Minor: Refactor the code-base for better organization and compartmentalization. (#934)
* Clean up unused code

* Fix media player formatting issue for labels with new line characteres.

* Refactor the media player handlers into a class.

* More code cleanup and organize shared weather utils into distinct classes.

* Flatten some nesting.

* Move weather manager in dedicated class and build HTTP Utility class for Rest API calling.

* Remove logs

* Rebase master merge

* Reorg code (WIP)

* More reorg

* Delete utility scripts

* Reorg options

* Finish moving all options over

* Fix typescript issues

* Update options imports to default

* missed update

* Screw barrel files honestly, work of the devil.

* Only initialize power profiles if power-profiles-daemon is running.

* Fix window positioning and weather service naming

* style dir

* More organization

* Restructure types to be closer to their source

* Remove lib types and constants

* Update basic weather object to be saner with extensibility.

* Service updates

* Fix initialization strategy for services.

* Fix Config Manager to only emit changed objects and added missing temp converters.

* Update storage service to handle unit changes.

* Added cpu temp sensor auto-discovery

* Added missing JSDocs to services

* remove unused

* Migrate to network service.

* Fix network password issue.

* Move out password input into helper

* Rename password mask constant to be less double-negativey.

* Dropdown menu rename

* Added a component to edit JSON in the settings dialog (rough/WIP)

* Align settings

* Add and style JSON Editor.

* Adjust padding

* perf(shortcuts):  avoid unnecessary polling when shortcuts are disabled

Stops the recording poller when shortcuts are disabled, preventing redundant polling and reducing resource usage.

* Fix types and return value if shortcut not enabled.

* Move the swww daemon checking process outside of the wallpaper service into a dedicated deamon lifecyle processor.

* Add more string formatters and use title case for weather status (as it was).

* Fix startup errors.

* Rgba fix

* Remove zod from dependencies

---------

Co-authored-by: KernelDiego <gonzalezdiego.contact@gmail.com>
2025-05-26 19:45:11 -07:00
skwig
f5f00945bf Fix: Don't show margins around disabled elements in the Dashboard (#946)
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-05-25 12:39:04 -07:00
John Bonini
4303c1cb71 Fix: Remove full path /bin/bash in exec command (#953)
caused screen recording on nixos to fail

Co-authored-by: John Bonini <bonini.physics@gmail.com>
2025-05-25 12:34:14 -07:00
Karol Stawowski
c203ffe80f Fix: Updated hourly weather time to respect military clock setting (#937) 2025-05-17 18:28:41 -07:00
Jas Singh
2bb1449fb6 Fix: An issue that would cause Matugen colors to not apply. (#929)
* Eslint updates

* linter fixes

* Type fixes

* More type fixes

* Fix isvis

* More type fixes

* Type Fixes

* Consolidate logic to manage options

* Linter fixes

* Package lock update

* Update configs

* Version checker

* Debug pipeline

* Package lock update

* Update ci

* Strict check

* Revert ci

* Eslint

* Remove rule since it causes issues in CI

* Actual matugen fix
2025-05-11 23:01:55 -07:00
Sumit Pathak
0c82ce9704 Fix wallpaper path handling with spaces (#908)
* Fix wallpaper path handling with spaces

* fix linting errors

---------

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-04-28 17:16:56 -07:00
Jas Singh
a48b072b53 Feat: Added a separators module for the bar. (#889) 2025-04-07 21:14:31 -07:00
Jas Singh
93235f0fb1 Feat: Custom modules can now be created through a JSON file. (#887)
* Feat: Custom modules can now be created through a JSON file.

* Added the ability to consume labels and icons.

* Add all properties but styling.

* Wrap up implementation.

* Rename custom modules to basic modules to make way for new actually custom modules.
2025-04-07 01:52:39 -07:00
Mara
483facfa56 Fix: Stable update info polling (#872)
* adjusted sleep between polls to always sleep at least 2s

* fixed tooltip formatting when no updates available

---------

Co-authored-by: Mara <mara.dawn69@gmail.com>
2025-04-05 10:31:04 -07:00
Jas Singh
18c383b754 Clean up world clock module code and add themes. (#885) 2025-04-04 23:13:18 -07:00
Louis Dalibard
1d717e9f2e feat: add world clock module (#795)
Co-authored-by: Louis Dalibard <ontake@ontake.dev>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-04-04 23:10:51 -07:00
davfsa
c9ce27afb9 Fix: empty icons for modules will no longer be rendered (#880)
Signed-off-by: davfsa <davfsa@gmail.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-04-01 21:05:22 -07:00
davfsa
56dca9c176 Fix: overflowing notification pager container border (#879)
Signed-off-by: davfsa <davfsa@gmail.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-04-01 21:00:57 -07:00
davfsa
94a00a49da Fix: order priority when resolving application icon maps (#868)
Signed-off-by: davfsa <davfsa@gmail.com>
2025-03-28 09:29:56 -07:00
Jas Singh
b6b58edf76 Fix: Improved GDK to Hyprland monitor mapping logic. (#867)
* Feat: Improved GDK<->Hyprland monitor mapping logic.

* Update src/components/bar/utils/GdkMonitorMapper.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix type issue.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-03-28 01:52:25 -07:00
Mara
c147f154a4 Feat: Add optional extended tooltip for updates module (#866)
* added optional extended tooltip for updates module

* Apply suggestions from code review

Linter fixes

* Update scripts/checkUpdates.sh

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>

* Update scripts/checkUpdates.sh

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>

---------

Co-authored-by: Mara <mara.dawn69@gmail.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-03-27 23:19:55 -07:00
Jas Singh
7b5c339e93 Fix: styling side-effects are no longer visible on monitors with no bars. (#864) 2025-03-24 22:46:58 -07:00
Siddharth Jain
dba7ac64c6 Feat: Added a configuration option to define the save location of recordings.
* Add file picker for saving screen recordings

Implemented a file picker using Zenity to allow users to choose the save location for their screen recordings after stopping.

Replaced the hardcoded save path with dynamic user input.

Improved the notification system to inform users when recordings are saved or discarded.

* Refactored RecordingButton to fetch the latest recording path dynamically.

Removed static path references, ensuring the updated path from Hyprpanel config is always used.

* Update screen_record.sh

Added comment why use "sleep 1" at line 80

* Update module.nix

Updated nix module.

* Expand ~ in output directory, set default path, and add validation

- Properly expand `~` to `$HOME` in the output directory path.
- Set default recording directory to `$HOME/Videos` if none is provided.
- Validate that the output directory exists before starting a recording.

* Update scripts/screen_record.sh

Co-authored-by: Chase Taylor <11805686+dotaxis@users.noreply.github.com>

* Update scripts/screen_record.sh

Co-authored-by: Chase Taylor <11805686+dotaxis@users.noreply.github.com>

* Code Quality Check.

* Update RecordingButton.tsx

Removed debug logs as well.

* Update src/components/menus/dashboard/shortcuts/buttons/RecordingButton.tsx

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>

* updated RecordingButton.tsx && helper.tsx

Fixed the issues pointed by @Jas-SinghFSU

* Update RecordingButton.tsx

Fixed few linter errors.

---------

Co-authored-by: Chase Taylor <11805686+dotaxis@users.noreply.github.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-03-24 20:52:17 -07:00
Jas Singh
a4e9a99f82 Fix: Added a fallback workspace icon for applications. (#845) 2025-03-17 20:54:38 -07:00
davfsa
7fe89ac5eb Add up-to-date default workspace labels (#709)
* Add up-to-date workspace labels

* Use iterators instead of creating copies of the mappings

* Re-add guard clause

Signed-off-by: davfsa <davfsa@gmail.com>

* merge origin

* Fix duplicate icons and simplify implementation.

---------

Signed-off-by: davfsa <davfsa@gmail.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-03-17 19:05:14 -07:00
davfsa
14b17c0667 Improve network bar (#813)
* Improve network bar

- Improve consistency of status updates by using `state` and
`connectivity`
- Add 'Off' text based on WiFi adapter status

* Update src/components/bar/modules/network/index.tsx

---------

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-03-16 23:15:23 -07:00
davfsa
a949b34632 Feat: Add live reloading of configuration file (#684)
* Add live reloading of configuration file

This also removes the need for a file with all the available
configuration and a shadow configuration file.

Additionally, added several improvements:
1. Reduce I/O on initial configuration loading by only reading file once
2. Remove unnecesary back and forth events when editing configuration

* Add missing return type

* Consistently reset on config changes and error if failed to initialize config

* Fix massive I/O load on startup by numerical options

* Use _findVal when monitoring config file

* Apply PR requested changes

Signed-off-by: davfsa <davfsa@gmail.com>

* Add missing =>

Signed-off-by: davfsa <davfsa@gmail.com>

* Fix reassignment to const, change to let.

---------

Signed-off-by: davfsa <davfsa@gmail.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-03-16 02:39:25 -07:00
Alejandro
28d2884b2f Add Zen browser to window titles and media. (#790)
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-03-01 13:00:48 -08:00
Chase Taylor
5075c94af2 Add region screen recording (#791)
* Add region screen recording

* Update readme

* Use get-default-sink and software encoding

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>

* Remove log file creation logic

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>

---------

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-02-27 17:47:21 -08:00
Jas Singh
f69a0841a8 Create Microphone bar module. (#801)
* Implement microphone module.

* Add catppuccin themes

* Add rest of themes

* Fix comment

* Add nix settings
2025-02-27 01:24:07 -08:00
Jas Singh
3419315e65 Made shadows togglable with default set to false. (#786) 2025-02-19 17:23:57 -08:00
davfsa
f8bbd0af80 Fix undefined tooltip text (#780) 2025-02-18 09:44:43 -08:00
Jas Singh
9b342341fe Added shadows to the Bar, Menus, OSD and Notifications. (#777)
* Added shadows to the Bar, Menus and notifications.

* Add OSD shadows
2025-02-16 21:41:52 -08:00
Jas Singh
3698bfe2b3 Replaced the underlying structure of Hypridle inhibitor to the Astal Idle Inhibitor module. (#776)
* Update hypridle module to be an all-purpose idle inhibitor module using Astal inhibiting.

* Fix types and module code.

* Update note

* Removed lingering comment.

* Remove hypridle from dependencies.
2025-02-16 12:20:29 -08:00
Jas Singh
c309a73d2d Fixed an issue that would cause a hidden bar to unhide when a workspace changed. (#771)
* Fixed an issue that would cause a hidden bar to unhide when a workspace is changed.

* Remove jsdoc for param that doesn't exist.
2025-02-15 00:01:51 -08:00
wistfulbrick
4424a523bf Workaround unreliable GDK geometry scaling for matching monitors (#768)
* Workaround unreliable GDK geometry scaling for matching monitors

* Extra monitor matching handling for transforms/rotation and fractional scaling

* Add monitor key matching debug logging

* Fix fractionally scaled monitor matching, plus slight refactor

* Fix rotation logic

* Use console.debug for debug logging, run linting

* Fix Type errors

* Update debugging comment after testing

* Linting again..
2025-02-14 00:41:45 -08:00
Jas Singh
0d5f80ff5c Check if client.workspace is not undefined or null. (#765) 2025-02-08 00:17:32 -08:00
Jas Singh
6b846b9709 Remove global service declarations and change to declarations upon usage. (#761)
* Remove global service declarations and change to declarations upon usage.

* Only load cava service if cava is enabled.
2025-02-06 02:15:20 -08:00
Jas Singh
74065af3d2 Window client title now updates appropriately. (#741)
* Window client title now updates appropriately.

* Update src/components/bar/modules/window_title/helpers/title.ts
2025-01-25 00:24:15 -08:00
Keon Lee
88609f7e4c feat: add padding option for inactive workspace numbers (#702)
* feat: add padding option for inactive workspace number

* chore: reorder options to gather padding related options

---------

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-01-15 23:12:21 -08:00
davfsa
636f031b77 Code cleanup (#719)
- Remove random call to `print`
- Remove double declaration of notifdService
2025-01-12 23:53:32 -08:00
Jas Singh
fab3a8c3a1 Remove the unintended empty space from the power module in the bar. (#714) 2025-01-11 12:40:02 -08:00
davfsa
a9ad71ff42 Update bluetooth label when a new device connects/disconnects (#708) 2025-01-11 00:07:03 -08:00
Jas Singh
1812193658 Added ghostty to the window titles. (#706) 2025-01-09 23:21:06 -08:00
Amaan Qureshi
9663d2f6b7 fix(window-title): correct Thorium title name (#700) 2025-01-07 21:51:28 -08:00
Jas Singh
e525d9e03a Update how conditional elements are rendered for bar modules. (#688) 2025-01-03 00:23:10 -08:00
Ed Bennett
6efcd60467 Cava Module (#662)
* First version of the cava module

* Update cava stuff

* Update themes for cava

* Update themes

* Handle cava visibility when null

* Add bar characters in options

---------

Co-authored-by: Ed Bennett <ed@dodimead.com>
Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
2025-01-02 22:45:37 -08:00