Carter Li
66fbda9542
Display (Linux): return reason if errored
2025-01-21 08:44:24 +08:00
Carter Li
b340d4e149
CI: fix build
2025-01-12 12:10:10 +08:00
Carter Li
878e516880
DisplayServer (Linux): upgrade wayland protocol kde-output-device-v2
...
Ref: #1504
2025-01-12 11:23:42 +08:00
Carter Li
4e3673a2bb
DisplayServer (Linux): check HDR support with xx_color_manager_v4_interface (WIP)
2025-01-11 13:10:07 +08:00
Carter Li
6577884417
WMDE: detect Sway by env variables
2025-01-08 08:50:53 +08:00
Carter Li
2176ea2937
Revert "Display (Linux): prefer detecting physical size from EDID"
...
Try fixing #1444
This reverts commit 5f3ce50022 .
2024-12-18 09:28:42 +08:00
Eva
0dc40a2632
WM (Linux): added ratpoison window manager ( #1442 )
2024-12-17 10:49:55 +08:00
李通洲
69f180beea
Display (FreeBSD): don't try to use /sys on FreeBSD
2024-12-14 22:22:35 +08:00
李通洲
0e9cdf75b5
WM (FreeBSD): improve WM detection for Wayland
2024-12-14 22:22:35 +08:00
Carter Li
87446e6eef
WM (OpenBSD): fix process enumeration
2024-12-14 00:18:41 +08:00
Carter Li
bfaa73a2c7
Display (Linux): clean up
2024-12-14 00:05:28 +08:00
Carter Li
373e288d03
WM: add support for fvwm (OpenBSD) and ctwm (NetBSD)
2024-12-14 00:05:02 +08:00
Carter Li
6edf763f2b
Display (Linux): detect bit depth when libdrm is used
2024-12-03 10:55:00 +08:00
Ryan
ee8801b54d
WM (Linux): fix wl-restart parsing ( #1422 )
...
Make the WM name in `wl-restart -n 5 Hyprland` parse as "Hyprland"
instead of "-n".
2024-11-29 08:34:40 +08:00
李通洲
bbe239647b
Logo (Builtin): add Windows Server 2025
...
Fix #1420
2024-11-28 21:55:21 +08:00
李通洲
0cd7aeac19
Display (macOS): don't crash with NULL pointer references
...
Fix #1393
2024-11-25 22:23:24 +08:00
李通洲
9a1d18556d
Display: don't report screen size when display is mirrored
...
Fix #1406
2024-11-21 15:29:14 +08:00
Carter Li
a567268ca1
Display (Linux): fix preferred resolution detection for wayland
2024-11-20 21:38:18 +08:00
李通洲
8b62ad72f7
Display (FreeBSD): fix build
2024-11-20 16:39:01 +08:00
李通洲
7948e627b0
Display (Android): fix build
2024-11-20 16:39:01 +08:00
李通洲
4cca63a299
Display (Windows): detect preferred resolution & refresh rate
2024-11-20 16:39:01 +08:00
李通洲
21a35769a7
Display (macOS): detect maximum resolution & refresh rate
2024-11-20 16:39:01 +08:00
Carter Li
fa9290088d
Display (Linux): detect preferred resolution and refresh rate
2024-11-20 16:38:53 +08:00
Carter Li
3d5133eaba
DisplayServer (Linux): remove support of xcb & xlib
...
They don't support multi-monitors. Prefer libdrm.
2024-11-20 09:37:32 +08:00
李通洲
97e1b987dd
Global: pack all enums and make flag enums unsigned
2024-11-14 11:00:44 +08:00
李通洲
830c71ddc4
DisplayServer (NetBSD): detect WM / DE by process name
2024-11-11 17:37:01 +08:00
Carter Li
837903e845
DisplayServer: fix deprecation warnings
2024-11-09 21:36:48 +08:00
Carter Li
f7288fec01
Global: support DragonFly BSD
2024-11-03 08:35:11 +08:00
Carter Li
5443334156
DisplayServer (Linux): silense compiler warnings
2024-10-29 09:08:28 +08:00
李通洲
fd26373c8f
Global: overall optimization
2024-10-26 11:42:07 +08:00
李通洲
b257134d74
Chore: introduce macro ARRAY_SIZE
2024-10-18 16:44:41 +08:00
李通洲
188dbde595
Chore: remove all #ifndef guards
2024-10-17 22:33:52 +08:00
李通洲
993902916d
Chore: don't use strncpy in favor of strlcpy
...
strncpy doesn't require target to be NUL terminated
2024-10-17 16:16:04 +08:00
Carter Li
1c598add39
Chore (Linux): always ignore hidden files when enumerating directories
2024-10-15 10:16:58 +08:00
Carter Li
71a8978f41
Display: report platform api used for detection
2024-10-14 14:42:11 +08:00
Shu Niu
986d36c028
fix build in ancient MacOS ( #1334 )
2024-10-12 19:45:14 +08:00
Carter Li
d5d935a658
DisplayServer (Linux): fix invalid display name detection
2024-10-06 12:27:49 +08:00
Carter Li
5f3ce50022
Display (Linux): prefer detecting physical size from EDID
2024-10-05 23:56:16 +08:00
Carter Li
f30501f365
Display (macOS): fix invalid physical size on old Intel Mac
2024-10-05 17:22:32 +08:00
Carter Li
a32d9d788c
OpenBSD: init platform support
2024-10-04 17:49:18 +08:00
Carter Li
99626149f6
Display (FreeBSD): add guards between linux specific code
2024-10-01 17:26:29 +08:00
李通洲
d5c395fb85
Display (Windows): merge features of Monitor module
2024-09-30 23:25:08 +08:00
李通洲
46eb0e4b1c
Display (Linux): merge features of Monitor module
2024-09-30 22:43:29 +08:00
李通洲
fb0a18dc82
Display (macOS): merge monitor module features
2024-09-30 20:16:24 +08:00
Carter Li
88097463af
Display (Linux): report displays of unknown connection state too
...
Ref: #1301
2024-09-29 10:25:46 +08:00
Ziyao
51796de69a
Display (Linux): detect all enabled or connected connectors ( #1301 )
...
DRM connectors have two properties, "enabled" and "status", standing for
"enabled by userspace" and "a display has been connected". Connector
status cannot be reliably detected sometimes, in this case status will
be set to unknown and it is still okay to enable it. Some drivers are
also able to enable disconnected connectors.
So it is both meaningful to detect connectors in two states,
- An enabled connector, where it must have been operating in some
configuration required by userspace
- A connected connector, where driver is sure a display has been
connected to the port, this is the obvious case.
In the original implementation, only information of connected connectors
are detected and an enabled connector without hotplug detection
capability, like a Composite video connector, will be silently ignored.
Switch to the new strategy to detect these connectors correctly.
References: https://github.com/torvalds/linux/blob/3efc57369a0ce8f76bf0804f7e673982384e4ac9/include/drm/drm_connector.h#L58-L89
Signed-off-by: Yao Zi <ziyao@disroot.org >
2024-09-29 10:23:20 +08:00
李通洲
c9d539090d
Global: remove --lib-xxx support
2024-09-04 15:56:11 +08:00
Carter Li
67d0dfcef0
DE (Linux): support unity version detection
2024-08-27 14:31:05 +08:00
Carter Li
e0d733f030
DisplayServer (macOS): fix building on ancient macOS version
...
Fix #1190
2024-08-15 19:01:33 +08:00
李通洲
dd66626165
Display: remove detection of WCG enabled
2024-08-14 08:32:13 +08:00