Harold,
Have you taken out the XFIXES branch?
JS.
Hi,
Could you help me out please? I'm not too familiar with using the
XFree CVS. Do I need to check out all the XFree code to compile the
test code below? I tried:
cvs checkout -A xc
but that is taking a really long tim to download so not sure if I'm on
the right track here.
I also tried :
cvs checkout -rEXPR1 XFIXES_BRANCH
but that didn't work.
Thanks for any help.
JS.
I committed an XFIXES_BRANCH branch to CVS on SourceForge. Follow
the instructions from David's email in this thread if you don't know
how to checkout a branch.
I hope I got all the correct files checked in... I won't be back
online until Sunday evening.
Harold
Harold L Hunt II wrote:
I have been working with the code for Keith Packard's XFIXES
extension. The XFIXES extension includes a new hook in
Xserver/dix/dispatch.c that allows functions within the Xserver
(such as the XFIXES xtension) to register for a callback when a
selection's ownership changes, among other things.
The best documentation I can find for the selection portion of
XFIXES is Owen Taylor's writeup on a RedHat list that doesn't seem
to have a public archive anymore. Google has a cache; both URLs are
below...
https://listman.redhat.com/pipermail/xdg-list/2002-November/000937.html
http://216.239.53.100/search?q=cache:4osKtTvNNhcJ:https://listman.redhat.com/pipermail/xdg-list/2002-November/000937.html+XFixesSelectSelectionInput&hl=en&ie=UTF-8
In any case, I reincluded the XFIXES extension in my local tree from
SourceForge. I built the extension and modified the -clipboard
module to register for messages from the XFIXES extension related to
ownership changes of XA_PRIMARY.
The ownership notifications work just fine, and I am able to copy
text from X to Windows repeatedly without having to transfer
ownership of XA_PRIMARY to the clipboard manager (the -clipboard
module).
The remaining problem is that I modified the Win32 message loop in
the -clipboard module to add itself to the clipboard chain and to
call XSetSelectionOwner when something comes through the Windows
clipboard. This immediately resulted in an infinite loop, as my X
event handling for a selection ownership change calls
XConvertSelection, which ends up sending a SelectionNotify event
back to the -clipboard module. The -clipboard module copies the
text from the X clipboard to the Windows clipboard on a
SelectionNofity event. Thus, the text makes a round-trip from the
Windows clipboard, to the X clipboard, back to the Windows
clipboard, ad nauseam.
I added a little break-out in the selection ownership change
processing that prevents XSetSelectionOwner from being called if the
current owner of the selection is the clipboard manager window.
This stops the infinite looping, but it causes a problem very
similar to the original xwinclip problem: the X selection is
immediately unhighlighted.
So, my questions are:
1) Does anyone feel like helping on this? Got any ideas right off
the bat?
2) What would be the best way for me to share the code with other
developers? I don't want to commit the XFIXES stuff to our
SourceForge tree's HEAD, but could I use another branch? If so,
please give me some instructions for what to do... I haven't got
time to study CVS all day.
I am pleased with my current progress point. This version that is
dependent upon a stripped-down XFIXES extension will represent about
a 40% completion point in new clipboard integration support that
doesn't steal selection ownership. The remaining work to be done
could include removing the clipboard manager client altogether,
removing any dependency on XFIXES and using only the internal
hooking interface, etc.
Please postpone any debate on those remaining steps until the
current programming actually works. There will be no point to
debate the merits of steps 5, 6, and 7 unless we can actually get
step 4 to do what we intend.
Harold
_________________________________________________________________
Sign-up for a FREE BT Broadband connection today!
http://www.msn.co.uk/specials/btbroadband
_________________________________________________________________
Hotmail messages direct to your mobile phone http://www.msn.co.uk/msnmobile