1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-09-15 19:26:58 +02:00
Commit graph

28 commits

Author SHA1 Message Date
e6f610687c
refactor(networkmanager): remove unnecessary async & unused fields 2025-08-17 21:15:10 +02:00
Rodrigodd
5a5b110c7a feat: rename sway_mode to bindmode and add Hyprland support
Signed-off-by: Rodrigodd <rodrigobatsmoraes@hotmail.com>
2025-04-21 19:13:59 -03:00
Rodrigo Batista de Moraes
cff6b1fc83
build: fix compilation for many feature combinations (#932)
* Fix compilation for many feature combinations

* fix: keep Mpris as the default music player type

* fix: update futures-lite comment

* fix: remove redundant "clap" feature dependency from "cli"

* fix: don't make IPC a dependency of sysinfo module

* refactor: move serde_json feature to "shared" section

* refactor: avoid cfgs inside listen_workspace_events

by splitting list_keyboards_events out of it, which manages its own
connection to the Hyprland IPC socket.

* refactor: sort multiline cfg any's

* Revert "refactor: avoid cfgs inside listen_workspace_events"

This reverts commit 1b4202ed80c9483c609ada8c4436e0fec26a9eef.

* refactor: split listen_workspace_events in more functions

* style: fix broken identation

Not sure why rustfmt didn't catch this.
2025-04-16 22:43:14 +01:00
a0231559d0
refactor(keys): switch to colpetto
Switches from the `input` crate to new async `colpetto`
2025-04-01 22:20:46 +01:00
a4eb149816
build: decouple workspace and keyboard modules
Fixes #862
2025-03-24 12:22:02 +00:00
202c19efd4
refactor: update to rust 2024, fix strict clippy warnings 2025-03-03 21:28:29 +00:00
b83f26cb1a
feat(sysinfo): expose values as ironvars 2025-02-23 16:51:30 +00:00
01de0ac6f5
feat(sysinfo): overhaul to add aggregate/unit/formatting support
This completely reworks the sysinfo module to add support for aggregate functions, better support for working with individual devices, the ability to specify units, and some string formatting support.

Several new tokens have also been added, and performance should be marginally improved.

BREAKING CHANGE: Use of the `sys_info` module in your config will need to be updated to use the new token format. See the wiki page for more info.
2025-02-15 22:58:17 +00:00
63f5954837
refactor: upgrade to zbus v5
Also drops the deprecated `upower-dbus` crate
2025-02-08 01:56:01 +00:00
kuzy000
03e6f10141
feat(keyboard): ability to display and switch kb layout (#836)
This extends the existing `keys` module to be able to show the current keyboard layout, and cycle between layouts (using the `next` command) by clicking. The `keys` module has been renamed to `keyboard` to more accurately reflect its extended featureset.
2025-02-03 21:19:30 +00:00
5136637752
refactor: fix some strict clippy warnings 2024-12-29 00:40:12 +00:00
ccfe73f6a7
feat: libinput keys module
Adds a new module which shows the status of toggle mod keys (capslock, num lock, scroll lock).

Resolves #700
2024-12-27 19:44:25 +00:00
55c0940e1d
fix(tray): update system-tray dep to bring in a whole load of fixes 2024-11-08 01:35:04 +00:00
474e1fe364
fix(upower): avoid panic on client init error 2024-08-09 23:16:00 +01:00
Rodrigo Batista de Moraes
e307e15dc4
feat: new sway-mode module (#671)
* feat: add sway-mode module

* refactor: Avoid making multiple connections to SwayIPC

Now `sway::Client` is store in `ironbar.clients`, and allow dynamically
registering event listeners, instead of hardcoding events for Workspace
updates.

Remove the use of `swayipc::Connection` from `sway-mode` module, and
replace it with the new event listener system.

#671
2024-08-05 13:22:01 +01:00
6d0fe4c8ac
feat: add networkmanager module 2024-08-04 12:55:12 +01:00
b0a05b7cda
feat: new cairo module
Resolves #105

Co-authored-by: A-Cloud-Ninja <5809177+A-Cloud-Ninja@users.noreply.github.com>
2024-04-17 20:35:35 +01:00
9245188af7
refactor: better error handling for client initialization 2024-04-01 16:34:25 +01:00
004ea76da5
refactor(tray): complete client rewrite 2024-03-29 00:31:20 +00:00
7742a46578
feat: swaync notifications module
Adds a new module which connects to SwayNC to display information from the notifications deamon.

Resolves #7
2024-03-04 20:33:53 +00:00
a70956bb3b
feat: add new volume module 2024-03-04 19:53:02 +00:00
c702f6fffa
refactor: major client code changes
This does away with `lazy_static` singletons for all the clients, instead putting them all inside a `Clients` struct on the `Ironbar` struct.

Client code has been refactored in places to accommodate this, and module code has been updated to get the clients the new way.

The Wayland client has been re-written from the ground up to remove a lot of the needless complications, provide a nicer interface and reduce some duplicate data.

The MPD music client has been overhauled to use the `mpd_utils` crate, which simplifies the code within Ironbar and should offer more robustness and better recovery when connection is lost to the server.

The launcher module in particular has been affected by the refactor.
2024-01-09 23:33:07 +00:00
Chinmay Dalal
ad3c171eca
feat: implement upower module 2023-04-30 00:15:04 +01:00
575d6cc30f
feat: new clipboard manager module 2023-02-26 13:42:53 +00:00
c347b6c944
feat: add feature flags
Flags allow you to disable certain functionality and compile with only select features to reduce build time.

Resolves #54.
2023-02-01 20:45:52 +00:00
6e5d0c1e8c
feat(workspaces): hyprland support
Resolves #18.

The bar will now automatically detect whether running under Sway or Hyprland and use the correct IPC client depending.
2023-01-27 23:18:59 +00:00
6d8e647f12
feat: mpris support
Resolves #25.

Completely refactors the MPD module to be the 'music' module. This now supports both MPD and MPRIS with the same UI for both.

BREAKING CHANGE: The `mpd` module has been renamed to `music`. You will need to update the `type` value in your config and add `player_type` to continue using MPD. You will also need to update your styles.
2023-01-25 23:09:49 +00:00
4662f60ac5
refactor: move various clients to own folder 2022-11-06 23:38:51 +00:00