mirror of
https://github.com/nextcloud/server.git
synced 2026-03-04 18:28:08 +01:00
fix(user_status): Fix losing focus to body when closing user status modal
Signed-off-by: Christopher Ng <chrng8@gmail.com>
This commit is contained in:
@@ -43,7 +43,9 @@
|
||||
</NcButton>
|
||||
|
||||
<!-- Status management modal -->
|
||||
<SetStatusModal v-if="isModalOpen" @close="closeModal" />
|
||||
<SetStatusModal v-if="isModalOpen"
|
||||
:inline="inline"
|
||||
@close="closeModal" />
|
||||
</component>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
<template>
|
||||
<NcModal size="normal"
|
||||
:name="$t('user_status', 'Set status')"
|
||||
:set-return-focus="setReturnFocus"
|
||||
@close="closeModal">
|
||||
<div class="set-status-modal">
|
||||
<!-- Status selector -->
|
||||
@@ -108,6 +109,18 @@ export default {
|
||||
},
|
||||
mixins: [OnlineStatusMixin],
|
||||
|
||||
props: {
|
||||
/**
|
||||
* Whether the component should be rendered as a Dashboard Status or a User Menu Entries
|
||||
* true = Dashboard Status
|
||||
* false = User Menu Entries
|
||||
*/
|
||||
inline: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
clearAt: null,
|
||||
@@ -156,6 +169,13 @@ export default {
|
||||
|
||||
return this.$t('user_status', 'Reset status')
|
||||
},
|
||||
|
||||
setReturnFocus() {
|
||||
if (this.inline) {
|
||||
return undefined
|
||||
}
|
||||
return document.querySelector('[aria-controls="header-menu-user-menu"]') ?? undefined
|
||||
},
|
||||
},
|
||||
|
||||
watch: {
|
||||
|
||||
Reference in New Issue
Block a user