Safeguard against wacky keys for now
Change-Id: I48e8a5a6bbf66a11c71d676e11b3d5f7c84cb29d Reviewed-on: https://skia-review.googlesource.com/c/skia/+/407456 Reviewed-by: Mike Reed <reed@google.com>
This commit is contained in:
parent
cc29ca5196
commit
433d25c947
@ -126,8 +126,10 @@ canvas {
|
||||
}
|
||||
}
|
||||
if (!e.ctrlKey && !e.metaKey) {
|
||||
e.preventDefault(); // at least needed for 'space'
|
||||
editor.insert(e.key);
|
||||
if (e.key.length == 1) { // avoid keys like "Escape" for now
|
||||
e.preventDefault();
|
||||
editor.insert(e.key);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -381,6 +381,7 @@ function MakeEditor(text, style, cursor, width) {
|
||||
this._buildLines();
|
||||
},
|
||||
insert: function(charcode) {
|
||||
const len = charcode.length;
|
||||
if (this._index.start != this._index.end) {
|
||||
this.deleteSelection();
|
||||
}
|
||||
@ -388,12 +389,12 @@ function MakeEditor(text, style, cursor, width) {
|
||||
|
||||
// do this before edit the text (we use text.length in an assert)
|
||||
const [i, prev_len] = this.find_style_index_and_prev_length(index);
|
||||
this._styles[i]._length += 1;
|
||||
this._styles[i]._length += len;
|
||||
|
||||
// now grow the text
|
||||
this._text = this._text.slice(0, index) + charcode + this._text.slice(index);
|
||||
|
||||
this._index.start = this._index.end = index + 1;
|
||||
this._index.start = this._index.end = index + len;
|
||||
this._buildLines();
|
||||
},
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user