* Tools/xpbs.m: Add some more comments

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33709 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Eric Wasylishen 2011-08-07 21:49:43 +00:00
parent 7b16c6e465
commit ae35622d78
2 changed files with 14 additions and 0 deletions

View file

@ -1,3 +1,7 @@
2011-08-07 Eric Wasylishen <ewasylishen@gmail.com>
* Tools/xpbs.m: Add some more comments
2011-08-07 Eric Wasylishen <ewasylishen@gmail.com>
* configure.ac: Test for Xfixes

View file

@ -617,6 +617,14 @@ static int xFixesEventBase;
* so we must tell the X server that we have the current selection.
* To conform to ICCCM we need to specify an up-to-date timestamp.
*/
// FIXME: See note in -xSelectionClear:. This method is called by
// -[NSPasteboard declareTypes:owner:], but we might not want
// GNUstep to take ownership. (e.g. suppose selection ownership changes from
// gnome-terminal to OpenOffice.org. But, we will still need to update the
// types available on the pasteboard in case a GNUstep app wants to read from
// the pasteboard.)
_timeOfSetSelectionOwner = [self xTimeByAppending];
XSetSelectionOwner(xDisplay, _xPb, xAppWin, _timeOfSetSelectionOwner);
@ -862,6 +870,8 @@ xErrorHandler(Display *d, XErrorEvent *e)
*/
- (void) xSelectionClear
{
// FIXME: This will cause -pasteboardChangedOwner: to be called, which will
// take ownership of the X selection. That is probably wrong...
[_pb declareTypes: [self availableTypes] owner: self];
[self setOwnedByOpenStep: NO];
}