Commit Graph

1528 Commits

Author SHA1 Message Date
BrandonSchaefer
c03f273941 Fix crash from test/sharing. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
4674ed367d Fix some memory leaks.
One in wl_init.c, need to clean up Joysticks.
Finish getting the monitor modes set up.
Finish adding Unsupported error messages.
2014-11-10 02:00:14 +01:00
BrandonSchaefer
f4f525549c Finish up the monitor work. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
ac73c2bd6c Get the correct mod for each KEY/MOTION event. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
cb4ccc59c2 Realloc the monitor size for each IN USE monitor. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
d76d56ce74 Add the start of size of each monitor and modes. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
50cf4cfda3 Add Mir file licenses. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
9bd0fae684 Make sure we go through all the pointer_coords. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
8712d84bcc Add in Mir input handling. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
49696d0134 Init context API for native display. 2014-11-10 02:00:14 +01:00
BrandonSchaefer
4295b77582 Set up the Mir connection.
Set up the first of the Mir surface.
2014-11-10 02:00:14 +01:00
BrandonSchaefer
46c9663ed7 I should add the actual mir_* source files :). 2014-11-10 02:00:14 +01:00
BrandonSchaefer
cfb7d2f036 Start with the skeleton code for Mir support. 2014-11-10 02:00:14 +01:00
Camilla Berglund
bc219056a6 Removed superfluous comments. 2014-11-10 01:57:45 +01:00
Camilla Berglund
899117e785 Possible control flow clarification. 2014-11-06 19:37:52 +01:00
Camilla Berglund
382133b384 Fixed test for no found monitors. 2014-11-06 02:11:52 +01:00
Camilla Berglund
8de5c4e3b8 Fixed OS X full screen window hiding. 2014-11-05 18:40:22 +01:00
Camilla Berglund
c112804539 Ignore deprecated attributes on OS X core. 2014-11-05 18:40:22 +01:00
Camilla Berglund
70c349f36b Fixed OS X full screen window placement. 2014-11-05 18:38:39 +01:00
Camilla Berglund
34bf1b13e9 Fixed Lion full screen regression.
Restored lines lost during testing surgery.
2014-11-04 16:39:46 +01:00
Camilla Berglund
9f58d8d715 Added comment. 2014-11-03 19:16:29 +01:00
Camilla Berglund
49ec306a0a Added glfwGet*Adapter to native API. 2014-10-29 02:55:02 +01:00
Camilla Berglund
6743761c2c Moved OS X from full screen view to window. 2014-10-28 22:21:10 +01:00
Camilla Berglund
3b9a14fc9c Moved note to new place of inversion. 2014-10-26 18:29:34 +01:00
Camilla Berglund
4c64e94d39 Fixed X-axis scroll offset inversion (take two).
Fixed #239 (properly).
2014-10-26 15:15:42 +01:00
Patrick Walton
5052b2d7e0 Create an autorelease pool in glfwPostEmptyEvent.
This prevents leaking NSEvent objects.

Closes #372.
2014-10-21 12:20:13 +02:00
Camilla Berglund
6a3779d635 Cleanup. 2014-10-13 18:51:47 +02:00
Camilla Berglund
f4a467a864 Fixed OS X scroll X-axis inversion.
When natural scrolling is disabled on OS X, the X-axis of the scroll
offsets is inverted compared to the direction on Windows.  The X11
scrolling directions are unspecified and so have been aligned with the
Windows port.  Natural scrolling inverts both axes on both OS X and X11,
so the issue remains when the feature is enabled.

This inverts the provided X-axis scroll offset, making "unnatural"
scroll data align with the Windows and X11 ports and "natual" scroll
data be fully inverted and aligned with its counterpart on X11.

Fixes #239.
2014-10-13 15:48:40 +02:00
Camilla Berglund
5f13279557 Merged time functions into input module. 2014-10-13 15:48:40 +02:00
Camilla Berglund
bb98eae131 Merged joystick functions into input module. 2014-10-13 15:48:40 +02:00
Stef Velzel
653079b792 Fixed Win32 string conversion.
Specifying -1 as the source string size makes the returned size include
the null terminator.

