deodar icon indicating copy to clipboard operation
deodar copied to clipboard

Отрубается перерисовка при изменении размеров

Open oxygenh opened this issue 10 years ago • 22 comments

Нашел еще одну неполадку. Т.к. вылезла после шрифтового ковыряния, то отписывался в ветке про как изменить шрифты. Возможно, ен увидели, поэтому выношу в новое исью.

Предистория: в deodar.js поменял размер шрифта в строчке dnaof(this, fontPath, 14, TController, 110, 33) После этого вот что словил: как только изменяю размер окна Деодара больше какого то определенного значения по высоте (>36 строк), то перестают отрисовываться панели. Например, перехожу по ТАБ с одной на другую, а курсор не перерисовывается, остается на строй, хотя в статусной строке подпись меняется, что находится в папке, которая сейчас на той панели, на которую перешли. Или, просто, когда перемещаю курсор стрелками он не перерисовывается (хотя, по факту, перемещается)

oxygenh avatar Apr 11 '14 18:04 oxygenh

Да, я прочитал и в прошлый раз, даже не помню, почему не ответил. Дело в том, что я ничего подобного не наблюдал ни разу. Так что вопросы: как часто такое наблюдается? можно ли это уверенно однозначно повторить? каковы шаги однозначно приводящие к этому состоянию? можно ли уменьшив окно снова восстановить работоспособность? если запустить деодар из под деодара или любой другой терминальной програмы то выпадают ли сообщения об ошибках в момент наблюдения данной ошибки?

exebook avatar Apr 12 '14 03:04 exebook

Наблюдается каждый раз. Повторяется уверенней некуда. Т.е. глюк этот у меня не эпизодический. Шаги очень простые: меняю мышкой высоту окна Деодара. Если высота до 36 строк (включительно) то всё путём. Если 37 и больше то панели "замерзают" Запускаю Деодар из терминала: никаких сообщений об ошибках на консоль не лезет.

oxygenh avatar Apr 12 '14 15:04 oxygenh

Еще добавлю: я поменял в deodar.js размер шрифта в строчке dnaof(this, fontPath, 18, TController, 110, 33) Сделал 14м шрифтом. Получается, что когда он 18 то 36 строк это максимум, чтобы окно умещалось на экране (для моего разрешения экрана). Если изменить размер не мышкой за рамку окна , а через системное меню и клавишами то можно и с 18м шрифтом растянуть его на >36 строк. И этот баг тогда всё равно проявляется. С 14м шрифтом просто проще на эту неисправность выйти .

oxygenh avatar Apr 12 '14 16:04 oxygenh

В принципе, если есть более важные дела, то и пусть так будет. Не фатально.

oxygenh avatar Apr 12 '14 16:04 oxygenh

А всё-таки, если запустить деодар из под деодара или любой другой терминальной програмы то выпадают ли сообщения об ошибках в момент наблюдения данной ошибки?

exebook avatar Apr 12 '14 17:04 exebook

Нет. И в таком случае (Деодар из под Деодара) сообщений об ошибках не пишется.

oxygenh avatar Apr 12 '14 19:04 oxygenh

А если после того как это случилось, снова уменьшить, начинает работать, или уже надо перезапускать? И кроме панелей хоть что то рисуется или вообще всё пропадает? если скажем Alt-F1 нажать, хелп отобразится?

exebook avatar Apr 13 '14 03:04 exebook

DejaVuSansMono?

exebook avatar Apr 13 '14 03:04 exebook

если при этой заморозке снова уменьшить до высоты <=36 строк, то снова всё работает. Нет, вообще ничего не перерисовывается. Ну как не перерисовывается: курсор в панелях точно не отрисовывается. Строка внизу панели с названием файла на котором курсор и размером перерисовывется, но криво (бывают наложения). Шрифт, да - DejaVuSansMono

oxygenh avatar Apr 13 '14 04:04 oxygenh

Т.е. вот как если при этом глюке нажать, например, F5, то далоговое окно копирования появляется, но по последующему ESC, его изображение остается висеть на экране,

oxygenh avatar Apr 13 '14 04:04 oxygenh

а скриншотик можно увидеть показательный?

exebook avatar Apr 14 '14 22:04 exebook

Так точно. Вечером сделаю несколько скриншотов.

oxygenh avatar Apr 15 '14 07:04 oxygenh

-3 Во, например, что происходит после того как войти в консоль (по контрол-О) и потом снова выйти к панелям.

Потерю курсора не смог заскриншотить, т.к. как только нажимаю принтскрин, возникает окошко сохранения скриншота и оно вызывает таки перерисовку панелей. Но далее перерисовка снова замораживается до следущего раза (например изменения размеров/перетаскивания окна деодара, либо его перекрытия каким нибудь другим окном.

oxygenh avatar Apr 15 '14 19:04 oxygenh

Какой няшный скриношот, звёздочки, и helloworld на питоне. Буду думать, пока не ясно в чём дело.

exebook avatar Apr 16 '14 17:04 exebook

А если не по высоте растягивать, а по ширине? Будет наблюдаться сия ошибка?

exebook avatar Apr 16 '14 17:04 exebook

Какой няшный скриношот ...

:) Спасибо за комплимент.

А если не по высоте растягивать, а по ширине? Будет наблюдаться сия ошибка?

Нет, если растягиваем по высоте ошибки нет. Только когда по высоте превышает 36 строк.

oxygenh avatar Apr 16 '14 20:04 oxygenh

А ширине?

exebook avatar Apr 17 '14 03:04 exebook

Ой, простите, описался . Предыдущее сообщение вот как правильно надо переписать:

А если не по высоте растягивать, а по ширине? Будет наблюдаться сия ошибка?

Нет, если растягиваем по ширине ошибки нет. Только когда по высоте превышает 36 строк.

oxygenh avatar Apr 17 '14 07:04 oxygenh

Пожалуйста, обновите три репозитория. deodar, intervision, glxwin. glxwin надо пересобрать коммандой node-gyp build Запустите deodar, так чтобы видеть сообщения об ошибках. Посмотрите: будет ли сообщение об ошибке во время наблюдения подобных неприятностей. Возможно будут сообщения. Ранее ошибки в onPaint() могли не отображаться в консоли, а теперь должны. Спасибо.

exebook avatar Apr 17 '14 17:04 exebook

-4 Всё сделал. Запустил из под терминала. Результат: глюк сохранился, но в консоли терминала никаких сообщений не вывелось. Может у меня просто какой нить глюк видеодрайвера, который словился именно в Деодаре, а сам Деодар тут и не при чем?

oxygenh avatar Apr 17 '14 17:04 oxygenh

Кстати, этот скриншот более показателен, видно как буквы друг на дружку накладываются, сразу отсекает 90% кода. Будем искать, как говорится.

exebook avatar Apr 17 '14 17:04 exebook

Ясно. Рад, что хорошо получилось снять. Спасибо.

oxygenh avatar Apr 17 '14 17:04 oxygenh