LINUX.ORG.RU

История изменений

Исправление gagarin0, (текущая версия) :

wm

К Window Management я точно приду, но позже

В целом сейчас вырисовывается такой MVP:

  • создать canvas

  • нарисовать пустой «прямоугольник»

  • определить win_id, используя xlib координаты нужного окна (xterm)

  • вызвать Xorg API, и создать регион, указав что все события в этом регионе будут перенаправляться в win_id

    XserverRegion region = XFixesCreateRegion (g_display, NULL, 0);
    XFixesSetWindowShapeRegion (g_display, w, ShapeInput, 0, 0, region);
  • в event_loop:
  1. через xlib получать «битмап стрим» у Xorg нужного окна (win_id)

  2. рендерить этот битмапы в «прямоугольник»

за основу возьму imgui

а точнее вот этот «модуль» в котором реализованы mindmap карты

https://github.com/thedmd/imgui-node-editor

либо

https://github.com/azula1A89/mindmap

Исправление gagarin0, :

wm

К Window Management я точно приду, но позже

В целом сейчас вырисовывается такой MVP:

определить win_id, используя xlib координаты нужного окна. main.cpp

  • создать canvas

  • нарисовать пустой «прямоугольник»

  • вызвать Xorg API, и создать регион, указва что все события в этом регионе будут перенаправляться в win_id

    XserverRegion region = XFixesCreateRegion (g_display, NULL, 0);
    XFixesSetWindowShapeRegion (g_display, w, ShapeInput, 0, 0, region);
  • в event_loop:
  1. через xlib получать «битмап стрим» у Xorg нужного окна (win_id)

  2. рендерить этот битмапы в «прямоугольник»

за основу возьму imgui

а точнее вот этот «модуль» в котором реализованы mindmap карты

https://github.com/thedmd/imgui-node-editor

либо

https://github.com/azula1A89/mindmap

Исправление gagarin0, :

wm

К Window Management я точно приду, но позже

В целом сейчас вырисовывается такой MVP:

определить win_id, используя xlib координаты нужного окна. main.cpp

  • создать canvas

  • нарисовать пустой «прямоугольник»

  • вызвать Xorg API, и создать регион, указва что все события в этом регионе будут перенаправляться в win_id

    XserverRegion region = XFixesCreateRegion (g_display, NULL, 0);
    XFixesSetWindowShapeRegion (g_display, w, ShapeInput, 0, 0, region);
  • в event_loop:
  1. через xlib получать «битмап стрим» у Xorg

  2. рендерить этот битмапы в «прямоугольник»

за основу возьму imgui

а точнее вот этот «модуль» в котором реализованы mindmap карты

https://github.com/thedmd/imgui-node-editor

либо

https://github.com/azula1A89/mindmap

Исходная версия gagarin0, :

wm

К Window Management я точно приду, но позже

В целом сейчас вырисовывается такой MVP:

определить win_id, используя xlib координаты нужного окна. main.cpp

  • создать canvas

  • нарисовать пустой «прямоугольник»

  • вызвать Xorg API, и создать регион, указва что все события в этом регионе будут перенаправляться в win_id

    XserverRegion region = XFixesCreateRegion (g_display, NULL, 0);
    XFixesSetWindowShapeRegion (g_display, w, ShapeInput, 0, 0, region);
  • в event_loop

  • через xlib получать «битмап стрим» у Xorg

  • рендерить этот битмапы в «прямоугольник»

за основу возьму imgui

а точнее вот этот «модуль» в котором реализованы mindmap карты

https://github.com/thedmd/imgui-node-editor

либо

https://github.com/azula1A89/mindmap