<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -83,6 +83,52 @@ test(&quot;keydown END on handle sets value to max&quot;, function() {
 	el.slider('destroy');
 });
 
+test(&quot;keydown PAGE_UP on handle increases value by 1/5 range, not greater than max&quot;, function() {
+	$.each(['horizontal', 'vertical'], function(i, orientation) {
+		el = $('&lt;div&gt;&lt;/div&gt;');
+		options = {
+			max: 100,
+			min: 0,
+			orientation: orientation,
+			step: 1
+		};
+		el.slider(options);
+
+		el.slider(&quot;value&quot;, 70);
+
+		handle().simulate(&quot;keydown&quot;, { keyCode: $.ui.keyCode.PAGE_UP });
+		equals(el.slider(&quot;value&quot;), 90);
+
+		handle().simulate(&quot;keydown&quot;, { keyCode: $.ui.keyCode.PAGE_UP });
+		equals(el.slider(&quot;value&quot;), 100);
+
+		el.slider(&quot;destroy&quot;);
+	});
+});
+
+test(&quot;keydown PAGE_DOWN on handle decreases value by 1/5 range, not less than min&quot;, function() {
+	$.each(['horizontal', 'vertical'], function(i, orientation) {
+		el = $('&lt;div&gt;&lt;/div&gt;');
+		options = {
+			max: 100,
+			min: 0,
+			orientation: orientation,
+			step: 1
+		};
+		el.slider(options);
+
+		el.slider(&quot;value&quot;, 30);
+
+		handle().simulate(&quot;keydown&quot;, { keyCode: $.ui.keyCode.PAGE_DOWN });
+		equals(el.slider(&quot;value&quot;), 10);
+
+		handle().simulate(&quot;keydown&quot;, { keyCode: $.ui.keyCode.PAGE_DOWN });
+		equals(el.slider(&quot;value&quot;), 0);
+
+		el.slider(&quot;destroy&quot;);
+	});
+});
+
 test(&quot;keydown UP on handle increases value by step, not greater than max&quot;, function() {
 	el = $('&lt;div&gt;&lt;/div&gt;');
 	options = {</diff>
      <filename>tests/unit/slider/slider_core.js</filename>
    </modified>
    <modified>
      <diff>@@ -13,6 +13,10 @@
 
 (function($) {
 
+// number of pages in a slider
+// (how many times can you page up/down to go through the whole range)
+var numPages = 5;
+
 $.widget(&quot;ui.slider&quot;, $.extend({}, $.ui.mouse, {
 
 	_init: function() {
@@ -119,6 +123,8 @@ $.widget(&quot;ui.slider&quot;, $.extend({}, $.ui.mouse, {
 			switch (event.keyCode) {
 				case $.ui.keyCode.HOME:
 				case $.ui.keyCode.END:
+				case $.ui.keyCode.PAGE_UP:
+				case $.ui.keyCode.PAGE_DOWN:
 				case $.ui.keyCode.UP:
 				case $.ui.keyCode.RIGHT:
 				case $.ui.keyCode.DOWN:
@@ -146,6 +152,12 @@ $.widget(&quot;ui.slider&quot;, $.extend({}, $.ui.mouse, {
 				case $.ui.keyCode.END:
 					newVal = self._valueMax();
 					break;
+				case $.ui.keyCode.PAGE_UP:
+					newVal = curVal + ((self._valueMax() - self._valueMin()) / numPages);
+					break;
+				case $.ui.keyCode.PAGE_DOWN:
+					newVal = curVal - ((self._valueMax() - self._valueMin()) / numPages);
+					break;
 				case $.ui.keyCode.UP:
 				case $.ui.keyCode.RIGHT:
 					if(curVal == self._valueMax()) return;</diff>
      <filename>ui/jquery.ui.slider.js</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>7098d0397214bb843fecb7292e708c43f76065bb</id>
    </parent>
  </parents>
  <author>
    <name>scott.gonzalez</name>
    <email>scott.gonzalez@a1defee3-d24d-0410-b1e3-3171fe540af7</email>
  </author>
  <url>http://github.com/JackDanger/jquery-ui/commit/c2e99fbad84e0db71a3586a530087aba516b2cd2</url>
  <id>c2e99fbad84e0db71a3586a530087aba516b2cd2</id>
  <committed-date>2009-11-08T19:10:57-08:00</committed-date>
  <authored-date>2009-11-08T19:10:57-08:00</authored-date>
  <message>Slider: Added paging - page up/down jumps by 1/5 the size of the range.

Fixes #3096 - Add a paging option for slider

git-svn-id: http://jquery-ui.googlecode.com/svn/trunk@3422 a1defee3-d24d-0410-b1e3-3171fe540af7</message>
  <tree>7f6d331f24befa20e8dd6d9215faf1615627d460</tree>
  <committer>
    <name>scott.gonzalez</name>
    <email>scott.gonzalez@a1defee3-d24d-0410-b1e3-3171fe540af7</email>
  </committer>
</commit>
