diff options
author | Jon TURNEY <jon.turney@dronecode.org.uk> | 2013-07-03 15:25:13 +0100 |
---|---|---|
committer | Jon TURNEY <jon.turney@dronecode.org.uk> | 2013-07-26 16:35:10 +0100 |
commit | 2708714173837517b97085fa4db7359d27f61c7b (patch) | |
tree | 840eedc924317be6919620adbd615f0331d71012 | |
parent | 092e0c4becde43ec2ad1597f2688b5a898f08db0 (diff) |
Update TODO and COMPLIANCE
-rw-r--r-- | COMPLIANCE | 4 | ||||
-rw-r--r-- | TODO | 43 |
2 files changed, 25 insertions, 22 deletions
@@ -18,12 +18,12 @@ Section 4: Client to Window Manager Communication WM_CLIENT_MACHINE: ? 4.1.3 Window Manager Properties: - WM_STATE: ? + WM_STATE: supported WM_ICON_SIZE: not set No constraints on icon size exist. icons are scaled appropriately. -4.1.4 Changing Window State: ? +4.1.4 Changing Window State: supported 4.1.5 Configuring the Window: ? 4.1.6 Changing Window Attributes: ? 4.1.7 Input Focus: ? @@ -14,15 +14,12 @@ new features * interleaving of native and X windows in Z-order should work correctly * update WM without restarting X applications or server (for faster development :-)) * separate window message pump thread, so we can update window during modal loops (e.g. resizing) -* EWMH compliance may be limited, but at least it's been audited +* ICCCM/EWMH compliance may be limited, but at least it's been audited * solves the problem that minimized windows are still sensitive in the non-client area of unminimized windows they overlap ('punch-through'), as minimized windows aren't still mapped on the root window features missing compared to XWin's integrated WM those that probably need libxcwm support: -* Convert icon found in icon property to native icon for window (done) -* SHAPE extension support (done) -* Change the native cursor to the X cursor image when it's over an X window (done) * WM_DISPLAYCHANGE should use RANDR to change the display size * multiple native screens should be known to XINERAMA * the ability to ring the bell @@ -33,28 +30,35 @@ those that just need writing: * 'keyhook' option, so we can catch all keypress and consider if we want to process them, rather than only getting the ones that the windows shell isn't using (e.g. Windows key, Menu key, Alt-Tab) * 3 button mouse emulation (if anyone actually needs this anymore...) -* Set the X keyboard configuration to match the native one +* Set the X keyboard configuration to match the native one (external layout mapping program?) * Synchronize the X server modifier key state with the native one at startup, and whenever an X window gains focus (as modifiers might have been latched or unlatched without us noticing) * Faster way of getting the bits onto the screen than GDI BitBlt() (e.g. DirectDraw) * -hostintitle option to add WM_CLIENT_MACHINE to window title, if not localhost * Override window style settings using a config file (useful?) * set native application id from class hint for native window grouping +features that are done: +* Convert icon found in icon property to native icon for window (done) +* SHAPE extension support (done) +* Change the native cursor to the X cursor image when it's over an X window (done) + other stuff: -* libxcwm doesn't adopt any existing windows when it starts (done) -* libxcwm doesn't understand about InputOnly windows (probably should just ignore them) (done) -* libxcwm doesn't looks at _MOTIF_WM_HINTS (maybe only hints we get from old motif applications?) (dealt with in XtoW for the moment, should be pushed into libxcwm) +TODO +* libxcwm doesn't look at _MOTIF_WM_HINTS (maybe only hints we get from old motif applications?) (dealt with in XtoW for the moment, should be pushed into libxcwm) +* XtoW needs to use libxcwm style conversion * libxcwm assumes window properties are constant while mapped; this isn't true; for every property it looks at, it should also listen for changes to that property (prototype done) -* support the _NET_WM_WINDOW_OPACITY property using layered windows on XP, even if we can't use alpha (done) +* libxcwm doesn't really take advantage of xcb async in all places +* Add WM_ICON_SIZE property to root window (belongs in libxcwm) -* Libraryize the code which is currently copied out of the Xserver +DONE +* libxcwm doesn't adopt any existing windows when it starts (done) +* libxcwm doesn't understand about InputOnly windows (probably should just ignore them) (done) +* Libraryize the code which is currently copied out of the Xserver (done) - Initially, make it a library in the xserver codebase, so we can share it? - XWin on MinGW is going to be around for a while, and I don't need the maintainance headache - -* Implement -version command line option - -* xcwm doesn't really take advantage of xcb async in all places +* Implement -version command line option (done) +* support the _NET_WM_WINDOW_OPACITY property using layered windows on XP, even if we can't use alpha (done) native compostion notes (08/11/11): @@ -62,8 +66,6 @@ native compostion notes (08/11/11): - UdpateLayeredWindow() - compose in a src bitmap with alpha channel; use for window position/size change as well for maximum rendering performance - SetLayeredWindowAttributes() - sets an alpha value for whole windows -* XtoW needs to use libxcwm style conversion - * Need to store bits so we can draw them for WM_PAINT without having to ask server.. (xcwm_image_copy_full() to get the full window image, but do we need to do this on init map, or will whole window get damage?) (Or would using UpdatedLayeredWindow() avoid that need...) @@ -72,11 +74,11 @@ libXwinWMUtil * should contain at least: - [x] Icon conversion - [x] Cursor conversion -- [ ] mouse event conversion -- [ ] keyboard event conversion -- [ ] keyboard layout mapping +- [x] mouse event conversion +- [x] keyboard event conversion +- [ ] keyboard layout mapping (separate executable?) - [ ] taskbar interface -- [ ] X region to HRGN conversion (appears to be not worthwhile) +- [.] X region to HRGN conversion (appears to be not worthwhile) WM_ICON_NAME should be used for minimized windows? @@ -84,3 +86,4 @@ XQueryBestCursor() - only the DDX gets to decide the the answer given to this - we'd like to tell things that GetSystemMetrics(SM_C(X|Y)CURSOR) is the best size to use - It's not clear that anything actually uses this, though... +- WM_ICON_SIZE is the way for a WM to do this |