ICEfaces
  1. ICEfaces
  2. ICE-8013

Keyboard navigation can clear datatable view in IE8 document typoe IE7 mode

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.2a
    • Fix Version/s: EE-1.8.2.GA_P04
    • Component/s: Bridge
    • Labels:
      None
    • Environment:
      Icefaces 1.8 rev. 27745
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      Patch extras.js file with this code
      (...)
      Ice.tblRowFocus = function(anc, singleSelection) {
        (...)
      line 526
                              //lookup the scrollable container
                              var scrollableContainer = parent.parentNode.parentNode.parentNode;
                              //var rowTop = Element.measure(tr, 'top');
                              var rowTop = Element.cumulativeOffset(tr).top ;
                              //var scrollableAreaTop = Element.measure(scrollableContainer, 'top');
                              var scrollableAreaTop = Element.cumulativeOffset(scrollableContainer).top ;
                              var scrolled = scrollableContainer.scrollTop;
      (...)
      line 554
                             //lookup the scrollable container
                              var scrollableContainer = parent.parentNode.parentNode.parentNode;
                              //var rowTop = Element.measure(tr, 'top');
                              var rowTop = Element.cumulativeOffset(tr).top ;
                              var rowHeight = Element.measure(tr, 'height');
                              //var scrollableAreaTop = Element.measure(scrollableContainer, 'top');
                              var scrollableAreaTop = Element.cumulativeOffset(scrollableContainer).top ;
          
      Show
      Patch extras.js file with this code (...) Ice.tblRowFocus = function(anc, singleSelection) {   (...) line 526                         //lookup the scrollable container                         var scrollableContainer = parent.parentNode.parentNode.parentNode;                         //var rowTop = Element.measure(tr, 'top');                         var rowTop = Element.cumulativeOffset(tr).top ;                         //var scrollableAreaTop = Element.measure(scrollableContainer, 'top');                         var scrollableAreaTop = Element.cumulativeOffset(scrollableContainer).top ;                         var scrolled = scrollableContainer.scrollTop; (...) line 554                        //lookup the scrollable container                         var scrollableContainer = parent.parentNode.parentNode.parentNode;                         //var rowTop = Element.measure(tr, 'top');                         var rowTop = Element.cumulativeOffset(tr).top ;                         var rowHeight = Element.measure(tr, 'height');                         //var scrollableAreaTop = Element.measure(scrollableContainer, 'top');                         var scrollableAreaTop = Element.cumulativeOffset(scrollableContainer).top ;     

      Description

      Keyboard can navigation clear datatable view in IE8 .Problem started with revision 25996 and script update from Mircea Toma. Patch and screen attached

      Steps to recreate bug:

      - open component-showcase / table /row selector view in IE8, press F12 set IE8 mode and document type IE7 (or use in template entry <meta http-equiv="X-UA-Compatible" content="IE=7" /> )

      - navigate on table up and down, row content dissapears



      1. dataTable-rowSelection.jspx
        11 kB
        Krashan Brahmanjara
      1. IE_ROWSELECTOR_BUG.PNG
        70 kB

        Activity

        Krashan Brahmanjara created issue -
        Hide
        Krashan Brahmanjara added a comment -

        Row selector bug

        Show
        Krashan Brahmanjara added a comment - Row selector bug
        Krashan Brahmanjara made changes -
        Field Original Value New Value
        Attachment IE_ROWSELECTOR_BUG.PNG [ 14308 ]
        Hide
        Krashan Brahmanjara added a comment -

        This patch also invalidate ICE-7985

        Show
        Krashan Brahmanjara added a comment - This patch also invalidate ICE-7985
        Hide
        Krashan Brahmanjara added a comment -

        Unfortunately this patch can't help IE9 users - keyboard navigation clear rows if IE9 is in IE8 or IE7 mode.

        Show
        Krashan Brahmanjara added a comment - Unfortunately this patch can't help IE9 users - keyboard navigation clear rows if IE9 is in IE8 or IE7 mode.
        Ken Fyten made changes -
        Salesforce Case []
        Fix Version/s EE-1.8.2.GA_P04 [ 10280 ]
        Assignee Priority P1
        Assignee Mircea Toma [ mircea.toma ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #28745 Wed Apr 18 06:32:15 MDT 2012 mircea.toma ICE-8013 Use browser's DOM API to acquire the element coordinates instead of using Prototype's Element.measure function.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/bridge/lib/extras/extras.js
        Hide
        Mircea Toma added a comment -

        The fix applied uses browser's DOM API to acquire the element coordinates instead of using Prototype's Element.measure function.
        The fix was successfully tested with IE8 (with IE7 mode) and IE9 (with IE8 and IE7 modes).

        Show
        Mircea Toma added a comment - The fix applied uses browser's DOM API to acquire the element coordinates instead of using Prototype's Element.measure function. The fix was successfully tested with IE8 (with IE7 mode) and IE9 (with IE8 and IE7 modes).
        Mircea Toma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Krashan Brahmanjara added a comment - - edited

        Hi

        Last patch from Mircea Toma is invalid!
        Rows are not cleared but keyboard navigation for scrollable tables is broken

        • on key down, beyond bottom border, current row will be invisble
        • on key up table, view return to the first row

        It is broken for all browsers.

        Try test it with attached dataTable-rowSelection.jspx from component-showcase (it adds scrollable="true" scrollHeight="150px" to datatatable)

        Show
        Krashan Brahmanjara added a comment - - edited Hi Last patch from Mircea Toma is invalid! Rows are not cleared but keyboard navigation for scrollable tables is broken on key down, beyond bottom border, current row will be invisble on key up table, view return to the first row It is broken for all browsers. Try test it with attached dataTable-rowSelection.jspx from component-showcase (it adds scrollable="true" scrollHeight="150px" to datatatable)
        Hide
        Krashan Brahmanjara added a comment -

        Rowselector example with scrollable table

        Show
        Krashan Brahmanjara added a comment - Rowselector example with scrollable table
        Krashan Brahmanjara made changes -
        Attachment dataTable-rowSelection.jspx [ 14316 ]
        Hide
        Ken Fyten added a comment -

        New JIRA ICE-8022 created for the regressive behaviour.

        Show
        Ken Fyten added a comment - New JIRA ICE-8022 created for the regressive behaviour.
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P1

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Krashan Brahmanjara
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: