Kovid Goyal
fb1c318a09
macOS: Fix a regression in the previous release that caused a crash when pressing a unprintable key, such as the POWER key
...
Fixes #1997
2019-09-24 16:07:52 +05:30
Luflosi
e619eb9cbb
Add more keyboard keys
2019-09-08 12:32:19 +02:00
Luflosi
97e6978ed8
Order keyboard keys by their ASCII value
2019-09-08 12:32:19 +02:00
Luflosi
f05eefcc20
Allow adding keys with Unicode names on macOS
2019-09-08 12:32:19 +02:00
Kovid Goyal
c398d3d16e
Cocoa: Fix glfwSetWindowSize anchor point
...
This makes glfwSetWindowSize use the top-left corner as anchor point
instead of the bottom-left corner.
Upstream: 7f02898264
2019-09-08 09:16:07 +05:30
Luflosi
c0c7cfacc2
Fix NSLog() printing of unicode format strings
...
See https://stackoverflow.com/questions/720052/nslog-incorrect-encoding .
The `%s` format placeholder for `NSLog()` expects an encoding other than UTF-8, which leads to garbled Unicode characters when trying to print a UTF-8 encoded string.
```Objective-C
NSLog(@"Ä %s %@", "Ä", @("Ä"));
```
prints `Ä √Ñ Ä`.
As can be seen in the example above, the workaround is to convert the UTF-8 encoded C-string to an `NSString` object and print that instead.
`debug_key()` calls `NSLog()`.
2019-08-30 15:03:51 +02:00
Kovid Goyal
90a985b73a
Make format_text() more secure
2019-08-28 05:41:20 +05:30
Luflosi
94d56d1a9e
Correct indentation for two _glfwInputError() messages
...
This commit changes the indentation of two error messages to match the indentation in the rest of the code.
2019-08-25 21:29:58 +02:00
Luflosi
06c2263657
macOS: implement drag and drop of text into kitty
...
Closes #1368 .
2019-08-24 01:29:33 +02:00
Luflosi
28bb123be8
Update the GLFW version number from 3.3 to 3.4
...
Closes https://github.com/kovidgoyal/kitty/issues/1884 .
From a337c56848 .
2019-08-02 11:00:16 -05:00
Luflosi
b8d2b76ee4
Reduce the difference of glfw to upstream
2019-07-28 00:10:50 -05:00
Luflosi
cdbe2f13ca
Cocoa: Move slightly towards modern Objective-C
...
Inspired by 9a9568212c .
2019-07-25 17:14:32 -05:00
Luflosi
489f3e6c9d
Add C dialect reminders to each glfw source file
...
Reduces the difference to upstream.
From 56aad76b16 .
2019-07-20 21:07:27 -05:00
Luflosi
bdc4558a43
Update GLFW copyright years
...
Reduces the difference to upstream.
From ab118b2529 .
2019-07-20 00:30:13 -05:00
Kovid Goyal
1cb15dedac
Simplify the event loop code
...
Also reduce input latency by ignoring repaint_delay when
there is actual pending input.
Gets rid of request_tick_callback(). Now empty events
result in the tick callback being called so there is only a
single mechanism for waking up the main loop and getting
the tick callback called.
2019-07-18 15:51:54 +05:30
Kovid Goyal
eb30ba7722
Cocoa: Fix code to shutdown display link for inactive monitors
2019-07-11 22:34:28 +05:30
Kovid Goyal
39f6071c68
macOS: Fix a deadlock with CVDisplayLink
...
I had added an optimization to not pass messages to
main thread every time the CVDisplayLink timer fired, unless
a render frame for that monitor was actually requested.
However, this optimization is impossible to implement wihtout a deadlock
since CVDisplayLink has its own internal lock that it does not expose.
So I guess macOS users with multiple monitors will simply have to take
the performance hit of useless wakeups sixty times a second for every
extra monitor.
Fixes #1779
2019-07-05 20:16:32 +05:30
Kovid Goyal
4b77530c65
Store a reference to the glfw window pointer in the NSWindow class as well
2019-07-04 09:56:59 +05:30
Kovid Goyal
c9a574a764
Cocoa: Ensure no callbacks are called on the view even if it is retained after being released
...
Fixes #1761 (I hope)
2019-07-04 09:03:13 +05:30
Kovid Goyal
841c907efc
Build glfw with all warnings enabled
2019-07-01 10:42:07 +05:30
Kovid Goyal
2ef0391b08
Convert some declarations to C99 style
...
From upstream: 0c6b505619
2019-07-01 08:32:47 +05:30
Kovid Goyal
9b080950a9
Cocoa: Cleanup
...
This makes the Cocoa _glfwPlatformSetWindowMonitor consistent with its
X11 and Win32 counterparts.
From upstream: 3262c29440
2019-07-01 05:59:32 +05:30
Kovid Goyal
75d697fa97
Fix #1766
2019-06-30 16:07:45 +05:30
Kovid Goyal
8c9d2d3ca2
macOS: Reduce energy consumption when idle by shutting down Apple's display link thread after 30 second of inactivity
...
Fixes #1763
2019-06-29 14:21:47 +05:30
Kovid Goyal
86305fdeb3
Use CVDisplayLinkIsRunning() rather than tracking started state since the OS can apparently shutdown the thread on its own in some scenarios
2019-06-28 17:46:59 +05:30
Luflosi
8ffc841a3a
Reduce the difference of glfw/cocoa_* to upstream
...
This only changes some formatting, whitespace, etc.. There are no
changes to the functionality.
Let me know if you don't like some of those changes.
2019-06-21 15:53:26 +02:00
Kovid Goyal
47acc9ff2f
Get rid of GLFW_(TRUE|FALSE)
2019-06-08 08:14:30 +05:30
Kovid Goyal
fe62700825
Get rid of GLFWbool
2019-06-08 08:12:42 +05:30
Kovid Goyal
d262f43b5b
Log ARepeat property
2019-05-28 20:18:50 +05:30
Kovid Goyal
73224e7d95
One less line in the debug log
2019-05-28 20:04:21 +05:30
Kovid Goyal
abf9c4117d
macOS: Fix a regression that could cause rendering of a kitty window to occasionally freeze in certain situations, such as moving it between monitors or transitioning from/to fullscreen
...
Fixes #1641
2019-05-28 17:54:34 +05:30
Kovid Goyal
a51239c6ae
Add support for the underscore key found in some keyboard layouts
...
Fixes #1639
2019-05-24 17:59:50 +05:30
Luflosi
05f01525c3
Revert "macOS: Fix cocoa mouse y-coord off by one"
...
This reverts commit 89692064503ccfbb66374a42d63401a96511501f.
Fixes #1621 .
When committing b3f1acd400d524c079a0a5ea833756053834db5d, applying the glfw upstream patch 3c3981a4f0 for https://github.com/glfw/glfw/issues/1461 , this commit should have been reverted as it was just a quick fix for https://github.com/glfw/glfw/issues/1461 .
2019-05-21 19:31:57 +02:00
Kovid Goyal
3e964163c0
Pass zero for fullscreen flags on non Cocoa platforms
2019-05-12 16:07:54 +05:30
Kovid Goyal
1fa9b8f102
X11: use the window manager's native full-screen implementation when making windows full-screen
...
This matches the behavior on Cocoa and Wayland.
Fixes #1605
2019-05-12 15:53:06 +05:30
Kovid Goyal
268e5cef3b
Remove useless else
2019-05-03 13:37:57 +05:30
Kovid Goyal
f0c663d42d
macOS: Improve handling of IME extended input
...
Compose characters are now highlighted and the IME panel moves along with the text
Fixes #1586
Fixes #1461
2019-05-03 13:30:56 +05:30
BlahGeek
e36e44ab3a
macOS: do not pass input events while having marked text
...
fix chinese input method backspacing issue
macOS: Set pre-edit text for IME
macOS: implement glfwPlatformUpdateIMEState
set firstRectForCharacterRange correctly
macOS: update IME position on each input
macOS: use float instead of int for updateIMEState
minor fix
macOS: ignore marked text on deadkey
fixes german keyboard input
macOS: convert markedRect to screen coord
2019-05-03 13:27:06 +05:30
Kovid Goyal
b3f1acd400
Cocoa: Fix coordinate transformations
...
From upstream: 3c3981a4f0
2019-04-18 10:12:41 +05:30
Kovid Goyal
5c4462281e
Cocoa: Upstream fix for mouse hover detection
...
0e74265426
2019-04-18 09:58:09 +05:30
Kovid Goyal
8969206450
macOS: Fix cocoa mouse y-coord off by one
...
See https://github.com/glfw/glfw/issues/1461
2019-04-09 22:02:36 +05:30
Kovid Goyal
8251b906b6
Add a listener for GPU changed events on macOS
...
Currently does nothing, but could potentially be used to fix:
https://github.com/kovidgoyal/kitty/issues/794
Will need someone with the hardware though to test
exactly what needs to be done to restore the custom cursor image.
2019-04-06 10:05:21 +05:30
Kovid Goyal
b10312e249
Upstream fixes for vulkan surface creation and the retina hint
...
e108c0de0d
980fc9b52f
2019-03-28 13:09:22 +05:30
Kovid Goyal
c4e89d9d0c
macOS: Consolidate compatibility macros for old SDKs in one place
2019-03-28 12:37:05 +05:30
Kovid Goyal
fcb26e5dc7
Cocoa: User performSelectorOnMainLoop for render frames as well which means render frames work during modal loops
2019-03-21 16:51:01 +05:30
Kovid Goyal
0dc6ac26c3
Cocoa: user performSelectorOnMainThread instead of postEvent for the tick callback
...
performSelectorOnMainThread runs in more loop run modes which means that
the tick callback will behave more like it does on other platforms,
during window resizes and other modal event loops.
2019-03-21 15:55:43 +05:30
Kovid Goyal
5ab8a665be
GLFW: Add more standard cursor shapes
...
Also use an enum for the cursor shapes
2019-03-21 13:06:13 +05:30
Kovid Goyal
7ab63525c7
Dont use a global autorelease variable
...
Use function local @autorelease blocks instead
2019-03-06 09:34:55 +05:30
Kovid Goyal
a1c49a0f7f
Cocoa: Disable shadow for transparent framebuffer
...
From upstream: 9883cb64f0
2019-03-06 09:12:16 +05:30
Kovid Goyal
4c4c6ab0e6
Various fixes for monitor work area retrieval from upstream
2019-03-06 09:08:08 +05:30