Win+Shift+Down перестал работать для отмены вертикальной максимизации

Win+Shift+Upмаксимизирует активное окно по вертикали, сохраняя его ширину.
Win+Shift+Downиспользуется для обратного действия, то есть восстановления предыдущих вертикальных размеров.

Последний перестал работать в Windows 10 20H2 (возможно, уже в 2004 году). Вместо этого Win+Shift+Downтеперь всегда сворачивает окно, как Win+Down, как будто игнорируя Shiftмодификатор. Я тестировал это на нескольких независимых установках, а также в безопасном режиме.

РЕДАКТИРОВАТЬ: я также проверил с помощью Spy++. Ключевые сообщения переходят в соответствующее активное окно (как и ожидалось), за исключениемVK_DOWNкоторый не появляется. Вместо этогоWM_SYSCOMMANDсSC_MINIMIZEполучено. НетWM_HOTKEYСообщения.

Есть ли способ восстановить прежнее поведение?
Есть ли какое-нибудь другое сочетание клавиш для отмены вертикальной максимизации?

1 ответ

Вместо того, чтобы рассчитывать на согласованность обновлений Windows, вы можете использовать бесплатный AutoHotKey для создания собственных горячих клавиш.

Следующий скрипт реализует ваши горячие клавиши:

      sysget, SM_CYMAXIMIZED, 62                  ; Get maximised window size
sysget, SM_CYEDGE, 46                       ; Get 3D border size
return
; maximize vertically
#+Up::
WinGetClass, class, A
WinGetPos, X, Y, W, H, A
WinMove, ahk_class %class%, , (X), (0-(SM_CYEDGE*2)), (W), (SM_CYMAXIMIZED)
return
; un-maximize
#+Down::
WinMove, ahk_class %class%, , (X), (Y), (W), (H)
return

После установки AutoHotKey поместите приведенный выше текст в.ahkфайл и дважды щелкните его, чтобы проверить. Вы можете остановить скрипт, щелкнув правой кнопкой мыши зеленый значок H на панели задач и выбрав «Выход». Чтобы он запускался при входе в систему, поместите его в группу «Автозагрузка» по адресуC:\Users\USER-NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

Одна небольшая проблема с приведенным выше сценарием заключается в том, что если вы развернете одно активное окно, затем активируете другое окно и нажмете горячую клавишу развертывания, это приведет к изменению размера второго окна до старой высоты первого окна. Если это проблема, скрипт можно улучшить.

Другие вопросы по тегам