Hi Jon, Did you get a chance to look at this? >From whatever posts available online, I could not get a clue what is going wrong. Please respond.
Thanks, Shefali On Mon, Dec 14, 2009 at 12:12 PM, Dees <[email protected]> wrote: > On Fri, Nov 13, 2009 at 8:26 PM, Jon TURNEY <[email protected]> > wrote: >> On 30/10/2009 09:06, Dees wrote: >>> >>> Your reply is much appreciated Jon. I will try to be more specific >>> about the problem in further mails. >>> >>> On Thu, Oct 29, 2009 at 8:11 PM, Jon TURNEY<[email protected]> >>> wrote: >>>> >>>> On 28/10/2009 05:57, Dees wrote: >>>>> >>>>> I have developed a Java application involving jTree with extensive >>>>> drag and drop support, which runs correctly in my Linux box. However, >>>>> when I switch to a windows box and access the same Linux box using >>>>> cygwin x-server, the drag and drop in jTree stops working. >>>>> Interestingly, rest of the application still works fine. After >>>>> analyzing a bit I found that x-server is able to recognize the drag >>>>> event but fails to recognize a drop event. >>>> >>>> Details? >>> >>> OS : Suse Linux Enterprise Server 10 (i586) >>> Version : 10 >>> Patch level : 3 >>> Other version information: >>> Java : JDK 5 >>> Cygwin setup-version: 2.573.2.3 >>> Also tried using Xming 6.9.0.31 ssh same Linux setup from Windows, but >>> that also doesn't solve the problem. >>> >>>> >>>>> Is there any setting, which should be done prior to running the Java >>>>> swing applications? >>>>> >>>>> Here is a sample code which behaves in exactly same way. >>>>> http://www.java2s.com/Code/Java/Swing-JFC/TreeDragandDrop.htm >>>> >>>> I have no idea how to use that java code to reproduce the problem you are >>>> seeing. >>> >>> Using the above java code in Linux: >>> 1. Download and Install Java Development Toolkit on your Linux box >>> (Java sun download site: >>> http://java.sun.com/javase/downloads/index.jsp), if you do not have it >>> already. >>> 2. Save the sample code in the above link with the file name >>> TreeTester.java, say in /home/user/ >>> 3. Navigate to TreeTester.java from shell, and compile the java code: >>> # cd /home/user/ >>> # /usr/java/jdk1.5.0_14/bin/javac TreeTester.java >>> Ignore any warnings of deprecated APIs. >>> 4. This will create a few .class files in /home/user/ directory. Final >>> step is to run the Java code, using: >>> # /usr/java/jdk1.5.0_14/bin/java -classpath . TreeTester >>> This will open up a GUI, with a jTree each on left and right pane. >>> You can drag and drop any of the leaf nodes from one jTree to the root >>> node of the other jTree and this should add a new node in the other >>> jTree. You will get messages on console for the operations being >>> performed. Now ssh the same box using cygwin/xming from any other >>> windows box, and run the application using command in step 4. You >>> should be able to drag (a small icon will come under cursor indicating >>> that something is being dragged) but when you will drop it, the new >>> node would not be added to the tree. Thats where lies my problem!!! >> >> Thanks for the test case and instructions, this makes it much easier for me >> to try it out. >> >> However, this testcase and your jar archive both work fine for me (using >> Xserver 1.7.1-3)! >> >>>>> May be my problem is related to some setting. Though, not sure. >>>>> Has anybody come across something similar? What should be done then? >>>>> Please let me know. >>>> >>>> No it's probably a bug in Cygwin/X. But you're going to need to be a lot >>>> more specific about the problem before any progress can be made on fixing >>>> it. >> >>> Also, putting some debug messages in the code lets me conclude that >>> it's the drop event which is not being recognized, as the main control >>> never reaches there. >> >> There is not really any drop event, as far as the X server is concerned, >> just mouse click and motion events, which are passed on to you application >> (which has a framework to interpret them as dragging and dropping an item). >> >> Now having a better idea of the problem, it seems less likely it is an >> Xserver bug at all. The only Xserver cause I can think of would be if it >> was somehow not sending the correct events to your applications window, >> which you could test using xev -id <your applications window id> (you can >> use xwininfo to find the window id) >> > I have tried this, but could not get any idea if any event is going wrong. > Here is the output of xev -id 0xe00021 (only for drag and drop event): > > LeaveNotify event, serial 13, synthetic NO, window 0xe00021, > root 0x5a, subw 0xe00025, time 3560250, (87,65), root:(91,95), > mode NotifyGrab, detail NotifyVirtual, same_screen YES, > focus YES, state 256 > > FocusOut event, serial 13, synthetic NO, window 0xe00021, > mode NotifyGrab, detail NotifyAncestor > > EnterNotify event, serial 13, synthetic NO, window 0xe00021, > root 0x5a, subw 0xe00025, time 3565375, (212,48), root:(216,78), > mode NotifyUngrab, detail NotifyVirtual, same_screen YES, > focus YES, state 0 > > KeymapNotify event, serial 13, synthetic NO, window 0x0, > keys: 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 > 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 > > FocusIn event, serial 13, synthetic NO, window 0xe00021, > mode NotifyUngrab, detail NotifyAncestor > > KeymapNotify event, serial 13, synthetic NO, window 0x0, > keys: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 > 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 > > LeaveNotify event, serial 13, synthetic NO, window 0xe00021, > root 0x5a, subw 0xe00025, time 3569046, (205,211), root:(209,241), > mode NotifyNormal, detail NotifyNonlinearVirtual, same_screen YES, > focus YES, state 0 > > Does the window 0x0 in two events in the log(above) signify anything > misbehaving? > Your reply is much awaited and appreciated. > > >> -- >> Jon TURNEY >> Volunteer Cygwin/X X Server maintainer >> > -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
