Commit Graph

77 Commits

Author SHA1 Message Date
Almamu
f877d2b1a7 chore: moved more things to std::unique_ptr and std::shared_ptr 2025-04-26 06:08:44 +02:00
Almamu
918b80ae69 chore: change all is/as castings to use typeid so no string comparison takes place 2025-04-26 04:14:18 +02:00
Almamu
71bba11152 chore: more changes to unique_ptr and shared_ptr
feat: improved render initialization process to make it easier and simpler to add new drivers (no more #ifdef in CWallpaperApplication.cpp)
2025-04-26 03:11:31 +02:00
Almamu
ea88eabb11 chore: more changes to unique_ptr and shared_ptr 2025-04-26 00:23:21 +02:00
Almamu
498fa4f9b1 feat: do not initialize some subsystems if they're disabled or not used by backgrounds 2025-04-22 01:24:10 +02:00
Almamu
58f6a5c2e5 feat: added material command copy support 2025-04-22 00:41:48 +02:00
Almamu
c1fc105a22 chore: removed deprecated parameters and switched to argparse instead of getopt
fix: clamping mode wasn't applied by background properly, only globally
2025-04-21 17:27:13 +02:00
Almamu
d163220156 chore: rewritten bloom effect as a json object inside C++ so it's easier to follow 2025-04-20 23:19:01 +02:00
Almamu
16682fcb68 chore: hide background structure dump behind a command-line switch 2025-04-20 23:03:13 +02:00
Almamu
f312bcdca4 refactor: simplified working with properties, constants and shader variables 2025-04-19 09:49:21 +02:00
Almamu
beb186050b feat: take into account project properties for shader values
feat: proper parsing of combo values in shaders
fix: shader units weren't linked as they should
chore: more support for detecting shader things automatically
2025-04-17 02:56:26 +02:00
Almamu
9ff7adae02 feat: added a pretty printer for easier debug and comparison between different versions of linux-wallpaperengine 2025-04-16 02:37:34 +02:00
Almamu
1db86053ce chore: cleanup of the core part of the project 2025-04-14 03:58:59 +02:00
Almamu
5e95fda88b chore: fix path detection being wrong, make use of std::filesystem::path on CContainers 2025-04-13 16:11:43 +02:00
Almamu
d8ddc899fb chore: fix segfault after code cleanup 2025-04-11 01:44:59 +02:00
Almamu
ae66deffb6 chore: some readability improvements on code 2025-04-11 01:40:13 +02:00
Almamu
29fb78b695 feat: add testing tools to run over all backgrounds and getting output data 2025-04-07 05:09:11 +02:00
Almamu
740c290a82 chore: make use of external repos for all deps instead of copying things manually and more cleanup work 2025-04-06 08:40:00 +02:00
Almamu
47b52fd6df chore: re-organized web wallpaper support to use custom scheme and better handle multiprocessing 2025-04-06 02:50:47 +02:00
Almamu
89e4431345 chore: remove shader patches as they shouldn't be needed anymore 2025-04-01 23:24:00 +02:00
Almamu
1e18f760d7 chore: fix glReadPixels for older opengl versions 2025-04-01 21:57:51 +02:00
Almamu
35969a7a0a chore: memory cleanup fixes 2025-04-01 12:53:16 +02:00
Almamu
6c0a9c12d5 chore: delay initialization of browser until it's used once 2025-04-01 11:50:37 +02:00
Almamu
2c4884f432 chore: reverted part of last commit 2025-04-01 02:56:09 +02:00
Almamu
aee622da6c fix: use glReadnPixels for X11 copying to be more memory safe 2025-04-01 02:43:13 +02:00
Almamu
b7735298be fix: crash when taking screenshot 2025-04-01 01:20:55 +02:00
moetayuko
bdaf1ec6e4
implement wayland fullscreen detector (#261)
* feat: wayland fullscreen detector

* feat: pause mpv when fullscreen
2024-11-08 01:54:26 +01:00
Alexis Maiquez
1c12951a6a chore: update readme
chore: some X11 files were being included in wayland-only builds
2024-10-12 20:59:51 +02:00
Alexis Maiquez
c400f49275 fix: screenshot taken was black 2024-10-12 20:25:56 +02:00
Alexis Maiquez
7278f2f817 fix: replace FreeImage with stb_image and stb_image_write
fixes #204
2024-10-12 20:11:14 +02:00
Almamu
50d3bced8e fix: hopefully fix running from arch's package 2024-06-06 21:40:13 +02:00
Almamu
6c27d94115 fix: #219 window mode wasn't rendering because of an issue with default background detection 2024-05-21 14:20:08 +02:00
Almamu
9712f20140 fix: improve how default background is determinated, hopefully improves #219 2024-05-21 14:14:03 +02:00
Almamu
cdfa4ff7a1 chore: some more verbosity on error messages when loading assets 2024-05-16 15:22:26 +02:00
Almamu
4dbb3cc422 chore: renamed members not properly named 2024-05-11 19:01:46 +02:00
Almamu
8a8741dbff chore: clang-format 2024-05-11 17:38:25 +02:00
Almamu
c44a86d218 fix: missing unistd include 2024-05-11 17:28:53 +02:00
Almamu
953ef01749 feat: conditionally enable wayland and x11 support 2024-05-11 17:19:42 +02:00
Almamu
8dbb4aa7e8 chore: linting 2024-05-07 04:24:46 +02:00
Almamu
9e271a2b39 chore: remove notion of default background in render, each screen needs it's own independent render 2024-05-07 04:15:20 +02:00
Almamu
235cda8c94 chore: move cef initialization to its own context 2024-05-07 03:59:40 +02:00
Almamu
006d4ee3d0 chore: move wallpaper types to their own folder 2024-05-07 02:55:10 +02:00
Alexis Maiquez
c90cc4d915 feat: add option to disable audio processing
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-12-14 03:21:06 +01:00
Alexis Maiquez
b8fd1eefac chore: clang-format and code formatting done with an extra of code cleanup
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-12-14 02:20:34 +01:00
Alexis Maiquez
89a2178308 CDirectory should not use sLog for errors
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2023-12-12 02:13:06 +01:00
Pasalc
11666abf32 Added scaling and clamp support 2023-11-13 21:38:56 +03: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
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
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