История изменений
Исправление
ckotinko,
(текущая версия)
:
я даже честно посмотрел в протокол вяленного. ну вот правда, там атас, я был лучшего мнения. неудивительно что багтрекеры qt и gtk полны сообщениями про misplaced menu.
если мне нужен popup, то наверно я даже соглашусь танцевать от моего окна, но! давайте я будут танцевать от точки в этом окне, и сообщу мои пожелания о том, в какую сторону может/хочет расти popup. а мне в ответ дадут приемлемую геометрию окна. окей, это чудесно бы было. А что имеем? А вот что:
wl_shell_surface::set_popup - make the surface a popup surface
seat
wl_seat - seat whose pointer is used
serial
uint - serial number of the implicit grab on the pointer
parent
wl_surface - parent surface
x
int - surface-local x coordinate
y
int - surface-local y coordinate
flags
wl_shell_surface::transient (uint) - transient surface behavior
А потом WM как вы наверно догадываетесь, х и y обрезаются и начинается страдание, потому что окноменеджер не знает и не хочет знать ничего кроме самых простых меню а разрабы протокола вообще не пишут походу гуеприложения и не понимают с чем приходится иметь дело.
предлагали расширение:
https://lists.freedesktop.org/archives/wayland-devel/2013-February/007340.html
но походу все стухло. порою кажется что проще действительно самому взять и сделать с нуля. я был лучшего мнения о вяленом
Исходная версия
ckotinko,
:
я даже честно посмотрел в протокол вяленного. ну вот правда, там атас, я был лучшего мнения. неудивительно что багтрекеры qt и gtk полны сообщениями про misplaced menu.
если мне нужен popup, то наверно я даже соглашусь танцевать от моего окна, но! давайте я будут танцевать от точки в этом окне, и сообщу мои пожелания о том, в какую сторону может/хочет расти popup. а мне в ответ дадут приемлемую геометрию окна. окей, это чудесно бы было. А что имеем? А вот что:
wl_shell_surface::set_popup - make the surface a popup surface
seat
wl_seat - seat whose pointer is used
serial
uint - serial number of the implicit grab on the pointer
parent
wl_surface - parent surface
x
int - surface-local x coordinate
y
int - surface-local y coordinate
flags
wl_shell_surface::transient (uint) - transient surface behavior
А потом WM как вы наверно догадываетесь, х и y обрезаются и начинается страдание, потому что окноменеджер не знает и не хочет знать ничего кроме самых простых меню а разрабы протокола вообще не пишут походу гуеприложения и не понимают с чем приходится иметь дело.
предлагали расширение:
https://lists.freedesktop.org/archives/wayland-devel/2013-February/007340.html
но походу все стухло. порою кажется что проще действительно самому взять и сделать с нуля. я был