Board.KolibriOS.org
http://board.kolibrios.org/

Неактивное окно обрабатывает события мыши
http://board.kolibrios.org/viewtopic.php?f=9&t=2423
Page 1 of 1

Author:  0CodErr [ Sun Sep 29, 2013 1:38 am ]
Post subject:  Неактивное окно обрабатывает события мыши

0CodErr wrote:
В некоторых приложениях, например, в fasm, kpack и CPU edit_box-ы и check_box-ы реагируют на мышь даже если окно не активно и находится под другими окнами
Имел в виду это:
Spoiler: Show
Attachment:
1.gif
1.gif [ 164.23 KiB | Viewed 3782 times ]

06/10/2013 yogev_ezra: отделил тему от box_lib.obj - библиотека gui компонентов по просьбе Mario

Author:  Mario_r4 [ Sun Sep 29, 2013 6:47 am ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

0CodErr
Если составишь список программ имеющих описанный баг, то будет намного проще исправить.

Author:  0CodErr [ Sun Sep 29, 2013 11:36 am ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

Mario_r4 wrote:
0CodErr
Если составишь список программ имеющих описанный баг, то будет намного проще исправить.
Пока нашёл эти:
    h2d2b (EditBox)
    run (EditBox, ещё окно может разворачиваться на весь экран)
    mgb (EditBox в окне ввода комментария)
    graph (EditBox)
    rtfread (Menu)
    cpu (CheckBox, EditBox)
    Fasm (CheckBox, EditBox)
    KPack (CheckBox, EditBox)
    tftpc (OptionBox, EditBox)
    downloader (EditBox)
    ircc (EditBox)
А эти не используют box_lib:
    Gomoku
    Animage
    Checkers

Author:  Mario_r4 [ Sun Sep 29, 2013 2:45 pm ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

0CodErr wrote:
Пока нашёл эти:

Вот эти я исправлять не буду:
Quote:
graph (EditBox)
Checkers

Потому что ЯВУ и я этим не занимаюсь.

Author:  Leency [ Sun Sep 29, 2013 3:15 pm ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

Возможно, для EditBox необоходимо универсальное решение в библиотеке, т.к. я не представляю программу, где может потребоваться выделение в EditBox'e неактивного окна.

Author:  Mario_r4 [ Sun Sep 29, 2013 3:42 pm ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

Leency wrote:
Возможно, для EditBox необоходимо универсальное решение в библиотеке, т.к. я не представляю программу, где может потребоваться выделение в EditBox'e неактивного окна.

Ты сейчас глупость сказал. Это не задача компонента выяснять - "Находится ли мое окно на вершине стека?", тем более Serge уже все сделал:
Spoiler: Show
Quote:
Изменения в функции 40:
Бит 31 регистра ebx управляет фильтрацией событий мыши.
Бит 31 = 0 - окно всегда получает события от мыши.
Бит 31 = 1 - окно получает события мыши только в активном состоянии.

Планируется:
Бит 30 = 0 - окно получает события от мыши если курсор находится за пределами окна
Бит 30 = 1 - окно не получает события от мыши если курсор находится за пределами окна

Однако в обычной своей привычке не стал править документацию ядра.

Author:  Mario_r4 [ Sun Sep 29, 2013 9:28 pm ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

0CodErr wrote:
Mario_r4 wrote:
0CodErr
Если составишь список программ имеющих описанный баг, то будет намного проще исправить.
Пока нашёл эти:
    h2d2b (EditBox)
    run (EditBox, ещё окно может разворачиваться на весь экран)
    mgb (EditBox в окне ввода комментария)
    graph (EditBox)
    rtfread (Menu)
    cpu (CheckBox, EditBox)
    Fasm (CheckBox, EditBox)
    KPack (CheckBox, EditBox)
    tftpc (OptionBox, EditBox)
    downloader (EditBox)
    ircc (EditBox)
А эти не используют box_lib:
    Gomoku
    Animage
    Checkers

Исправлено все, кроме graph и Checkers, в SVN r. 3941-3952.

Author:  Leency [ Sat Oct 05, 2013 12:07 am ]
Post subject:  Re: box_lib.obj - библиотека gui компонентов

Проблема также наблюдается со скроллом SHELL (console.obj?)

Author:  Serge [ Sun Oct 06, 2013 3:08 pm ]
Post subject:  Re: Неактивное окно обрабатывает события мыши

Quote:
Однако в обычной своей привычке не стал править документацию ядра
Английская версия была исправлена сразу. А для русской у меня нет редакторов с поддержкой cp866.

Author:  Mario_r4 [ Sun Oct 06, 2013 5:35 pm ]
Post subject:  Re: Неактивное окно обрабатывает события мыши

Serge wrote:
Quote:
Однако в обычной своей привычке не стал править документацию ядра
Английская версия была исправлена сразу. А для русской у меня нет редакторов с поддержкой cp866.

Вообще с некоторых пор файл sysfuncr.txt содержится на SVN в кодировке UTF8, а при сборке дистрибутива он перекодируется скриптом в CP866.

Author:  Serge [ Sun Oct 06, 2013 5:52 pm ]
Post subject:  Re: Неактивное окно обрабатывает события мыши

Но это с некоторых пор, а изменения были 27-28 февраля прошлого года.

Page 1 of 1 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/