Commit Graph

4654 Commits

Author SHA1 Message Date
Scr3amer 99ed2a3d22
Bugfix: Fix skipping monitor handle assignation when monitor name was not generic
Found the issue why fullscreen was not working
2023-09-04 02:59:40 -04:00
Scr3amer 71dfe1fc45
ISO C90 2023-09-03 02:11:00 -04:00
Scr3amer 72b19e3070
Refactor my code by reusing some facilities provided by GLFW 2023-09-03 02:03:22 -04:00
Scr3amer 52ec4b29db
Merge branch 'glfw:master' into Dynamic-accurate-monitor-name-fetching 2023-09-01 03:14:04 -04: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
Scr3amer 7e2f1e4c5e
Forgot to rename an reference to a function after I modified the function name 2023-04-06 19:36:53 -04:00
Scr3amer 741ad809b1
Fixed some indentations to be consistent with rest of file 2023-04-06 19:35:37 -04:00
Scr3amer 6f08e09191
Fixed naming according to coding convention
Made a function camelCase.
2023-04-06 19:31:46 -04:00
Scr3amer 8fe887fe00 ISO C90 2023-04-06 19:09:15 -04:00
Scr3amer ffae283e41 ISO C90 again 2023-04-06 19:09:15 -04:00
Scr3amer ec5fbcd07d Buildfix - Github.dev tricked me with autocomplete... 2023-04-06 19:09:15 -04:00
Scr3amer c87d0ea52b ISO C90 - Mixed declaration and code 2023-04-06 19:09:15 -04:00
Scr3amer 648bf7a5fb ISO C90 - Mixed declaration and code. 2023-04-06 19:09:15 -04:00
Scr3amer 6404b1bba4 ISO C90 - Split variable initialisation and declaration 2023-04-06 19:09:15 -04:00
Scr3amer f1ee946007 Rename variable to better reflect its purpose 2023-04-06 19:09:15 -04:00
Scr3amer 7cd353f3af Rename struct to follow GLFW terminology 2023-04-06 19:09:15 -04:00
Scr3amer fbf21ad70c Implement the feature 2023-04-06 19:09:15 -04: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
Juan Ramos 9a87635686 Update to actions/checkout@v3
Fixes the following CI warning:

"Node.js 12 actions are deprecated. Please update the following
actions to use Node.js 16: actions/checkout@v2..."

Closes #2255
2023-03-03 14:47:15 +01:00
Camilla Löwy 2b580012da Add credit
Related to #2199
2023-03-03 14:46:43 +01:00
Yoshinori Sano 5c463a9070 Win32: Fix typo in error description
Closes #2199
2023-03-03 14:36:12 +01:00
Camilla Löwy 9b1f63bad9 Add credit
Closes #2256
2023-03-02 17:47:36 +01:00
Juan Ramos 1c9fcdc9df Simplify setting of GLFW_STANDALONE CMake variable
Use string(COMPARE EQUAL ...) instead of a whole if() statement.

Related to #2256
2023-03-02 17:44:18 +01:00
Juan Ramos 30b91c8b60 Remove CMAKE_LEGACY_CYGWIN_WIN32 CMake option
This was needed for compatibility with CMake versions before 2.8.4.

Related to #2256
2023-03-02 17:42:34 +01:00
Juan Ramos e0ae1c45df Remove setting of CMake policy CMP0054
This policy is already set to NEW by requiring CMake 3.4.

Related to #2256
2023-03-02 17:40:32 +01:00
Camilla Löwy 8f470597d6 Add support for manually running build workflow 2023-01-26 18:41:46 +01:00
Camilla Löwy 57cbded076 Add credit
Related to #2225
2022-12-16 13:44:59 +01:00
Takuro Ashie 41d8da1cea
Wayland: Fix wrong array size for _GLFWofferWayland
Closes #2225
2022-12-16 13:40:36 +01:00
TheBrokenRail 00967cbb8a
Linux: Fix joystick input being disabled
Closes #2192
2022-12-15 20:18:59 +01:00
Camilla Löwy dd8a678a66 Update Doxyfile template for Doxygen 1.9.5
This is mostly to disable Doxygen HTML output dark mode (for now).
2022-09-20 19:38:37 +02:00
Camilla Löwy 97b9e49637 Documentation work 2022-09-20 17:03:30 +02:00