Open Zeroes1 opened 1 year ago
Hi @Zeroes1! Could you take a video of what this looks like when it's working in ConEmu, vs when it's not working in Windows Terminal? Thanks!
if try record program Bandicam area: area around cursor -> full screen (ONLY THIS! - record around mouse) WT+Far+folow the mouse record in bandicam.mp4.zip
we can see many codes in far console
i check fresh Far30b6164.x64.20230615.7z Microsoft.WindowsTerminalPreview_1.18.1462.0_x64.zip with default settings problem still exist i check process Far.exe OpenConsole.exe WindowsTerminal.exe
3rd party dll attached not found
if u want i can record video with all proccess
on my comp at work this trouble present too (but some rare...) win10 22h2
Hey @Zeroes1. Sorry, but we're still having trouble understanding the issue, exactly. Let's try this. Could you write up specific, numbered steps to reproduce the issue? You're welcome to write it in your native language, we can find someone to translate it on our side 😊.
This issue has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for 4 days. It will be closed if no further activity occurs within 3 days of this comment.
This issue has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for 4 days. It will be closed if no further activity occurs within 3 days of this comment.
My native language is russian. Ok, let'go!
1) Я не уверен что проблема https://github.com/microsoft/terminal/issues/15533 одинакова с этой https://github.com/microsoft/terminal/issues/15540 но что то может быть общее у них? (for example mouse events?) я пока только на одном компьютере w10 22h2 её вижу без проблем для воспроизведения уже.
2) По поводу issues-15540: проблема: если запускать некоторые EXE файлы (лучше всего проявляется на консольных) путём двойного клика мышкой (и только так!) есть определенная вероятность того что после этого курсорная доска FAR начнёт двигаться вслед за курсором мыши!
она без проблем воспроизводится в том числе на установленных с нуля OS: Win10_22H2_Russian_x64.iso Windows 11 Pro 22H2 22621.1702 x64 EN
давайте по порядку: 1) взял ISO образ Win11 2) установил её в VirtualBox 7.0.8 3) На странице: https://www.farmanager.com/download.php?l=en скачал последний дистрибутив FAR Manager v3.0 build 6167 x64 https://www.farmanager.com/nightly/Far30b6167.x64.20230626.7z распаковал C:\FAR 4) на экране десктопа правый клик мыши + выбираю Open in Terminal открывается WT v1.2 5) добавляю новый профиль FAR, указываю путь на запуск C:\FAR\far.exe 6) активирую профиль FAR 7) в консоли пишу whereis:choice.exe и жму Enter плагин FarСmds обеспечивает открытие на панели FAR директории с этим файлом c:\windows\system32\choice.exe 8) теперь важно! Дважды кликаю левой кнопкой мыши по файлу на панели (то есть его запускаю) Y,N выбираем любой ответ пробуем мышкой делать круговые движения по площади FAR окна с большой вероятностью курсорная доска FAR начнёт двигаться в след за движением курсора мыши. 9) пробуем тоже самое на GUI приложении whereis:certreq.exe кликаем по нему тоже 2 раза (то есть запускаем) отменяем появившийся диалог и опять пробуем мышкой делать круговые движения по площади FAR окна с большой вероятностью курсорная доска FAR начнёт двигаться в след за движением курсора мыши.
Эффект движения курсорной доски FAR вслед за движением мыши прекращается только! если кликнуть 1 раз левой кнопкой мыши.
я не знаю кто виноват FAR или WT в данной проблеме. Но такой проблемы нет при использовании FAR и Conhost или FAR+ConEmu проблема не в плагинах FAR, я их убирал тоже самое. Я проверил билд FAR 8летней давности x86 - тоже самое поведение. Я проверил поведение под последней версией WEZTERM (использует ваш OpenConsole.exe) - тоже самое поведение.
Я хотел проверить поведение на других консольных менеджерах File Comander http://silk.apana.org.au/fcwftp.html
Necromancer Dos Navigator http://ndn.muxe.com/download/
но при запуске их используя WT, мышка сразу начинает выделять область на файловой панели, то есть мышкой запустить файлы не могу.
с версией WT 1.18 preview на W11 всё тоже самое. все тесты были сделаны с настройками по умолчанию: FAR,WT,OS.
А, теперь я понял. Спасибо @Zeroes1 за шаги по воспроизведению. Шаги 7, 8 и 9 являются решающими и помогли мне воспроизвести проблему. Когда ты сказал "курсорная доска", мы не поняли, что ты имел в виду. Видео также было очень полезным.
In short, the repro steps are:
whereis:choice.exe
Far+vtm+WT is not affected by this issue.
First tab: Far inside vtm inside WT
, Second tab: Far inside WT
https://github.com/microsoft/terminal/assets/11535558/70f81b54-009b-4fb7-b731-03818dc48028
In #15741, @Zeroes1 mentioned that this was fixed apparently in Canary 1.20.3491.0. Presumably, that would mean that this root issue also got fixed?
(no idea which PR would have done it though)
@zadjii-msft I can still reproduce the issue in my local dev build, which is branched off of 63c3573a13cc96bfa3d655f0f1898ae250e2fe35, so I don't think it's fixed. I suspect it might be timing dependent, so that may explain why it isn't always reproducible.
I briefly looked at this a while back, and if I'm remembering correctly, it looked like the app wasn't receiving a mouse-up event because of the focus change to the launched app. As a result, it then thought you were still holding the mouse down once it received the focus again.
I think it only happens over conpty, though, so it seems like there might be something wrong with the way we're forwarding mouse events, but I'm just guessing here.
@zadjii-msft fixed only #15533 for me
Additional info: middle click in Far Manager work as Enter
if (MouseEvent->dwButtonState & FROM_LEFT_2ND_BUTTON_PRESSED && MouseEvent->dwEventFlags != MOUSE_MOVED) {
FarKey Key = KEY_ENTER;
if (MouseEvent->dwControlKeyState & SHIFT_PRESSED) {
Key|= KEY_SHIFT;
}
if (MouseEvent->dwControlKeyState & (LEFT_CTRL_PRESSED | RIGHT_CTRL_PRESSED)) {
Key|= KEY_CTRL;
}
if (MouseEvent->dwControlKeyState & (LEFT_ALT_PRESSED | RIGHT_ALT_PRESSED)) {
Key|= KEY_ALT;
}
ProcessKey(Key);
return TRUE;
}
afrter use middle click on PROBLEM EXEs files break functional Rclick/Lclick mouse. Now Rclick/Lclick work as Double-L-Click, need restart Far for fix it.
checked on canary terminal-1.22.1501.0/release terminal-1.20.11271.0 without WT, problem not exist.
may be interest for someones people how to workaround this trouble... for example if use AutoHotkey v2.x [https://www.autohotkey.com/]
add script (aka Little Magic Spell):
;-------------------- Temporary Workaround for FAR Manager & Windows Terminal ---------------------
; fix LButton double click, fix Mbutton click
; side effect: dont work selecting in grabber by mouse and drag'n'drop selected files
CoordMode "Mouse" , "Window"
#HotIf Check_OpenConsole_and_FAR()
Check_OpenConsole_and_FAR()
{
Try
{
MouseGetPos , &ypos
if (ypos > 40)
{
currentTitle := WinGetTitle("A")
if (!InStr(currentTitle,"редактирование ") and !InStr(currentTitle,"edit "))
return winActive("- Far 3.0 ahk_class CASCADIA_HOSTING_WINDOW_CLASS")
}
}
}
LButton::
{
Send "{LButton}"
}
MButton::
{
Send "{MButton}"
}
#HotIf
Windows Terminal version
1.17.11461
Windows build number
10.0.19045.2965
Other Software
Far Manager, version 3.0.6163.0 x64
Steps to reproduce
Microsoft.WindowsTerminal_1.17.11461.0_x64.zip or Microsoft.WindowsTerminalPreview_1.18.1462.0_x64.zip in portable mode, uac off, under Admin
I use WT with FAR 100% times
when start some EXE's file under far manager (twiced click L-button mouse - only this!) cursor board by Far Manager starting moving with mouse movement the effect does not stop until you click L-button mouse.
Expected Behavior
Cursor board by Far Manager not move with mouse movement
Actual Behavior
100% reproduced on some EXE's ( with 90% console app?)
for examples:
Windows\System32\
with effects:
console app: certutil.exe change.exe
gui app: appverif.exe certreq.exe
console app without effects: ARP.EXE at.exe
i also check 8year ago Far Manager Far30b3900.x86 trouble still present too
PS: i use windows 27 year far manager 25 year conemu 12 year
but never see this effects earlier... WT I try use ~week ( why not early? because i dont like UWP apps)