ICEfaces
  1. ICEfaces
  2. ICE-7651

Focus can be set on ice:inputFile when modal panelPopup is shown

    Details

      Description

      If an ice:inputFile component is set on the page and a modal panelPopup is displayed, a user can tab into the underlying inputFile components and interact with them even with the modal background displayed.
      1. ICE7651.zip
        19 kB
        Arran Mccullough
      2. ICE7651WAR.zip
        9.48 MB
        Arran Mccullough

        Activity

        Arran Mccullough created issue -
        Arran Mccullough made changes -
        Field Original Value New Value
        Salesforce Case [5007000000KDq2M]
        Hide
        Arran Mccullough added a comment -

        Attached test case to show issue.

        Steps to reproduce:

        • Click on "Open" button, modal popup is shown.
        • Start to tab through the components (may need to focus on input field in popup), focus can be set on the inputFile component behind the modal background.
        Show
        Arran Mccullough added a comment - Attached test case to show issue. Steps to reproduce: Click on "Open" button, modal popup is shown. Start to tab through the components (may need to focus on input field in popup), focus can be set on the inputFile component behind the modal background.
        Arran Mccullough made changes -
        Attachment Case10810Example.zip [ 13972 ]
        Attachment Case10810Example.war [ 13973 ]
        Ken Fyten made changes -
        Fix Version/s EE-1.8.2.GA_P04 [ 10280 ]
        Assignee Priority P2
        Assignee Mircea Toma [ mircea.toma ]
        Ken Fyten made changes -
        Assignee Priority P2 P1
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #27558 Wed Feb 01 09:12:31 MST 2012 mircea.toma ICE-7651 Stop events from reaching input elements contained by the iframes found underneath the modal popup.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/bridge/lib/extras/style.js
        Hide
        Mircea Toma added a comment - - edited

        The input elements that are not disabled are found in an iframe.

        The applied fix stops events from reaching input elements contained by the iframes found underneath the modal popup.

        Show
        Mircea Toma added a comment - - edited The input elements that are not disabled are found in an iframe. The applied fix stops events from reaching input elements contained by the iframes found underneath the modal popup.
        Mircea Toma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Ken Fyten made changes -
        Fix Version/s EE-3.0.0.GA [ 10262 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #27665 Mon Feb 06 09:00:43 MST 2012 mircea.toma ICE-7651 Stop events from reaching input elements contained by the iframes found underneath the modal popup.
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/compat/core/src/main/javascript/extras/extras.js
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #27666 Mon Feb 06 09:14:42 MST 2012 mircea.toma ICE-7651 Stop events from reaching input elements contained by the iframes found underneath the modal popup (...without code reformatting).
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/compat/core/src/main/javascript/extras/extras.js
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #27667 Mon Feb 06 09:15:30 MST 2012 mircea.toma ICE-7651 Stop events from reaching input elements contained by the iframes found underneath the modal popup.
        Files Changed
        Commit graph MODIFY /icefaces3/branches/icefaces-3.0.x-maintenance/icefaces/compat/core/src/main/javascript/extras/extras.js
        Hide
        Mircea Toma added a comment -

        Applied fix to ICEfaces3 trunk and 3.0.x-maintenance branch.

        Show
        Mircea Toma added a comment - Applied fix to ICEfaces3 trunk and 3.0.x-maintenance branch.
        Mircea Toma made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s EE-3.0.0.BETA [ 10324 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #28079 Tue Feb 28 14:52:47 MST 2012 mircea.toma ICE-7651 Backport fixes.
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/patches/sf-10973/icefaces/bridge/lib/extras/style.js
        Hide
        Ken Fyten added a comment - - edited

        Re-open.

        This change has caused a regression in a customer app. In this app. they have pure-JSP application pages hosted inside an iframe in the ICEfaces app. From a submit button within the JSP application, they are invoking the bridge's modality layer (via Ice.modal.start('basePopup', 'xxx/xmlhttp/blank') as part of a scheme to put up a busy indicator while the JSP submit is occurring.

        However, with this change in place, the JSP submit never actually occurs as the modal blocker disables the button that was triggering it before it gets generated.

        Not at all sure what a good fix for this would be. Maybe the easiest thing is to add a configuration param to disable the blocking of iframe elements so they can turn this off since their use-case is atypical to say the least.

        Show
        Ken Fyten added a comment - - edited Re-open. This change has caused a regression in a customer app. In this app. they have pure-JSP application pages hosted inside an iframe in the ICEfaces app. From a submit button within the JSP application, they are invoking the bridge's modality layer (via Ice.modal.start('basePopup', 'xxx/xmlhttp/blank') as part of a scheme to put up a busy indicator while the JSP submit is occurring. However, with this change in place, the JSP submit never actually occurs as the modal blocker disables the button that was triggering it before it gets generated. Not at all sure what a good fix for this would be. Maybe the easiest thing is to add a configuration param to disable the blocking of iframe elements so they can turn this off since their use-case is atypical to say the least.
        Ken Fyten made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Arran Mccullough made changes -
        Attachment Case10810Example.war [ 13973 ]
        Arran Mccullough made changes -
        Attachment Case10810Example.zip [ 13972 ]
        Hide
        Arran Mccullough added a comment -

        Attached test case to show current issue.

        The test case uses an iframe to show some basic html content. There are two buttons that will submit the html form, one that activates the modal panelPopup and another that does not. Both buttons should submit the form, which will navigate to the outer original page. In the case with the button that activates the popup this doesn't take place. Removal of the Ice.modal.start from the JavaScript code allows the form to submit.

        Show
        Arran Mccullough added a comment - Attached test case to show current issue. The test case uses an iframe to show some basic html content. There are two buttons that will submit the html form, one that activates the modal panelPopup and another that does not. Both buttons should submit the form, which will navigate to the outer original page. In the case with the button that activates the popup this doesn't take place. Removal of the Ice.modal.start from the JavaScript code allows the form to submit.
        Arran Mccullough made changes -
        Attachment ICE7651.zip [ 14180 ]
        Attachment ICE7651WAR.zip [ 14181 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #28389 Mon Mar 19 05:43:48 MDT 2012 mircea.toma ICE-7651 Cancel only the events that are not triggered within current iframe.
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/compat/core/src/main/javascript/extras/extras.js
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #28390 Mon Mar 19 05:49:54 MDT 2012 mircea.toma ICE-7651 Cancel only the events that are not triggered within current iframe.
        Files Changed
        Commit graph MODIFY /icefaces3/branches/icefaces-3.0.x-maintenance/icefaces/compat/core/src/main/javascript/extras/extras.js
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #28391 Mon Mar 19 05:58:48 MDT 2012 mircea.toma ICE-7651 Cancel only the events that are not triggered within current iframe.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/bridge/lib/extras/style.js
        Hide
        Mircea Toma added a comment -

        Cancel only the events that are not triggered within current iframe.

        Show
        Mircea Toma added a comment - Cancel only the events that are not triggered within current iframe.
        Mircea Toma made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P1

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: