API Reference 0.3.24dart_web_toolkit_uiScrollImpl

ScrollImpl class

Implementation of scrolling behavior.

class ScrollImpl {
 static ScrollImpl impl;

 /**
  * Get the singleton instance of {@link ScrollImpl}.
  */
 static ScrollImpl get() {
   if (impl == null) {
     impl = new ScrollImpl();
   }
   return impl;
 }

 /**
  * Get the maximum horizontal scroll position.
  *
  * @param scrollable the scrollable element
  * @return the maximum scroll position
  */
 int getMaximumHorizontalScrollPosition(dart_html.Element scrollable) {
   return isRtl(scrollable) ? 0 : scrollable.scrollWidth - scrollable.client.width;
 }

 /**
  * Get the minimum horizontal scroll position.
  *
  * @param scrollable the scrollable element
  * @return the minimum scroll position
  */
 int getMinimumHorizontalScrollPosition(dart_html.Element scrollable) {
   return isRtl(scrollable) ? scrollable.client.width - scrollable.scrollWidth : 0;
 }

 /**
  * Initialize a scrollable element.
  *
  * @param scrollable the scrollable element
  * @param container the container
  */
 void initialize(dart_html.Element scrollable, dart_html.Element container) {
   // Overridden by ScrollImplTrident.
 }

 /**
  * Check if the specified element has an RTL direction. We can't base this on
  * the current locale because the user can modify the direction at the DOM
  * level.
  *
  * @param scrollable the scrollable element
  * @return true if the direction is RTL, false if LTR
  */
 bool isRtl(dart_html.Element scrollable) {
//    var computedStyle = $doc.defaultView.getComputedStyle(scrollable, null);
//    return computedStyle.getPropertyValue('direction') == 'rtl';
   return false;
 }
}

Static Properties

ScrollImpl impl #

static ScrollImpl impl

Static Methods

ScrollImpl get() #

Get the singleton instance of {@link ScrollImpl}.

static ScrollImpl get() {
 if (impl == null) {
   impl = new ScrollImpl();
 }
 return impl;
}

Methods

int getMaximumHorizontalScrollPosition(Element scrollable) #

Get the maximum horizontal scroll position.

@param scrollable the scrollable element @return the maximum scroll position

int getMaximumHorizontalScrollPosition(dart_html.Element scrollable) {
 return isRtl(scrollable) ? 0 : scrollable.scrollWidth - scrollable.client.width;
}

int getMinimumHorizontalScrollPosition(Element scrollable) #

Get the minimum horizontal scroll position.

@param scrollable the scrollable element @return the minimum scroll position

int getMinimumHorizontalScrollPosition(dart_html.Element scrollable) {
 return isRtl(scrollable) ? scrollable.client.width - scrollable.scrollWidth : 0;
}

void initialize(Element scrollable, Element container) #

Initialize a scrollable element.

@param scrollable the scrollable element @param container the container

void initialize(dart_html.Element scrollable, dart_html.Element container) {
 // Overridden by ScrollImplTrident.
}

bool isRtl(Element scrollable) #

Check if the specified element has an RTL direction. We can't base this on the current locale because the user can modify the direction at the DOM level.

@param scrollable the scrollable element @return true if the direction is RTL, false if LTR

bool isRtl(dart_html.Element scrollable) {
//    var computedStyle = $doc.defaultView.getComputedStyle(scrollable, null);
//    return computedStyle.getPropertyValue('direction') == 'rtl';
 return false;
}