mirror of
https://github.com/keepassxreboot/keepassxc-browser.git
synced 2026-03-11 08:54:43 +00:00
Fix topmost element check with Shadow DOM
This commit is contained in:
parent
3e99239933
commit
f24c235692
1 changed files with 4 additions and 3 deletions
|
|
@ -418,10 +418,11 @@ kpxcFields.isTopElement = function(elem, rect) {
|
|||
|
||||
// Check topmost element from three points inside the input
|
||||
const verticalMiddle = rect.top + (rect.height / 2);
|
||||
const rootNode = elem.getRootNode() ?? document;
|
||||
if (matchesWithNodeName(elem, 'INPUT') && [
|
||||
document.elementFromPoint(rect.left + (rect.width / 4), verticalMiddle), // First third
|
||||
document.elementFromPoint(rect.left + (rect.width / 2), verticalMiddle), // Middle
|
||||
document.elementFromPoint(rect.left + (rect.width / 1.33), verticalMiddle), // Last third
|
||||
rootNode.elementFromPoint(rect.left + (rect.width / 4), verticalMiddle), // First third
|
||||
rootNode.elementFromPoint(rect.left + (rect.width / 2), verticalMiddle), // Middle
|
||||
rootNode.elementFromPoint(rect.left + (rect.width / 1.33), verticalMiddle), // Last third
|
||||
].some((e) => e !== elem)) {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue