40 Commits
Author SHA1 Message Date
Leo L. Schwab 167358cffc New animation - Plasma
Working from the plasma screensaver from ReallySlickSavers, create a
plasma-style animation.
2026-07-20 13:06:42 +02:00
Brent 4877d0cc32 Implemented a user-controllable option (-DUSE_START_STOP_DAEMON) to
override the autodetection when required.

Note that src/daemon/CMakeLists.txt does not yet make DISALLOW_SYSVINIT
a user-controllable option, but this code would respect it if that ever
changes in the future.
2025-09-25 22:00:26 +03:00
Tasos Sahanidis 02c2f2df0b Merge remote-tracking branch 'TheBill2001/wayland-idle' 2025-08-11 14:39:38 +03:00
Karl Fleischmann 45bfeb9c6c cmake: Enable compile_commands.json by default 2025-08-11 13:05:36 +02:00
Trần Nam Tuấn 01e2014d3d Revert "cmake: Disable USE_WAYLAND by default for now"
This reverts commit bb9ac93b8b.
2025-07-31 15:50:23 +07:00
Tasos Sahanidis bb9ac93b8b cmake: Disable USE_WAYLAND by default for now
Link: https://github.com/ckb-next/ckb-next/issues/1188
2025-07-30 14:08:17 +03:00
Tasos Sahanidis 0b3113df36 cmake: Fix PREFER_QT6 order 2025-07-30 13:48:38 +03:00
Tasos Sahanidis 8566997efa Set PREFER_QT6 to ON by default
We'll see if anything breaks
2025-05-18 17:28:39 +03:00
Trần Nam Tuấn c50496f79c Add Wayland idle timer
Wayland idle timer use ext_idle_notifier_v1 Wayland protocol to be notified of user idle status. It will only run if the compositor implement the protocol. For ext_idle_notifier_v1 version 2, get_input_idle_notification() only tracks user input, which I think is more appropriate.

Due to the usage of qt_generate_wayland_protocol_client_sources() in CMake to generate Wayland client code, Wayland idle timer can only be compiled using Qt 6. We could take relevant part from KDE's ECM FindQtWaylandScanner, but that seem cumbersome.
2025-03-22 15:13:32 +07:00
Trần Nam Tuấn 54884df07d Add Wayland interfaces query function
With Qt 6.5 and later, we have QNativeInterface::QWaylandApplication for low level Wayland access. For older Qt, QPlatformNativeInterface is required. QPlatformNativeInterface is a private class from Qt::GuiPrivate, which isn't idea. But it was how KDE did it in the past.

FindWayland.cmake and FindWaylandProtocols.cmake are modifed version of KDE's ECM, with unused bits removed.
2025-03-22 14:57:32 +07:00
Tasos Sahanidis 1ce29099e3 cmake: Fix Qt order
https://gitlab.kitware.com/cmake/cmake/-/issues/23575

Closes #1107
2024-11-04 07:18:23 +02:00
Mavroudis Chatzilazaridis 7f22ea9568 gui: Port to Qt6 2024-04-28 23:55:12 +03:00
Mavroudis Chatzilazaridis b57ddc292c cmake: Make build system Qt version agnostic 2024-04-27 21:08:50 +03:00
Tasos Sahanidis 8f9d0e5749 cmake: Add WERROR option
It is meant to be used for CI
2023-06-23 15:36:59 +03:00
Tasos Sahanidis f6258b4ad1 gui: Add MSAA limits for older Intel GPUs 2023-05-04 21:35:32 +03:00
Tasos Sahanidis 3bf1591a28 Remove bundled QuaZip 2023-03-20 00:23:03 +02:00
Tasos Sahanidis 3d5c76a133 Add FPS counter for daemon 2022-09-24 00:34:22 +03:00
Tasos Sahanidis df14b8a9a6 Add warning about experimental devices in releases 2022-05-24 14:07:00 +03:00
Tasos Sahanidis 412b0b1f0f Disallow tsan when NO_FAIR_MUTEX_QUEUEING is off 2022-03-17 08:52:19 +02:00
Tasos Sahanidis cba50cfe9a Rework input to handle scroll wheels as axes
Additionally, mouse and keyboard events are now queued up and are
"flushed" when os_inputsync() is called.
2021-07-04 03:20:23 +03:00
Tasos Sahanidis 5fe1d65acc Add option to disable fair mutex queueing 2021-03-14 06:09:11 +02:00
Tasos Sahanidis 4c070c5d36 Replace AppIndicator with minimal KStatusNotifier 2020-08-05 12:08:14 +03:00
Tasos Sahanidis ac35f7ae66 Fix various threading and data race issues
Mutexes are locked and unlocked in the correct order
A warning is now being thrown whenever the main thread tries to
join itself
Added optional debug logging
Other tsan warnings have been fixed
2020-08-05 01:42:54 +03:00
Tasos Sahanidis b63c3f965d Turn lights off when desktop is idle 2020-01-03 21:59:08 +02:00
Tasos Sahanidis 216edbc8fd Add cmake argument to specify udev rule path 2019-05-18 09:47:30 +03:00
Tasos Sahanidis 4dcd68d91f Don't enable mviz by default on mac 2019-03-06 12:25:53 +02:00
Tasos Sahanidis c7afd2538e Add PortAudio switch to cmake and various fixes 2019-03-05 19:22:47 +02:00
Tasos Sahanidis 6b7eebff69 Add pipe animation 2019-03-05 17:13:45 +02:00
Tasos Sahanidis 9e9cc83214 Add snake animation 2019-03-02 03:05:56 +02:00
0=={ bc63816d9b Add Conway's Game of Life Keyboard animation
(Squashed commit)
Closes #367
2019-02-24 22:44:51 +02:00
Tasos Sahanidis 89e95b53b4 Add updater 2018-10-08 00:45:32 +03:00
Tasos Sahanidis 2bfdee6624 Add invaders to cmake 2018-08-09 20:16:11 +03:00
Krish De Souza 2821757c1f Created a Docker image that can be used to build debs of CKB-next for Ubuntu-18.
Adjusted cmake configuration to make debs.
2018-08-05 12:31:29 +01:00
Tasos Sahanidis 905895189f Only include the kext on non legacy builds 2018-07-30 01:30:54 +03:00
Tasos Sahanidis 1a36377982 Add option to build legacy binary 2018-07-30 00:43:19 +03:00
Tasos Sahanidis 6ee04745b7 Ignore anaconda in PATH 2018-04-25 14:45:52 +03:00
Tasos Sahanidis 6fc5c7d94e Don't use appindicator with Qt > 5.7
Qt > 5.7 doesn't have a gtk2 platform theme anymore, and the bugs
appindicator was supposed to work around have been fixed.
2018-04-22 19:32:38 +03:00
Tasos Sahanidis 05139f727d Make AppIndicator optional again and fix libpulse 2018-03-17 18:00:16 +02:00
Tasos Sahanidis 490180e78e Add fallback for non-release zip downloads 2018-03-17 18:00:16 +02:00
Oleksii Vilchanskyi c56d5f9b68 Add CMake files, remove qmake files 2018-03-17 18:00:14 +02:00