Commit graph

7056 commits

Author SHA1 Message Date
rti 3e6626d6c3
fix: consider dim introduced transparency for blur (#184)
The blur rendering logic includes the optimization to render blur only
for transparent surfaces. This patch considers surfaces as transparent
also when the transparency is only introduced by the dim color.

We can now have windows, that are opaque by default become transparent
with blurred background as soon as they loose focus.

Example configuration:

```
blur on
blur_passes 3
blur_radius 5

default_dim_inactive 0.15
dim_inactive_colors.unfocused #00000000
```
2023-06-04 15:48:19 -04:00
RAR27 6a6cf2841c
fix: crash when moving tabbed container to scratchpad (#182)
when `scratchpad_minimize` enabled
2023-06-02 20:19:25 -04:00
William McKinnon 15bf6ae835 ver: bump to 0.3.1 2023-06-02 19:21:26 -04:00
William McKinnon 11451465ad
added layer namespace information 2023-06-02 18:58:16 -04:00
William McKinnon 588fca381e default scratchpad_minimize to false and add warning 2023-06-02 18:56:43 -04:00
Erik Reider 212c51f62c
fix: update stencil if the output size changes (#178) 2023-06-02 18:53:41 -04:00
RAR27 22327ef300
fix: crash when splitting inside tabbed container (#180) 2023-06-02 18:46:39 -04:00
Erik Reider c95306fcdf
fix: blur not being able to blur edges of damage (#168) 2023-05-30 00:18:58 -04:00
William McKinnon 8e6667ddad
Update README.md 2023-05-23 22:21:40 -04:00
William McKinnon a41eaa8d83 added blur-xray explanation 2023-05-22 23:13:00 -04:00
Ricardo Steijn 60e24c9cf4
flake: remove libinput patch (#163)
This was backported to SwayFX in 3c2e38b
2023-05-21 10:04:34 -04:00
William McKinnon 3c2e38be03 upstream: ipc: add LIBINPUT_CONFIG_ACCEL_PROFILE_CUSTOM entry 2023-05-21 00:23:40 -04:00
William McKinnon 0ca4062d6d fix: layer old damage not being offset by the monitor layout coords 2023-05-21 00:13:31 -04:00
William McKinnon d010f48f9a bump version to 0.3 2023-05-21 00:10:36 -04:00
William McKinnon ff2a37cfbd updated README to reflect 0.3 2023-05-20 21:26:37 -04:00
Erik Reider c4a0bb268a
Fix layer surface damage not being extended if using effects (#160) 2023-05-20 17:21:02 -04:00
William McKinnon d2ad352c7f fix: maybe-uninitialized error 2023-05-20 17:03:20 -04:00
Erik Reider 415e072a3a
Add blur, shadow, and corner radius to layer-shell surfaces (#144)
Co-authored-by: Will McKinnon <contact@willmckinnon.com>
2023-05-19 21:14:06 +02:00
William McKinnon 6707842942 improved blur optimization checks 2023-05-19 13:24:37 -04:00
William McKinnon 476a88d200 add link to fedora copr package, remove extra lines about discord server 2023-05-19 01:56:08 -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 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
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
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 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 5366c49b56
Fix: rotated outputs (#112) 2023-04-27 18:50:36 -04: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 50e2422e74
Only offset view by border size if not fullscreen (#145) 2023-04-21 03:00:38 -04:00
William McKinnon 10c74b6124 fixed error in config 2023-04-21 02:56:37 -04:00
William McKinnon 3f00052a90 fixed shadow corner_radius scaling 2023-04-18 19:04:00 -04:00
Will McKinnon e02e338d45 updated README 2023-04-17 17:50:21 -04:00
Will McKinnon 7e302de4c2 fix: redefinition of state 2023-04-17 17:42:14 -04:00
Erik Reider cbfb7af7fd
Add kawase blur (#120)
Co-authored-by: Erik Reider <erik.reider@protonmail.com>
Co-authored-by: Will McKinnon <contact@willmckinnon.com>
2023-04-17 23:24:48 +02:00
Will McKinnon 7d774f769c style: moved border_thickness out of render_shadow 2023-04-15 19:55:47 -04:00
Will McKinnon 8d3b7e13df style: .dim_color spacing 2023-04-15 13:44:56 -04:00
Will McKinnon f74c0fedb2 minor shadow optimization 2023-04-07 00:26:23 -04:00
Will McKinnon 3e6f2366e7 updated docs from on|off to enable|disable 2023-04-06 20:36:18 -04:00
Will McKinnon 420364dd19 structure: moved fx_renderer and related fuctions to a folder 2023-04-06 20:30:42 -04:00
Will McKinnon c24fccd45c style: moved damage creation to function 2023-04-04 09:58:41 -04:00
Will McKinnon 41df328325 style: unified rounded quad shaders 2023-04-03 20:16:54 -04:00
Inconn 4d1af65004
fix: remove 'f' suffixes from tex.frag to fix nvidia (#136) 2023-03-26 19:14:33 -04:00
Erik Reider f2d29ceb6b
Extend minimize logic to work with XWayland and XDG applications (#132)
* Extend minimize logic

* Removed redundant xwayland minimize logic

* minor fixes

* Fixed not properly checking if window is ran though XWayland

* Added config option with default being off

* Set scratchpad_minimize to true by default

* Improve config dependant logic

* Switch to using enable|disable instead of on|off
2023-03-26 11:44:21 -04:00