diff --git a/src/dlangui/core/events.d b/src/dlangui/core/events.d
index 4276cdd6..6d5b257d 100644
--- a/src/dlangui/core/events.d
+++ b/src/dlangui/core/events.d
@@ -720,6 +720,10 @@ enum KeyCode : uint {
KEY_Y = 0x59,
/// Z
KEY_Z = 0x5a,
+ /// [
+ KEY_BRACKETOPEN = 0xDB,
+ /// ]
+ KEY_BRACKETCLOSE = 0xDD,
/// key /
KEY_DIVIDE = 0x6F,
/// key +
diff --git a/src/dlangui/platforms/windows/winapp.d b/src/dlangui/platforms/windows/winapp.d
index 83a10cd4..bc6a5fbf 100644
--- a/src/dlangui/platforms/windows/winapp.d
+++ b/src/dlangui/platforms/windows/winapp.d
@@ -658,14 +658,9 @@ class Win32Window : Window {
updateKeyFlags(action, KeyFlag.Alt);
break;
default:
- if (GetKeyState(VK_CONTROL) & 0x8000)
- _keyFlags |= KeyFlag.Control;
- else
- _keyFlags &= ~KeyFlag.Control;
- if (GetKeyState(VK_SHIFT) & 0x8000)
- _keyFlags |= KeyFlag.Shift;
- else
- _keyFlags &= ~KeyFlag.Shift;
+ updateKeyFlags((GetKeyState(VK_CONTROL) & 0x8000) != 0 ? KeyAction.KeyDown : KeyAction.KeyUp, KeyFlag.Control);
+ updateKeyFlags((GetKeyState(VK_SHIFT) & 0x8000) != 0 ? KeyAction.KeyDown : KeyAction.KeyUp, KeyFlag.Shift);
+ updateKeyFlags((GetKeyState(VK_MENU) & 0x8000) != 0 ? KeyAction.KeyDown : KeyAction.KeyUp, KeyFlag.Alt);
break;
}
if (keyCode == 0xBF)
diff --git a/views/res/theme_default.xml b/views/res/theme_default.xml
index cbeaf3c4..d8664e58 100644
--- a/views/res/theme_default.xml
+++ b/views/res/theme_default.xml
@@ -116,7 +116,7 @@
backgroundImageId="tab_btn_dark_up"
/>