diff --git a/web/demo/src/main/java/applicationContext.xml b/web/demo/src/main/java/applicationContext.xml
index 6390d46..917bf35 100644
--- a/web/demo/src/main/java/applicationContext.xml
+++ b/web/demo/src/main/java/applicationContext.xml
@@ -19,6 +19,11 @@
     <property name="descriptionKey" value="MapPreviewPage.description"/>
     <property name="componentClass" value="org.geoserver.web.demo.MapPreviewPage"/>
   </bean>
+  
+  <bean id="mapPreviewKeyShortcut" class="org.geoserver.web.HeaderContribution">
+    <property name="scope" value="org.geoserver.web.demo.MapPreviewPage"/>
+    <property name="javaScriptFilename" value="mappreview_keyshortcut.js"/>
+  </bean>
     
   <bean id="demoRequests" class="org.geoserver.web.DemoLinkInfo">
     <property name="id" value="demoRequests"/>
diff --git a/web/demo/src/main/resources/org/geoserver/web/demo/mappreview_keyshortcut.js b/web/demo/src/main/resources/org/geoserver/web/demo/mappreview_keyshortcut.js
new file mode 100644
index 0000000..19a013f
--- /dev/null
+++ b/web/demo/src/main/resources/org/geoserver/web/demo/mappreview_keyshortcut.js
@@ -0,0 +1,16 @@
+(function() {
+ 
+    function handler(event) {
+        if (event.keyCode === 80 && event.ctrlKey) {
+            window.location = "?wicket:bookmarkablePage=:org.geoserver.web.demo.MapPreviewPage";
+        }
+    }
+    
+    if (document.addEventListener) {
+        document.addEventListener("keydown", handler, true);
+    } else if (document.attachEvent) {
+        // IE style
+        document.attachEvent("onkeydown", handler);
+    }
+ 
+})();
