Update TODO

dev
Kristian Høgsberg 14 years ago
parent f8ffded1e5
commit 2feb988c7f
  1. 31
      TODO

31
TODO

@ -7,17 +7,8 @@ Core wayland protocol
- generate pointer_focus (and drag focus) on raise/lower, move - generate pointer_focus (and drag focus) on raise/lower, move
windows, all kinds of changes in surface stacking. windows, all kinds of changes in surface stacking.
- make a client side circular buffer of pending ping requests with
callbacks and data. if buffer fills up, just iterate until an
entry becomes available. wl_display_ping(dpy, func, data), basically.
func is called when the reply comes in for the ping request.
- glyph cache - glyph cache
- dnd, figure out large object transfer: through wayland protocol or
pass an fd through the compositor to the other client and let them
sort it out?
- DnD issues: - DnD issues:
How to handle drop decline (accept with type=NULL) How to handle drop decline (accept with type=NULL)
@ -41,7 +32,7 @@ Core wayland protocol
- A touch input device doesn't have a pointer; indicate that - A touch input device doesn't have a pointer; indicate that
somehow. somehow.
- Cursor themes - Cursor themes, tie in with glyph/image cache.
- copy-n-paste, store data in server (only one mime-type available) - copy-n-paste, store data in server (only one mime-type available)
or do X style (content mime-type negotiation, but data goes away or do X style (content mime-type negotiation, but data goes away
@ -89,22 +80,6 @@ Core wayland protocol
- synaptics, 3-button emulation, scim - synaptics, 3-button emulation, scim
- Figure out if we need the batch/commit scheme and what to do
instead. Since dropping the "copy" request, we have a race between
copy from back to front and reporting damage. "copy" did this
atomically, but copy is a rendering operation (wayland doesn't do
rendering) and requires synchronization between server and client
before client can reuse backbuffer.
The race condition happens when a client copies new content into
its window and then, before the client reports the damage, the
compositor then does a partial repaint (triggered by another
client) that only pulls in part of the repainted area. It's only a
one-frame glitch, as the client will submit the damage and the
compositor will repaint the damaged area next frame. And ideally
clients should do all rendering as early in the frame as possible
to avoid this race.
- auth; We need to generate a random socket name and advertise that - auth; We need to generate a random socket name and advertise that
on dbus along with a connection cookie. Something like a method on dbus along with a connection cookie. Something like a method
that returns the socket name and a connection cookie. The that returns the socket name and a connection cookie. The
@ -137,12 +112,8 @@ Clients and ports
- port gtk+ - port gtk+
- eek, so much X legacy stuff there...
- draw window decorations in gtkwindow.c - draw window decorations in gtkwindow.c
- start from alexl's client-side-windows branch
- Details about pointer grabs. wayland doesn't have active grabs, - Details about pointer grabs. wayland doesn't have active grabs,
menus will behave subtly different. Under X, clicking a menu menus will behave subtly different. Under X, clicking a menu
open grabs the pointer and clicking outside the window pops down open grabs the pointer and clicking outside the window pops down

Loading…
Cancel
Save