From 63d37c872b786abe9233d70b2eff0362582cbc3a Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Mon, 16 May 2022 21:45:22 -0400 Subject: Popup positioning improvements (#2135) * Rename elementRect to sourceRect * Add getRects function to TextSourceElement and TextSourceRange * Add jsdocs * Remove unnecessary valid parameter * Remove default parameter * Make optionsContext optional * Remove unnecessary checks * Update sourceRect to use left/right rather than x/y * Update the return type of Popup*.getFrameRect * Rename some unrelated rect vars for disambiguation * Disambiguate between Popup.Rect and Popup.ValidRect * Move sourceRect destructuring * Pass multiple source rects * Simplify * Change Rect to use right/bottom rather than width/height * Update how popup offset is applied * Simplify frame offset * Remove _applyFrameOffset * Use right/bottom rather than width/height * Simplify some positioning settings * Update parameter names for clarity * Fix typos * Refactor data type for _getPosition* functions * Support using multiple source rects * Combine _getPosition functions * Refactor * Expose after dataset value * Consistently use this's property * Add jsdoc --- ext/js/dom/text-source-range.js | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'ext/js/dom/text-source-range.js') diff --git a/ext/js/dom/text-source-range.js b/ext/js/dom/text-source-range.js index 6dfa2158..e0e2c5b0 100644 --- a/ext/js/dom/text-source-range.js +++ b/ext/js/dom/text-source-range.js @@ -94,6 +94,10 @@ class TextSourceRange { return this._range.getBoundingClientRect(); } + getRects() { + return this._range.getClientRects(); + } + getWritingMode() { return TextSourceRange.getElementWritingMode(TextSourceRange.getParentElement(this._range.startContainer)); } -- cgit v1.2.3