Camilla Löwy
c88ee1c9d3
Win32: Change transparent framebuffer key color
...
This is a temporary fix while we determine if the color key workaround
should be removed completely. See issue thread for discussion.
Related to #1512 .
2019-11-11 22:37:13 +01:00
Camilla Löwy
3d2540c373
Win32: Cleanup keyboard input flag parsing
...
This replaces some magic numbers with the corresponding winuser.h
provided macros and unifies how the MSB from Get*KeyState is tested.
2019-10-03 21:05:49 +02:00
Camilla Löwy
4cc5d2e623
Clarify comment
2019-08-15 17:25:36 +02:00
Camilla Löwy
2c7ef5b480
Win32: Fix initial state of maximized state cache
2019-08-14 19:18:29 +02:00
Camilla Löwy
711b9694a1
Win32: Fix GLFW_MAXIMIZED not maximizing window
...
The window rect adjustment for content scale broke the initial, correct
maximization performed when creating the window with WS_MAXIMIZE. This
switches to updating the restored rect instead of the current rect.
Fixes #1499 .
Closes #1503 .
2019-08-13 16:08:15 +02:00
Leon Linhart
4f0b8b0dda
Win32: Fix cursor enter/position event order
...
This fixes the cursor enter event being emitted after the first cursor
position event on Windows.
Closes #1490 .
2019-07-12 16:39:17 +02:00
A. Tombs
1d62157268
Win32: Cleanup pointer test in win32_window.c
...
MSVC 2019 complains that the code at line 1744
(`GetMonitorInfo(window->monitor->win32.handle, &mi);`) can potentially
dereference a null pointer. The compiler is wrong in this case (it has
not spotted that `monitor` and `window->monitor` must be equal), but
I think it makes sense for our non-NULL test to be on the variable we
actually use rather than the one it was set from.
Related to #1491 .
2019-06-27 18:14:48 +02:00
Camilla Löwy
d0c3fa900a
Win32: Fix non-client actions for disabled cursor
...
Disabled cursor mode interfered with some non-client actions.
2019-05-24 14:43:49 +02:00
Camilla Löwy
267e06a41e
Win32: Remove stale comment
2019-05-24 14:43:49 +02:00
Camilla Löwy
56aad76b16
Add C dialect reminders to each source file
...
Files built for Win32 must use C89 style declarations for compatibility
with VS 2010 and 2012, which are still supported by GLFW.
2019-05-24 14:43:49 +02:00
Camilla Löwy
a337c56848
Start 3.4
2019-04-16 23:08:39 +02:00
Camilla Löwy
ab118b2529
Fix copyright years (somewhat)
2019-04-15 20:50:00 +02:00
Camilla Löwy
1f91697cd3
Win32: Fix VS static analysis warnings
2019-04-15 15:37:15 +02:00
Camilla Löwy
1155c83013
Rename raw input to raw mouse motion, cleanup
...
This renames 'raw input' to 'raw mouse motion' as there are other kinds
of raw input. The update path is restructured to avoid reinitializing
all of disabled cursor mode. Modification of shared state is moved out
into shared code. Raw mouse motion is disabled by default for
compatibility.
Related to #1401 .
2019-02-22 13:04:11 +01:00
Nathan Poirier
9e29f556fd
Add GLFW_RAW_INPUT and glfwRawInputSupported
...
This adds runtime per-window control of whether accelerated or raw mouse
motion is provided when the cursor is disabled.
Fixes #1400 .
Closes #1401 .
2019-02-22 13:04:11 +01:00
Camilla Löwy
e2fa82ffbb
Cleanup
...
Related to #1431 .
2019-02-13 23:21:05 +01:00
Max Risuhin
cf79f06257
Win32: Fix standard cursors not being DPI aware
...
Closes #1431 .
2019-02-11 19:19:06 +01:00
Camilla Löwy
d5ab3e919a
Cleanup
...
Replace client area with content area.
2019-01-25 12:46:46 +01:00
iamCaveLamp
a46104ee69
Removed duplicates of centerCursor function
2019-01-22 20:17:35 +01:00
Camilla Löwy
1635fe2826
Cleanup
...
Put the non-client painting related message cases with the client ones
so that they can be happy together.
Related to #1383 .
2018-12-26 15:22:20 +01:00
Aaron Loucks
9ac9d7b85a
Win32: Disable non-client painting if undecorated
...
Fixes an issue where a small title bar and window caption
buttons were being painted after restoring a minimized
undecorated window.
Closes #1383 .
2018-12-26 15:00:39 +01:00
Camilla Löwy
e779280802
Win32: Fix invalid calls to GetDpiForWindow
...
The check for Windows 10 Anniversary Edition or later was not always
performed before calling GetDpiForWindow.
Fixes #1335 .
Closes #1363 .
2018-10-22 00:51:08 +02:00
Camilla Löwy
089ea9af22
Add GLFW_SCALE_TO_MONITOR
...
This adds the GLFW_SCALE_TO_MONITOR window hint for automatically
resizing the content area of a window to the requested size times the
monitor content scale each time it is placed on a new monitor. This
only applies to windowed mode windows and includes the initial placement
at window creation.
This hint only has an effect on platforms where screen coordinates and
pixels always map 1:1 such as Windows and X11. Platforms like macOS
instead change the resolution of the framebuffer independently of the
window size.
Related to #676 .
Related to #1115 .
2018-09-03 23:12:39 +02:00
Camilla Löwy
5294439595
Win32: Add support for Per-Monitor V2 awareness
...
This adds basic support for the Per-Monitor V2 level of DPI awareness
in Windows 10, which allows for automatic DPI scaling of window
decorations.
This commit does not include resizing the window content area to match
the new window content scale.
Related to #1115 .
Fixes #1294 .
2018-09-03 23:12:39 +02:00
Camilla Löwy
a67d8afbd4
Win32: Clean up DWM detection
2018-08-24 15:06:39 +02:00
Camilla Löwy
d4cbe451fc
Win32: Clean up cursor shape translation
2018-08-24 15:06:39 +02:00
Camilla Löwy
f82a8f09eb
Win32: Disable mouse trails for full screen
...
When mouse trails are enabled, the cursor becomes invisible when the
OpenGL ICD detects a full screen window and switches to page flipping.
Mouse trails are now disabled as long as any full screen windows are
visible.
Fixes #1263 .
2018-08-02 00:01:26 +02:00
Camilla Löwy
50eccd298a
Fix cursor mode application for unfocused windows
...
Fixes #1239 .
Fixes #1247 .
2018-04-25 21:49:26 +02:00
Camilla Löwy
58cc4b2c5c
Move full screen cursor centering to shared code
2018-02-07 16:47:00 +01:00
Camilla Löwy
d10463ac91
Win32: Fix extra resize event during mode switch
...
The switch to full screen is now done with a single call to
SetWindowPos.
2018-02-07 16:46:59 +01:00
Camilla Löwy
1d75b205cb
Cleanup
...
Allow window creation despite video mode setting failure.
Video mode setting failure is ignored the rest of the time and the
desired video mode has never been a hard constraint anyway.
2018-02-07 16:46:58 +01:00
ocornut
20b12204af
Win32: Fix GLFW_FOCUSED hint being ignored
...
The window was activated by _glfwPlatformShowWindow, causing the
GLFW_FOCUSED window hint to be ignored when set to false.
Fixes #1179 .
Closes #1180 .
2018-01-09 20:36:13 +01:00
Camilla Löwy
ee9dffcd66
Add GLFW_HOVERED for polling cursor hover state
...
This window attribute corresponds to the cursor enter/leave callback.
Fixes #1166 .
2018-01-09 18:02:52 +01:00
Camilla Löwy
370eac3c48
Add glfwSetWindowContentScaleCallback
...
Related to #677 .
Related to #1115 .
2018-01-09 18:00:22 +01:00
Camilla Löwy
0e8c4ea7ce
Add lock key modifier bits input mode
...
This adds the GLFW_MOD_CAPS_LOCK and GLFW_MOD_NUM_LOCK modifier bits.
Set the GLFW_LOCK_KEY_MODS input mode to enable these for all callbacks
that receive modifier bits.
Fixes #946 .
2017-12-06 18:01:34 +01:00
Camilla Löwy
7c87948eaf
Win32: Fix accidentally working bit tests
...
Good grief.
2017-11-28 19:59:59 +01:00
Camilla Löwy
d630684654
Win32: Remove double resize of full screen window
...
Related to #1085 .
2017-11-16 11:56:03 +01:00
Camilla Löwy
11e47f08b1
Add glfwGetWindowOpacity and glfwSetWindowOpacity
...
This adds support for setting the opacity of the whole window, including
any decorations.
Fixes #1089 .
2017-11-15 15:46:01 +01:00
Camilla Löwy
31cbb20ba2
Deprecate window parameter of clipboard functions
2017-11-10 02:52:16 +01:00
Camilla Löwy
80d181f12d
Win32: Fix maximization of undecorated windows
...
Fixes #899 .
2017-10-31 15:47:01 +01:00
Camilla Löwy
bf09dba95b
Cleanup
2017-10-26 18:05:56 +02:00
Camilla Löwy
16bf872117
Add content scale queries
...
This adds glfwGetWindowContentScale and glfwGetMonitorContentScale for
querying the recommended drawing scale factor for DPI-aware rendering.
Parts of this patch are based on code by @ferreiradaselva.
Fixes #235 .
Fixes #439 .
Fixes #677 .
Fixes #845 .
Fixes #898 .
2017-10-26 17:26:36 +02:00
Camilla Löwy
5d0d30db38
Cleanup
2017-09-28 17:32:15 +02:00
Camilla Löwy
32e78aeb2e
Add GLFW_TRANSPARENT attribute and documentation
...
This completes support for window framebuffer transparency on Windows,
macOS and X11. Note that the hint/attribute may be renamed before
release to clarify its relationship to GLFW_OPACITY.
Fixes #197 .
Closes #1079 .
Related to #663 .
Related to #715 .
Related to #723 .
Related to #1078 .
2017-09-27 21:54:04 +02:00
Camilla Löwy
25b7eba4a0
Win32: Clean up dynamic loading and version checks
2017-09-27 21:33:03 +02:00
Camilla Löwy
e3be6b8ae0
Cleanup
...
Break up some overly long lines.
2017-09-17 15:14:22 +02:00
Camilla Löwy
f8668c5a9f
Win32: Fix key names not matching other platforms
...
This brings printable key names more in line with the results provided
on other platforms.
Fixes #943 .
2017-09-13 17:55:51 +02:00
Camilla Löwy
a368d89c94
Win32: Fix disabled cursor mode vs caption buttons
...
This postpones disabling the cursor until the user is done interacting
with a caption button.
Related to #650 .
Fixes #1071 .
2017-09-08 16:18:15 +02:00
Camilla Löwy
d8551b73f6
Cleanup
2017-08-28 18:31:14 +02:00
Camilla Löwy
82284b86eb
Cleanup
...
Thanks to glfwGetKeyScancode we can now pass only a scancode to the
platform layer for glfwGetKeyName.
2017-07-13 01:26:06 +02:00
Camilla Löwy
2fa90ae19f
Win32: Fix capture logic ignoring last mouse button
2017-07-09 18:37:24 +02:00
Felipe Ferreira da Silva
412eb6a611
Add glfwRequestWindowAttention
...
Related to #988 .
2017-05-11 13:36:39 +02:00
Camilla Löwy
21355e31db
Cleanup
2017-03-14 20:39:18 +01:00
Camilla Löwy
97dbd8b63b
Win32: Fix monitor event emission
...
Fixes #784 .
2017-03-14 19:21:57 +01:00
Camilla Löwy
e9560ef021
Add GLFW_OSMESA_CONTEXT_API
...
This allows the creation of OpenGL contexts via OSMesa on existing
platforms. It does not add a compile- or link-time dependency on
OSMesa.
Fixes #281 .
2017-02-28 20:38:10 +01:00
Camilla Löwy
a44f2c0e65
Win32: Fix VC++ warning
2017-02-28 00:07:37 +01:00
Camilla Löwy
918b4e81d2
Win32: Move to WM_INPUT for disabled cursor motion
...
Related to #125 .
2017-02-26 18:48:03 +01:00
Camilla Löwy
dd96d0ac93
Win32: Fix mouse button messages lost by capture
...
Fixes #954 .
2017-02-26 18:48:02 +01:00
Camilla Löwy
355b46e6c5
Win32: Fix screensaver and blanking prevention
...
On Vista and later, Handling WM_SYSCOMMAND is not enough to prevent
password protected screensavers or monitor blanking.
Fixes #851 .
2017-02-10 02:28:55 +01:00
Camilla Löwy
366b90be1a
Documentation work
2017-02-10 01:55:03 +01:00
Camilla Löwy
5a74b5008d
Cleanup
...
Related to #842 .
2017-02-06 15:16:27 +01:00
Liam Middlebrook
72ac5badb0
Add GLFW_CENTER_CURSOR
...
Adds a hint for controlling whether the cursor is centered over newly
created full screen windows.
Fixes #749 .
Closes #842 .
2017-02-06 15:16:26 +01:00
Camilla Löwy
43c1910453
Win32: Cleanup
2017-01-29 19:50:41 +01:00
Camilla Löwy
f3e20ca437
Pass scancode with synthetic key release events
2017-01-29 16:44:38 +01:00
Camilla Löwy
c28778e28c
Win32: Improve platform error messages
...
Related to #733 .
2017-01-20 01:35:24 +01:00
Camilla Löwy
221451b817
Cleanup
2017-01-10 15:46:00 +01:00
Camilla Löwy
04f559e28d
Restructure monitor enumeration
...
This way is both kinder on event-based enumeration and less work to
unwind allocations for when properly implementing GLFW_OUT_OF_MEMORY.
2017-01-02 06:03:02 +01:00
Camilla Löwy
9e56099edd
Add glfwSetWindowAttrib
...
This function allows updating the GLFW_DECORATED, GLFW_RESIZABLE,
GLFW_FLOATING and GLFW_AUTO_ICONIFY attributes for existing windows.
Fixes #537 .
2016-12-06 15:59:18 +01:00
Camilla Löwy
f4d0c83181
Paperwork done
2016-11-30 14:00:41 +01:00
Camilla Berglund
8d6f265441
Update default name from OS X to macOS
...
Note that earlier releases are still referred to by their proper names;
OS X <version> or Mac OS X <version>.
2016-10-20 00:53:37 +02:00
Camilla Berglund
c156b50e4c
Add glfwSetWindowMaximizeCallback
...
Fixes #778 .
2016-09-29 01:24:56 +02:00
Camilla Berglund
838c4e938c
Win32: Allow iconifying undecorated windows
...
Fixes #861 .
2016-09-14 18:12:21 +02:00
Camilla Berglund
f79a52fe9b
Win32: Make glfwPostEmptyEvent use helper window
2016-09-14 13:07:52 +02:00
Camilla Berglund
e6a32db7b9
Cleanup
2016-09-07 16:49:29 +02:00
Camilla Berglund
bb3cb8f233
Cleanup
...
Clean up code and documentation for glfwGetKeyScancode and add
implementation for Wayland and Mir.
Related to #830 .
2016-09-07 16:46:48 +02:00
Michael Stocker
e745b0dd47
Add glfwGetKeyScancode
...
Allows retrieval of platform scancode from GLFW_KEY_*. Implemented for
Win32, Cocoa and X11. Stubs for Mir and Wayland.
Closes #830 .
2016-09-07 16:38:22 +02:00
Camilla Berglund
5ff7d9505f
Simplify Vulkan extension checks
...
Related to #478 .
2016-09-07 16:31:18 +02:00
Camilla Berglund
53fafad915
Start 3.3
2016-08-18 23:55:49 +02:00
Camilla Berglund
fcdef1d0a0
Fix potential context resource leaks
...
There is a gap between the creation of the context and the call to
_glfwRefreshContextAttribs.
2016-08-05 11:23:05 +02:00
Camilla Berglund
7be62631ae
Cleanup
2016-08-01 23:13:11 +02:00
Camilla Berglund
2c32503b10
Fix comment
2016-08-01 12:15:08 +02:00
Camilla Berglund
d5e00e6b0f
Initialize context creation APIs on demand
2016-07-20 13:10:51 +02:00
Camilla Berglund
66149a29da
Cleanup
2016-06-23 17:40:30 +02:00
Camilla Berglund
0ee8159f6c
Win32: Remove intermediate clipboard string copy
2016-06-23 17:06:03 +02:00
Camilla Berglund
6f313ff245
Win32: Use helper window to load WGL extensions
...
This removes window re-creation logic by performing the initial context
creation on the helper window, simplifying both window and context
creation and paving the way for attaching to existing window handles
without compromising on context or framebuffer hint support.
2016-06-22 23:33:34 +02:00
Camilla Berglund
5f17b61ff2
Win32: Remove accidental C99
2016-06-02 15:57:47 +02:00
Camilla Berglund
757eea2779
Update email address
2016-06-01 21:25:20 +02:00
Camilla Berglund
6a8e169001
Update copyright notice year
2016-06-01 21:25:19 +02:00
Camilla Berglund
ed076b7c5b
Win32: Re-enable cursor during modal loops
...
Related to #650 .
2016-05-31 12:59:41 +02:00
Camilla Berglund
2d2756cbad
Simplify cursor window logic
2016-05-30 22:12:33 +02:00
Camilla Berglund
03db3ed6e9
Cleanup
2016-05-30 21:19:00 +02:00
Camilla Berglund
bda031f4ac
Cleanup
2016-05-29 15:34:08 +02:00
Camilla Berglund
797ee8d8e3
Move all cursor positioning to platform code
...
Due to Wayland, shared code cannot rely on cursor positioning being
supported by the underlying platform.
This implicitly fixes #617 as it moves cursor centering into
_glfwPlatformSetCursorMode, thus separating it from the stale value of
_glfw.cursorWindow.
Fixes #617 .
2016-05-29 15:33:49 +02:00
Camilla Berglund
0e846883bf
Clarify cursor position variable names
2016-05-27 02:39:03 +02:00
ocornut
3c1a83d61f
Fix keys filtered by IME being passed to callback
...
Closes #651 .
2016-05-10 12:30:04 +02:00
Camilla Berglund
ef80beab81
Add run-time context creation API selection
...
Fixes #145 .
2016-05-04 17:00:07 +02:00
Camilla Berglund
e640d840b7
Fix Win32 window size event race condition
...
The old window size was reported after re-entering full screen and
setting and reporting the new window size.
Fixes #740 .
2016-05-04 16:34:48 +02:00
Camilla Berglund
eb3577c1eb
Add initial XInput support
2016-03-31 12:12:04 +02:00
Camilla Berglund
20574fa81f
Fix VC++ warnings
2016-03-29 11:13:07 +02:00
Camilla Berglund
7ab7d8b4b1
Make use of uint32_t where appropriate
...
This change does not affect the ABI.
2016-03-28 12:34:57 +02:00