ICEfaces
  1. ICEfaces
  2. ICE-8808

Add robust "liveScroll" capability to ace:dataTable

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ICEfaces 3.x, ace:dataTable

      Description

      In ICEfaces 3.0 the new ace:dataTable was added with a "liveScroll" feature that was, unfortunately, very limited in utility when combined with other ace:dataTable features, buggy, etc. As the "liveScroll" function was not up to ICEsoft's standard, it was deprecated as of ICEfaces 3.2.

      This JIRA is to re-introduce support for a liveScroll functionality in a robust manner that will support its use in combination with all other ace:dataTable features.

      The primary justification for a liveScroll feature is to provide "infinite" scalability to ace:dataTables that may be bound to very large datasets (e.g. 50K rows or much more).

      To achieve this, it is necessary to dynamically "page" rows to the client browser as the user moves through the dataTable contents via the vertical scrollbar. Not only do rows need to be dynamically loaded or pre-loaded for the user, but rows must eventually also be dynamically removed from the browser DOM in order to prevent the eventual negative performance implications of an very large DOM in the browser, and the memory consumption that goes along with it.

      1. LiveScrolling.PNG
        48 kB
      2. group.PNG
        13 kB

        Issue Links

          Activity

          Hide
          Arturo Zambrano added a comment -

          r46116: fix for last page single row issue on IE

          Show
          Arturo Zambrano added a comment - r46116: fix for last page single row issue on IE
          Hide
          Liana Munroe added a comment -

          Verified IE issue ICEfaces 4 trunk r46116. Tomcat 7, IE 11, 10.

          Show
          Liana Munroe added a comment - Verified IE issue ICEfaces 4 trunk r46116. Tomcat 7, IE 11, 10.
          Hide
          Arturo Zambrano added a comment -

          46140: modified previous fix for last page single row issue on IE, since it was adding extra space to regular pages; the fix is now based on a timeout function.

          As for not being able to hold the arrow buttons in the scrollbar to continuously trigger livescroll requests on Chrome, it seems to be a browser limitation. I tested earlier versions of the livescroll functionality, and it was never possible to hold the arrow buttons and continue scrolling on Chrome. After all, every livescroll request updates the body table, and it's up to the browser to end the client event that triggered the request or to keep it going, since it's new markup. There's also no way to access the scrollbar itself from javascript.

          Show
          Arturo Zambrano added a comment - 46140: modified previous fix for last page single row issue on IE, since it was adding extra space to regular pages; the fix is now based on a timeout function. As for not being able to hold the arrow buttons in the scrollbar to continuously trigger livescroll requests on Chrome, it seems to be a browser limitation. I tested earlier versions of the livescroll functionality, and it was never possible to hold the arrow buttons and continue scrolling on Chrome. After all, every livescroll request updates the body table, and it's up to the browser to end the client event that triggered the request or to keep it going, since it's new markup. There's also no way to access the scrollbar itself from javascript.
          Hide
          Liana Munroe added a comment -

          Verified ICEfaces 4 trunk 46143. Tomcat 7, FF 34, Chrome 46, IE 11, 10, 9.

          Show
          Liana Munroe added a comment - Verified ICEfaces 4 trunk 46143. Tomcat 7, FF 34, Chrome 46, IE 11, 10, 9.
          Hide
          Carmen Cristurean added a comment -

          r46315: dataTable - Live Scrolling demo was added to showcase.

          Show
          Carmen Cristurean added a comment - r46315: dataTable - Live Scrolling demo was added to showcase.

            People

            • Assignee:
              Arturo Zambrano
              Reporter:
              Ken Fyten
            • Votes:
              4 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: