Pasalc
11666abf32
Added scaling and clamp support
2023-11-13 21:38:56 +03:00
Pasalc
4212095335
Added zoom fill
2023-11-08 20:14:22 +03:00
Pasalc
f6bff679ca
Added --clamp-strategy option
2023-11-06 17:30:48 +03:00
Pasalc
3dee616cf6
Fixed not full texture rendering on viewport resulting in clamping
2023-11-04 17:08:59 +03:00
Alexis Maiquez
21c38d9fd1
Add support for disabling mouse interactions with the background ( #176 )
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-09-23 18:20:35 +02:00
Phantasm
89612ea6c2
Reuse the same no output handling from wayland mode, remove the old one.
2023-09-23 18:04:37 +02:00
Phantasm
a853b50efe
Unify error with the Wayland mode
2023-09-23 18:04:37 +02:00
Phantasm
d4c3ca3b44
Handle bad screen-root arguments in X11 mode
...
Still leaves a SIGABRT after the thrown exception from the logging
system.
2023-09-23 18:04:37 +02:00
Phantasm
ab9486b2f6
Add comments
2023-09-23 18:04:37 +02:00
Phantasm
ee499b06e2
Fix crash when 2+ screens are connected but not all are active in X11
...
When not all connected screens are active XRRGetCrtcInfo returns NULL
for the inactive screens resulting in a SIGSEGV when trying to push it
to the screens vector.
2023-09-23 18:04:37 +02:00
Alexis Maiquez
660f798d9a
Move cstdint and cstdio for fft to the header file
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-05-07 19:54:39 +02:00
Alexis Maiquez
181dd1eef8
Fix for #161 , texture priorities were not being properly taken into account
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-05-07 18:54:01 +02:00
Alexis Maiquez
e18e6f01be
Added cstdint to ftt.cpp and CFileEntry.h
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-05-06 16:41:31 +02:00
Alexis Maiquez
1d45e2c88c
Fix compilation on Ubuntu 20.04
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-05-06 14:27:06 +02:00
Alexis Maiquez
723fca552c
Wayland: Moved frame-time checking to CWaylandOpenGLDriver instead of viewports
...
Wayland doesn't require specifics timings, each frame drawn re-queues a new frame
so treating it as "render the screens" seems to be a safe bet for now
As indicated in the TODOs once actual work is being done in the event loop
it should be replaced by a non-blocking option in case no surface is being rendered
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-05-06 14:14:21 +02:00
Alexis Maiquez
dad98d93bd
Brought back missing EGL code
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-23 04:33:32 +02:00
Alexis Maiquez
bd6fd9a100
Output rendering is now responsibility of the drivers (as it should be) instead of being handled by the CRenderContext
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-23 00:12:23 +02:00
Alexis Maiquez
21bcb7008f
Prevent crashing on the PulseAudioPlayingDetector
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-22 14:02:25 +02:00
Alexis Maiquez
7c39db8b4b
Added unistd.h missing from CWaylandOutputViewport
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-22 13:44:56 +02:00
Alexis Maiquez
b9dbb652d3
Hopefully last missed ENABLE_WAYLAND check
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-22 13:13:00 +02:00
Alexis Maiquez
ddd448b1e3
Added wayland build to github actions
...
Ensure wayland included files are ignored unless ENABLE_WAYLAND is enabled
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-22 13:09:31 +02:00
Alexis Maiquez
f047bdd2d6
Fixed oversight on Video backgrounds not working on X11
...
Added unistd.h to fix compilation error on ubuntu
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-22 12:57:47 +02:00
Alexis Maiquez
f21a6e64a7
Wayland implementation cleanup
...
Removed wayland-display in favour of screen-root, it should automatically switch between X11 and Wayland implementations
Removed all the window-server-specific code from CWallpaperApplication
Moved COutput from CWallpaperApplication to each CVideoDriver as the output is tied to the driver
Moved CFullScreenDetector from CWallpaperApplication to each CVideoDriver as the detection is tied to the video driver
Applied the Driver treatment to the Input, this way CInputContext doesn't depend on the driver used
Updated CRenderContext to be aware of viewport-specific context updates
Viewport information is now held inside COutputViewport instead of being a simple map
Merged CLayerSurface and SWaylandOutput, inheriting from the new COutputViewport to standarize the minimum requirements of a viewport
(makeCurrent and swapOutput are common requirements, X11 was the outlier not needing these per-viewport)
Moved all the viewport-specific code of Wayland from CWaylandOpenGLDriver to It's own class CWaylandOutputViewport
Fixed an issue under Wayland where sometimes the background surfaces wouldn't get anything drawn because the CWaylandOutput wasn't reset
Updated screenshot-taking code to be standard for all drivers again
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-22 11:31:50 +02:00
vaxerski
2b7367662f
Fix multi-bg screenshots
2023-04-21 18:24:19 +01:00
vaxerski
031ed01c42
properly flip screenshots
2023-04-21 18:03:08 +01:00
vaxerski
723be5af70
ignore empty viewports in geom
2023-04-21 17:59:13 +01:00
vaxerski
280ef71448
calculate full size more reasonably part 2
2023-04-21 17:33:57 +01:00
vaxerski
8684c8d60f
calculate full size more reasonably
2023-04-21 17:33:19 +01:00
vaxerski
a782fdd1f2
fix crash on 1 wp
2023-04-21 16:11:48 +01:00
vaxerski
ea15895916
remove newline after private
2023-04-21 15:25:13 +01:00
vaxerski
87b765e618
properly adhere to fps limits
2023-04-21 15:23:10 +01:00
vaxerski
997b9b8ec4
fix videos
2023-04-21 15:10:20 +01:00
Vaxry
8e1ae5e627
Merge branch 'Almamu:main' into main
2023-04-21 02:10:36 +01:00
Alexis Maiquez
0387ebc588
Catch readTexture exceptions on CTextureCache::resolve so multi-background setups can properly lookup files...
...
This might need further improvements to use a texture cache by background instead of globally...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-21 03:09:18 +02:00
vaxerski
997f780f4c
minor improvements to pointer handling
2023-04-21 02:07:27 +01:00
vaxerski
ee3f000ab1
multimon improvements part 1
2023-04-21 01:45:01 +01:00
vaxerski
c5b27cd3dc
split mouse input by backend
2023-04-21 00:17:55 +01:00
vaxerski
bab0e7b65f
ifdef mouse wayland impl
2023-04-20 23:05:13 +01:00
vaxerski
5c8992bafc
better handling of monitors
2023-04-20 23:04:32 +01:00
Vaxry
90720fc948
Merge branch 'Almamu:main' into main
2023-04-20 22:55:17 +01:00
vaxerski
75bb8cc156
Mouse handling
2023-04-20 22:54:18 +01:00
Alexis Maiquez
a713ad001a
Fixes #160 , xray effects on full image layers weren't working properly. Should fix anything using the inverse matrix of modelViewProjection
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-20 23:40:16 +02:00
vaxerski
1f6cc8206f
Merge remote-tracking branch 'upstream/main'
2023-04-20 22:11:54 +01:00
vaxerski
ebc80b28e1
fix minor oopsies with the ls move
2023-04-20 22:07:59 +01:00
vaxerski
ce2dc8395f
move ls to a class
2023-04-20 22:02:47 +01:00
Alexis Maiquez
73ef4d6dbf
Added support for g_Daytime in shaders
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-20 22:48:08 +02:00
Alexis Maiquez
96b931d931
Added g_ModelMatrix, g_NormalModelMatrix, g_ViewProjectionMatrix, g_LightAmbientColor and g_LightSkylightColor to shaders
...
Added support for specifying array variables for shaders
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-20 21:54:45 +02:00
vaxerski
d13918697a
added protocol making
2023-04-20 14:11:56 +01:00
vaxerski
ffeec7f1dd
make wayland impl optional
2023-04-20 13:52:25 +01:00
vaxerski
43409229a9
proper scaling + recalc on geom change
2023-04-20 13:28:36 +01:00
vaxerski
244722387b
flip v in LS output
2023-04-20 13:00:03 +01:00
Vaxry
6838ca66cc
Merge branch 'Almamu:main' into main
2023-04-19 22:37:56 +01:00
Alexis Maiquez
37b40ec29f
Do not block on calls to pa_mainloop_iterate for sound recorder, should improve #158
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-19 23:34:48 +02:00
vaxerski
e473516bb7
fix rendertime inaccuracy
2023-04-19 22:10:08 +01:00
vaxerski
b505db103c
allow specifying outputs with a flag
2023-04-19 21:02:44 +01:00
vaxerski
5b1ea68164
fix egl config
2023-04-19 20:52:35 +01:00
vaxerski
d14442fd7f
fix full size
2023-04-19 20:26:09 +01:00
vaxerski
fd810295d7
fix monitor geom
2023-04-19 20:24:15 +01:00
vaxerski
e5b447bdc9
initial impl
2023-04-19 20:18:20 +01:00
Alexis Maiquez
13e43bada7
Added parameter to configure fullscreen detection
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-04-18 06:56:25 +02:00
Alexis Maiquez
9a5913921c
Hopefully properly support Fullscreen and Passthrough images
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-30 02:01:07 +02:00
Alexis Maiquez
ee5c2b6106
Fixed visible value for effects not being correct
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-29 22:12:56 +02:00
Alexis Maiquez
bf47510d0d
Hopefully improved pa_stream_unref issues
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-29 22:10:10 +02:00
Alexis Maiquez
b70264e54a
Fix for #155
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-29 20:03:43 +02:00
Alexis Maiquez
93380ae229
Added some window hints
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-27 01:36:01 +02:00
Alexis Maiquez
a89d8ebb22
Added basic support for audio processing so backgrounds can react to sound playing in the system
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-26 18:18:21 +02:00
Alexis Maiquez
ca471c04fc
Placed audio detectors in the right folder
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-24 02:51:17 +01:00
Alexis Maiquez
45761fb858
Added sound muting when apps are fullscreen too
...
Finally closes #150 and #152
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-24 02:48:49 +01:00
Alexis Maiquez
978f56cdca
Added sound playback detection to mute when something else plays audio
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-24 02:36:42 +01:00
Alexis Maiquez
cc7ec0561d
Separated X11 fullscreen code detection from the output driver as they don't have to work at the same time
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-23 23:38:23 +01:00
Alexis Maiquez
84f6018e1a
Added application state to keep track of enable/disable audio and volume changes when things go fullscreen
...
Removed .clang-format as it's not useful
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-23 09:10:51 +01:00
Alexis Maiquez
f499454957
Fixed identation problems
...
Added comments all over the codebase to explain things a bit better
Improved CApplicationContext to be a bit more self-explanatory
Abstracted CRenderContext access away into a helper that every render class should use
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-23 01:42:01 +01:00
Alexis Maiquez
92fa11b0a6
Take into account g_KeepRunning for the fullscreen detection mechanism
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-21 23:42:52 +01:00
Alexis Maiquez
6802511bb9
Added support for detecting full-screen windows on X11 output
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-21 23:41:46 +01:00
Alexis Maiquez
847cd56ddf
Add GLFW error handler to show error messages, hopefully gives more descriptive errors (hopefully helps #149 )
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-21 07:50:15 +01:00
Alexis Maiquez
6d5c5b7825
Hopefully addressed #148 while detecting the patches folder
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-21 07:35:41 +01:00
Alexis Maiquez
a0d1a7202f
Fixed build of release versions
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-21 07:15:38 +01:00
Alexis Maiquez
b69ce8ba57
Added support for running multiple X11 backgrounds off the same instance
...
Window mode now has extra settings for setting the position and size
Fixed audio not muting when --silent was used
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-03-21 07:07:36 +01:00
Alexis Maiquez
e2d80a074c
Add messages for [COMBO] types
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-11 05:51:35 +01:00
Alexis Maiquez
5e384d968d
Fixed multiple defines of the same thing
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-11 05:34:35 +01:00
Alexis Maiquez
37631e9c40
Upgraded to shader version 330
...
Added support for shader patches
Removed useless DEBUG define in favour of NDEBUG
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-11 03:21:45 +01:00
Alexis Maiquez
4e0f02f64d
Added support for using zcompat shaders, should fix audio bars shaders for the most part
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-10 22:33:48 +01:00
Alexis Maiquez
b16cc2fd3b
Brought back some changes that were removed with previous revert
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-09 00:28:50 +01:00
Alexis Maiquez
64d9c2e4e6
Fix crash on effects parsing
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-09 00:22:48 +01:00
Alexis Maiquez
3d8452ee9a
Revert "Properly clamp volume value"
...
This partially reverts commit 95713ae439
.
# Conflicts:
# src/WallpaperEngine/Application/CApplicationContext.cpp
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-08 23:59:39 +01:00
Alexis Maiquez
99a4935825
Add composelayer checks back until we figure out how they work
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-08 18:55:27 +01:00
Alexis Maiquez
732c60da46
More code cleanups
...
Update .clang-format
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-08 18:48:19 +01:00
Alexis Maiquez
48a91ff297
More code cleanup
...
Input is now handled by context
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-08 14:57:17 +01:00
Alexis Maiquez
a8ef45265c
Fix build with old ffmpeg
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-08 14:34:22 +01:00
Alexis Maiquez
d2e82e72d8
Small code cleanups
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-08 14:27:41 +01:00
Alexis Maiquez
26f6156f34
MPV should respect volume levels now
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 11:29:57 +01:00
Alexis Maiquez
95713ae439
Properly clamp volume value
...
Removed all usages of std::make_pair
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 04:35:47 +01:00
Alexis Maiquez
55760aee4d
More code cleanup:
...
- Separated program args parsing and validation from initialization code
- Application's main body in it's own class
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 04:17:51 +01:00
Alexis Maiquez
476d45be0a
Fix a possible crash when a packet was freed on audio playback
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 04:16:43 +01:00
Alexis Maiquez
490718c22b
Fix missing #if body for number of out channels
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 00:45:44 +01:00
Alexis Maiquez
456dd531cf
Cleanup and rewrite of the audio resampling code to use non-deprecated code when possible
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 00:40:51 +01:00
Alexis Maiquez
b79444cdd9
Fix typo in last commit
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 00:05:13 +01:00
Alexis Maiquez
3df27e289b
Brought back deprecated code for older ffmpeg builds
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-07 00:03:51 +01:00
Alexis Maiquez
ecd8ff3757
Applied the same context-driver treatment to the audio subsystem (still needs some extra work to ensure all audio plays fine and a good cleanup)
...
Fixed README.md to properly reflect all dependencies in the command examples
Added support for audio looping
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-06 22:35:46 +01:00
Alexis Maiquez
97ddc91ff5
Hopefully solved #81 , should be improved at least
...
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-02-05 06:52:44 +01:00