FLUID-3196: Uploader doesn't work properly in Firefox 3.5

Metadata

Source
FLUID-3196
Type
Bug
Priority
Blocker
Status
Closed
Resolution
Fixed
Assignee
Colin Clark
Reporter
Colin Clark
Created
2009-09-22T09:53:23.000-0400
Updated
2011-02-28T16:47:16.289-0500
Versions
  1. 0.8
  2. 0.8.1
  3. 1.0
  4. 1.1
  5. 1.1.1
Fixed Versions
  1. 1.1.2
Component
  1. Uploader

Description

Uploader's underlying upload manager, SWFUpload has regressed in Firefox 3.5. As a result, it is throwing exceptions on all calls through the Flash bridge after files have been added to the queue.

I've tracked this down to SWFUpload's famous sensitivity about DOM manipulation. It appears that if the Flash browse button is located anywhere near elements in the DOM that are manipulated, or is manipulated itself, the Flash bridge breaks.

The solution to this is to move the Flash browse button outside of the Uploader container into a location where it is isolated.

Comments

  • Colin Clark commented 2009-09-23T20:25:44.000-0400

    Here's a nearly functional patch, but this needs a bit more work before it's ready for the bug parade.

    1. There's some pretty silly repetitive DOM fascism about how the Flash movie container is located--probably not multi instance safe as a result.
    2. When files are removed from the queue in FF 2, the transparent Flash button doesn't repoosition itself correctly.

  • Colin Clark commented 2009-09-24T09:18:36.000-0400

    Here's a fully cross-browser, DOM agnostic version of the patch. This is attached here for discussion, as it imposes absolute positioning for all browsers, which may be a bit of an issue for some.

  • Colin Clark commented 2009-09-25T12:08:27.000-0400

    Here's a new patch that is significantly less brittle. Still need to get it working in IE, which will probably involve some cruft cleanup in Uploader's CSS files.

  • Jacob Farber commented 2009-09-25T12:27:53.000-0400

    Some CSS tweaks, to remove excess padding in IE

  • Jacob Farber commented 2009-09-25T12:43:59.000-0400

    Since this was a paired session, I helped review the code...

  • Colin Clark commented 2009-09-25T13:08:53.000-0400

    Jacob and I tested this on the client-side with the following set of Browser/Flash combinations:

    Firefox 3.5 | Mac, Windows | Flash 9, Flash 10
    IE 7 | Mac, Windows | Flash 9, Flash 10
    Firefox 2 | Mac, Windows | Flash 9, Flash 10
    Opera | Windows | Flash 10
    Safari | Mac, Windows | Flash 10

  • Colin Clark commented 2009-09-26T17:04:33.000-0400

    This is the full (hopefully) final patch for fixing Uploader in Firefox 3.5

  • Colin Clark commented 2009-09-26T17:12:53.000-0400

    This is a complete source build of Infusion 1.1.1 with the Uploader Firefox 3.5 pre-release fix applied. Please note that while it's been tested quite a bit, this is a pre-release and hasn't gone through the full Fluid QA process yet.

  • Colin Clark commented 2009-09-26T17:15:22.000-0400

    This is a complete minified production build of Infusion 1.1.1 with the Uploader Firefox 3.5 fix applied. Please note that while this has been tested quite a bit, it is a pre-release and hasn't gone through a full QA process yet.

  • Colin Clark commented 2009-09-26T17:31:59.000-0400

    Victory!

  • Eli Cochran commented 2009-10-02T13:30:06.000-0400

    I've reviewed Colin Clark's changes for FLUID-3114 and FLUID-3115 and tested the code both locally and off the server using FF3.5. Looks good to me.

  • d commented 2009-10-09T10:06:42.000-0400

    We at Sakai are using the fluid uploader inside of a jquery ui accordion.
    Everything worked fine in the old version (except in firefox 3.5) but since the fix we are not able to see the swf file (which contains the browse button).
    So we can not launch the browse window to select multiple files.

    When we put our html code outside of the jquery ui accordion, everything works fine.

  • d commented 2009-10-09T14:02:30.000-0400

    I have narrowed the problem down to the following:
    If the uploader is not visible on the load of the page, then the swf file isn't visible.

  • Michelle D'Souza commented 2011-02-28T16:47:16.287-0500

    Closing issues that were fixed in 1.1.2