Details

      Description

      Chrome and IE both work; the latest firefox does not! We can no longer drag and drop URLs from http://udig.refractions.net/confluence/display/EN/Walkthrough+1 page using firefox.

      Workaround: open up http://udig.refractions.net/confluence/display/EN/Walkthrough+1 in the Web View and click on the links.

      In Eclipse 3.5 they have an explicit DnD URL type that we should use; we can probably remove a bunch of earlier workarounds. Estimate 1 h to remove the hacking and then a lot of testing.

        Issue Links

          Activity

          Hide
          Jody Garnett added a comment -
          Tested with Firefox 3.5 and 3.6 on mac and was unable to reproduce the problem; is this windows specific?
          Show
          Jody Garnett added a comment - Tested with Firefox 3.5 and 3.6 on mac and was unable to reproduce the problem; is this windows specific?
          Hide
          Jody Garnett added a comment -
          Was able to reproduce on win32.

          Ended up being th:
          - "new" URLTransfer type was not being fed into our DnDTransfer extension and registered on the CatalogView etc.... so no URLs were being "dropped" (only text and html text)
          - The UDigByteAndLocalTransfer was being Transfer.registered with the same string and thus conflicted with the above URLTransfer

          Chat with Jesse....
          -----------------
          (8:15:26 PM) jeichar: ok
          (8:15:33 PM) jgarnett: do you have a udig checkout to refer to?
          (8:15:43 PM) jeichar: 1 sec let me open eclipse
          (8:16:14 PM) jgarnett: thanks; I am near the end of the firefox DnD not working on win32 bug :-P
          (8:17:17 PM) jeichar: ok
          (8:17:19 PM) jgarnett: I am going to type for a moment to set the context; catch up when you have eclipse open.
          (8:17:19 PM) jgarnett: When DnD from Walkthrough+1 page the http://wms.jpl.nasa.gov/wms.cgi?Service=WMS&Version=1.1.1&Request=GetCapabilities URL comes in as "http://wms.jpl.nasa.gov/wms.cgi?Service=W"
          (8:17:26 PM) jgarnett: ie it is truncated
          (8:17:39 PM) jgarnett: I hunted around for a bit
          (8:17:53 PM) jgarnett: before sorting out that the URLTransfer (which was added in Ecllipse 3.4)
          (8:18:00 PM) jgarnett: does not seem to be in our list
          (8:18:10 PM) jgarnett: the udig.ui plugin.xml
          (8:18:24 PM) jgarnett: has registered a single UDigTransferFactory
          (8:18:39 PM) jgarnett: offering up a list of getTransfers() to pay attention to
          (8:18:56 PM) jgarnett: suspect #1: URLTransfer.getInstance() is not in the list
          (8:19:06 PM) jgarnett: suspect#2: UDigByteAndLocalTransfer.getInstance() is in the list
          (8:19:13 PM) jgarnett: looking at the internals of UDigByteAndLocalTransfer
          (8:19:24 PM) jgarnett: it appears to be an early cut of the URLTransfer implementation
          (8:19:31 PM) jgarnett: indeed they both register under the same String.
          (8:19:41 PM) jgarnett: static final String CFSTR_INETURL = "UniformResourceLocator"; //$NON-NLS-1$
          (8:19:53 PM) jgarnett: private static final int CFSTR_INETURLID = Transfer.registerType(CFSTR_INETURL);
          (8:20:19 PM) jgarnett: and both extend ByteArrayTransfer
          (8:20:35 PM) jgarnett: So am I on a good track here?
          (8:20:43 PM) jeichar: More or less
          (8:21:05 PM) jgarnett: UDigByteAndLocalTransfer looks like it may be hacked over time; it has code in javaToNative to unwrap IStructuredSelection
          (8:21:22 PM) jeichar: I thought UDigByteAndLocalTransfer.getInstance was supposed to mainly be a way to drag and drop uDig objects
          (8:21:30 PM) jeichar: layers, IResources, etc...
          (8:21:32 PM) jgarnett: I think it is
          (8:21:39 PM) jgarnett: (see comment about IStructuredSelection
          (8:21:45 PM) jeichar: exactly
          (8:21:50 PM) jeichar: it is not supposed to do the URL stuff
          (8:21:52 PM) jgarnett: but then why is it registering itself with the same string as the URLTransfer?
          (8:22:09 PM) jeichar: I think the URL transfer was package protected at the time of writing so I had no access to it
          (8:22:12 PM) jgarnett: Want me to leave it in; and give it a new String
          (8:22:31 PM) jeichar: and depended on Text Tranfer and RichTextTransfer to get the URLS
          (8:22:41 PM) jeichar: yes try giving it a new string
          (8:23:31 PM) jgarnett: I will give it a go and report back
          (8:25:12 PM) jgarnett: that did the trick!
          (8:25:18 PM) jeichar: great
          (8:25:20 PM) jgarnett: going to test with a bunch of browsers now
          (8:25:32 PM) jeichar: check that you can still DND layers in Layers view
          (8:25:36 PM) jgarnett: thanks for the sanity check; DnD code is so fragile to test
          (8:25:38 PM) jgarnett: will do
          (8:25:44 PM) jgarnett: used the string InternalObject
          (8:29:05 PM) jgarnett: I can still move layers around
          (8:29:15 PM) jgarnett: going to mark the issue fixed and make an SDK
          (8:35:17 PM) jgarnett: ie worked; chrome worked
          Show
          Jody Garnett added a comment - Was able to reproduce on win32. Ended up being th: - "new" URLTransfer type was not being fed into our DnDTransfer extension and registered on the CatalogView etc.... so no URLs were being "dropped" (only text and html text) - The UDigByteAndLocalTransfer was being Transfer.registered with the same string and thus conflicted with the above URLTransfer Chat with Jesse.... ----------------- (8:15:26 PM) jeichar: ok (8:15:33 PM) jgarnett: do you have a udig checkout to refer to? (8:15:43 PM) jeichar: 1 sec let me open eclipse (8:16:14 PM) jgarnett: thanks; I am near the end of the firefox DnD not working on win32 bug :-P (8:17:17 PM) jeichar: ok (8:17:19 PM) jgarnett: I am going to type for a moment to set the context; catch up when you have eclipse open. (8:17:19 PM) jgarnett: When DnD from Walkthrough+1 page the http://wms.jpl.nasa.gov/wms.cgi?Service=WMS&Version=1.1.1&Request=GetCapabilities URL comes in as " http://wms.jpl.nasa.gov/wms.cgi?Service=W " (8:17:26 PM) jgarnett: ie it is truncated (8:17:39 PM) jgarnett: I hunted around for a bit (8:17:53 PM) jgarnett: before sorting out that the URLTransfer (which was added in Ecllipse 3.4) (8:18:00 PM) jgarnett: does not seem to be in our list (8:18:10 PM) jgarnett: the udig.ui plugin.xml (8:18:24 PM) jgarnett: has registered a single UDigTransferFactory (8:18:39 PM) jgarnett: offering up a list of getTransfers() to pay attention to (8:18:56 PM) jgarnett: suspect #1: URLTransfer.getInstance() is not in the list (8:19:06 PM) jgarnett: suspect#2: UDigByteAndLocalTransfer.getInstance() is in the list (8:19:13 PM) jgarnett: looking at the internals of UDigByteAndLocalTransfer (8:19:24 PM) jgarnett: it appears to be an early cut of the URLTransfer implementation (8:19:31 PM) jgarnett: indeed they both register under the same String. (8:19:41 PM) jgarnett: static final String CFSTR_INETURL = "UniformResourceLocator"; //$NON-NLS-1$ (8:19:53 PM) jgarnett: private static final int CFSTR_INETURLID = Transfer.registerType(CFSTR_INETURL); (8:20:19 PM) jgarnett: and both extend ByteArrayTransfer (8:20:35 PM) jgarnett: So am I on a good track here? (8:20:43 PM) jeichar: More or less (8:21:05 PM) jgarnett: UDigByteAndLocalTransfer looks like it may be hacked over time; it has code in javaToNative to unwrap IStructuredSelection (8:21:22 PM) jeichar: I thought UDigByteAndLocalTransfer.getInstance was supposed to mainly be a way to drag and drop uDig objects (8:21:30 PM) jeichar: layers, IResources, etc... (8:21:32 PM) jgarnett: I think it is (8:21:39 PM) jgarnett: (see comment about IStructuredSelection (8:21:45 PM) jeichar: exactly (8:21:50 PM) jeichar: it is not supposed to do the URL stuff (8:21:52 PM) jgarnett: but then why is it registering itself with the same string as the URLTransfer? (8:22:09 PM) jeichar: I think the URL transfer was package protected at the time of writing so I had no access to it (8:22:12 PM) jgarnett: Want me to leave it in; and give it a new String (8:22:31 PM) jeichar: and depended on Text Tranfer and RichTextTransfer to get the URLS (8:22:41 PM) jeichar: yes try giving it a new string (8:23:31 PM) jgarnett: I will give it a go and report back (8:25:12 PM) jgarnett: that did the trick! (8:25:18 PM) jeichar: great (8:25:20 PM) jgarnett: going to test with a bunch of browsers now (8:25:32 PM) jeichar: check that you can still DND layers in Layers view (8:25:36 PM) jgarnett: thanks for the sanity check; DnD code is so fragile to test (8:25:38 PM) jgarnett: will do (8:25:44 PM) jgarnett: used the string InternalObject (8:29:05 PM) jgarnett: I can still move layers around (8:29:15 PM) jgarnett: going to mark the issue fixed and make an SDK (8:35:17 PM) jgarnett: ie worked; chrome worked

            People

            • Assignee:
              Jody Garnett
              Reporter:
              Jody Garnett
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: