Fluid Infusion

Uploader doesn't work properly in Firefox 3.5

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Blocker Blocker
  • Resolution: Fixed
  • Affects Version/s: 0.8, 0.8.1, 1.0, 1.1, 1.1.1
  • Fix Version/s: 1.1.2
  • Component/s: Uploader
  • Labels:
    None

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.
  1. FLUID-3196-Uploader-FF35-Full.patch
    26/Sep/09 5:04 PM
    9 kB
    Colin Clark

Activity

Hide
Colin Clark added a comment -
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.
Show
Colin Clark added a comment - 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.
Hide
Colin Clark added a comment -
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.
Show
Colin Clark added a comment - 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.
Hide
Colin Clark added a comment -
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.
Show
Colin Clark added a comment - 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.
Hide
Jacob Farber added a comment -
Some CSS tweaks, to remove excess padding in IE
Show
Jacob Farber added a comment - Some CSS tweaks, to remove excess padding in IE
Hide
Jacob Farber added a comment -
Since this was a paired session, I helped review the code...
Show
Jacob Farber added a comment - Since this was a paired session, I helped review the code...
Hide
Colin Clark added a comment -
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
Show
Colin Clark added a comment - 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
Hide
Colin Clark added a comment -
This is the full (hopefully) final patch for fixing Uploader in Firefox 3.5
Show
Colin Clark added a comment - This is the full (hopefully) final patch for fixing Uploader in Firefox 3.5
Hide
Colin Clark added a comment -
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.
Show
Colin Clark added a comment - 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.
Hide
Colin Clark added a comment -
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.
Show
Colin Clark added a comment - 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.
Hide
Colin Clark added a comment -
Victory!
Show
Colin Clark added a comment - Victory!
Hide
Eli Cochran added a comment -
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.
Show
Eli Cochran added a comment - 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.
Hide
Christian Vuerings added a comment -
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.
Show
Christian Vuerings added a comment - 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.
Hide
Christian Vuerings added a comment -
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.
Show
Christian Vuerings added a comment - 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.
Hide
Michelle D'Souza added a comment -
Closing issues that were fixed in 1.1.2
Show
Michelle D'Souza added a comment - Closing issues that were fixed in 1.1.2

People

Vote (0)
Watch (1)

Dates

  • Created:
    Updated:
    Resolved: