FLUID-33: Fix the up/down calculations in the Reorderer to handle a range of spatial positioning options.

Metadata

Source
FLUID-33
Type
Bug
Priority
Major
Status
Closed
Resolution
Fixed
Assignee
Jacob Farber
Reporter
Joseph Scheuhammer
Created
2007-07-17T12:23:39.000-0400
Updated
2008-11-13T13:26:01.000-0500
Versions
  1. 0.5beta1
Fixed Versions
  1. 0.5
Component
  1. Reorderer

Description

At the moment, the algorithm for determine which element is above or below the current element relies on an exact match between their x coordinates. This would break if there is any kind of spatial offset between elements (eg. one is slightly offset to the left or right of the other). Also, we currently determine horizontal positioning based on document order, but it's quite conceivable that CSS may be used to position items next to each other that are not siblings within the DOM.

So, we need to fix the code to use ranges of x and y coordinates to determine the spatial position of all elements. This should be done in a way that is independent from re-ordering, such that anyone can use our cool new spatial calculator.

Comments

  • Antranig Basman commented 2008-08-14T21:13:50.000-0400

    The geometric infrastructure required by the new drop manager should allow us to deal with this task

  • Antranig Basman commented 2008-09-07T18:08:05.000-0400

    Drop Manager, Dom Permutation work merged back into trunk at revision 5476.

    The new "projectFrom" method of the GeometricManager implements this functionality, which is verified by a low-level test case in GeometricManagerTests - however, we should create a high-level markup-driven test to verify that this works reasonably in a real-lfe scenario.

  • Justin Obara commented 2008-11-13T13:26:01.000-0500

    Verified fix using:

    FF2, FF3 (Mac OS 10.5)
    FF2, FF3, IE6, IE7 (Win XP)
    FF3, IE7 (Win Vista)
    FF3, IE6 (Win 2000)