Camilla Löwy
5f1631cb0e
Check scancode before use in glfwGetKeyName
2020-01-16 23:17:49 +01:00
Camilla Löwy
a491b0698c
Win32: Use non-async key state for modifier hack
...
The synchronous key state seems to make more sense in context.
2020-01-16 23:16:43 +01:00
Camilla Löwy
562c17d131
Win32: Fix no Super key release event after Win+V
...
The Win+V hotkey brings up a clipboard history IME that consumes the key
release. This adds left and right Super to the modifier keys manually
polled for undetected release during event processing.
Fixes #1622 .
2020-01-16 23:16:41 +01:00
Camilla Löwy
7da87aaae7
Cocoa: Add fully dynamic loading of Vulkan loader
...
If the application is not linked against the Vulkan loader and relies on
a third-party loader library or glfwGetInstanceProcAddress, then our
call to dlopen will fail without a custom dyld environment variable.
This adds a fallback of looking in the directory of the main executable,
which matches the bundle structure recommended by the Vulkan SDK, making
that finally work out of the box for fully dynamic loading.
2020-01-16 22:15:30 +01:00
Camilla Löwy
15d91801b7
Cocoa: Select Vulkan surface extension at runtime
...
This mostly just follows the pattern established by X11.
Related to #1619 .
2020-01-16 21:53:18 +01:00
ByunghoonKim
c5cb4a253a
Cocoa: Add support for VK_EXT_metal_surface
...
This adds optional support for the VK_EXT_metal_surface instance
extension.
Closes #1619 .
2020-01-16 05:28:24 +01:00
Camilla Löwy
9372ba95fa
X11: Fix parent window handle initialization
...
This should have been initialized to the screen root, not None. This
issue was introduced by fe57e3c292
.
Fixes #1620 .
2020-01-14 21:26:21 +01:00
Camilla Löwy
aa5e313561
X11: Fix BadMatch focusing a window on non-EWMH WM
...
When the WM does not support EWMH or there is no WM running, GLFW falls
back to XSetInputFocus, which will emit BadMatch if the window is not
viewable, which will terminate the program.
Bug spotted on IRC.
2020-01-06 22:45:56 +01:00
Camilla Löwy
fe57e3c292
X11: Fix no window position events during resize
...
A window resize action that also resulting in the window being moved did
not emit any window positions events, as the position of real
ConfigureNotify events was ignored. The real events use parent
coordinates instead of root coordinates so this adds parent tracking and
conditional translation.
Fixes #1613 .
2020-01-01 16:56:32 +01:00
Camilla Löwy
6b01affd89
Update changelog
2020-01-01 01:43:40 +01:00
Camilla Löwy
bf292f0083
Update changelog and add credit
2020-01-01 01:43:30 +01:00
Camilla Löwy
781fbbadb0
Fix Threads package not located by our config file
...
This fixes a missing dependency error when the imported GLFW target is
a static library.
Thanks to @mosra for reporting the bug.
2019-12-26 16:31:42 +01:00
Camilla Löwy
5dd207048c
Set macOS deployment target in Travis CI build
2019-12-26 16:31:42 +01:00
Camilla Löwy
a3d28ef52c
X11: Fix IC event mask not being added to our window
2019-12-26 16:31:42 +01:00
Camilla Löwy
8149a5fc00
X11: Cleanup
...
We can use C99 now and also we will need the event mask below.
2019-12-26 16:31:41 +01:00
Luflosi
74a46dfa0c
Use the correct type in a for loop
...
The `sizeof()` operator has the type `size_t`, so the `for` loop
iterating over it should use the same type.
Closes #1614 .
2019-12-26 16:31:37 +01:00
Camilla Löwy
4ec7daf3e9
Cocoa: Replace display link with IOKit query
...
This removes the final dependency on CoreVideo, using a display link to
get the refresh rate of monitors where Core Graphics report a refresh
rate of zero. Instead we now query the I/O registry directly, similarly
to what the display link does at creation.
Thanks to @OneSadCookie for pointers to this solution.
2019-12-25 21:53:04 +01:00
Camilla Löwy
c3ca88055f
NSGL: Simulate vsync for occluded windows
...
This only supports a swap interval of zero or one, as that is all NSGL
supports.
2019-12-20 09:49:55 +01:00
Camilla Löwy
54e8e0b092
NSGL: Remove problematic swap interval workaround
...
Fixes #1483 .
2019-12-20 09:46:48 +01:00
Camilla Löwy
b4a8eb9b19
Cocoa: Only create per-monitor display link once
...
The display link query is not specific to any particular display mode
and so only needs to be done once.
The next step is to replace the display link altogether by querying
IOKit directly, which is what the display link does.
2019-12-20 09:46:48 +01:00
Camilla Löwy
28773a069e
Cocoa: Fix undeclared selector warnings
2019-12-20 09:46:48 +01:00
Camilla Löwy
73a8ebb691
X11: Cleanup
...
This is technically valid but misleading and may inspire future bugs
like the one fixed by 0b652a44d2
.
2019-12-17 02:17:31 +01:00
Camilla Löwy
4e70c95aa3
X11: Cleanup
...
The window state action is not an atom.
2019-12-17 01:53:48 +01:00
Camilla Löwy
9db156421f
X11: Fix updating GLFW_FLOATING on a hidden window
2019-12-17 01:53:40 +01:00
Camilla Löwy
0b652a44d2
X11: Fix invalid read when clearing GLFW_FLOATING
2019-12-17 01:51:35 +01:00
Camilla Löwy
9b6d68ec70
X11: Fix missing checks for EWMH attention atoms
2019-12-16 16:22:22 +01:00
Camilla Löwy
4837b78ffe
X11: Fix maximization of hidden windows
...
This fixes glfwMaximizeWindow having no effect on hidden windows by
manually appending the maximization states to the EWMH state property.
2019-12-16 16:22:15 +01:00
Camilla Löwy
bc3be40f21
Enable strict C99 for non-VS compilers
2019-12-16 12:48:32 +01:00
Camilla Löwy
da3f20d860
Win32: Add missing include for wcscmp
2019-12-15 18:37:57 +01:00
Camilla Löwy
fb0028c766
Win32: Enable Unicode mode for all compilers
2019-12-15 18:37:57 +01:00
Camilla Löwy
994c3b4e48
Cocoa: Remove stale GCC workaround
2019-12-15 18:37:57 +01:00
Camilla Löwy
18307467b4
Gather CMake setup of configuration header
2019-12-15 18:37:57 +01:00
Camilla Löwy
49c5d837b4
Replace CMake threads variable with modern target
2019-12-15 18:37:56 +01:00
Camilla Löwy
8a5fd0c5a4
Replace ad-hoc CMake code with DEFINE_SYMBOL
...
This target property does what we were doing manually.
2019-12-15 18:37:56 +01:00
Camilla Löwy
a5ed740d9d
Fix use of CMake 3.13 command target_link_options
2019-12-15 18:37:56 +01:00
Camilla Löwy
a264d32987
Replace CMake list variables with target_sources
2019-12-15 18:37:56 +01:00
Camilla Löwy
081484ed34
Fix POSIX conformance issues for clock_gettime
...
CLOCK_MONOTONIC should not be used as a feature macro. The POSIX
feature macros are provided by unistd.h. CLOCK_MONOTONIC is provided by
time.h. CLOCK_MONOTONIC requires _POSIX_C_SOURCE >= 199309L on some
systems.
2019-12-15 18:15:40 +01:00
Camilla Löwy
506a6aafde
Formatting
2019-12-11 22:10:00 +01:00
Camilla Löwy
a875a536b7
Cocoa: Fix duplicate conversion of title string
2019-12-11 22:08:56 +01:00
Camilla Löwy
2551829f75
Win32: Add VERSIONINFO resource to GLFW DLL
...
This will let people see the API version in the Explorer property box.
2019-12-11 21:02:08 +01:00
Camilla Löwy
7e03bce138
Fix typo
2019-12-11 21:02:08 +01:00
Luflosi
ac30ef3e0c
Fix typo
...
Fixes #1601 .
2019-12-11 21:02:01 +01:00
Camilla Löwy
a43f545677
Add dependency name hints to CMake error messages
...
Fixes #1605 .
2019-12-10 10:56:39 +01:00
Camilla Löwy
59055d585f
Update minimum required CMake version to 3.1
2019-12-09 23:48:26 +01:00
Camilla Löwy
8a1f4940fc
Remove reference to non-existent CMake variable
2019-12-09 23:48:26 +01:00
Camilla Löwy
5f4a6f689a
Gather all macOS specific CMake properties
2019-12-09 23:48:26 +01:00
Camilla Löwy
c016b26852
Remove non-GUI binaries from GUI-only setup
2019-12-09 23:48:26 +01:00
Camilla Löwy
db76abb63c
Make target-specific define target-specific
2019-12-09 23:48:26 +01:00
Camilla Löwy
c194193797
Replace CMake generator expression with variable
...
Generator expressions are amazing but best used in moderation.
2019-12-09 23:35:51 +01:00
Camilla Löwy
9dc365f192
Merge GCC/Clang specific CMake blocks
2019-12-09 23:35:51 +01:00