Skip to content

Latest commit

 

History

History
48 lines (47 loc) · 2.67 KB

EWMH.md

File metadata and controls

48 lines (47 loc) · 2.67 KB

EWMH supported

  • _NET_SUPPORTED set to all ewmh atoms
  • _NET_CLIENT_LIST kept updated when new clients are added or removed
  • _NET_NUMBER_OF_DESKTOPS set on start to 0
  • _NET_DESKTOP_GEOMETRY, no large desktops, set to screen geometry
  • _NET_DESKTOP_VIEWPORT, no large desktops, set to (0, 0) for each desktop
  • _NET_CURRENT_DESKTOP, always 0, single desktop
  • _NET_DESKTOP_NAMES, set to wm name
  • _NET_ACTIVE_WINDOW, kept updated to focused window
  • _NET_WORKAREA, set to screen geometry minus static bar height
  • _NET_SUPPORTING_WM_CHECK set on start
  • _NET_VIRTUAL_ROOTS, disregarded, no virtual roots
  • _NET_DESKTOP_LAYOUT, not set by WM, irrelevant because wm handles placement and reconfigures
  • _NET_SHOWING_DESKTOP, showing desktop only is not implemented, this is theoretically supported but unused

EWMH window properties

  • _NET_WM_NAME WM will display this as a window name if set.
  • _NET_WM_VISIBLE_NAME, disregarded in favor of _NET_WM_NAME
  • _NET_WM_DESKTOP Never changed from 0
  • _NET_WM_WINDOW_TYPE respects _NET_WM_WINDOW_TYPE_NORMAL and _NET_WM_WINDOW_TYPE_DIALOG to determine transients/popups
  • _NET_WM_STATE tries go gain users attention on _NET_WM_STATE_DEMANDS_ATTENTION,
  • _NET_WM_STATE_FULLSCREEN draws/undraws fullscreen,
  • _NET_WM_STATE_MODAL treats as transient and floats on parent
  • _NET_WM_ALLOWED_ACTIONS, disregarded
  • _NET_WM_STRUT & _NET_WM_STRUT_PARTIAL disregarded, wm controls placement
  • _NET_WM_ICON_NAME, disregarded, wm doesn't display icons
  • _NET_WM_VISIBLE_ICON_NAME same as above
  • _NET_WM_ICON_GEOMETRY, same as above
  • _NET_WM_ICON same as above
  • _NET_WM_HANDLED_ICONS same as above
  • _NET_WM_PID disregarded, no kill implemented, maybe in the future
  • _NET_WM_USER_TIME disregarded, no inactive timers
  • _NET_FRAME_EXTENTS honored, will update on frame updates
  • _NET_WM_OPAQUE_REGION, disregarded,
  • _NET_WM_BYPASS_COMPOSITOR, disregarded

EWMH messages

  • _NET_WM_STATE, see above
  • _NET_ACTIVE_WINDOW, will try to draw the users attention to the desktop and window wanting attention
  • _NET_SHOWING_DESKTOP disregarded as of now
  • _NET_CLOSE_WINDOW will request window close on target
  • _NET_WM_MOVERESIZE disregarded, wm handles placement
  • _NET_MOVERESIZE_WINDOW same as above
  • _NET_REQUEST_FRAME_EXTENTS gives back extents
  • _NET_RESTACK_WINDOW, disregarded
  • _NET_CURRENT_DESKTOP, disregarded, only one desktop
  • _NET_NUMBER_OF_DESKTOPS, disregarded, statically set
  • _NET_DESKTOP_GEOMETRY, disregarded, geometry is fixed to screen geometry
  • _NET_DESKTOP_VIEWPORT, disregarded, viewport is fixed