Skip to content

v0.4.7

Latest

Choose a tag to compare

@BlueManCZ BlueManCZ released this 27 Aug 14:01
024b951

Added

  • dispatchers_for_effect() and revert_dispatchers_for_effect() take compositor_reapplies_dynamic, which drops the setprop half of the result. Hyprland 0.55+ in Lua mode schedules a window-state refresh from hl.window_rule, re-resolving every mapped window against the rule list, so a caller that registers the rule there gets the dynamic effects (opacity, blur, rounding, border colour) applied without asking for them per window. The Hyprlang keyword path schedules nothing, so the default stays off. BlueManCZ/hyprmod#79
  • STATIC_RETROACTIVE_EFFECTS — the subset of RETROACTIVE_EFFECTS that still needs a per-window dispatch under compositor_reapplies_dynamic. Callers use it as the fast-path predicate in that mode, so a rule of purely dynamic effects skips the get_windows round-trip instead of walking the window list to dispatch nothing.

Fixed

  • _setprop's documented premise was wrong, and the docs for both dispatch helpers with it. A setprop is stored at PRIORITY_SET_PROP, above the PRIORITY_WINDOW_RULE a rule resolves to, and a config reload does not clear it: verified against Hyprland 0.56.1, a window set to opacity 0.3 was still 0.3 after hyprctl reload. The override outlives the rule that prompted it for as long as the window is open, so a caller that applied one and later edited the effect away had no way back to the rule's value. Behaviour is unchanged for callers that don't pass the new flag; what changes is that the trade-off is now stated accurately.