Closes #364.
2014-10-12 15:18:30 +02:00
Camilla Berglund
45d528baed Cleanup. 2014-10-07 16:20:49 +02:00
Camilla Berglund
2a255e49e2 Made static library build with -fPIC for Rust.
Fixes #199.
2014-10-07 12:48:01 +02:00
Camilla Berglund
e0c26f0ec5 Changed default of GLFW_REFRESH_RATE.
Fixes #354.
2014-10-06 23:52:10 +02:00
Jonas Ådahl
4dd669661b wayland: Coding style cleanup
Fixes * positioning, indentation and newline inconsistencies.
2014-09-28 21:54:09 +02:00
Jonas Ådahl
b1033a3443 wayland: Default to 32 cursor image size
This is the default across various toolkits (weston, GTK+ for example)
so lets stick to that.
2014-09-28 21:51:12 +02:00
Jonas Ådahl
cd51d285e6 wayland: Clean up anonymous file creation
It was a copy paste without fully updating the coding style. There were
also some autotools macros that were no longer valid. So far its assumed
that the needed functions exist. If better portability is needed, there
needs to be some detction added to the cmake build script.
2014-09-28 21:47:18 +02:00
Jonas Ådahl
6e8e94837d wayland: Don't check *alloc result 2014-09-28 21:46:16 +02:00
Camilla Berglund
468714cab9 Unified video mode enumeration. 2014-09-22 19:25:05 +02:00
Camilla Berglund
4918514eaf Added support for _NET_WM_FULLSCREEN_MONITORS.
This allows EWMH full screen windows to correctly cover monitors that
overlap other monitors, such as an Oculus Rift mapped onto a section of
a larger monitor.

Fixes #175.
2014-09-22 13:31:59 +02:00
Camilla Berglund
c769061a8a Cleanup of basic XIM support.
Shortened and simplified the code.  Removed reporting of XIM sentinel
key press event.  Added credit.  Updated changelog.

