mirror of
https://github.com/flarum/core.git
synced 2025-08-02 22:47:33 +02:00
Customize behavior for various navigation callbacks, pass KeyboardEvent instance to callback
Refs #264.
This commit is contained in:
37
framework/core/js/forum/dist/app.js
vendored
37
framework/core/js/forum/dist/app.js
vendored
@@ -31658,28 +31658,53 @@ System.register('flarum/utils/KeyboardNavigatable', [], function (_export, _cont
|
|||||||
babelHelpers.createClass(KeyboardNavigatable, [{
|
babelHelpers.createClass(KeyboardNavigatable, [{
|
||||||
key: 'onUp',
|
key: 'onUp',
|
||||||
value: function onUp(callback) {
|
value: function onUp(callback) {
|
||||||
this.callbacks[38] = callback;
|
this.callbacks[38] = function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
key: 'onDown',
|
key: 'onDown',
|
||||||
value: function onDown(callback) {
|
value: function onDown(callback) {
|
||||||
this.callbacks[40] = callback;
|
this.callbacks[40] = function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
key: 'onSelect',
|
key: 'onSelect',
|
||||||
value: function onSelect(callback) {
|
value: function onSelect(callback) {
|
||||||
this.callbacks[9] = this.callbacks[13] = callback;
|
this.callbacks[9] = this.callbacks[13] = function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
key: 'onCancel',
|
key: 'onCancel',
|
||||||
value: function onCancel(callback) {
|
value: function onCancel(callback) {
|
||||||
this.callbacks[27] = callback;
|
this.callbacks[27] = function (e) {
|
||||||
|
e.stopPropagation();
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onRemove',
|
||||||
|
value: function onRemove(callback) {
|
||||||
|
this.callbacks[8] = function (e) {
|
||||||
|
if (e.target.selectionStart === 0 && e.target.selectionEnd === 0) {
|
||||||
|
callback(e);
|
||||||
|
e.preventDefault();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -31704,9 +31729,7 @@ System.register('flarum/utils/KeyboardNavigatable', [], function (_export, _cont
|
|||||||
|
|
||||||
var keyCallback = this.callbacks[event.which];
|
var keyCallback = this.callbacks[event.which];
|
||||||
if (keyCallback) {
|
if (keyCallback) {
|
||||||
keyCallback();
|
keyCallback(event);
|
||||||
event.stopPropagation();
|
|
||||||
event.preventDefault();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}]);
|
}]);
|
||||||
|
@@ -23,7 +23,10 @@ export default class KeyboardNavigatable {
|
|||||||
* @return {KeyboardNavigatable}
|
* @return {KeyboardNavigatable}
|
||||||
*/
|
*/
|
||||||
onUp(callback) {
|
onUp(callback) {
|
||||||
this.callbacks[38] = callback;
|
this.callbacks[38] = e => {
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -38,7 +41,10 @@ export default class KeyboardNavigatable {
|
|||||||
* @return {KeyboardNavigatable}
|
* @return {KeyboardNavigatable}
|
||||||
*/
|
*/
|
||||||
onDown(callback) {
|
onDown(callback) {
|
||||||
this.callbacks[40] = callback;
|
this.callbacks[40] = e => {
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -53,7 +59,10 @@ export default class KeyboardNavigatable {
|
|||||||
* @return {KeyboardNavigatable}
|
* @return {KeyboardNavigatable}
|
||||||
*/
|
*/
|
||||||
onSelect(callback) {
|
onSelect(callback) {
|
||||||
this.callbacks[9] = this.callbacks[13] = callback;
|
this.callbacks[9] = this.callbacks[13] = e => {
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -68,7 +77,31 @@ export default class KeyboardNavigatable {
|
|||||||
* @return {KeyboardNavigatable}
|
* @return {KeyboardNavigatable}
|
||||||
*/
|
*/
|
||||||
onCancel(callback) {
|
onCancel(callback) {
|
||||||
this.callbacks[27] = callback;
|
this.callbacks[27] = e => {
|
||||||
|
e.stopPropagation();
|
||||||
|
e.preventDefault();
|
||||||
|
callback(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provide a callback to be executed when previous input is removed.
|
||||||
|
*
|
||||||
|
* This will be triggered by the Backspace key.
|
||||||
|
*
|
||||||
|
* @public
|
||||||
|
* @param {Function} callback
|
||||||
|
* @return {KeyboardNavigatable}
|
||||||
|
*/
|
||||||
|
onRemove(callback) {
|
||||||
|
this.callbacks[8] = e => {
|
||||||
|
if (e.target.selectionStart === 0 && e.target.selectionEnd === 0) {
|
||||||
|
callback(e);
|
||||||
|
e.preventDefault();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -109,9 +142,7 @@ export default class KeyboardNavigatable {
|
|||||||
|
|
||||||
const keyCallback = this.callbacks[event.which];
|
const keyCallback = this.callbacks[event.which];
|
||||||
if (keyCallback) {
|
if (keyCallback) {
|
||||||
keyCallback();
|
keyCallback(event);
|
||||||
event.stopPropagation();
|
|
||||||
event.preventDefault();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user