mirror of
https://github.com/fairyglade/ly.git
synced 2026-05-06 07:10:36 +00:00
fix: custom label and bind ordering (#951)
## What are the changes about? Fixes the order of custom labels and binds because of a HashMap shenanigan (no guaranteed order), so we use `ArrayHashMap` instead which preserves insertion order. They should now be shown in the order they are declared in the config.   ## What existing issue does this resolve? !950 ## Pre-requisites - [x] I have tested & confirmed the changes work locally - [x] I have run `zig fmt` throughout my changes Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/951 Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org> Co-authored-by: RadsammyT <radsammyt@gmail.com> Co-committed-by: RadsammyT <radsammyt@gmail.com>
This commit is contained in:
@@ -21,5 +21,5 @@ pub const CustomCommandInfo = struct {
|
||||
counter: u32 = 0,
|
||||
};
|
||||
|
||||
pub var binds: std.StringHashMap(CustomCommandBind) = undefined;
|
||||
pub var labels: std.StringHashMap(CustomCommandInfo) = undefined;
|
||||
pub var binds: std.StringArrayHashMap(CustomCommandBind) = undefined;
|
||||
pub var labels: std.StringArrayHashMap(CustomCommandInfo) = undefined;
|
||||
|
||||
@@ -1907,11 +1907,11 @@ fn positionWidgets(ptr: *anyopaque) !void {
|
||||
}
|
||||
for (state.custom_info.items, 0..) |*item, i| {
|
||||
item.lbl.positionXY(state.edge_margin
|
||||
.addY(@intCast(i))
|
||||
.invertX(state.buffer.width)
|
||||
.removeX(item.lbl.text.len)
|
||||
.invertY(state.buffer.height)
|
||||
.removeY(1));
|
||||
.removeY(state.custom_info.items.len)
|
||||
.addY(i));
|
||||
}
|
||||
|
||||
state.battery_label.positionXY(state.edge_margin
|
||||
|
||||
Reference in New Issue
Block a user