Commit graph

102 commits

Author SHA1 Message Date
cc94123fa7 renderer: minor fixes to transformations 2024-03-03 02:18:06 +00:00
GartoxFR
b2c3440477
animations: Refactor AnimatedVariable (#4911)
* animation: Refactor AnimatedVariable

This commit decomposes the AnimatedVariable class into a base class
with the common attribute to all variable types and a templated derived
type containing strongly typed info on the type being animated.

Access to the typed version is perfomed using the visitor pattern. A
utility is provided to build a visitor on the fly using lambdas.

Adding a new type to be animated should just be a matter of adding the
typed in the list defined by the ANIMABLE_TYPES macro

The size of the commit is justified by the API change in the
AnimatedVariable class. No more vec(), fl() or col() method but a unified
value() method.

* animation: Remove visitor pattern

* animation: Fix coding style

* animation: Fix coding style
2024-03-02 00:35:17 +00:00
98034fea3c screencopy: send full frame damage
fixes #4855
2024-02-27 14:51:27 +00:00
21f7f32dc9 screencopy: avoid dangling client ptrs on client destroy 2024-02-27 12:23:59 +00:00
8c3613632a renderer: nuke lastFrameDamage and rework finalDamage
this fucking SUCKED
2024-02-23 01:02:32 +00:00
94aeb06d6b toplevelexport: set last damage for dmabuf copy 2024-02-22 03:10:01 +00:00
02c9a2d769 screencopy: damage entire screen on a no-damage request 2024-02-20 15:22:54 +00:00
e793f10b8b screencopy: fix invalid damage being used for final copy in dma 2024-02-19 20:05:51 +00:00
Vaxry
13f6f0b923
Migrate the config to hyprlang (#4656)
* Migrate to hyprlang

* pop up errors

* fix swapped args

* Meson & Nix: build with hyprlang

* CI: add hyprlang to setup action

* add infra for plugin stuff

* fix hyprctl getoption

* fix hyprctl getoption with json

* format

* fix post parse logic

* fix autogen config

* oops missed exec-once

* fmt

* fix ws rules

* require 0.3.0 for hyprlang

* nix: flaek

* minor type fixes

* fix cfg usages in swipe

* use cvarlist for ws rules

* fix throw in addPluginConfigVar

* Nix: update hyprlang

* minor fixes

* fix disableLogs

* mention hyprlang docs

* bump hyprlang dep in cmake

* Meson: bump min hyprlang version

Nix: update hyprlang

* minor fix

* Nix: update meson patch

---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2024-02-18 15:00:34 +00:00
a42b984f51 screencopy: fix ~dtor being in monitorRenderResources map 2024-02-15 02:01:40 +00:00
ef490965a2 screencopy: attempt binding framebuffer before gathering format 2024-02-15 00:59:06 +00:00
a6ccd36147 screencopy: move monitor verif check to the proper place
oops
2024-02-07 23:47:14 +00:00
f085ed4454 screencopy/toplevelexport: sanitize pointers in ::copyFrame
oopsie~~ >///<
2024-02-07 00:18:47 +00:00
b1b8d732e6 toplevelexport: fix missed pmonitor set for opengl
ref #4165
2023-12-15 21:20:13 +00:00
4e5d9b90c0 toplevelexport: fix missing GL_READ_FRAMEBUFFER set in shm copy
ref #4165
2023-12-15 21:04:34 +00:00
aa020a2a1a toplevel-export: commence render pass before reading
fixes #4070
2023-12-07 17:58:13 +00:00
François Conzelmann
4a42344e97
style/ci: apply clang-format and verify it in ci (#4039)
* style: apply clang-format

* ci: add new clang-format job to CI
2023-12-06 22:54:56 +00:00
ab66fa430e screencopy: fix glReadPixels offset
fixes #4042
2023-12-05 20:04:53 +00:00
da863459c4 screencopy: fix legacyrenderer builds
fixes #4044
2023-12-05 14:59:12 +00:00
83248b6936 toplevelexport: fix getPreferredReadFormat param in captureToplevel
fixes #4043
2023-12-05 14:43:54 +00:00
68783d904d screencopy: use buffer format for glReadPixels
fixes #4029
2023-12-04 03:52:54 +00:00
45d3fbb8d8 opengl: free window framebuffers in ~dtor
ref #4036
2023-12-04 01:44:16 +00:00
e496b0f250 screencopy: fix detecting gl shm formats
ref #4029
2023-12-03 22:04:07 +00:00
dc2082b00a screencopy: fix transformed on shm 2023-12-03 19:06:51 +00:00
9c09f2a847 screencopy: fix shm exports with 10-bit
fixes #4019
2023-12-01 17:20:56 +00:00
ab40f240c3 screencopy: use drmFormat instead of wlr funcs
ref #4014
2023-12-01 00:23:48 +00:00
12ec549a18 screencopy: fix shm sharing if introspection required 2023-11-30 11:07:17 +00:00
b9937484f4 screencopy: fix broken shm copying
fixes #4001
2023-11-30 10:14:35 +00:00
d2c3b23ace deps: update wlroots 2023-11-30 01:18:55 +00:00
b281d8647a screencopy: use new isNvidia() for format 2023-11-25 17:56:38 +00:00
Vaxry
2ebfd0c745
renderer: Move to a full Hyprland GL rendering pipeline (#3920)
Also updates wlroots
2023-11-24 10:54:21 +00:00
c619e6976f screencopy: round boxes
fixes #3795
2023-11-08 12:43:07 +00:00
Vaxry
55b4f84fea
Internal: Hyprland box implementation (#3755)
* box impl

* remove unused operators

* missed applyfromwlr
2023-11-04 17:03:05 +00:00
21ba8b363e fractional-scale: fix addon existence check 2023-11-03 21:02:12 +00:00
93a2ac9de4 fractional-scale: post error on taken fs objects
fixes #3735
2023-11-03 15:51:43 +00:00
Vaxry
21e9313c10
Core: various unsafe state improvements (#3713)
Fixes #3637
2023-11-01 18:53:36 +00:00
df00727310 deps: update wlroots 2023-10-25 00:27:16 +01:00
a61eb7694d hooksystem: add callbackinfo struct and cancellable events 2023-10-21 14:52:43 +01:00
vaxerski
8abb6e1cee screencopy: enhance error logging 2023-10-09 23:51:59 +01:00
vaxerski
2e1842b5ff screencopy: log renderer_begin_with_buffer failures 2023-09-22 00:21:07 +01:00
memchr
3785defaf1
logging: implement std::formatter for some types (#3380) 2023-09-20 16:25:03 +01:00
398e861b55 internal: fix warnings 2023-09-07 16:43:01 +02:00
Vaxry
61a71c65ac
internal: Formatter rework (#3186) 2023-09-06 12:51:36 +02:00
vaxerski
db48f973fd xdgoutput: do not destroy resources on monitorRemoved 2023-09-05 13:33:08 +02:00
Vaxry
d9292800a2
internal: Unsafe state reworks (#3114) 2023-09-01 22:03:56 +02:00
vaxerski
774a5bedf8 waylandResource: remove user data in markDefunct and not ~dtor 2023-09-01 20:03:58 +02:00
vaxerski
32f4059b37 screencopy: fix region sharing
translate before scaling if we are not dividing the coords
2023-08-30 13:17:26 +02:00
vaxerski
116b9a8056 xdgoutput: mark resources defunct when monitor is unplugged 2023-08-25 18:22:25 +02:00
Vaxry
37128bfd43
internal: Wayland Protocol impl improvements (#2944) 2023-08-21 19:36:09 +02:00
vaxerski
fff118fa76 xdgoutput: don't send all details in .get 2023-08-19 21:14:12 +02:00