Kovid Goyal
40bba70bfe
Wayland IME: Avoid printing errors for compositors that pointlessly acknowledge previous IME commits rather than just the current one. Apparently kwin is one such. Fixes #5339
2022-07-31 10:22:40 +05:30
Kovid Goyal
7fc1735a21
swaps_disallowed is used only on wayland
2022-06-28 20:19:52 +05:30
Kovid Goyal
cd369f633a
Wayland: Ensure that opengl buffer swapping does not happen till the xdg surface is configured
2022-06-28 10:47:33 +05:30
Kovid Goyal
72dfa74b3e
Avoid an extra buffer swap during startup
...
glfw should not be swapping buffers behind the clients back. Since we
control the client, we can ensure that the OpenGL VRAM is cleared before
the window is shown.
Also fixes the issue with the glfw wayland backend where the buffer was
being created before the surface was configured
2022-06-28 09:25:24 +05:30
pagedown
2cc506476b
macOS: Fix JIS Eisu and Kana keys not working
2022-06-25 19:01:02 +08:00
Kovid Goyal
fa823a37ae
Backport 6281f498c8
2022-06-23 13:00:28 +05:30
Kovid Goyal
646bdbd002
Wayland: Fix a regression in the previous release that caused mouse cursor animation and keyboard repeat to stop working when switching seats
...
Fixes #5188
2022-06-10 21:38:30 +05:30
Kovid Goyal
2f3dd72c84
Weston: Fix client side decorations flickering on slow computers during window resize
...
Fixes #5162
2022-06-03 11:00:56 +05:30
Kovid Goyal
609bcd68dd
Fix #5161
2022-06-02 10:32:43 +05:30
Kovid Goyal
cabfcbcb69
macOS: When pasting text and the clipboard has a filesystem path, paste the full path instead of the text, which is sometimes just the file name
...
Fixes #5142
2022-05-30 14:40:45 +05:30
Kovid Goyal
65f1329635
Wayland: When the seat is closed remove any pending pointer animation and key repeat timers
...
Fixes #5145
2022-05-29 14:50:34 +05:30
Kovid Goyal
1b2d54d97a
Output a warning when libwayland-cursor returns incorrectly sized cursor images
2022-05-23 12:50:47 +05:30
Kovid Goyal
e7da874b82
GNOME: Workaround for GNOME's text input system going into an infinite loop if cursor position is updated in response to a done event
...
Fixes #5105
2022-05-23 10:36:58 +05:30
Kovid Goyal
c48bf4fd85
Output debug lines for when kitty sets the pointer in Wayland
2022-04-30 09:13:08 +05:30
Kovid Goyal
a36d5dcde1
GLFW API for changing colorspace of windows on cocoa
2022-04-26 10:56:34 +05:30
Kovid Goyal
c2bc24de35
Read appearance setting from desktop portal as well
2022-04-05 15:44:27 +05:30
Kovid Goyal
5c03a52a0b
...
2022-03-29 15:34:34 +05:30
Kovid Goyal
51c8e3b2c6
Add some more debug about scale changes
2022-03-29 09:47:48 +05:30
pagedown
3db0aab24b
macOS: Fix the path encoding issue from drag and drop files
2022-03-25 09:14:56 +08:00
Kovid Goyal
906be21b8d
Make GNOME detection a bit more tolerant
2022-03-22 11:36:09 +05:30
pagedown
11343d42c3
Wayland: Fix backspace cannot clear the last character of pre-edit text
2022-03-21 18:36:35 +08:00
pagedown
6c628bc594
Wayland: Fix IME is not enabled after switching the focus
2022-03-21 18:36:25 +08:00
Kovid Goyal
06da2b88ff
Also check if states are empty
2022-03-17 17:51:21 +05:30
Kovid Goyal
91b9110dcc
Workaround for bug in mutter that caused first OS window to not have functional CSD when launched from activities
...
Fixes #4802
2022-03-17 17:35:56 +05:30
Kovid Goyal
a9de91087a
Add a comment explaining why we dont commit if resized
2022-03-10 20:47:45 +05:30
Kovid Goyal
719339e116
Output debug info about CSD rendering
2022-03-10 19:45:31 +05:30
Kovid Goyal
1c3910de5c
Output debug info about resized being called
2022-03-10 19:32:17 +05:30
Kovid Goyal
39d3ef6fe8
Output debug for decoration configure when it happens
2022-03-10 17:59:54 +05:30
Alexander Orzechowski
99a5843595
wayland: Don't commit the surface on a resize
...
This fixes weirdness with GNOME.
On a resize, we will schedule a new frame anyway which will commit
the wl_surface for us anyway. If we don't resize, we'll commit
to stay true to the wayland spec.
2022-03-10 06:02:22 -05:00
Alexander Orzechowski
39e75e39e8
wayland: Correctly handle xdg decoration configures
...
Much like toplevel configures, xdg decoration configures only take
effect once the xdg shell configure comes through. Also,
let's get rid of some double computations because we unified the code
paths.
2022-03-10 06:01:50 -05:00
Alexander Orzechowski
322a80e76e
wayland: track configures through a bit field
...
This will let us add more stuff later. Also, it's a better spot
to put the bit field outside of the {current, pending} struct as
the bit field doesn't make any sense if it's part of the `current`
values.
2022-03-10 05:56:56 -05:00
Alexander Orzechowski
d4b048735d
wayland: Fix CSD size calculations
...
This is a partial revert of e359094cff
window->wl.{width, height} and window->wl.current.{width, height}
represent different things. The former represents the actual size of the
egl surface viewport used for terminal rendering. The former represents
the size of the entire window including the CSD (client side decorations).
These numbers should be the same if CSD is disabled.
2022-03-10 05:56:56 -05:00
Kovid Goyal
a4ae090c37
commit surface even for out of order configures
2022-03-03 07:18:04 +05:30
Alexander Orzechowski
ac407d42de
wayland: always commit surface on configure
2022-03-02 14:43:49 -05:00
Kovid Goyal
af6baa33be
Ignore out of order surface configure events
2022-03-01 07:59:17 +05:30
Kovid Goyal
1096cbe236
Use an anonymous struct
2022-03-01 07:46:45 +05:30
Alexander Orzechowski
854cb8f27e
wayland: handle resize requests after acknowledging the configure
...
The wayland protocol requires that clients commit a new buffer sometime
after `xdg_surface_ack_configure`.
2022-02-28 19:42:11 -05:00
Alexander Orzechowski
e359094cff
wayland: move window state
2022-02-28 19:42:11 -05:00
Kovid Goyal
9d349d618a
Fix #4743
2022-02-26 14:42:21 +05:30
Kovid Goyal
6689d312a3
macOS: Paste multiple URLs separated by newlines
...
Fixes #4734
2022-02-25 10:17:36 +05:30
Kovid Goyal
fdc9835587
Cleanup previous PR
2022-02-18 13:44:25 +05:30
pagedown
58e8609c1a
macOS: Ensure the cursor is updated once
...
macOS will set the cursor to arrow after milliseconds after the switch
desktop animation ends. So the cursor that was updated immediately after
the focus will be changed again. This also affects toggling fullscreen.
2022-02-18 13:52:19 +08:00
pagedown
69c5c49094
Disable cursor rects
2022-02-18 13:52:00 +08:00
pagedown
ff8de7607a
Also handles the case where toggleFullScreen does not get called
2022-02-18 13:50:46 +08:00
pagedown
6d0721341b
Fix phantom window appears when executing full screen in transition
2022-02-17 15:47:03 +08:00
Kovid Goyal
0248edbdb9
xkb debug events should be printed to stderr
2022-02-14 15:03:31 +05:30
Rui Ming (Max) Xiong
d2288d8f83
Scale touchpad input by display scale on wayland
2022-02-13 20:47:02 -05:00
Kovid Goyal
4b4f904aac
Dont use global variables for the axis discrete counts
2022-02-13 20:56:55 +05:30
Kovid Goyal
ee5cf90684
Cleanup previous PR and add changelog entry for it
...
Fixes #4694
2022-02-13 10:53:24 +05:30
Rui Ming (Max) Xiong
79fa9f1c95
Use counters for discrete flags instead
2022-02-12 17:45:28 -05:00
Rui Ming (Max) Xiong
40bf12af7a
Check for discrete mouse events on wayland
2022-02-12 02:12:59 -05:00
pagedown
444d9bd341
macOS: Ignore when the global shortcut is disabled
2022-02-11 14:23:57 +08:00
pagedown
358f30ca7a
No longer need to fall back and check the default shortcuts
2022-02-11 02:39:50 +08:00
pagedown
e32785831b
macOS: Add missing global shortcuts that will be enabled by default
2022-02-11 02:19:27 +08:00
Kovid Goyal
728eceb620
Add implementation for focus moving hardcoded shortcuts
2022-02-10 18:56:47 +05:30
Kovid Goyal
57f591d1ce
Simplify default global shortcut lookup
...
Now if a shortcut is present in the plist, it will not be considered for
default matching
2022-02-10 17:47:11 +05:30
Kovid Goyal
e4397a1c73
Framework for Apple's default global shortcuts
2022-02-10 14:15:21 +05:30
Kovid Goyal
f047678711
More robust initial window replacement when launching URLs
2022-02-06 07:11:57 +05:30
pagedown
51d591e177
macOS: Allow opening URLs with kitty
2022-02-05 13:05:41 +08:00
pagedown
80a62c8d71
Add preamble to generated file and fix gen-config.py filename
2022-02-05 13:05:13 +08:00
pagedown
ce57c747cc
macOS: Fix select next input source not working
...
For global shortcut to switch the next input source in the macOS system
preferences, final confirmation is only given when all modifier keys are
released.
2022-02-04 12:51:01 +08:00
Kovid Goyal
3e9129655a
...
2022-02-03 21:00:23 +05:30
pagedown
ba0f61d752
Refactor: More f-string for kitty
2022-01-29 20:17:46 +08:00
pagedown
dc61adf9d8
Refactor: More f-string
2022-01-28 19:34:13 +08:00
Luflosi
347c0d4de4
Fix compilation on macOS 10.12
...
Without this commit, kitty would fail to compile on macOS 10.12 with the error "use of undeclared identifier".
This problem was introduced in f7be4fab48 , where some code was moved to a different file, without moving the corresponding `#define` statements.
2022-01-27 12:21:17 +01:00
pagedown
b9a612fb9c
macOS: Clean up any text that may not have been sent when loses focus
2022-01-27 12:37:17 +08:00
pagedown
4d920b182f
macOS: Cancel IME composition when receive loss of focus event
2022-01-27 10:07:18 +08:00
pagedown
b3f678cf6f
Improve debug log
2022-01-26 18:28:37 +08:00
pagedown
7f3715cd3e
Use the input context instance from GLFWContentView
2022-01-26 18:25:37 +08:00
pagedown
a3aaaa1efb
macOS: Explicitly cancel IME composition when losing the focus
2022-01-26 18:21:20 +08:00
Kovid Goyal
d1531632a2
Add some notes on how to run IBUS for testing
2022-01-26 10:47:18 +05:30
Kovid Goyal
2151969ae5
IBUS: Hide the pre-edit text when receiving a HidePreeditText message
2022-01-26 10:12:48 +05:30
Kovid Goyal
02e1272502
Slightly improve debug text
2022-01-23 20:40:41 +05:30
pagedown
b2d0c35fc2
Clear the pre-edit text only when inserting non-control characters
...
Maintains the pre-edit input state after pressing the modifier key
combination or function key while using the IME.
2022-01-23 22:22:24 +08:00
pagedown
3ee12082f2
No need to update the pre-edit text
2022-01-23 22:16:26 +08:00
pagedown
1ce4fc9c8c
Check for ASCII control chars before sending text
2022-01-23 21:40:27 +08:00
pagedown
57e2866b68
macOS: Fix caps_lock not clearing pre-edit text when using IME
2022-01-23 18:50:55 +08:00
pagedown
195fc1a270
Minor tweaks to macOS key event debug log
2022-01-23 18:45:18 +08:00
Kovid Goyal
39e56f1864
Dont check the return value of handleEvent
...
It's apparently meaningless, despite what the docs say
2022-01-23 12:47:29 +05:30
Kovid Goyal
053bb999d3
Merge branch 'fix-macos-ime-modifiers' of https://github.com/page-down/kitty
2022-01-23 10:41:45 +05:30
pagedown
83884f42f8
macOS: Fix text insertion by modifier keys when using IME
2022-01-23 01:50:37 +08:00
pagedown
fbaf3e2f49
Update preedit text with markedText
...
This fixes the preedit text being cleared when using shortcut keys to
switch candidate text in the input state.
2022-01-23 00:01:08 +08:00
Kovid Goyal
c0be0f74d8
Use commit text instead of a zero key event
...
Thanks @page-down
2022-01-22 21:11:26 +05:30
Kovid Goyal
688a3eaef7
Check if input context handles flagschanged event
2022-01-22 16:17:01 +05:30
Kovid Goyal
3b15b46d08
Also deal with setMarkedText called from event loop with actual marked text
2022-01-22 16:13:44 +05:30
Kovid Goyal
f21ddae94f
Handle setMarkedText called from the event loop
...
Also pass through text with zero key
2022-01-22 16:08:50 +05:30
Kovid Goyal
cd9b752926
...
2022-01-22 16:02:05 +05:30
Kovid Goyal
655a5a2808
Handle insertText called from the event loop by the text input system
2022-01-22 15:51:43 +05:30
Kovid Goyal
3867620be5
...
2022-01-22 14:58:10 +05:30
Kovid Goyal
03a7361325
Some debug prints for flagsChanged
2022-01-22 14:57:13 +05:30
Kovid Goyal
e8c683db8b
A new approach to handling flagsChanged with IME
...
Bypass cocoa's flagsChanged handling and call handleevent ourselves,
this allows us to know exactly what the IME is doing. Hopefully fixes
issues with IMEs that change state on modifier key presses.
Fixes #4541
2022-01-22 14:47:57 +05:30
Kovid Goyal
1f4372b34c
Test if text is being inserted rather than if text is present
2022-01-20 11:16:05 +05:30
Kovid Goyal
b090602fdb
macOS: Fix the shift key not clearing pre-edit text in IME
...
Fixes #4541
2022-01-20 08:00:17 +05:30
Kovid Goyal
16d3e82515
Add debug output when ignoring key press during IME
2022-01-19 14:50:12 +05:30
Kovid Goyal
21bc5bf8c0
Dont leak a reference to input_source_at_last_key_event
2022-01-19 12:06:54 +05:30
pagedown
5182f79152
macOS: Fix global shortcuts with shift modifier key not working
2022-01-17 02:23:00 +08:00
Kovid Goyal
06ff685f8e
oops
2022-01-15 14:54:30 +05:30
Kovid Goyal
c6ecdf0fa4
Ensure ignoreOSKeyboardProcessing is initialized
2022-01-15 14:43:10 +05:30
Kovid Goyal
ca4840717b
macOS: Fix using shortcuts from the global menu bar as subsequent key presses in a multi key mapping not working
...
Fixes #4519
2022-01-15 13:56:18 +05:30
Kovid Goyal
c473df4393
Ignore NSEventModifierFlagFunction when parsing global shortcuts
2022-01-15 12:16:18 +05:30