Commit graph

7021 commits

Author SHA1 Message Date
William McKinnon
856f3259c3 removed view logic from render_layer_iterator 2023-05-19 02:05:49 -04:00
William McKinnon
053ad3b22c only check for optimized blur if we can blur 2023-05-19 01:48:51 -04:00
William McKinnon
d4b2d7fccc added corner radius scaling for layer shadows, fixed indentation 2023-05-19 01:47:03 -04:00
William McKinnon
783ceb7937 use config functions 2023-05-19 01:35:21 -04:00
William McKinnon
f37b1f19b9 removed unneeded import 2023-05-19 01:30:25 -04:00
William McKinnon
745b8c6376 created render_layer_iterator 2023-05-19 01:29:21 -04:00
William McKinnon
0b9524aa6d Merge remote-tracking branch 'origin/master' into toplevel-effects 2023-05-18 23:15:49 -04:00
Erik Reider
aa6b2fcd79
Fix damage being extended after clearing the previous frame (#158)
* Fix damage being extended after clearing the previous frame

* Ensure that damage expansion only occurs if it's smaller than the monitor
2023-05-18 23:14:37 -04:00
Erik Reider
a160b2c850
Flipped the order of which the stencil add function is called (#157) 2023-05-18 09:47:14 -04:00
Erik Reider
aa65f2e77c Removed unneeded can_blur_xray field 2023-05-18 14:50:42 +02:00
Erik Reider
8b9add0641 Removed unneeded one-liner cmd functions 2023-05-18 14:41:42 +02:00
Erik Reider
c7d4943a62 Merge branch 'master' into toplevel-effects 2023-05-18 14:34:49 +02:00
Erik Reider
acafb20b11
Move stencil into each framebuffer (#156)
* Move stencil into each framebuffer

Also fixes the stencil being added to the wrong framebuffer

* Initialize texture members on framebuffer init

* removed bind arg

* renamed init to create, changed existing create to update

* moved stencil buffer creation to new function

* removed some now misleading comments

---------

Co-authored-by: William McKinnon <contact@willmckinnon.com>
2023-05-17 19:39:48 -04:00
William McKinnon
2c4fe20456
Blur damage tracking simplification (#155)
* suplified conditional in find_con_effect_iterator

* removed has_blur

* simplified optimized blur check

* moved damage expansion to output.c

* removed extraneous fx_renderer_scissor

* cleaned up render_output

* removed unneeded damage scale

* moved workspace optimized check function to workspace.c

* renamed ws iterator function

* added back region expansion

* removed uneeded parameter from get_main_buffer_blur

* returned extended damage

* moved get_blur_size back to original spot (reduce diff size)

* Fixed blur artifacting

* Fixed damage highlight not clearing correct framebuffer

* removed unneeded conditional

* moved initial damage expansion to output.c

* moved extended damage to the top of output_render

* moved blur damage to damage_surface_iterator

* ensure damage doesnt expand beyond output size

* removed stdint import

---------

Co-authored-by: Erik Reider <ereider20010103@gmail.com>
2023-05-16 02:26:01 -04:00
William McKinnon
479cc4e745 style: simplified render_whole_output 2023-05-15 01:11:09 -04:00
Erik Reider
fba74b3617 Refactored layer_effects command to parse multiline configs
Now supports commands like these:

```
layer_effects "waybar" {
  blur enable;
  shadows disable;
  corner_radius 6;
}
```

Also now able to override previous criterias and add criterias during runtime
2023-05-10 19:15:10 +02:00
Erik Reider
cdf106c43c Include pointer to sway_layer_surface in render_data
Better checks if the layer surface is a subsurface or not and only renders the shadows
in the render_surface_iterator if said pointer isn't NULL
2023-05-06 21:03:19 +02:00
Erik Reider
f1f0a9b115 Merge branch 'master' into toplevel-effects 2023-05-06 20:48:33 +02:00
William McKinnon
6e53c04abf
fix: shadow clipping & shadow corners (#153) 2023-05-05 16:07:50 -04:00
William McKinnon
94a6340f9f updated flake lock 2023-05-04 22:17:32 -04:00
Erik Reider
13d4b7b187 Disable blur xray for BOTTOM layered surfaces 2023-05-02 20:21:26 +02:00
Erik Reider
8a7bb48e75 Made layer_effects syntax similar to the for_window command
Example: `layer_effects "waybar" blur on; shadows on; corner_radius 6`.
2023-05-02 18:23:25 +02:00
Will McKinnon
90a8795492 rebase + removed extra shadow lines from render_view 2023-05-01 01:03:14 -04:00
Will McKinnon
74e7012b21 fix: smart_corners with shadow and titlebars 2023-04-30 14:51:04 -04:00
Will McKinnon
15db638ccb improved stenciling region 2023-04-30 14:06:57 -04:00
Will McKinnon
d86e349290 fix: blurred region is rounded below titlebars 2023-04-30 14:03:51 -04:00
Will McKinnon
f7c37ddc3d fix: bottom layer should be able to blur + uninitialized string warning 2023-04-30 13:54:40 -04:00
Will McKinnon
ace9a222b8 style: created struct for each shader type 2023-04-30 13:35:01 -04:00
Will McKinnon
06339c325c style: moved stencil mask to its own shader 2023-04-30 12:53:26 -04:00
Erik Reider
a7ea20b477 Moved the stencil buffer into fx_framebuffer 2023-04-29 19:17:37 +02:00
Erik Reider
45feb03f5a Fixed stencil buffer not being bound to the main_buffer 2023-04-29 19:00:59 +02:00
Erik Reider
24c072f586
Merge branch 'master' into toplevel-effects 2023-04-29 18:36:24 +02:00
Erik Reider
5366c49b56
Fix: rotated outputs (#112) 2023-04-27 18:50:36 -04:00
Erik Reider
7355f7c4e7 Renamed is_floating to should_optimize_blur 2023-04-24 18:18:41 +02:00
Erik Reider
330be7933a Unlinked layer-shell blur/shadows and their config counterparts 2023-04-24 18:14:52 +02:00
Erik Reider
9bf5ab7f97 Translate shadow box coords for views 2023-04-24 11:17:27 +02:00
Will McKinnon
3d1b294cc0 removed width and height parameters from fx_framebuffer_bind() 2023-04-24 00:53:55 -04:00
Will McKinnon
b61041980f store viewport width & height in fx_renderer 2023-04-24 00:11:55 -04:00
Erik Reider
0fbd5c3dce Fix shadow not accounting for titlebars 2023-04-23 14:26:39 +02:00
Erik Reider
db5f3da6b3 Updated README 2023-04-22 14:00:50 +02:00
Erik Reider
a44f101bc7 Fixed segfault on config reload 2023-04-22 13:33:18 +02:00
Erik Reider
cc6d4bad93 Added "effects" array to swayipc output 2023-04-22 13:31:13 +02:00
Erik Reider
762f049389 Renamed corner_radius bool to corner_rounding 2023-04-22 13:29:04 +02:00
Erik Reider
e5a79fcff2 Simplified shadow logic 2023-04-22 13:16:00 +02:00
Erik Reider
1e551b462c Fixed shadow being offset 2023-04-22 13:12:54 +02:00
Erik Reider
63c7e95332 Added layer_shell_surfaces to get_output in swayipc 2023-04-22 13:01:10 +02:00
Erik Reider
1030f08b06 Added support for shadows 2023-04-22 01:08:14 +02:00
Erik Reider
d4e8038082 Init is_toplevel_surface properly 2023-04-22 00:09:29 +02:00
Erik Reider
fe2ab9c1da Add layer_effects command 2023-04-21 23:47:56 +02:00
Erik Reider
50e2422e74
Only offset view by border size if not fullscreen (#145) 2023-04-21 03:00:38 -04:00