Closes #151.
2014-09-22 11:08:33 +02:00
Lucas Hinderberger
cec63f3cb5 Fixed dead keys in X11.
The library will now try to create an X input context to handle dead
keys properly on international keyboards.  This makes it possible to
enter for example an e with accent grave on a German keyboard without
further efforts.  A fallback mechanism is provided in case the client
does not support X input method / context creation.  In that case, the
library will behave as it did before.
2014-09-22 11:08:33 +02:00
Camilla Berglund
49579165a7 Added value clamping for stereo hint. 2014-09-18 20:40:11 +02:00
Camilla Berglund
58c390991c Made glfwGetX11Monitor return output, not CRTC. 2014-09-17 12:45:51 +02:00
Camilla Berglund
4b27050afe Fixed error return values of native EGL functions. 2014-09-17 12:36:11 +02:00
Camilla Berglund
a0742e99e3 Fixed error return value of glfwGetCocoaMonitor. 2014-09-17 12:28:26 +02:00
Camilla Berglund
99cedceef5 Expose display device name as UTF-8.
This makes interaction with libOVR simpler, as it provides the display
device name in the same encoding.
2014-09-16 18:28:08 +02:00
Camilla Berglund
1b6d8a6ed6 Enabled enumeration of mirroring displays.
This exposes all monitors in every mirroring group, which is needed for
robust detection of an Oculus Rift.
2014-09-16 18:27:33 +02:00
Camilla Berglund
8fd69bc6c2 Fixed monitor size using wrong incorrect value.
The display device string was used, instead of the adapter device name,
leading to the wrong incorrect physical size being returned for
non-primary monitors.  The right incorrect physical size is now returned
for all monitors.
2014-09-15 17:11:35 +02:00
Camilla Berglund
5bbb837635 Fixed gamma functions acting on whole desktop.
Fixes #336.
2014-09-12 14:40:28 +02:00
Camilla Berglund
5ca875a7ff Fixed incorrect full screen window placement.
Fixes #213.
2014-09-10 14:31:22 +02:00
Camilla Berglund
e9c7314d50 Added GLFW_FOCUSED window hint.
Fixes #101.
2014-09-10 11:50:50 +02:00
Camilla Berglund
4ae6eae58d Made queries use XRRGetScreenResourcesCurrent.
Fixes #347.
Closes #351.
2014-09-10 11:50:42 +02:00
Camilla Berglund
7dba90b7ca Removed racy checks of cached iconification state. 2014-09-09 16:53:22 +02:00
Camilla Berglund
41d998eb3c Removed duplicate inclusion of client header. 2014-09-09 16:43:24 +02:00
Ricardo Vieira
25204b1ec7 wayland: Support for setting a cursor image
Closes #346.
2014-09-09 16:38:47 +02:00
Camilla Berglund
8d170c7f47 Merged clipboard code into input. 2014-09-09 16:36:41 +02:00
Camilla Berglund
4aa9174e76 Clarified comments for X11 key repeat hack. 2014-09-03 01:46:11 +02:00
Camilla Berglund
3fcc2a6cb2 Documented use of deprecated OS X function. 2014-09-03 00:31:39 +02:00
Camilla Berglund
f8d80a936f Internal header cleanup. 2014-09-02 19:47:29 +02:00
Camilla Berglund
c85294e0b2 Window class cleanup. 2014-08-31 14:21:55 +02:00
Camilla Berglund
82dc6c8b8f Removed option to disable loading of winmm. 2014-08-31 13:51:21 +02:00
Camilla Berglund
b1fd3c00d0 Removed duplicate window position clearing. 2014-08-26 14:46:02 +02:00
Camilla Berglund
c700978c45 X11 library struct cleanup and comments. 2014-08-22 11:19:02 +02:00
Camilla Berglund
5d525c4a5f Moved display closing into _glfwPlatformTerminate. 2014-08-21 21:18:02 +02:00
Camilla Berglund
e5d890a1aa Made clipboard string member name consistent. 2014-08-21 21:14:29 +02:00
Camilla Berglund
44c899ce70 Added support for GL_KHR_context_flush_control. 2014-08-21 19:29:04 +02:00
Camilla Berglund
cfc47abf0d Made context creation backends more consistent. 2014-08-21 19:29:04 +02:00
Camilla Berglund
d5cf713c20 Clarified comment on APIENTRY hack. 2014-08-21 19:29:04 +02:00
Camilla Berglund
a5281df501 Moved RandR gamma probe to init. 2014-08-18 12:58:02 +02:00
Camilla Berglund
59d1aa52f2 Merged gamma files into monitor files. 2014-08-18 12:31:48 +02:00
Camilla Berglund
626dbf6057 Added clearing of global struct on terminate. 2014-08-18 12:17:00 +02:00
Camilla Berglund
8cd88ddf61 Cleanup of OS X cursor fixes.
Closes #334.
Fixes #254.
2014-08-13 09:17:14 +02:00
Arseny Kapoulkine
87fb437d76 Fixed changing cursor while it's outside window.
We need to invoke both [NSCursor set] and [NSView addCursorRect].

First call is responsible for changing the cursor if it's inside the
view; second call is responsible for keeping the cursor the same if it's
outside.
2014-08-13 09:17:14 +02:00
Arseny Kapoulkine
e74ebf0be3 Fix cursor behavior on OS X.
Don't implement resetCursorRects: this occasionally hides the cursor
since an empty cursor is assigned to the window rectangle.  Implementing
this method is not required since OS displays the window cursor
correctly by default.

Don't reset cursor mode when window loses focus: once again, OS handles
this correctly, and this means that the window cursor state is restored
when window gains focus again.
2014-08-13 09:17:14 +02:00
Camilla Berglund
26f86ac50a Merge pull request #333 from ricardomv/fix-reopen
wayland: Release input focus when window is destroyed.
2014-08-13 08:59:25 +02:00
Arseny Kapoulkine
b4d4fc8f79 Optimize _glfwInitJoysticks on OS X.
This function used to enumerate all devices and capture all properties
of every device into a dictionary. This takes 180 ms on a MacBook Pro
without external devices and 280 ms with an external keyboard/mouse
attached.

