make the KeyboardDefaults control prevent browser default after handling a key press
This commit is contained in:
@@ -62,7 +62,7 @@ OpenLayers.Control.KeyboardDefaults = OpenLayers.Class(OpenLayers.Control, {
|
|||||||
* evt - {Event}
|
* evt - {Event}
|
||||||
*/
|
*/
|
||||||
defaultKeyPress: function (evt) {
|
defaultKeyPress: function (evt) {
|
||||||
var size;
|
var size, handled = true;
|
||||||
switch(evt.keyCode) {
|
switch(evt.keyCode) {
|
||||||
case OpenLayers.Event.KEY_LEFT:
|
case OpenLayers.Event.KEY_LEFT:
|
||||||
this.map.pan(-this.slideFactor, 0);
|
this.map.pan(-this.slideFactor, 0);
|
||||||
@@ -106,6 +106,13 @@ OpenLayers.Control.KeyboardDefaults = OpenLayers.Class(OpenLayers.Control, {
|
|||||||
case 95: // -/_ (some ASCII)
|
case 95: // -/_ (some ASCII)
|
||||||
this.map.zoomOut();
|
this.map.zoomOut();
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
handled = false;
|
||||||
|
}
|
||||||
|
if (handled) {
|
||||||
|
// prevent browser default not to move the page
|
||||||
|
// when moving the page with the keyboard
|
||||||
|
OpenLayers.Event.stop(evt);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user