                      this "scroll" (int-array [(.getScrollX this) new-scroll]))]
       (.setDuration animator ^int (get-state this :animation-duration))
       (.start animator)))
+  (defn tab-scroll-view-setScroll
+    [this new-scroll]
+    (.scrollTo this new-scroll (.getScrollY this)))
+  (defn tab-scroll-view-getScroll
+    [this]
+    (.getScrollX this))
+  (defn tab-scroll-view-updateLayout
+    [this]
+    (for [i (range 0 (.getChildCount (get-state this :content-view)))
+          :let [child (.getChildAt (get-state this :content-view) i)]]
+      (.updateLayoutParams child))
+    (.ensureChildVisible this))
+  (defn tab-scroll-view-ensureChildVisible
+    [this]
+    (if-let [child (.getChildAt (get-state this :content-view)
+                                (get-state this :selected))]
+      (let [childl (.getLeft child)
+            childr (+ childl (.getWidth child))
+            viewl (.getScrollX this)
+            viewr (+ viewl (.getWidth this))]
+        (if (< childl viewl)
+          (.animateScroll this childl)
+          (if (> childr viewr)
+            (.animateScroll this (+ (- childr viewr) viewl)))))))
   )
 
 (do

      (.setVisibility close (if selected android.view.View/VISIBLE android.view.View/GONE))
      (.setHorizontalFadingEdgeEnabled this (not selected))
      (.superSetActivated this selected)
      (if-let [lp (.getLayoutParams this)]
        (do
          (set! (. lp width) (get-state this :tab-width))
          (set! (. lp height) android.view.ViewGroup$LayoutParams/MATCH_PARENT)
          (.setLayoutParams this lp)))
      (.setFocusable this (not selected))
      (.postInvalidate this)))
  (defn tab-view-setTitle
    [this text]
    (let [title (get-state this :title)]
      (.setText title text)))
  )

(do

    :constructors {[android.content.Context] [android.content.Context]
                   [android.content.Context android.util.AttributeSet] [android.content.Context android.util.AttributeSet]
                   [android.content.Context android.util.AttributeSet int] [android.content.Context android.util.AttributeSet int]}
    :methods [["setTitle" [String] void]
              ["updateLayoutParams" [] void]]
    :exposes-methods {onLayout superOnLayout
                      setActivated superSetActivated})
  (gen-class
