Fix example to work where there is a metaKey but ctrl is used for undo/redo.

git-svn-id: http://svn.openlayers.org/trunk/openlayers@12104 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
Tim Schaub
2011-06-17 21:10:15 +00:00
parent 2cf3f62d1b
commit 1ccf325285
+10 -21
View File
@@ -20,37 +20,26 @@ map.addControl(draw);
draw.activate(); draw.activate();
OpenLayers.Event.observe(document, "keydown", function(evt) { OpenLayers.Event.observe(document, "keydown", function(evt) {
var code = evt.keyCode;
var handled = false; var handled = false;
if (code === 90) { switch (evt.keyCode) {
// z case 90: // z
if ("metaKey" in evt) { if (evt.metaKey || evt.ctrlKey) {
if (evt.metaKey) {
draw.undo(); draw.undo();
handled = true; handled = true;
} }
} else if (evt.ctrlKey) { break;
draw.undo(); case 89: // y
handled = true; if (evt.metaKey || evt.ctrlKey) {
}
}
if (code === 89) {
// y
if ("metaKey" in evt) {
if (evt.metaKey) {
draw.redo(); draw.redo();
handled = true; handled = true;
} }
} else if (evt.ctrlKey) { break;
draw.redo(); case 27: // esc
draw.cancel();
handled = true; handled = true;
} break;
} }
if (handled) { if (handled) {
OpenLayers.Event.stop(evt); OpenLayers.Event.stop(evt);
} }
if (code === 27) {
// esc
draw.cancel();
}
}); });