diff options
author | Florian Bruhin <me@the-compiler.org> | 2020-11-03 13:49:34 +0100 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2020-11-04 18:27:26 +0100 |
commit | 2bb694e3e4cada5b40e657ac5b51956c57f0b33a (patch) | |
tree | bc06b1bc5e687748702f0214a36458c7e2e1baa3 /qutebrowser/javascript | |
parent | c8d942a1feeb634aceb2c95bb90620732aa247cb (diff) | |
download | qutebrowser-2bb694e3e4cada5b40e657ac5b51956c57f0b33a.tar.gz qutebrowser-2bb694e3e4cada5b40e657ac5b51956c57f0b33a.zip |
old qt: Update caret handling
Diffstat (limited to 'qutebrowser/javascript')
-rw-r--r-- | qutebrowser/javascript/caret.js | 11 | ||||
-rw-r--r-- | qutebrowser/javascript/webelem.js | 21 |
2 files changed, 2 insertions, 30 deletions
diff --git a/qutebrowser/javascript/caret.js b/qutebrowser/javascript/caret.js index d7ba88fe6..0e8de5e6e 100644 --- a/qutebrowser/javascript/caret.js +++ b/qutebrowser/javascript/caret.js @@ -774,13 +774,6 @@ window._qutebrowser.caret = (function() { CaretBrowsing.isWindows = null; /** - * Whether we're running on on old Qt 5.7.1. - * There, we need to use -webkit-filter. - * @type {boolean} - */ - CaretBrowsing.needsFilterPrefix = null; - - /** * The id returned by window.setInterval for our stopAnimation function, so * we can cancel it when we call stopAnimation again. * @type {number?} @@ -863,7 +856,6 @@ window._qutebrowser.caret = (function() { }; CaretBrowsing.injectCaretStyles = function() { - const prefix = CaretBrowsing.needsFilterPrefix ? "-webkit-" : ""; const style = ` .CaretBrowsing_Caret { position: absolute; @@ -875,7 +867,7 @@ window._qutebrowser.caret = (function() { background-color: var(--inherited-color, #000); color: var(--inherited-color, #000); mix-blend-mode: difference; - ${prefix}filter: invert(85%); + filter: invert(85%); } @keyframes blink { 50% { visibility: hidden; } @@ -1355,7 +1347,6 @@ window._qutebrowser.caret = (function() { funcs.setFlags = (flags) => { CaretBrowsing.isWindows = flags.includes("windows"); - CaretBrowsing.needsFilterPrefix = flags.includes("filter-prefix"); }; funcs.disableCaret = () => { diff --git a/qutebrowser/javascript/webelem.js b/qutebrowser/javascript/webelem.js index 5cc2bd014..86b41aef4 100644 --- a/qutebrowser/javascript/webelem.js +++ b/qutebrowser/javascript/webelem.js @@ -67,25 +67,6 @@ window._qutebrowser.webelem = (function() { }; } - function get_caret_position(elem, frame) { - // With older Chromium versions (and QtWebKit), InvalidStateError will - // be thrown if elem doesn't have selectionStart. - // With newer Chromium versions (>= Qt 5.10), we get null. - try { - return elem.selectionStart; - } catch (err) { - if ((err instanceof DOMException || - (frame && err instanceof frame.DOMException)) && - err.name === "InvalidStateError") { - // nothing to do, caret_position is already null - } else { - // not the droid we're looking for - throw err; - } - } - return null; - } - function serialize_elem(elem, frame = null) { if (!elem) { return null; @@ -94,7 +75,7 @@ window._qutebrowser.webelem = (function() { const id = elements.length; elements[id] = elem; - const caret_position = get_caret_position(elem, frame); + const caret_position = elem.selectionStart; // isContentEditable occasionally returns undefined. const is_content_editable = elem.isContentEditable || false; |