Questions regarding uPortal portlet moveability and precedence

Michael S Elledge elledge at
Tue Nov 6 20:47:15 UTC 2007

Hi Anastasia--

See my thoughts below. In general, it would seem that the unmovable item 
would remain stationary, with other items wrapping around it.

I love puzzles...


Anastasia Cheetham wrote:
> The Fluid team is working towards implementing the Fluid Reorderer in  
> uPortal for rearranging portlets. Our discussions have raised some  
> questions about the meaning and effect of precedence and restrictions  
> on movement. We have our own guesses as to the answers to some of  
> these questions, but we'd like some expert verification :-)
> These questions arise out of a plan to encode the current portlet  
> layout, and the potential drop targets for moving portlets, in a pair  
> of JSON objects. This plan is roughly described on the Fluid project  
> wiki, at
> Our understanding is that there are (at least) three pieces of  
> information associated with a portlet that are relevant to moving  
> portlets:
> 	a) a boolean flag indicating whether or not a portlet is moveable at  
> all
> 	b) a precedence - an integer ranging from 1 to 100, 100 being  
> highest precedence
> 	c) a boolean flag indicating whether or not a portlet can be removed
> Given this...
> Question 1: What, exactly, does it mean that a portlet cannot be  
> moved (point (a) above)?
> Considering a mouse-based drag-and-drop scenario for simplicity of  
> discussion, I understand that it means I cannot click on a non- 
> moveable portlet and drag it to a new location.
> However: Suppose, for example, the non-moveable portlet is currently  
> the second portlet down its column (the first portlet being  
> moveable). Does it also mean I cannot place another portlet into the  
> same column anywhere above the non-moveable portlet, because if I did  
> that would effectively 'move' the non-moveable portlet to become the  
> third item in its column?
Items would move around the non-movable item (item B). If you placed 
item D above the first portlet (item A) in the column, item A would drop 
down below item B.
> Another question regarding non-moveable portlets:
> Suppose the first portlet at the top of a column is moveable, but the  
> second portlet below it is not. If I move the top portlet to another  
> column, does the second portlet, which is not moveable, move up to  
> become the first portlet, or does it remain where it was, leaving a  
> gap above it?
It would leave a gap above it. Again, the location is steadfast.
> Question 2: How, exactly, does precedence affect moveability?
> Consider the following example scenario:
>    - Portlet P1, the top portlet in column 1, has precedence 70
>    - Portlet P2, the top portlet in column 2, has precedence 50
> My understanding is that P2 cannot be placed above P1 in column 1,  
> since the precedence of P2 is lower than that of P1.
> Can P1 be placed below P2 in column 2? That would result in P2 being  
> 'above' the higher-precedence P1 - is that allowed, or prohibited?
Prohibited. Visually-speaking, it would leap back in place.
> Question 3: Will the user who is moving portlets about know anything  
> about the current moveability and precedence settings of the  
> portlets? If so, how -- for example are they coloured differently?
Yes they will. Steadfast items should be differentiated by non-color 
means, perhaps by a change in shape or outline. Their state should also 
be made clear to adaptive technology. Precedence settings should also be 
shown, perhaps by an asterisk for those with precedence. Their location 
will illustrate the nature (direction) of their precedence.
> Question 4: What is the default precedence of a portlet, if none is  
> specified?
Default precedence should be "0" for all portlets.
> Question 5: Can columns have a precedence?
No. Precedence should be limited to the object, and, for the sake of 
simplicity, be limited to a vertical hierarchy.
> Question 6: What is the implication of having a non-moveable portlet  
> inside a moveable column?
The non-movable portlet remains steadfast within its original column. 
Attempting to move a non-movable portlet results in an error message.
> Question 7: What is the implication of having a non-removeable  
> portlet inside a removeable column?
The non-removable portlet remains steadfast within its original column. 
Attempting to remove a non-removable portlet results in an error message.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: elledge.vcf
Type: text/x-vcard
Size: 313 bytes
Desc: not available
URL: <>

More information about the fluid-work mailing list