Commit Graph

4711 Commits

Author SHA1 Message Date
Jan Schürkamp
38b97087d0
Merge branch 'glfw:master' into application-badge 2023-08-11 19:58:17 +02:00
Camilla Löwy
3eaf1255b2 Wayland: Cleanup
Update naming and declarations to current standard.
2023-06-01 20:12:56 +02:00
Camilla Löwy
6b48f2be97 Wayland: Merge function called once
This brings together the two halves of the cursor setting logic for the
fallback decorations.
2023-06-01 20:12:22 +02:00
Camilla Löwy
00a663dafd Wayland: Fix fallback decorations emitting errors
A GLFW_CURSOR_UNAVAILABLE error would be emitted each time the cursor
moved over the fallback decorations if the standard cursor shape
appropriate for that part was missing on the system.

These errors served no useful purpose and have been removed.
2023-06-01 20:12:13 +02:00
GamesTrap
bf91d28b2c
Merge origin/taskbar-progress into application-badge 2023-04-12 00:55:41 +02:00
GamesTrap
8f1ddbb908
Fixed DBus crash because of illegal characters in executable name 2023-04-12 00:54:47 +02:00
GamesTrap
c31a759221
Merge origin/taskbar-progress into origin/application-badge 2023-04-12 00:33:36 +02:00
GamesTrap
5842644e2e
Improved DBus repetition 2023-04-12 00:10:39 +02:00
GamesTrap
59514c4bb5
DBus made bus and signal paths unique 2023-04-12 00:02:35 +02:00
GamesTrap
9506596ddd
Merge origin/taskbar-progress into origin/application-badge 2023-04-10 14:21:37 +02:00
GamesTrap
1824da004f
Added caching of desktop file path 2023-04-10 14:16:08 +02:00
GamesTrap
e3bcb1e384
Added caching of desktop file path 2023-04-10 14:11:51 +02:00
GamesTrap
d7cc6477ae
Win32 C90 Fixes 2023-04-05 21:19:37 +02:00
GamesTrap
76951dbbf3
Added README.md entry 2023-04-05 20:49:04 +02:00
GamesTrap
7b9df90be2
Merge remote-tracking branch 'origin/taskbar-progress' into application-badge 2023-04-05 19:58:13 +02:00
GamesTrap
dacb814e8b
Merge upstream/master into origin/taskbar-progress 2023-04-05 19:57:47 +02:00
GamesTrap
aec406ec1f
Merge upstream/master into origin/application-badge 2023-04-05 19:55:52 +02:00
Jan Schürkamp
a734a8bbdb
Merge(#4): Added documentation
Add documentation for glfwSetWindowBadge and glfwSetWindowBadgeString
2023-04-04 22:05:07 +02:00
ws909
1f13c042b2 Add documentation for glfwSetWindowBadge and glfwSetWindowBadgeString 2023-04-03 09:06:22 +02:00
Camilla Löwy
3fa2360720 Update changelog
Related to #2198
2023-03-31 16:18:46 +02:00
TheBrokenRail
0b94e1b29b Wayland: Fix detection of joysticks after init
Closes #2198
2023-03-31 16:18:46 +02:00
Camilla Löwy
f27daa34ad Fix glfwinfo output of Vulkan layer spec version 2023-03-31 16:18:46 +02:00
Camilla Löwy
6f2d7064be Make glfwinfo try Vulkan even if GL/GLES fails 2023-03-31 16:18:46 +02:00
Camilla Löwy
9cce2896ee Null: Add (fictional) scancodes
This replaces the previous scheme where scancodes were equal to keycodes
(an implausible and potentially misleading situation) with a set of
scancodes invented purely for the null platform.
2023-03-31 15:56:01 +02:00
Camilla Löwy
23ab972724 Fix unquoted CMake variable references
The previous version did not handle paths containing whitespace
correctly.

Related to #2256
2023-03-31 15:33:15 +02:00
Camilla Löwy
fbdb53b9ca Wayland: Add initial support for libdecor
This is partly based on the implementation of libdecor support in
PR #1693 by @ christianrauch.

Where available, the libdecor library is loaded at init and becomes the
preferred method for window decorations.  On compositors that support
XDG decorations, libdecor in turn uses those.  If not, libdecor has
a plug-in archtecture and may load additional libraries to either use
compositor-specific decorations or draw its own.

If necessary, support for libdecor can be disabled with the
GLFW_WAYLAND_LIBDECOR init hint.  This is mostly in case some part of
the dynamic loading or duplication of header material added here turns
out to cause problems with future versions of libdecor-0.so.0.

Fixes #1639
Closes #1693
Related to #1725
2023-03-27 22:03:36 +02:00
Camilla Löwy
cd466cf9fd Wayland: Simplify decoration side detection
This commit simplifies the detection of which element of a fallback
decorated window the pointer has entered.  Instead of looping through
the list of windows, the user pointer of fallback decoration surfaces is
set to the GLFW window object.
2023-03-27 22:03:36 +02:00
Camilla Löwy
39f0e86228 Wayland: Clean up enum value names 2023-03-27 22:03:36 +02:00
Camilla Löwy
efa9297a41 Wayland: Simplify per-window ouput scales tracking
This replaces (one case of) manual management of weak links between
windows and monitors, both objects with complex life times, with
wl_object pointers used as opaque key values.
2023-03-27 22:03:36 +02:00
Camilla Löwy
91c837ace5 Wayland: Use tags to verify proxy ownership
This is in preparation for adding support for libdecor, which creates
its own proxies on our display.  It will likely also be helpful to some
people using native access on Wayland.

This is partly based on the implementation of libdecor support in
PR #1693 by @ christianrauch.
2023-03-27 22:03:36 +02:00
Camilla Löwy
6d9083af03 Wayland: Remove duplicate setting of user data
The surface user data is already set by wl_surface_add_listener.
2023-03-27 22:03:36 +02:00
Camilla Löwy
4cf510511c Wayland: Stop manually tracking interface versions
This is already tracked by the proxies we care about.
2023-03-27 22:03:36 +02:00
Camilla Löwy
c1a79c1c41 Wayland: Emit size event when setting aspect ratio 2023-03-27 22:03:36 +02:00
Camilla Löwy
8397b39afa Wayland: Fix some missing window refresh events 2023-03-27 22:03:36 +02:00
Camilla Löwy
735fc101f5 Wayland: Fix decorations not always being created
If a window was initially fullscreen then it would not get an XDG
decoration object.  If the window was later switched to windowed mode it
would then get fallback decorations instead of XDG ones.
2023-03-27 22:03:36 +02:00
Camilla Löwy
228428fa4f Wayland: Simplify test for fallback decorations
The GLFW fallback decorations only exist when the window is visible,
decorated and in windowed mode.
2023-03-27 22:03:36 +02:00
Camilla Löwy
82e77dbff4 Wayland: Pick more plausible default cursor size
This is not intended as a replacement for actually querying the desktop
for the correct size, but it appears to be a better fallback value.
2023-03-27 22:03:36 +02:00
GamesTrap
3ed4a360fd
Merge origin/taskbar-progress into origin/application-badge 2023-03-21 13:36:38 +01:00
GamesTrap
528dcc45f8
Moved credits from win32_window.c to CONTRIBUTORS.md 2023-03-14 14:54:00 +01:00
GamesTrap
de81fae268
Added GLFW_WIN32_GENERIC_BADGE window hint 2023-03-08 21:22:10 +01:00
GamesTrap
589e6b78d9
Added DBus pointer checks 2023-03-08 14:47:40 +01:00
Andreas
ef4d722b76
Merge(#3): Finalized progress API 2023-03-08 14:10:00 +01:00
GamesTrap
367a50e82d
Renamed badge API functions 2023-03-08 01:00:21 +01:00
GamesTrap
121fe73e93
Added GenerateGenericBadgeIcon() 2023-03-07 02:18:16 +01:00
GamesTrap
13f1b96386
Better error handling for GenerateTextBadgeIcon() 2023-03-07 01:52:15 +01:00
GamesTrap
aa0e9f8aa7
Changed error message in _glfwSetWindowTaskbarBadgeStringWin32() 2023-03-07 00:20:22 +01:00
GamesTrap
444d7de752
Added transparency to GenerateBadgeIcon() 2023-03-07 00:15:41 +01:00
GamesTrap
5ca07929a8
Added alt text to _glfwSetWindowTaskbarBadgeWin32() 2023-03-06 16:48:01 +01:00
GamesTrap
e637d78303
Adjusted GenerateBadgeIcon() 2023-03-06 16:46:41 +01:00
Jan Schürkamp
2caed8f826
Merge(#2): Updates the application badge API and implementations 2023-03-06 15:48:38 +01:00