Initialization JavaScript needs help when order counts
------------------------------------------------------

                 Key: TAP5-774
                 URL: https://issues.apache.org/jira/browse/TAP5-774
             Project: Tapestry 5
          Issue Type: Bug
          Components: tapestry-core
    Affects Versions: 5.1.0.5
            Reporter: Howard M. Lewis Ship


Tapestry currently has no API to control in what order initialization 
JavaScript occurs; in fact, much of the initialization (when using 
RenderSupport.addInit()) will be in an arbitrary order (determined by Map key 
traversal, which is unpredictable).

It would be nice if there was some control to ensure that certain 
initializations occurred before or after others.

A canonical example is a mixin that adds a confirmation dialog to a link; that 
event handler for the dialog must come FIRST before any other event handlers 
for the click event of the link. Since Prototype doesn't seem to provide a way 
to establish that ordering, Tapestry needs to.

RenderSupport.addInit() needs new overrides (or perhaps a new method, 
addScheduledInit()) where a prioritization is added; the priority is a number; 
all initializations for a particular priority level occur before 
initializations for a numerically higher level. The default priority should be 
some reasonable number (0, 100, 1000 ... but fixed) to make it easier to say 
"before" or "after" ... much as the CSS z-order property is used.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to