mirror of
https://github.com/redphx/better-xcloud.git
synced 2025-06-07 08:07:18 +02:00
Loop around settings
This commit is contained in:
parent
fbebb12965
commit
daf3f72736
@ -476,6 +476,11 @@ export class StreamSettings {
|
|||||||
$sibling && $sibling.focus();
|
$sibling && $sibling.focus();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If it's the first/last item -> loop around
|
||||||
|
const pseudo = direction === NavigationDirection.UP ? 'last-of-type' : 'first-of-type';
|
||||||
|
const $target = this.$tabs!.querySelector(`svg:not(.bx-gone):${pseudo}`);
|
||||||
|
$target && ($target as HTMLElement).focus();
|
||||||
} else if (direction === NavigationDirection.RIGHT) {
|
} else if (direction === NavigationDirection.RIGHT) {
|
||||||
this.#focusFirstVisibleSetting();
|
this.#focusFirstVisibleSetting();
|
||||||
}
|
}
|
||||||
@ -513,6 +518,11 @@ export class StreamSettings {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If it's the first/last item -> loop around
|
||||||
|
const pseudo = direction === NavigationDirection.UP ? 'last-of-type' : 'first-of-type';
|
||||||
|
const $target = this.$settings!.querySelector(`div[data-tab-group]:not(.bx-gone) div[data-focus-container]:${pseudo} [tabindex="0"]:last-of-type`);
|
||||||
|
$target && ($target as HTMLElement).focus();
|
||||||
} else if (direction === NavigationDirection.LEFT || direction === NavigationDirection.RIGHT) {
|
} else if (direction === NavigationDirection.LEFT || direction === NavigationDirection.RIGHT) {
|
||||||
// Find all child elements with tabindex
|
// Find all child elements with tabindex
|
||||||
const children = Array.from($parent.querySelectorAll('[tabindex="0"]'));
|
const children = Array.from($parent.querySelectorAll('[tabindex="0"]'));
|
||||||
|
@ -41,12 +41,11 @@ function createElement<T=HTMLElement>(elmName: string, props: {[index: string]:
|
|||||||
|
|
||||||
for (let i = 2, size = arguments.length; i < size; i++) {
|
for (let i = 2, size = arguments.length; i < size; i++) {
|
||||||
const arg = arguments[i];
|
const arg = arguments[i];
|
||||||
const argType = typeof arg;
|
|
||||||
|
|
||||||
if (argType === 'string' || argType === 'number') {
|
if (arg instanceof Node) {
|
||||||
$elm.appendChild(document.createTextNode(arg));
|
|
||||||
} else if (arg) {
|
|
||||||
$elm.appendChild(arg);
|
$elm.appendChild(arg);
|
||||||
|
} else if (arg !== null && typeof arg !== 'undefined') {
|
||||||
|
$elm.appendChild(document.createTextNode(arg));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user