@@ -108,6 +108,10 @@ static StatusColInfo gStatusCols[] =
108
108
L" Scroll Lock state" ,
109
109
L" Scroll Lock state, left click to change" },
110
110
111
+ {csi_InputGrouping, L" StatusBar.Hide.InputGrouping" ,
112
+ L" Input Grouping state" ,
113
+ L" Input Grouping state" },
114
+
111
115
{csi_KeyHooks, L" StatusBar.Hide.KeyHooks" ,
112
116
L" Keyboard hooks" ,
113
117
L" Install keyboard hooks status" },
@@ -651,6 +655,10 @@ void CStatus::PaintStatus(HDC hPaint, LPRECT prcStatus /*= NULL*/)
651
655
wcscpy_c (m_Items[nDrawCount].sText , m_Values[csi_ViewLock].sText );
652
656
wcscpy_c (m_Items[nDrawCount].szFormat , m_Values[csi_ViewLock].szFormat );
653
657
break ;
658
+ case csi_InputGrouping:
659
+ wcscpy_c (m_Items[nDrawCount].sText , L" InpGrp" );
660
+ wcscpy_c (m_Items[nDrawCount].szFormat , L" InpGrp" );
661
+ break ;
654
662
case csi_InputLocale:
655
663
// чтобы не задавали вопросов, нафига дублируется.
656
664
if (LOWORD ((DWORD)mhk_Locale) == HIWORD ((DWORD)mhk_Locale))
@@ -908,6 +916,9 @@ void CStatus::PaintStatus(HDC hPaint, LPRECT prcStatus /*= NULL*/)
908
916
case csi_ViewLock:
909
917
SetTextColor (hDrawDC, mb_ViewLock ? crText : crDash);
910
918
break ;
919
+ case csi_InputGrouping:
920
+ SetTextColor (hDrawDC, mb_InputGrouping ? crText : crDash);
921
+ break ;
911
922
case csi_KeyHooks:
912
923
SetTextColor (hDrawDC, mb_KeyHooks ? crText : crDash);
913
924
break ;
@@ -1959,6 +1970,7 @@ bool CStatus::IsKeyboardChanged()
1959
1970
bool bNum = ((states[1 ] = GetKeyState (VK_NUMLOCK)) & 1 ) == 1 ;
1960
1971
bool bScroll = ((states[2 ] = GetKeyState (VK_SCROLL)) & 1 ) == 1 ;
1961
1972
bool bKeyHooks = gpConEmu->IsKeyboardHookRegistered ();
1973
+ bool bGrouping = gpConEmu->isInputGrouped ();
1962
1974
DWORD_PTR hkl = gpConEmu->GetActiveKeyboardLayout ();
1963
1975
1964
1976
if (bCaps != mb_Caps)
@@ -1981,6 +1993,11 @@ bool CStatus::IsKeyboardChanged()
1981
1993
mb_KeyHooks = bKeyHooks; bChanged = true ;
1982
1994
}
1983
1995
1996
+ if (bGrouping != mb_InputGrouping)
1997
+ {
1998
+ mb_InputGrouping = bGrouping; bChanged = true ;
1999
+ }
2000
+
1984
2001
if (hkl != mhk_Locale)
1985
2002
{
1986
2003
mhk_Locale = hkl; bChanged = true ;
0 commit comments