Camilla Löwy
8d1a64c831
X11: Make event polling more robust
...
This makes X11 event polling less likely to block if the application
uses the display via native access.
Fixes #1225 .
2018-05-17 14:41:16 +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
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
Camilla Löwy
973bf29622
Remove use of non-standard function strdup
...
Related to #873 .
2018-01-17 11:56:35 +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
6158801aeb
Change glfwInitHintString to glfwWindowHintString
...
Fixes #1139 .
2017-12-19 15:08:27 +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
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
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
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
Wolfgang Draxinger
019609b6cd
Add GLFW_TRANSPARENT and X11 implementation
...
This is a squashed extract of several commits, minimally edited to
ensure it compiles.
Related to #197 .
Related to #715 .
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
3d110d2e1b
X11: Fix selection error nomenclature
...
[ci skip]
2017-09-17 13:54:17 +02:00
Camilla Löwy
0b5023bc62
X11: Fix Latin-1 text not being converted to UTF-8
2017-09-17 13:50:10 +02:00
Camilla Löwy
9dbc935afb
X11: Stop reporting support for COMPOUND_TEXT
2017-09-17 13:50:10 +02:00
Camilla Löwy
f7dc6df02c
X11: Add support for reading clipboard via INCR
...
This allows glfwGetClipboardString to retrieve clipboard contents larger
than (typically) 2^18 bytes.
Related to #275 .
2017-09-17 13:50:00 +02:00
Camilla Löwy
0d9e71fe81
Cleanup
2017-08-16 21:03:10 +02:00
Camilla Löwy
b7a0f225ea
Cleanup
...
Don't advertise native functions in public API guides. Don't list
primary selection access as most notable new feature. Don't have
different levels of abstraction among selection helper functions. Don't
forget to take credit.
Related to #1056 .
2017-08-13 21:22:36 +02:00
Kristian Nielsen
29a75ab09d
X11: Add native access to primary selection
...
This adds the native access functions glfwSetX11SelectionString and
glfwGetX11SelectionString under GLFW_EXPOSE_NATIVE_X11. They are
similar to glfwSetClipboardString and glfwGetClipboardString but operate
on the PRIMARY selection.
The primary selection is widely used in X11, and so seems important to
support. Primary selection is mostly an X11-specific thing, hence it's
exposed as an X11 native interface.
Fixes #894 .
Closes #1056 .
Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
2017-08-13 18:52:24 +02:00
Camilla Löwy
213dd2d0d6
Add glfwInitHintString
...
Adds string type init hints. Adds X11 specific init hints for WM_CLASS
components. Documentation work.
Fixes #893 .
2017-07-25 23:53:52 +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
186d03b32a
Cleanup
...
Related to #983 .
2017-05-17 22:26:15 +02:00
Denis Bernard
8597002a17
X11: Make glfwGetKeyName return UTF-8 strings
...
Fixes #981 .
Closes #983 .
2017-05-17 22:21:22 +02:00
Camilla Löwy
baa9cd8968
Cleanup
...
Closes #988 .
2017-05-11 20:10:04 +02:00
Felipe Ferreira da Silva
412eb6a611
Add glfwRequestWindowAttention
...
Related to #988 .
2017-05-11 13:36:39 +02:00
Camilla Löwy
4ff66a7818
X11: Fix IM-duplicated key events leaking through
...
Fixes #747 .
Fixes #964 .
2017-03-27 02:00:31 +02:00
Camilla Löwy
62414bff6e
X11: Fix inverted coordinate transform
2017-03-17 14:09:07 +01:00
Camilla Löwy
6a65341e14
X11: Fix multiple issues in XDND support
...
The code blindly expected UTF8_STRING for files. It did not downgrade
based on source protocol version. It did not handle hostnames in
text/uri-list data. It did not specify the source time stamp when
converting the selection. It did not search the XdndTypeList when
necessary. It did not ignore sources that specified invalid versions.
While better, this is still not fully conformant. Hostnames are not
validated and it does not guard against source crashes.
Fixes #968 .
2017-03-16 23:41:06 +01:00
A. Tombs
5ae781586f
X11: Handle Selection* events despite NULL window
...
X11 event processing currently discards events that can not be mapped to
a current GLFW window. However, this breaks clipboard functionality by
failing to respond to SelectionRequest and SelectionClear events.
This commit moves processing of these important clipboard events to
before the NULL window test so that they are always considered.
Fixes #961 .
Closes #963 .
2017-03-07 19:24:31 +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
a570d0a129
X11: Use XI_RawMotion for disabled cursor motion
...
Related to #125 .
2017-02-26 18:48:04 +01:00
Camilla Löwy
5352e2caa0
X11: Fix read past top of stack on 64-bit
...
Fixes #951 .
2017-02-23 03:27:23 +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
ef5a21496c
X11: Fix set not being reset each call to select
2017-02-01 03:16:29 +01:00
Camilla Löwy
67a55efa27
Add null joystick backend
...
This prepares the X11 backend to support other joystick APIs, for
example the FreeBSD libusb one.
2017-02-01 03:07:25 +01:00
Camilla Löwy
bfd564f257
Move internals to shared joystick objects
...
Preparation for gamecontrollerdb support and the gamepad API.
2017-01-30 16:52:49 +01:00
Camilla Löwy
0735250eb1
X11: Fix potential window property data leaks
2017-01-16 17:53:28 +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
f656d95339
Documentation work
2016-12-15 20:21:07 +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
c156b50e4c
Add glfwSetWindowMaximizeCallback
...
Fixes #778 .
2016-09-29 01:24:56 +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
afb6e485b7
X11: Make selection event checks include window
2016-09-07 16:33:41 +02:00
Camilla Berglund
ccfd6dde45
X11: Make clipboard IPC use helper window
2016-09-07 16:33:41 +02:00
Camilla Berglund
706868dad8
X11: Make glfwPostEmptyEvent use helper window
2016-09-07 16:33:41 +02:00
Camilla Berglund
fafe1732b5
Cleanup
2016-09-07 16:33:41 +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
4aafdea5a7
X11: Fix glfw*WindowPos operating on window frame
...
Fixes #800 .
2016-08-17 01:45:41 +02:00
Camilla Berglund
f1c536fe13
X11: Fix BadMatch on XSetInputFocus
...
Input focus was in some cases set before the window was visible (ICCCM
section 4.2.2).
Related to #798 .
Fixes #789 .
2016-08-12 14:01:03 +02:00
Camilla Berglund
ad9233e620
X11: Clean up event wait timeout logic
...
Simplify interface and implement timeout updating.
2016-08-12 13:33:21 +02:00
Camilla Berglund
f88a609000
X11: Only unmaximize visible windows
2016-08-12 13:33:21 +02:00
Camilla Berglund
b581799c9a
Fix comment
2016-08-12 01:46:21 +02:00
Camilla Berglund
067d1d6935
Cleanup
2016-08-12 01:46:21 +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
d2686c8413
Fix comment
2016-08-01 23:13:11 +02:00
Camilla Berglund
cba652e4f3
Cleanup
2016-08-01 23:13:11 +02:00
Camilla Berglund
370cd14b46
Comment work
2016-08-01 23:13:11 +02:00
Camilla Berglund
a19490c291
Cleanup
...
Cleanup of a42d27011b3ef1e6229a1b83aaa075727a5521f3.
2016-08-01 23:13:11 +02:00
Keringar
d4eb88b255
X11: Fix application of window size limits
...
Closes #805 .
2016-08-01 23:12:05 +02:00
Camilla Berglund
d5e00e6b0f
Initialize context creation APIs on demand
2016-07-20 13:10:51 +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
28d4c9e9f4
X11: Re-enable cursor for all types of FocusOut
...
This prevents disabled cursor mode from interfering with window frame
interactions.
Related to #650 .
2016-05-31 13:04:04 +02:00
Camilla Berglund
915a98c560
Add missing XFlush calls
2016-05-30 22:14:13 +02:00
Camilla Berglund
2d2756cbad
Simplify cursor window logic
2016-05-30 22:12:33 +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
Camilla Berglund
7fd7dca375
Remove completed todo
2016-05-23 22:59:11 +02:00
Camilla Berglund
ef80beab81
Add run-time context creation API selection
...
Fixes #145 .
2016-05-04 17:00:07 +02:00
Camilla Berglund
9d50a346f0
Fix X11 build on non-Linux systems
2016-05-04 17:00:06 +02:00
Camilla Berglund
932a161d44
Unconditionally use some EWMH atoms
...
These window properties do no harm if they're declared even if the WM
doesn't support them. This makes GLFW slightly more tolerant of WM
changes as well as things like Ubuntu Unity reading _NET_WM_ICON without
declaring support for it.
2016-05-03 13:40:53 +02:00
Camilla Berglund
211bdab51f
Fix NET_WM_STATE clobbering at creation
2016-05-03 13:40:53 +02:00
Camilla Berglund
6fcedb5396
Fix GLFW_RESIZABLE on X11 when exiting full screen
...
The WM normal hints were set with the wrong window dimensions.
Fixes #737 .
2016-05-03 13:40:34 +02:00
Camilla Berglund
8a7fa306ce
Add glfwSetJoystickCallback
2016-03-31 12:12:09 +02:00
Camilla Berglund
925208d28f
Fix copypaste mistake
2016-03-28 12:44:50 +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
Camilla Berglund
5661d03be8
Replace GLFWuint64 with uint64_t
...
C99 stdint.h is provided by VS 2010 and later. GLFW has not provided
testing or binaries for VS 2008 for several releases.
For earlier versions of VS there are third-party alternatives:
https://msinttypes.googlecode.com/svn/trunk/stdint.h
http://www.azillionmonkeys.com/qed/pstdint.h
This change does not affect the ABI.
2016-03-28 12:34:44 +02:00
Camilla Berglund
6570d0c4b7
Add glfwSetWindowMonitor
...
This adds the ability to switch between windowed and full screen modes,
move a full screen window between monitors and update its desired
resolution and refresh rate.
Fixes #43 .
2016-03-18 11:13:24 +01:00
Camilla Berglund
99c925efd8
Add tracking of which window 'owns' a monitor
2016-03-16 16:16:29 +01:00
Camilla Berglund
ea888114fa
Remove monitor from _GLFWwndconfig
2016-03-16 16:16:02 +01:00
Camilla Berglund
3a6fe042ea
Cleanup
2016-03-16 16:15:49 +01:00
Camilla Berglund
0d1dd82b89
Move X11 PPosition hack to glfwSetWindowPos
2016-03-16 16:11:35 +01:00
Camilla Berglund
ea73ccf22d
Add support for EWMH _NET_WM_WINDOW_TYPE
2016-03-16 16:07:22 +01:00
Camilla Berglund
d2338f3a49
Fix X11 icon image copy
2016-03-11 14:41:57 +01:00
Camilla Berglund
b823f7151e
Add glfwSetWindowIcon
...
Adds support for setting window icons programmatically on platforms
where this makes sense.
Fixes #453 .
Closes #467 .
2016-03-10 17:26:26 +01:00
Camilla Berglund
5620895e88
Add glfwWaitEventsTimeout
...
This function will put the calling thread to sleep until an event
arrives or until the specified timeout has elapsed.
2016-03-06 17:28:40 +01:00
Camilla Berglund
31f67dd3cc
Add glfwGetTimerValue and glfwGetTimerFrequency
...
This adds raw timer access to the public API and builds the
floating-point time functions on top. It also makes the GLFWuint64 type
public.
2016-03-06 11:51:23 +01:00
Camilla Berglund
663ee327b0
Decrease amount of Hocus Pocus
2016-03-02 23:15:02 +01:00
Camilla Berglund
5dc9d0f581
Avoid X11 frame size query of undecorated windows
...
This also works around an issue where Xfwm4 ignores Motif hints when
calculating frame extents.
2016-02-28 18:44:50 +01:00