Shmuel wrote:Если вызывается DN_CONTROLINPUT, то, по идее, far.InputRecordToName() не должен возвращать nil.
почему?
Фар сообщает плагину, что поступил ключ, и в то же время не может преобразовать этот ключ в строку? На мой взгляд, это неправильно. Это же не искуственно заполненный мусором INPUT_RECORD, а реальный ключ, он должен иметь текстовое представление.
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:09
by zg
фар присылает плагинам много не мусорных INPUT_RECORD'ов, которые не может преобразовать в строку. с чего вдруг именно сейчас это стало какой-то проблемой?
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:12
by Shmuel
Не проблема, так не проблема.
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:15
by John Doe
zg wrote: с чего вдруг именно сейчас это стало какой-то проблемой?
Вот же:
zg wrote: исправлять эту магию можно по разному, давайте обсудим.
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:19
by zg
John Doe wrote:
zg wrote: с чего вдруг именно сейчас это стало какой-то проблемой?
Вот же:
zg wrote: исправлять эту магию можно по разному, давайте обсудим.
как связана магия для обработки нажатия cas и преобразование input_record в строку?
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:26
by John Doe
zg wrote: как связана магия для обработки нажатия cas
А, вот как...
Я почему-то подумал что под магией вы имеете в виду посылку любой ненастоящей записи.
Тогда отвечу иначе:
zg wrote: с чего вдруг именно сейчас это стало какой-то проблемой?
Потому что до сих пор можно было при анализе DN_CONTROLINPUT ограничиваться использованием InputRecordToFarName
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:43
by zg
John Doe wrote:Потому что до сих пор можно было при анализе DN_CONTROLINPUT ограничиваться использованием InputRecordToFarName
а ProcessEditorInputW никогда нельзя было ограничиваться, и что? вернее ограничиваться и там, и там можно, нужно просто корректно обрабатывать ошибки. то что сейчас есть проблемы с модификаторами, это следствие кривой реализации кривой фичи, призванной в своё время закостылить кривую реализацию другой фичи.
ps: т.е. в первом посте вы хотите, чтобы приходили события, которые не преобразуются в строку, а теперь это для вас проблема.
DN_CONTROLINPUT
Posted: Fri 20 Mar, 2015 15:50
by John Doe
zg wrote: а теперь это для вас проблема.
Не проблема, а закономерное пожелание, причём не моё.
P.S.
zg wrote: события, которые не преобразуются в строку
Кому надо (в том числе я) может и без InputRecordToFarName проанализировать. А кому не надо могут просто игнорировать такие события.
Shmuel высказал пожелание об усовершенствовании InputRecordToFarName, мне кажется резонное. Но зачем вы пытаетесь связать это с первым постом темы?
Глюки и баги, появившиеся в «ночных сборках»
Posted: Thu 23 Apr, 2015 09:12
by John Doe
Shmuel wrote:В 4319 (по сравнению с 4316) при нажатии одиночных модификаторов (например, Shift) в диалоге, FarInputRecordToName при обработке DN_CONTROLINPUT возвращает FALSE (то-есть, невозможность преобразования).