mirror of
https://github.com/kovidgoyal/kitty.git
synced 2024-11-10 13:04:03 +03:00
parent
df13f0ce5a
commit
32a0e28686
@ -3,6 +3,12 @@ Changelog
|
|||||||
|
|
||||||
|kitty| is a feature full, cross-platform, *fast*, GPU based terminal emulator.
|
|kitty| is a feature full, cross-platform, *fast*, GPU based terminal emulator.
|
||||||
|
|
||||||
|
0.13.4 [future]
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
- macOS: Fix :kbd:`cmd+period` key not working (:iss:`1318`)
|
||||||
|
|
||||||
|
|
||||||
0.13.3 [2019-01-19]
|
0.13.3 [2019-01-19]
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
|
@ -300,12 +300,15 @@ static GLFWbool initializeTIS(void)
|
|||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
static inline bool
|
static inline bool
|
||||||
is_ctrl_tab(NSEvent *event) {
|
is_ctrl_tab(NSEvent *event, NSEventModifierFlags modifierFlags) {
|
||||||
NSEventModifierFlags modifierFlags = [event modifierFlags] & NSEventModifierFlagDeviceIndependentFlagsMask;
|
|
||||||
return event.keyCode == kVK_Tab && (modifierFlags == NSEventModifierFlagControl || modifierFlags == (
|
return event.keyCode == kVK_Tab && (modifierFlags == NSEventModifierFlagControl || modifierFlags == (
|
||||||
NSEventModifierFlagControl | NSEventModifierFlagShift));
|
NSEventModifierFlagControl | NSEventModifierFlagShift));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline bool
|
||||||
|
is_cmd_period(NSEvent *event, NSEventModifierFlags modifierFlags) {
|
||||||
|
return event.keyCode == kVK_ANSI_Period && modifierFlags == NSEventModifierFlagCommand;
|
||||||
|
}
|
||||||
|
|
||||||
int _glfwPlatformInit(void)
|
int _glfwPlatformInit(void)
|
||||||
{
|
{
|
||||||
@ -320,7 +323,8 @@ int _glfwPlatformInit(void)
|
|||||||
|
|
||||||
NSEvent* (^keydown_block)(NSEvent*) = ^ NSEvent* (NSEvent* event)
|
NSEvent* (^keydown_block)(NSEvent*) = ^ NSEvent* (NSEvent* event)
|
||||||
{
|
{
|
||||||
if (is_ctrl_tab(event)) {
|
NSEventModifierFlags modifierFlags = [event modifierFlags] & NSEventModifierFlagDeviceIndependentFlagsMask;
|
||||||
|
if (is_ctrl_tab(event, modifierFlags) || is_cmd_period(event, modifierFlags)) {
|
||||||
// Cocoa swallows Ctrl+Tab to cycle between views
|
// Cocoa swallows Ctrl+Tab to cycle between views
|
||||||
[[NSApp keyWindow].contentView keyDown:event];
|
[[NSApp keyWindow].contentView keyDown:event];
|
||||||
}
|
}
|
||||||
@ -330,13 +334,14 @@ int _glfwPlatformInit(void)
|
|||||||
|
|
||||||
NSEvent* (^keyup_block)(NSEvent*) = ^ NSEvent* (NSEvent* event)
|
NSEvent* (^keyup_block)(NSEvent*) = ^ NSEvent* (NSEvent* event)
|
||||||
{
|
{
|
||||||
if ([event modifierFlags] & NSEventModifierFlagCommand) {
|
NSEventModifierFlags modifierFlags = [event modifierFlags] & NSEventModifierFlagDeviceIndependentFlagsMask;
|
||||||
|
if (modifierFlags & NSEventModifierFlagCommand) {
|
||||||
// From http://cocoadev.com/index.pl?GameKeyboardHandlingAlmost
|
// From http://cocoadev.com/index.pl?GameKeyboardHandlingAlmost
|
||||||
// This works around an AppKit bug, where key up events while holding
|
// This works around an AppKit bug, where key up events while holding
|
||||||
// down the command key don't get sent to the key window.
|
// down the command key don't get sent to the key window.
|
||||||
[[NSApp keyWindow] sendEvent:event];
|
[[NSApp keyWindow] sendEvent:event];
|
||||||
}
|
}
|
||||||
if (is_ctrl_tab(event)) {
|
if (is_ctrl_tab(event, modifierFlags) || is_cmd_period(event, modifierFlags)) {
|
||||||
// Cocoa swallows Ctrl+Tab to cycle between views
|
// Cocoa swallows Ctrl+Tab to cycle between views
|
||||||
[[NSApp keyWindow].contentView keyUp:event];
|
[[NSApp keyWindow].contentView keyUp:event];
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user