Re: [Usability]clipboard/selection behavior



Selections are a horribly misunderstood part of the X11 architecture.  The 
genesis of selections is due to Phil Karlton, one of the diaspora of Xerox 
PARC who worked on the X11 specification.

I tried to capture some of the ideas behind selections in a paper I wrote

	http://www.xfree86.org/~keithp/talks/selection.ps

There's also a sample application (Xt based) which demonstrates some 
selection interaction ideas, including the integrated use of PRIMARY and 
SECONDARY; that's bundled in a separate package.

	http://www.xfree86.org/~keithp/talks/selection.tar.gz

> 2) Some conventions of the PRIMARY selection are not clear.
>
>   Should text be available by the PRIMARY selection when:
>   a) it has been highlighted by keyboard?
>   b) nothing is highlighted?
>   c) the text could not have been highlighted?

The PRIMARY selection is supposed to be represented graphically on the 
screen; any selection without a graphical representation is not the 
PRIMARY selection.  When the graphical representation disappears, so 
should the selection.

If 'highlighting' isn't possible, some alternative graphical 
representation of the existance of the PRIMARY selection should be used.

>   b) as a consequence, highlighting text to allow speedy changes in text
>      fields will cause loss of any pre-existing highlight.

You might consider using the SECONDARY selection in this case; that way 
you could replace a selected region with other contents without going 
through the CLIPBOARD.  When the PRIMARY selection is moved, the former 
owner of PRIMARY might well assert SECONDARY and change the graphical 
representation of the selection.

> 5) Windows(tm) allows text to be highlighted in more than one window at the
>    same time, and so users migrating from that platform may be confused
>    by the uniqueness of highlighted text.

Feel free to disregard the ICCCM and the intent of PRIMARY, but if you do, 
please use some other selection name.

I agree that the mismatch between PRIMARY and other window systems may be 
of concern for user migration; i'm not sure how to resolve that conflict 
and still provide the rapid direct-manipulation interface provided by a 
global PRIMARY selection.

Allowing several indistinguishable selected objects on the screen will 
make PRIMARY useless; we'll have to resort to cut&paste which would be a 
shame.

Keith Packard        XFree86 Core Team        HP Cambridge Research Lab





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]