Commit graph

38 commits

Author SHA1 Message Date
Vaxry
ef23ef60c5
Workspace/core: Refactor workspace storage (#5380)
* refactor workspaces to use ptrs

* clang-format
2024-04-02 20:32:39 +01:00
9e8f051896 avar: minor fixes 2024-03-31 21:43:08 +01:00
64c8ba2fb1 avar: fix warp onEnd conditions
ref #5348
2024-03-31 21:34:11 +01:00
2930c5cb6f animvar: fixup update callbacks and cleanup 2024-03-29 00:23:23 +00:00
e68c07d809 renderer: don't render window on other mons during anim in
fixes #5139
2024-03-17 01:05:26 +00:00
outfoxxed
d6f1b151b2
animations: fix m_Goal not being set after #4911 (#4992) 2024-03-06 10:14:13 +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
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
vaxerski
86e8ed038f includes: add missing log include to animatedvariable 2023-09-30 02:09:08 +01:00
vaxerski
35df4693ea animatedvariable: don't reset timers on duplicate setters
Fixes the annoying jump when a recalc happens while a window is being animated
2023-09-04 13:11:56 +02:00
261c3307f7 internal: cleanup headers in helpers/ 2023-08-07 13:36:14 +02:00
vaxerski
6c1f4faff2 animationmgr: avoid looping over all avars in favor of only active ones 2023-07-20 19:26:10 +02:00
vaxerski
7091d4e597 animationmanager: optimize avar state 2023-07-19 22:40:03 +02:00
outfoxxed
409ff027f8
Fix UAF in animation end callback if callback deletes the animation (#2389)
Removes use after free when the end callback deletes the animation as
long as `m_bRemoveEndAfterRan` is false.
2023-05-29 09:51:58 +02:00
vaxerski
d68f8ea668 internal: make CAnimatedVariable non-move non-copy 2023-05-16 12:49:59 +01:00
vaxerski
5b84b0fb44 animationmgr: allow empty avars 2023-05-15 17:11:51 +01:00
5814d9b2a0 make hyprerror follow fadein anim 2023-01-20 20:48:07 +01:00
5d095bb9e1 use curves for special dim anim 2022-12-29 12:30:43 +01:00
Vaxry
98a4fa2b0d
Added clang format (#1239)
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski
f91f3d1c81 Reset callbacks on remap 2022-11-18 13:53:54 +00:00
vaxerski
57817f7252 Added resize transitions 2022-11-06 17:52:09 +00:00
vaxerski
ff76fbe763 prevent double-registering of avars 2022-11-05 13:37:29 +00:00
vaxerski
206360177f Multiple animation optimization and xwayland wine fixes 2022-11-04 15:56:31 +00:00
Felix Dick
bf3f519eb7 Remove trailing whitespace. 2022-09-25 20:07:48 +02:00
vaxerski
920fdd6bff Animation config rework 2022-07-28 13:28:43 +02:00
vaxerski
6e16dfa5e5 use defines for unreachable 2022-07-25 21:34:57 +02:00
vaxerski
48e5bd96bc Added shadow colors animations and inactive col 2022-07-16 12:44:45 +02:00
vaxerski
42d18143e5 use std::unreachable in avars 2022-07-06 16:54:45 +02:00
vaxerski
4101006b5e remove asserts in CAnimatedVariable 2022-06-30 12:22:24 +02:00
vaxerski
0055efc4f1 Added a special workspace 2022-05-31 14:01:00 +02:00
vaxerski
109136af97 Fadein/out now applies to layersurfaces too 2022-05-14 17:23:46 +02:00
vaxerski
ff0f535c28 Added workspace animations 2022-05-12 11:27:31 +02:00
vaxerski
77d37cd72a optimization: dont damage entire window on border anim 2022-05-05 14:02:30 +02:00
vaxerski
d798376330 assert -> rassert for animatedvariable 2022-04-24 17:01:39 +02:00
vaxerski
3ebe7d7972 Added bezier curves 2022-04-23 21:47:16 +02:00
vaxerski
306d163613 return const refs + vec constantize 2022-04-23 14:40:51 +02:00
vaxerski
f84294fe07 fixed fullscreen, removed effective vars from windows 2022-04-23 14:35:34 +02:00
vaxerski
0147975faf New animation system 2022-04-23 14:16:02 +02:00