feat(effects): implement window rounded corners via scenefx
- Parse effects.windows.rounded/rounding from Lua config - Add CfgEffectsWindows and CfgEffects structs to Config - Switch to fx_renderer_create for scenefx support - Replace 5 wlr/types/wlr_scene.h includes with scenefx variant - Add config_get_corner_radius() helper (light=6px, heavy=14px) - Apply corner_radii_top/bottom/left/right to 4 border rects - Apply wlr_scene_buffer_set_corner_radius to surface buffers - Disable on fullscreen, restore on exit - Re-apply on resize and config hot-reload - Add -Wno-extra-semi for scenefx header compatibility - All targets compile cleanly (make test passes)
This commit is contained in:
@@ -104,6 +104,17 @@ typedef struct {
|
||||
char cmd[CFG_MAX_AUTOSTART_CMD];
|
||||
} CfgAutostart;
|
||||
|
||||
/* Effects */
|
||||
|
||||
typedef struct {
|
||||
bool rounded;
|
||||
char rounding[CFG_MAX_STRLEN];
|
||||
} CfgEffectsWindows;
|
||||
|
||||
typedef struct {
|
||||
CfgEffectsWindows windows;
|
||||
} CfgEffects;
|
||||
|
||||
/* the whole shebang */
|
||||
|
||||
typedef struct {
|
||||
@@ -135,6 +146,8 @@ typedef struct {
|
||||
|
||||
/* Per-workspace (tag) default layouts, indexed by tag index 0-8 */
|
||||
char workspace_layouts[9][CFG_MAX_STRLEN];
|
||||
|
||||
CfgEffects effects;
|
||||
} Config;
|
||||
|
||||
/* Public API */
|
||||
|
||||
Reference in New Issue
Block a user