Page 1 of 1

порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 12:52
by zg
ACTL_GETWINDOWINFO возвращает список немодальных окон в порядке их создания и список модальных окон в соответствии с их z-index. до недавнего времени этот порядок был единственным, которым располагал сам фар. начиная с билда 4083 для любого окна известен как z-index, так и «время» создания.
в связи с этим текущий порядок выглядит нелогичным: часть окон отсортирована по времени создания, часть по z-index. на мой взгляд наиболее логично сортировать все окна по z-index. допускаю, что сортировка по времени создания имеет своих сторонников, поэтому хотелось бы услышать аргументы за такой вариант (кроме того, что так сложилось исторически).

так же интересуют аргументы по аналогичной сортировке в списке окон по f12.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 14:09
by HaRT
zg wrote:интересуют аргументы по аналогичной сортировке в списке окон по f12.
Тут окна сортируются по номерам, а номера присваиваются в порядке создания, и к этому все привыкли чисто визуально, поэтому не хотелось бы, чтобы это сломали. А иметь возможность сортировать по другим признакам (z-index — это то же, что MRU, или нет?) было бы и впрямь удобно, но только по специальным клавишам, например, [b]CtrlF8[/b] (по аналогии с Last Access Time в панелях) и т.п.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 14:55
by NightRoman
В API сортировка по z-индексу, наверное, практичнее. Но затруднительно предвидеть нежелательные последствия, которые могут быть. Плагины, конечно, могут полагаться на сложившийся порядок окон, что-нибудь может отвалиться.

Окна по F12. Лично я так и не привык к порядку окон в Фаре. Но иногда бывает полезно, и наверняка найдутся пользователи, которым так, как сейчас, лучше. Хорошо бы попробовать с какой-нибудь экпериментальной настройкой поведения.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 15:05
by DrKnS
NightRoman wrote:Но затруднительно предвидеть нежелательные последствия, которые могут быть. Плагины, конечно, могут полагаться на сложившийся порядок окон, что-нибудь может отвалиться.
Сложившийся порядок как раз недавно уже поломали, вроде как ничего фатального не произошло.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 15:17
by zg
HaRT wrote:Тут окна сортируются по номерам, а номера присваиваются в порядке создания, и к этому все привыкли чисто визуально
что это даёт с практической точки зрения?
NightRoman wrote:В API сортировка по z-индексу, наверное, практичнее. Но затруднительно предвидеть нежелательные последствия, которые могут быть. Плагины, конечно, могут полагаться на сложившийся порядок окон, что-нибудь может отвалиться.
что именно?
DrKnS wrote:Сложившийся порядок как раз недавно уже поломали, вроде как ничего фатального не произошло.
WIF_MODAL когда ввели, тоже никто не жаловался.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 15:32
by HaRT
zg wrote:
HaRT wrote:Тут окна сортируются по номерам, а номера присваиваются в порядке создания, и к этому все привыкли чисто визуально
что это даёт с практической точки зрения?
Пользователь, когда открывает список, уже примерно представляет, в какой его части искать нужное окно, что ускоряет переход.

А что скажете про это?:
HaRT wrote:z-index — это то же, что MRU, или нет?
В смысле, как они соотносятся в смысле упорядочения?

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 15:56
by NightRoman
zg wrote:
NightRoman wrote:В API сортировка по z-индексу, наверное, практичнее. Но затруднительно предвидеть нежелательные последствия, которые могут быть. Плагины, конечно, могут полагаться на сложившийся порядок окон, что-нибудь может отвалиться.
что именно?
Узнаем, когда попробуем.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Sat 06 Sep, 2014 16:00
by zg
HaRT wrote:А что скажете про это?:
HaRT wrote:z-index — это то же, что MRU, или нет?
В смысле, как они соотносятся в смысле упорядочения?
в общем случае это разные вещи, в контексте фара пока совпадают.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Mon 08 Sep, 2014 11:04
by John Doe
так же интересуют аргументы по аналогичной сортировке в списке окон по f12.
Поломаются макросы, подобные AltScreens.lua

Update
Хотя нет, номера для хоткеев ведь можно сохранить старые.

Re: порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Mon 08 Sep, 2014 12:33
by John Doe
так же интересуют аргументы по аналогичной сортировке в списке окон по f12.
Тут ещё надо уточнить в каком порядке будут перебираться окна по CtrlTab.

В моём понимании эти вещи связаны, и должны соответствовать.
Полагаю, что сортировку действительно несложно сделать настраиваемой, как например предложил HaRT.


Update: Хотя z-order это ведь не MRU, надо подумать...

порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Mon 08 Sep, 2014 13:04
by John Doe
По поводу АПИ, если плагин не закладывался на номер окна панелей, то разница в нумерации ему не важна.

Впоследствии, если потребуется, то можно ведь завести ACTL_GETWINDOWINFOEX, чтобы использовать и z-index, и «время» создания.

Оффтопиком: и если говорить о расширении АПИ, то можно было бы сделать Id окна уникальным (и однотипным), и добавить функцию, получающую информацию об окне по известному Id.

порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Mon 03 Nov, 2014 09:42
by John Doe
John Doe wrote:если плагин не закладывался на номер окна панелей, то разница в нумерации ему не важна.
Однако в некоторых случаях оказалась важна: после 4138 плагин больше не может выяснить номер окна, отображаемый в меню Экраны.
Использовалось в RecentScreens (и вроде бы в Conemu).

порядок окон, возвращаемых ACTL_GETWINDOWINFO

Posted: Tue 04 Nov, 2014 18:47
by Maximus5