Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5ce4692a7b |
@@ -89,8 +89,6 @@ import { zIndices } from '../styles/zIndex';
|
||||
|
||||
const PIP_MIN_W = 200;
|
||||
const PIP_MIN_H = 112;
|
||||
/** Default PiP top: just below the 64px-ish room header. */
|
||||
const PIP_DEFAULT_TOP = 72;
|
||||
|
||||
type Corner = 'se' | 'sw' | 'ne' | 'nw';
|
||||
|
||||
@@ -1048,11 +1046,8 @@ export function CallEmbedProvider({ children }: CallEmbedProviderProps) {
|
||||
el.style.left = `${Math.max(0, Math.min(savedPos.left, window.innerWidth - 280))}px`;
|
||||
el.style.top = `${Math.max(0, Math.min(savedPos.top, window.innerHeight - 158))}px`;
|
||||
} else {
|
||||
// [Gitea #323] First use: top-right under the room header, over the
|
||||
// timeline. Bottom-right sat on the composer (Send / Emoji, and on
|
||||
// phones the whole message box), so typing landed on the call.
|
||||
el.style.left = `${Math.max(0, window.innerWidth - 280 - 16)}px`;
|
||||
el.style.top = `${PIP_DEFAULT_TOP}px`;
|
||||
el.style.left = `${window.innerWidth - 280 - 16}px`;
|
||||
el.style.top = `${window.innerHeight - 158 - 72}px`;
|
||||
}
|
||||
el.style.width = '280px';
|
||||
el.style.height = '158px';
|
||||
|
||||
@@ -44,6 +44,9 @@ export function ConsentRequiredPrompt() {
|
||||
const [opened, setOpened] = useState(false);
|
||||
const [blockedCount, setBlockedCount] = useState(0);
|
||||
const snoozedUntil = useRef(0);
|
||||
// [Gitea #311] Closing via Retry also deactivates the focus trap; that must
|
||||
// not snooze, or a retry that fails again (terms not accepted yet) is silent.
|
||||
const closingForRetry = useRef(false);
|
||||
const blocked = useRef(new Map<MatrixEvent, Room>());
|
||||
const modalStyle = useModalStyle(440);
|
||||
const server = mx.getDomain() ?? 'Your homeserver';
|
||||
@@ -74,6 +77,8 @@ export function ConsentRequiredPrompt() {
|
||||
}, [consentUri]);
|
||||
|
||||
const retry = useCallback(() => {
|
||||
closingForRetry.current = true;
|
||||
snoozedUntil.current = 0;
|
||||
setOpen(false);
|
||||
setOpened(false);
|
||||
const pending = Array.from(blocked.current.entries());
|
||||
@@ -97,7 +102,13 @@ export function ConsentRequiredPrompt() {
|
||||
focusTrapOptions={{
|
||||
initialFocus: '#consent-review',
|
||||
fallbackFocus: '#consent-later',
|
||||
onDeactivate: later,
|
||||
onDeactivate: () => {
|
||||
if (closingForRetry.current) {
|
||||
closingForRetry.current = false;
|
||||
return;
|
||||
}
|
||||
later();
|
||||
},
|
||||
clickOutsideDeactivates: true,
|
||||
escapeDeactivates: true,
|
||||
}}
|
||||
|
||||
Reference in New Issue
Block a user