Page 3 of 3

Re: Обсуждение графической подсистемы

Posted: Tue Jan 26, 2021 4:21 am
by Kenshin
В файле gui/window.inc небольшой косячок:

Code: Select all

;------------------------------------------------------------------------------
syscall_display_settings: ;///// system function 48 ///////////////////////////
;------------------------------------------------------------------------------
        cmp     ebx, 13
        ja      @f
Вместо ja @f должно быть ja .ret, иначе при попытке вызвать несуществующую подфункцию, выполнится неправильный код (т.е. тот, который идёт после первого попавшегося @@).

Re: Обсуждение графической подсистемы

Posted: Tue Jan 26, 2021 1:33 pm
by rgimad
Kenshin wrote: Вместо ja @f должно быть ja .ret, иначе при попытке вызвать несуществующую подфункцию, выполнится неправильный код (т.е. тот, который идёт после первого попавшегося @@).
Действительно, спасибо за исправление, закоммитил.

Re: Обсуждение графической подсистемы

Posted: Tue Feb 02, 2021 4:16 am
by Kenshin
Кстати, функция 67 не разрешает изменять размеры/положение окна, если оно максимизировано. Поэтому какая-либо программа (например, board) не может перевести окно в полноэкранный режим, если то развёрнуто на всю рабочую область экрана. Может стоит убрать это ограничение? Всего то две строчки кода убрать нужно из ядра:

Code: Select all

        test    [edi + WDATA.fl_wstate], WSTATE_MAXIMIZED
        jnz     .exit

Re: Обсуждение графической подсистемы

Posted: Sun Oct 17, 2021 6:52 pm
by kw33
Если открыто какое-либо окно (№1) и поверх него находится другое (№2) так, чтоб верхняя часть окна №1 была видна, то смещая окно №2 вниз на 1 пиксель остаётся горизонтальная полоса от края этого окна.
Похоже что окну №1 не отсылается сообщение о перерисовке.
Аналогично при смещении вправо на 1 пиксель - остаётся вертикальная полоса.

Re: Обсуждение графической подсистемы

Posted: Mon Oct 18, 2021 7:31 pm
by dunkaist
kw33,
Should be fixed in #9221. Please, check.