Обновление панелей в новых версиях

Здесь можно сообщить о найденных багах в Far.
Post Reply
AleXH
Posts: 1000
Joined: Sun 12 Apr, 2009 05:21
Been thanked: 1 time

Обновление панелей в новых версиях

Post by AleXH »

Не уверен, что баг, может какие настройки покосились, но с некоторого времени сталкиваюсь с тем, что FAR3 перестал автоматически обновлять содержимое файловых панелей. Например, возвращаясь в FAR из стороннего приложения, вижу в панелях старое, неактуальное, содержание папок - файлы уже были изменены/удалены и тд. извне. Или при возвращении из макроса после panel.SetUserScreen(), приходится использовать panel.UpdatePanel(nil,1) panel.UpdatePanel(nil,0) - это нормально?

Настройки панелей
User avatar
John Doe
Бюрократ
Posts: 13865
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Обновление панелей в новых версиях

Post by John Doe »

AleXH wrote: может какие настройки покосились
Легко ведь проверить на стандартных настройках.
AleXH wrote: с некоторого времени сталкиваюсь
Пробовали сравнить с более старыми ночными билдами?
AleXH wrote: при возвращении из макроса
Воспроизвести несложно: lua:msgbox()
Если удалить файл извне, то при возвращении из макроса он всё ещё будет на панели.

P.S.
Хотя зачем макросы. Просто гасим панели по CtrlO, удаляем файл извне, и снова отображаем панели.
User avatar
John Doe
Бюрократ
Posts: 13865
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Обновление панелей в новых версиях

Post by John Doe »

На что-то похожее ещё в 2007 жаловались: http://forum.farmanager.com/viewtopic.php?f=4&t=2471
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Обновление панелей в новых версиях

Post by Shmuel »

Не знаю, как у других, у меня примерно через секунду после удаления файла другой аппликацией (или через секунду после отображения панелей) элемент, соответствующий удалённому файлу, исчезает из панели.
User avatar
John Doe
Бюрократ
Posts: 13865
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Обновление панелей в новых версиях

Post by John Doe »

Shmuel wrote: (или через секунду после отображения панелей) элемент, соответствующий удалённому файлу, исчезает из панели.
Верно.
А вот в этом случае не исчезает: lua:panel.GetUserScreen();mf.waitkey();panel.SetUserScreen()
User avatar
zg
zero-gravity
Posts: 6037
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Обновление панелей в новых версиях

Post by zg »

John Doe wrote:А вот в этом случае не исчезает: lua:panel.GetUserScreen();mf.waitkey();panel.SetUserScreen()
а вы уверены, что он не исчезает до вызова setuserscreen, а этим вызовом вы отрисовываете старое содержимое?
User avatar
John Doe
Бюрократ
Posts: 13865
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Обновление панелей в новых версиях

Post by John Doe »

Наоборот, я уверен что он исчезает до вызова setuserscreen (что делается при этом вызове с панелями документация не оговаривает).
Причём топикстартер намекает, что такое поведение было не всегда.
(Лично я не в курсе)
User avatar
zg
zero-gravity
Posts: 6037
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Обновление панелей в новых версиях

Post by zg »

John Doe wrote:Наоборот, я уверен что он исчезает до вызова setuserscreen
тогда я не очень понимаю, в чём заключается баг в данном конкретном случае.
User avatar
John Doe
Бюрократ
Posts: 13865
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Обновление панелей в новых версиях

Post by John Doe »

http://api.farmanager.com/ru/service_functions/panelcontrol.html#FCTL_SETUSERSCREEN wrote:FCTL_SETUSERSCREEN Установить обработанную плагином копию Пользовательского экрана под панели Far Manager.
Разве отсюда следует, что содержимое панелей должно зафиксироваться?
Баг это или не баг, я не знаю. Однако в прочих случаях панели обновляются на каждый чих.
User avatar
zg
zero-gravity
Posts: 6037
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Обновление панелей в новых версиях

Post by zg »

John Doe wrote:Разве отсюда следует, что содержимое панелей должно зафиксироваться?
а они фиксируются? используя setuserscreen рисуете поверх всего старое содержимое экрана. т.е. то, что вы видите — это не панели, а нарисованная копия. можно например перед setuserscreen поменять цвет панелей, чтобы ещё нагляднее понять разницу.
User avatar
John Doe
Бюрократ
Posts: 13865
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Обновление панелей в новых версиях

Post by John Doe »

zg wrote: используя setuserscreen рисуете поверх всего старое содержимое экрана.
Мне кажется, или вы сейчас о RestoreScreen говорите?
User avatar
zg
zero-gravity
Posts: 6037
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Обновление панелей в новых версиях

Post by zg »

John Doe wrote:Мне кажется, или вы сейчас о RestoreScreen говорите?
действительно. тогда предположим 4199.
Post Reply

Return to “Глюки и баги”