|Remaining Estimate:||4 days|
|Time Spent:||Not Specified|
|Original Estimate:||4 days|
With the introduction of ClientWindow in JSF 2.2, it's possible to protect against multiple tabs being open on the same view. However, components that render links allow the user to do "open in new tab" or "open in new window". This can cause a situation where there are multiple tabs that still have the same ClientWindow, which is incorrect.
This feature proposal asks for the creation of a ClientBehavior tag that, when nested inside of a component that renders as a link, will make it so a new client window is created when the link is clicked.
|Comment by Ed Burns [ 07/Oct/13 ]|
Here's a sketch for how this could work.
Here's how you'd use it.
<h:link outcome="callB" value="Call B via GET">
|Comment by Thomas Asel [ 08/Oct/13 ]|
I am afraid that this feature would force unintuitive behavior and also advocates a rather patronizing development style.
How about creating a client behavior that creates a window id on demand?
|Comment by Ed Burns [ 08/Oct/13 ]|
Thanks for the feedback, Thomas. We can certainly change the name to be less patronizing.
Please note that the ClientWindow will be created on demand when the request comes in without having one already. This is why it is sufficient for the context menu handler to simply strip it off.
The client behavior for this tag does two things.
1. If the link is clicked without the context menu, no action is taken. The already-existing ClientWindow is allowed to remain on the link, causing the correct ClientWindow to be carried forward.
2. If the link is clicked with the context menu (new tab or new window), the ClientWindow is removed before the browser issues the GET. This will cause a new ClientWindow to be created for the new tab (or window), this is the correct action in this case.
|Comment by tandraschko [ 20/Dec/13 ]|
Maybe we should never render the windowId to a link und just add via onclick.
|Comment by Ed Burns [ 01/Aug/14 ]|
Set priority to baseline ahead of JSF 2.3 triage. Priorities will be assigned accurately after this exercise.
|Comment by Manfred Riem [ 01/Aug/14 ]|
Setting priority to Major