Некорректное позиционирование подсказки языка
Открыл консоль (CMD.EXE) и обратил внимание, что рядом с кареткой нет значка языка текущей раскладки. Хотел открыть тикет, но обратил внимание, что и в окне создания тикета тоже не работает отображение этого значка. После поисков выяснилось, что значок все же есть, но не рядом с кареткой, а в левом верхнем углу ЭКРАНА. Что интересно, у Internet Explorer и Notepad таких проблем нет.
MAHOU DEBUG INFO
Environment info
- Mahou 2.8.0.0
- OS = [Microsoft Windows NT 6.2.9200.0]
- x64 = [True]
- .Net = [4.0.30319.42000]
All installed layouts
US(67699721) Russian - dot on NUMPAD(4039181337)
Mahou.ini
[FirstStart]
First=true
[Functions]
AutoStartAsAdmin=False
TrayIconVisible=True
ConvertSelectionLayoutSwitching=False
ReSelect=True
RePress=False
AddOneSpaceToLastWord=False
AddOneEnterToLastWord=False
ConvertSelectionLayoutSwitchingPlus=False
ScrollTip=True
StartupUpdatesCheck=False
SilentUpdate=False
Logging=False
CapsLockTimer=False
TrayFlags=True
BlockMahouHotkeysWithCtrl=False
SymbolIgnoreModeEnabled=false
MCDServerSupport=False
OneLayoutWholeWord=True
GuessKeyCodeFix=False
AppDataConfigs=True
RemapCapslockAsF18=True
UseJKL=True
ReadOnlyNA=False
WriteInputHistory=False
WriteInputHistoryBackSpaceType=0
[Layouts]
SwitchBetweenLayouts=True
OneLayout=False
EmulateLayoutSwitch=False
EmulateLayoutSwitchType=Alt+Shift
ChangeToSpecificLayoutByKey=False
MainLayout1=Russian - dot on NUMPAD(4039181337)
MainLayout2=US(67699721)
SpecificKey1=1
SpecificKey2=0
SpecificKey3=0
SpecificKey4=0
SpecificLayout1=Переключать между раскладками
SpecificLayout2=
SpecificLayout3=
SpecificLayout4=
SpecificKeysType=0
SpecificKeySets=set_0
QWERTZfix=False
[PersistentLayout]
OnlyOnWindowChange=False
ChangeOnlyOnce=False
ActivateForLayout1=False
ActivateForLayout2=False
Layout1CheckInterval=50
Layout2CheckInterval=50
Layout1Processes=devenv.exe wdexpress.exe
Layout2Processes=notepad++.exe winword.exe
[Appearence]
DisplayLangTooltipForMouse=False
DisplayLangTooltipForMouseOnChange=False
DisplayLangTooltipForCaret=True
DisplayLangTooltipForCaretOnChange=True
DifferentColorsForLayouts=False
MouseLTAlways=False
Language=Русский
Layout1ForeColor=White
Layout1BackColor=Navy
Layout1TransparentBackColor=True
Layout1Font=Georgia; 8.25pt
Layout1Height=14
Layout1Width=26
Layout1PositionX=8
Layout1PositionY=0
Layout2ForeColor=White
Layout2BackColor=Maroon
Layout2TransparentBackColor=False
Layout2Font=Georgia; 8.25pt
Layout2Height=14
Layout2Width=26
Layout2PositionX=8
Layout2PositionY=0
MouseLTForeColor=#000000
MouseLTBackColor=#FFFFFF
MouseLTFont=Georgia; 8pt
MouseLTHeight=14
MouseLTWidth=26
MouseLTPositionX=8
MouseLTPositionY=0
CaretLTForeColor=White
CaretLTBackColor=Navy
MouseLTTransparentBackColor=False
CaretLTTransparentBackColor=False
CaretLTFont=Segoe UI; 9.75pt; style=Bold
CaretLTHeight=14
CaretLTWidth=26
CaretLTPositionX=8
CaretLTPositionY=12
MCDS_Pos_X=58
MCDS_Pos_Y=13
MCDS_Top=60
MCDS_Bottom=45
MouseLTUseFlags=False
CaretLTUseFlags=False
Layout1LTText=test 1
Layout2LTText=test 2
MouseLTUpperArrow=False
CaretLTUpperArrow=False
WindowsMessages=True
[Timings]
DelayAfterBackspaces=100
UseDelayAfterBackspaces=False
LangTooltipForMouseRefreshRate=25
LangTooltipForCaretRefreshRate=500
DoubleHotkey2ndPressWait=350
FlagsInTrayRefreshRate=100
ScrollLockStateRefreshRate=100
CapsLockDisableRefreshRate=100
SelectedTextGetMoreTries=False
SelectedTextGetMoreTriesCount=5
ExcludedPrograms=LA.exe SomeProg.exe
ChangeLayoutInExcluded=True
LangTooltipForMouseSkipMessages=5
[Snippets]
SnippetsEnabled=False
SpaceAfter=True
SwitchToGuessLayout=True
SnippetExpandKey=Space
[AutoSwitch]
Enabled=False
SpaceAfter=True
SwitchToGuessLayout=True
DownloadInZip=True
[Hotkeys]
ToggleMainWindow_Enabled=True
ToggleMainWindow_Double=False
ToggleMainWindow_Modifiers=Win + Control + Shift + Alt
ToggleMainWindow_Key=45
ConvertLastWord_Enabled=True
ConvertLastWord_Double=False
ConvertLastWord_Modifiers=
ConvertLastWord_Key=19
ConvertSelectedText_Enabled=True
ConvertSelectedText_Double=False
ConvertSelectedText_Modifiers=
ConvertSelectedText_Key=145
ConvertLastLine_Enabled=True
ConvertLastLine_Double=False
ConvertLastLine_Modifiers=Shift
ConvertLastLine_Key=19
ConvertLastWords_Enabled=True
ConvertLastWords_Double=False
ConvertLastWords_Modifiers=Shift
ConvertLastWords_Key=122
ToggleSymbolIgnoreMode_Enabled=True
ToggleSymbolIgnoreMode_Double=False
ToggleSymbolIgnoreMode_Modifiers=Shift + Control
ToggleSymbolIgnoreMode_Key=122
SelectedTextToTitleCase_Enabled=False
SelectedTextToTitleCase_Double=True
SelectedTextToTitleCase_Modifiers=Shift
SelectedTextToTitleCase_Key=0
SelectedTextToRandomCase_Enabled=False
SelectedTextToRandomCase_Double=True
SelectedTextToRandomCase_Modifiers=Alt
SelectedTextToRandomCase_Key=0
SelectedTextToSwapCase_Enabled=False
SelectedTextToSwapCase_Double=False
SelectedTextToSwapCase_Modifiers=Win
SelectedTextToSwapCase_Key=190
SelectedTextTransliteration_Enabled=False
SelectedTextTransliteration_Double=False
SelectedTextTransliteration_Modifiers=Win
SelectedTextTransliteration_Key=191
ExitMahou_Enabled=True
ExitMahou_Double=False
ExitMahou_Modifiers=Win + Control + Shift + Alt
ExitMahou_Key=123
RestartMahou_Enabled=True
RestartMahou_Modifiers=Win + Shift + Alt
RestartMahou_Key=33
ToggleLangPanel_Enabled=True
ToggleLangPanel_Double=False
ToggleLangPanel_Modifiers=Shift
ToggleLangPanel_Key=120
ShowSelectionTranslate_Enabled=False
ShowSelectionTranslate_Double=True
ShowSelectionTranslate_Modifiers=Alt
ShowSelectionTranslate_Key=0
[LangPanel]
Display=False
Transparency=90
RefreshRate=25
Position=X0 Y0
ForeColor=#000000
BackColor=#FFFFFF
Font=Microsoft Sans Serif; 8.25pt
BorderColor=#8B5FFF
BorderAeroColor=True
UpperArrow=True
[Updates]
Channel=Stable
LatestCommit=778b8a1
Snippets
-><***ANY***>====><***ANY***>__cursorhere()</***ANY***><====
->mahou
====>Mahou (魔法) - Magical layout switcher.<====
->eml
====>[email protected]<====
->nowtime====>__date(HH:mm:ss)<====
->nowdate====>__date(dd/MM/yyyy)<====
->datepretty====>__date(dd, ddd MMM)<====
->mahouver====>__version()<====
->mahoutitle====>__title()<====
->env_system====>__system()<====
->date_esc====>\__date(HH:mm:ss)<====
а в левом верхнем углу ЭКРАНА.
Для CMD.exe нет способа получить положение каретки т.к. это не графическое приложение, это консольное приложение, окно которого не имеет таких данных как текущая раскладка, положение каретки и похожие данные, функции WinAPI которые получают эти данные не могут ихз получить из консольных окон, в которых этих данных нет... Единственный способ который дает такую возможность, - это сделать консольное окно графическим, например используя ConEmu или MinTTY.
А как же с Firefox? Тут тоже не отображается индикатор! Кстати, у CMD.EXE при смене раскладки даже ScrollLock не работает.
А, в Firefox это был какой-то глюк. Сейчас опять отображается.
Ну с Firefox все же есть какой-то баг - вот в данный момент плавающий индикатор вообще не работает. Как собрать статистику в этом случае?
@UnityUser Ну с Firefox(и Chrome) другая история, дело в том что нужно чтобы процессы браузеров были запущены после того как был запущен Mahou, иначе отображения не будет вообще или будет неправильным.
Кстати, у CMD.EXE при смене раскладки даже ScrollLock не работает
О, хорошо что заметил, попробую исправить позже.
P.S. Ты ведь имел ввиду функцию "Включать Scroll-Lock когда активна раскладка 1." да?
@UnityUser
О, хорошо что заметил, попробую исправить позже.
Исправил в latest-commit версии, можешь обновится из Mahou, или вручную, отсюда Release_x86_x64.zip: Mahou-latest-commit.
Теперь работает. Спасибо!
Сейчас попробовал Firefox запустить после Mahou - все равно индикатор не отображается.
Сейчас попробовал Firefox запустить после Mahou - все равно индикатор не отображается.
Могут быть проблемы в зависимости от версии Firefox, т.к. разработчики могут так же окончательно отрезать поддержку WinAPI функций, как было в одном релизе(56~59 где-то в тамошнем Nightly). Все же если все ОК с WinAPI, единственное что остается пробовать перезапускать и Mahou и Firefox, и может сам ПК(может помочь в некоторых случаях когда зависает что-то в csrss.exe).
Версия FF64. Ну ладно, перезапуски - это уже костыли. Нет и ладно, хватит ScrollLock и индикатора в области уведомлений. Можно тогда закрыть тикет, если других решений не будет.
@UnityUser Можешь пока оставить, я позже сделаю пару тестов и если ничего нового не найду тогда уже просто закрою.