 				}
 			}
 			if(this._verticalScrollPolicy == ScrollPolicy.VISIBLE_ON_HOVER){
-				if(_verticalScrollBar){
+				if(_verticalScrollBar && !_scrollingVertically){
 					Effect.on(_verticalScrollBar).cancelCurrent().fadeOut(1);
 				}
 			}
 		}
 		
+		/**
+		 * @private
+		 */ 
 		public function set horizontalScrollPolicy(policy:String):void{
 			_horizontalScrollPolicy = policy;
 		}
+		
+		/**
+		 * Sets the behavior of the scrollbar for a UIContainer.
+		 * Note that if you set the scrollpolicy to FADE_ON_HOVER, 
+		 * its advisable to set the backgroundPainter so that
+		 * the calculation of rollout/rollover does not get buggy as
+		 * the mouse rolls over the children of the UIContainer
+		 */ 
 		public function get horizontalScrollPolicy():String{
 			return _horizontalScrollPolicy;
 		}
 		
+		/**
+		 * @private
+		 */ 
 		public function set verticalScrollPolicy(policy:String):void{
 			_verticalScrollPolicy = policy;
 		}
 		
+		/**
+		 * Sets the behavior of the scrollbar for a UIContainer.
+		 * Note that if you set the scrollpolicy to FADE_ON_HOVER, 
+		 * its advisable to set the backgroundPainter so that
+		 * the calculation of rollout/rollover does not get buggy as
+		 * the mouse rolls over the children of the UIContainer
+		 */ 
 		public function get verticalScrollPolicy():String{
 			return _verticalScrollPolicy;
 		}

			_verticalScrollBar.addEventListener(Event.ADDED_TO_STAGE, function():void{
				_verticalScrollBar.addEventListener(MouseEvent.MOUSE_DOWN, function(event:MouseEvent):void{
					mouseOverDisabled = true;
				})
				_verticalScrollBar.stage.addEventListener(MouseEvent.MOUSE_UP, function(event:MouseEvent):void{
					mouseOverDisabled = false;
				})
			});
			_verticalScrollBar.addEventListener(PyroEvent.SIZE_VALIDATED, onVerticalScrollBarSizeValidated);

				}
			}
			if(this._verticalScrollPolicy == ScrollPolicy.VISIBLE_ON_HOVER){
				if(_verticalScrollBar && !_scrollingVertically){
					Effect.on(_verticalScrollBar).cancelCurrent().fadeIn(1);
				}
			}