Since we're only interested in a few properties, we can just get them
one by one - this reduces the time to <1 ms.

Note that we still use the dictionary to get the joystick elements.
For unknown reason this is required to get all axes/buttons - without
doing this we don't get any joystick elements in addJoystickElement.

Closes #332.
2014-08-13 08:06:37 +02:00
Camilla Berglund
3b7d34a1d5 Moved XKB header to header variable. 2014-08-11 23:56:05 +02:00
Camilla Berglund
aa4ec94d71 Removed link interface no-op.
Closes #327.
2014-08-11 20:30:21 +02:00
Camilla Berglund
6e0ea02f17 Quoted all CMake paths with substitution.
Fixes #258.
2014-08-11 20:26:37 +02:00
Camilla Berglund
87490316c8 Fixed video modes not being rotated to match CRTC.
Fixes #284.
2014-08-11 19:48:27 +02:00
Ricardo Vieira
a7c9ca3b43 wayland: Release input focus when window is destroyed
This fixes a seg. fault on the reopen test because events might occur
after the window is destroyed (for example leave events).
2014-07-26 21:55:43 +01:00
Camilla Berglund
434d0947e5 Merge pull request #321 from ricardomv/wayland-resize
Add support for resizing windows on Wayland.
2014-07-21 14:45:23 +02:00
Ricardo Vieira
acf6bfb1f6 wayland: Destroy window context before clearing the egl surface 2014-07-10 22:10:15 +01:00
Ricardo Vieira
2c5c6a1ff5 wayland: Add support for resizing windows 2014-07-10 22:07:30 +01:00
Ricardo Vieira
08dccc390d wayland: Remove unused code 2014-07-10 22:05:54 +01:00
Camilla Berglund
70fd348432 Fixed API version in header files. 2014-07-08 13:44:34 +02:00
Ricardo Vieira
704dc3e34d Fixed crash on Wayland with DRM-backend.
Fixes #319.
Fixes #301.
2014-07-01 10:41:32 +02:00
Jonas Ådahl
2230a68e42 wayland: Follow _glfwInputChar() type change 2014-06-30 09:09:33 +02:00
Camilla Berglund
896d040c68 Merge pull request #316 from jadahl/wayland-input
Wayland input work.
2014-06-29 23:44:35 +02:00
Jonas Ådahl
9ac854b7bb wayland: Add keyboard support
Adds libxkbcommon as a dependency when enabling the Wayland backend.
2014-06-29 23:21:06 +02:00
Jonas Ådahl
2f71bfc152 x11: Move KeySym to unicode converter out of x11 backend
To be used by the Wayland backend.
2014-06-29 23:18:40 +02:00
Jonas Ådahl
a75cf5a163 wayland: Add basic input support 2014-06-29 23:18:40 +02:00
Jonas Ådahl
4c68049d86 wayland: Fix indentation 2014-06-29 23:18:40 +02:00
Ricardo Vieira
dea861abd8 Fixed all EGLConfigs listed as single-buffered.
The commit c980858 added a new flag to _GLFWfbconfig that was not being
set by EGLConfig enumeration.  This patch assumes eglCreateWindowSurface
only creates double-buffered surfaces.

Fixes #315.
2014-06-29 23:16:28 +02:00
Doug Binks
55b5ca0bcc Fixed WGL not re-creating for sRGB hint.
Fixes #312.
2014-06-24 13:07:58 +02:00
Camilla Berglund
96b12ee504 Added character with modifiers callback.
The undefined behaviour changed with #40 has been reverted, making the
character-only callback again behave like a system text field.  This
behavior has now been documentated.

Fixes #203.
Fixes #305.
2014-06-24 10:50:05 +02:00
Camilla Berglund
9b6c14b7ae Unified X11 cursor creation. 2014-06-22 13:15:36 +02:00
Camilla Berglund
215924f797 Removed harmless CGDisplay to NSScreen error.
This used to be a failure state, but has since been fixed.

Closes #221.
2014-06-19 13:50:29 +02:00
Camilla Berglund
e8e05d462c Documentation work.
Fixes #276.
2014-06-19 11:38:22 +02:00