staz
01c6c5ae22
internal: Revert rounding of window size ( #3153 )
...
* Revert "renderer: round coords and size in renderWindow"
This reverts commit fc0c1896e0
.
* Revert "xwaylandmgr: round reported sizes"
This reverts commit 2985e20e6a
.
2023-09-03 12:51:48 +02:00
vaxerski
423b129b24
renderer: don't set enabled in applyMonitorRule
2023-09-03 12:43:57 +02:00
vaxerski
d4ec54d048
renderer: render IME popups in fullscreen
...
fixes #1353
2023-09-02 20:32:15 +02:00
vaxerski
d2a785dfe3
renderer: fixup occlusion conditions
...
fixes #3123 I fucking hate yall
2023-09-01 23:01:59 +02:00
memchr
1a13d44d5d
refactor: raise SIGABRT instead of write to null address ( #3124 )
2023-08-31 22:52:02 +02:00
vaxerski
fc0c1896e0
renderer: round coords and size in renderWindow
2023-08-31 09:55:38 +02:00
vaxerski
299d201e56
renderer: don't blur special on disabled blur
2023-08-26 11:48:04 +02:00
vaxerski
870471dd96
internal: allow opening empty special workspaces
...
Fixes point 2 of #2596
2023-08-25 18:05:08 +02:00
vaxerski
23e17700a7
renderer: add decoration:blur:special
...
will blur behind the special ws
2023-08-25 17:44:17 +02:00
vaxerski
9d094f655e
renderer: track fade alpha for blur if ignore opacity is true
...
with ignore_opacity, blur would stay at 1 opacity during a fadeOut animation on layers, making it look wrong. Fixes #3051
2023-08-23 12:03:27 +02:00
MightyPlaza
7155b4c266
renderer: Border improvements ( #2986 )
...
* simplify getting border size
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* fix border damage and input box
modified: src/Window.cpp
modified: src/managers/AnimationManager.cpp
* add border size in resize_on_border box
modified: src/managers/input/InputManager.cpp
* simplify border (fixes possible typo)
modified: src/Window.cpp
* use updateSpecialRenderData()
modified: Window.cpp
modified: Window.hpp
modified: events/Windows.cpp
modified: layout/DwindleLayout.cpp
modified: layout/IHyprLayout.cpp
modified: layout/MasterLayout.cpp
modified: render/Renderer.cpp
* update window workspace rule data on reload
modified: src/config/ConfigManager.cpp
* use rounding()
modified: src/Window.cpp
2023-08-17 10:13:19 +02:00
7e8a212027
internal: allow negative monitor offsets
2023-08-16 18:16:39 +02:00
b9a783229b
compositor: don't apply offsets in renderer
2023-08-14 18:41:52 +02:00
13886a264f
internal: add a new monitor auto system
2023-08-14 14:22:10 +02:00
3f7f4207a6
config: add vrr per-display
2023-08-11 17:37:57 +02:00
126792584f
renderer: don't add workspace offset to pinned
2023-08-09 22:15:37 +02:00
cbb899740c
rules: add layer and window xray rules
2023-08-09 22:03:31 +02:00
0x455241
b3393c429f
background: add background color option ( #2915 )
...
Co-authored-by: 0x455241 <>
2023-08-08 18:00:11 +02:00
Vaxry
d96f8ff0fe
renderer: Various Blur Improvements ( #2877 )
...
* move blur to its own category
* blur improvements, contrast, brightness, noise
2023-08-03 15:11:10 +02:00
vaxerski
1a7fb1572a
renderer: disable init anim on disabled animations
2023-07-22 19:26:44 +02:00
outfoxxed
375e8385ee
Fix background occlusion ignoring monitor position ( #2771 )
2023-07-22 10:19:51 +02:00
vaxerski
d2a8b8c2de
renderer: cleanup back buffer skip checks
2023-07-20 18:27:14 +02:00
vaxerski
23eda1411b
renderer: scale box for occlusion
2023-07-20 18:12:29 +02:00
vaxerski
ff598b0827
renderer: don't occlude when pre-blur is queued
2023-07-20 18:03:47 +02:00
vaxerski
a921c5b89e
Debug: add tracy
2023-07-20 17:47:49 +02:00
vaxerski
948855a984
renderer: add canSkipBackBufferClear
2023-07-20 14:11:05 +02:00
vaxerski
547305c7ed
opengl: adjust blend and reduce the usage of clear
2023-07-20 13:49:28 +02:00
vaxerski
80cd2ef3d7
renderer: remove unused var
2023-07-19 21:10:42 +02:00
vaxerski
2c2314faa0
renderer: take workspace offset into account for occlusion
2023-07-19 21:08:49 +02:00
Vaxry
89b87158db
internal: Wrap regions ( #2750 )
2023-07-19 20:09:49 +02:00
vaxerski
ce9896204a
renderer: fix rounding in renderSurface
2023-07-19 20:06:19 +02:00
vaxerski
f4f0f35c5b
renderer: add occlusion for back layers
2023-07-19 16:13:55 +02:00
vaxerski
81f4a4f471
screencopy: improve shm handling
2023-07-19 00:51:38 +02:00
vaxerski
ce9c5fd722
render: set refresh to 0 for both wl and x11 backends
2023-07-19 00:28:15 +02:00
vaxerski
f2999e84b9
render: set refresh to 0 for wayland backend outputs
2023-07-19 00:02:57 +02:00
Vaxry
8370a7fcc4
internal: Protocol C++ Wraps + XDGOutput impl ( #2733 )
...
move to our own xdgoutput impl instead of wlr's
2023-07-18 15:30:28 +02:00
vaxerski
2e323a5671
renderer: use correct wlr sample func
2023-07-18 12:25:48 +02:00
Jan Beich
8c9e2e1ff1
deps: update wlroots ( #2734 )
2023-07-18 12:13:59 +02:00
vaxerski
2c7b2ad6ca
windowrules: add border size rule
2023-07-18 00:11:29 +02:00
vaxerski
382af06406
render: resize subsurfaces with size resizes
2023-07-10 13:32:57 +02:00
vaxerski
515a363ecd
render: move lastFrameDamage to CMonitor
2023-07-10 13:21:00 +02:00
d83296c7a9
renderer: damage decos on damageWindow
2023-06-27 13:23:58 +02:00
01f85a09a9
xwayland: send zero scaling to xwayland if enabled
2023-06-23 21:42:44 +02:00
vaxerski
fbabb105c3
gamma: use wlr's new gamma manager event
2023-06-14 13:26:47 +02:00
6beb79f27b
xwayland: add force_zero_scaling
2023-06-11 21:52:13 +02:00
64ce06a353
xwayland: add nearest neighbor filtering as an opt
2023-06-11 21:33:59 +02:00
end-4
e1edfde539
Allow setting alpha value for ignorezero layer rule ( #2477 )
...
* rename ignorezero to ignorealpha
* allow setting ignorealpha value
This commit allows setting a float value (0-1) for the ignorealpha layer rule.
Does not yet have error handling; invalid ignorealpha layer rule will crash Hyprland.
* add brackets i forgot to add
* prevent crash with invalid ignorealpha value
prevents hyprland from immediately crashing with invalid ignorealpha layer rule
does not log
* don't try to set ignoreAlphaValue if alpha value not specified
* add catch to try, reintroduce ignorezero
- added catch after try cuz i was an idiot
- re-add ignorezero as an alternative to ignorealpha to not introduce a breaking change
* add logging for failed ignorealpha layer rule
* fix get ignorealpha's get VALUE
* check npos and use empty()
* rename VALUE cuz no longer const
* format Shader.hpp
2023-06-11 19:30:31 +02:00
d83e5b8409
internal: make borderSize prop overridable
2023-06-04 21:35:23 +02:00
vaxerski
9c9b74179c
pluginapi: add separate window render events
2023-05-26 13:07:45 +02:00
vaxerski
f877d68f4f
launchanim: fix #2291
2023-05-24 15:49:31 +02:00
vaxerski
f2725a374a
render: minor fixes to fullscreen rendering
2023-05-10 18:36:13 +01:00
Andrei Alexeyev
2f87e4c2f3
renderer,config: add custom DRM modeline support ( #2254 )
...
This allows specifying custom display resolutions for the DRM backend.
This is useful for display overclocking, working around broken EDIDs,
etc. To use this feature, specify a modeline instead of a resolution
in the config, for example:
monitor = DP-1, modeline 1071.101 3840 3848 3880 3920 2160 2263 2271 2277 +hsync -vsync, 0x0, 1
This example is a custom 3840x2160@120Hz mode with tightened timings.
I use it because the standard timings don't work with my monitor and GPU
combination (M28U with RX580).
The syntax is compatible with Sway and Xorg.
2023-05-09 14:01:45 +01:00
levnikmyskin
c949173bc9
Added some workspace-specific rules ( #1986 )
...
* added some workspace-specific rules
* added some worskpace-specific rules, with windowrule like syntax
* monitor is not mandatory anymore
* pointers to config are now static
* fixed optional WorkspaceRule fields
* Windows can now specify border size
* removed CHyprOpenGLImpl::renderBorder borderSize default value
* stuff
---------
Co-authored-by: Alessio Molinari <alessiomolinari@gmail.com>
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-05-01 22:28:27 +01:00
vaxerski
ddfeebad3d
Renderer: add init animation
2023-05-01 02:49:41 +01:00
vaxerski
02312cac59
renderer: more checks for background LS optimizations
2023-04-30 01:15:51 +01:00
vaxerski
2946221195
renderer: fix fadingout render on fs
2023-04-29 13:29:32 +01:00
vaxerski
1a1656ddbf
Revert "internal: include headers from protocols/"
...
This reverts commit 550700bed0
.
We can't cuz meson
2023-04-27 13:55:13 +01:00
vaxerski
550700bed0
internal: include headers from protocols/
2023-04-27 13:40:38 +01:00
vaxerski
49fb4cd94d
renderer: improvements to layer render detection
2023-04-22 12:54:57 +01:00
vaxerski
1911e4262b
renderer: skip rendering bottom layers on fullscreen opaque
2023-04-22 12:36:54 +01:00
vaxerski
1c50a11688
opengl: keep current rendered workspace in renderData
2023-04-17 23:47:12 +01:00
vaxerski
385fe4e301
events: add render event for plugins
2023-04-17 23:45:03 +01:00
vaxerski
8b3d8dc792
Format: use %lx for all addresses
2023-04-17 17:35:28 +01:00
vaxerski
b05ff89c76
Render: add cursor_zoom
2023-04-16 14:48:38 +01:00
vaxerski
e329bc2c7b
renderer: fix incorrect shouldRenderWindow calcs
2023-04-14 15:16:43 +01:00
vaxerski
293df75b97
renderer: workspace rendering improvements
2023-04-12 13:05:57 +01:00
vaxerski
f00e11d457
renderer: fix incorrect delta calc
2023-04-12 12:50:20 +01:00
vaxerski
0fd09579a1
renderer: reset renderModif on fullscreen render
2023-04-12 12:45:16 +01:00
vaxerski
3ae33b951f
renderer: add support for rendering workspaces
2023-04-12 12:41:23 +01:00
vaxerski
3ade6c4a96
renderer: fixup damage repaint
2023-04-09 17:59:24 +01:00
vaxerski
24ace03780
internal: migrate to damage_ring
2023-04-07 12:18:40 +01:00
vaxerski
1a5d5bf620
deps: update wlroots
2023-04-06 21:03:53 +01:00
vaxerski
e7185b338f
debug: minor improvements to manual crash
2023-04-04 22:04:32 +01:00
7d9977d028
debug: added manual_crash
2023-04-04 14:50:03 +01:00
vaxerski
99314fbe71
render: plug missing software cursor unlocks
2023-04-04 00:46:58 +01:00
Vaxry
0a099ca2ab
Hyprland Screencopy impl ( #1800 )
...
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-04-03 17:01:05 +01:00
vaxerski
de3b00b5ee
renderer: go back to rendering layers without reverse
2023-03-31 17:44:36 +01:00
Vaxry
a80f8f257f
Feat: Introduce render_ahead_of_time ( #1863 )
2023-03-24 19:23:16 +00:00
Vaxry
788a8f7c13
internal: wrap wlr surfaces ( #1822 )
2023-03-20 15:00:58 +00:00
vaxerski
e5870d47c7
LS: add blur and ignorezero rules
2023-03-17 23:16:13 +00:00
vaxerski
91a565c7b0
monitors: don't refocus on apply rule
2023-03-17 20:34:33 +00:00
vaxerski
e77ebec629
monitors: guard output in damageSurface
2023-03-16 16:32:03 +00:00
c444099325
Mirrors: remove accidentally leftover logs
2023-03-04 01:06:16 +00:00
1ead6c46f4
Mirrors: minor fixes
2023-03-04 00:48:22 +00:00
vaxerski
a34b747661
update wlroots dep
2023-03-03 21:28:22 +00:00
vaxerski
72fc309fb1
make window reserved area less stupid
2023-02-28 21:18:13 +00:00
vaxerski
4b20d4f1ad
Added decoration reserved area
2023-02-28 19:36:36 +00:00
3fbef25ffc
refocus on monitor attach
2023-02-16 12:55:52 +00:00
wsippel
1992f27a26
ignore VR headsets ( #1555 )
...
* ignore VR headsets
don't interact with screens that have the non_desktop property set, fixes #1553
* remove superfluous curly braces
2023-02-15 14:50:51 +00:00
vaxerski
bda8208aaa
render lockscreen in fullscreenworkspace
2023-02-10 22:03:28 +00:00
vaxerski
1dde751da4
fixup LS fs-v1 calcs
2023-02-10 12:53:43 +00:00
8e6950e200
place sessionlock surfaces at correct coordinates
2023-02-03 14:00:23 +00:00
vaxerski
a46abd8b1a
update wlroots dep
2023-02-03 12:43:43 +00:00
vaxerski
129e99a6f6
Implement ext-session-lock-v1
2023-02-03 11:58:55 +00:00
ozwaldorf
32d56fec97
feat: border angle animations ( #1469 )
...
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-02-01 21:06:01 +00:00
ef12120270
fixup LS scaling impl
2023-01-29 15:58:36 +00:00
vaxerski
3d83a0bc5f
enable UV calcs for all surfaces
2023-01-29 13:58:47 +00:00
a2ae37396f
add hyprctl setprop
2023-01-24 19:05:43 +00:00
cb98242ea7
remove old comment and fixup lsl var name
2023-01-22 17:03:25 +01:00
147be3e10b
use goal size for uv calcs
2023-01-22 16:58:10 +01:00
7d754b7c22
fix cutting geometry on surfaces spilling out
2023-01-22 16:24:51 +01:00
Vaxry
60b880d931
wp-fractional-scaling-v1 impl ( #1373 )
...
* Initial fractional scaling impl
* apply UV after geom calcs
* fix scaling -> scale
* meson: add fractional scale proto
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-01-20 19:44:30 +01:00
3436486575
sanitize scale better
2023-01-20 16:03:52 +01:00
428063ff23
fix up log types
2023-01-18 16:12:44 +01:00
f14e808847
dump monitor data after setting rules
2023-01-17 11:57:36 +01:00
5c83976977
added misc:hide_cursor_on_touch
2023-01-17 11:47:39 +01:00
589046ecf7
fix dimaround with transformed displays
2023-01-16 16:12:24 +01:00
96198dae55
Normalize color storage
...
Colors are now normalized to 0 - 1 values instead of 0 - 255
causes calculations to be simpler and generally cleans up the codebase.
2023-01-05 19:25:45 +01:00
5d095bb9e1
use curves for special dim anim
2022-12-29 12:30:43 +01:00
a55db95a3b
ignore dim when pass popup
2022-12-28 19:56:18 +01:00
a6699ef30c
added dimaround
2022-12-28 15:39:17 +01:00
b5f5c26be3
added dim_special
2022-12-28 15:18:23 +01:00
659a5195d4
render overlay layers in reverse
...
prevents stuff leaking when locked
2022-12-27 15:25:51 +01:00
vaxerski
fc37ce4a72
render pinned windows above floating separately
2022-12-20 23:07:25 +00:00
Vaxry
98a4fa2b0d
Added clang format ( #1239 )
...
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski
3bd9ee0d32
minor xcursor and scale fixes
2022-12-15 17:17:15 +00:00
vaxerski
374571da96
add auto scale
2022-12-14 17:57:45 +00:00
vaxerski
e8b99ae13a
add override to opacity rules
2022-12-11 17:15:02 +00:00
vaxerski
bb99f151da
fix pinned offset calc
2022-12-11 16:58:29 +00:00
vaxerski
f97289a3c0
fix rendering multi special ws
2022-12-11 16:53:59 +00:00
vaxerski
da76a1ed9e
block surface feedback on window sharing
2022-12-05 19:12:15 +00:00
vaxerski
9c67e08dbd
ignore alpha when sharing window
2022-12-05 18:00:57 +00:00
Vaxry
66fb083003
Implement window sharing with the hl toplevel export proto ( #1179 )
...
* implement window sharing
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2022-12-05 17:05:15 +00:00
Flafy
ffc580dda9
blur xray for layers ( #1158 )
...
* feat: apply blur_xray to non window surfaces
* don't blur optimize bottom and background layers
2022-12-04 20:57:41 +00:00
vaxerski
0a302901d2
Added handling more special workspaces
2022-11-27 22:42:22 +00:00
vaxerski
c709dc5e8e
fix fadeout with animated border
2022-11-26 18:41:30 +00:00
vaxerski
0948b078e1
added border gradients
2022-11-26 17:57:02 +00:00
vaxerski
381d7a4300
check for special workspace open in attemptDirectScanout
2022-11-25 18:25:04 +00:00
vaxerski
5327565b33
remove resize transitions
2022-11-22 17:20:58 +00:00
Julian Schuler
41a8975bd1
Render focused window at last ( #1060 )
2022-11-20 18:50:01 +00:00
e887149f25
minor fixes for mirrors & log more monitor events
2022-11-19 13:01:32 +00:00
vaxerski
ba05c43ae3
minor monitor code fixups
2022-11-18 14:15:19 +00:00
vaxerski
878a20741b
fix slide calcs for windows outside the viewport
2022-11-16 15:35:36 +00:00
d0b3cdc835
Fix crashes with DS and mirrors
2022-11-09 10:56:49 +00:00
vaxerski
efbc3f8194
resize transition fixes + default transitions to false
2022-11-06 18:10:53 +00:00
vaxerski
f755351511
Fix resize transitions on multimon + transformed
2022-11-06 18:04:30 +00:00
vaxerski
57817f7252
Added resize transitions
2022-11-06 17:52:09 +00:00
vaxerski
5295244026
Revert adding toggle for drm scanout flags
...
This reverts commit 12697d2b72
.
Stupid idea.
2022-11-06 14:25:53 +00:00
vaxerski
082f439db2
fix issues with direct scanout's lack of surface frame feedback
2022-11-06 14:20:03 +00:00
vaxerski
12697d2b72
added toggle for drm scanout flags
2022-11-06 14:11:37 +00:00
vaxerski
5a750b485a
Added creating / destroying outputs on a multi-backend + headless backend
...
See `hyprctl output`.
2022-11-05 18:04:44 +00:00
vaxerski
6a59b57ef8
remove spammy logs for DS
2022-11-05 13:06:48 +00:00
vaxerski
f50c786640
Added direct scanout
2022-11-05 12:50:47 +00:00
c47581fc5a
handle transforming displays in outputMgr
2022-11-03 09:06:44 +00:00
a2b8e3b34e
fix the damageBox in damageMonitor
2022-11-02 11:04:17 +00:00
vaxerski
d994ad75e8
revert output smart layout reporting
2022-10-29 17:32:03 +01:00
vaxerski
2caebb3b10
fix default 0 in box passing test
2022-10-29 14:37:33 +01:00
vaxerski
05f3eebd96
avoid layout changes when unnecessary in applyMonitorRule
2022-10-29 12:24:44 +01:00
7d6ccca695
add 10bit support to displays
2022-10-27 13:26:47 +01:00
vaxerski
d55338a3f5
fix debug nest black screen
2022-10-24 11:58:07 +01:00