Disable input in upgraded rooms

Also, fix some console warnings for missing emits.
This commit is contained in:
N-Pex 2025-08-04 10:02:44 +02:00
parent 615aa2b781
commit f804e0377b
4 changed files with 11 additions and 4 deletions

View file

@ -126,7 +126,7 @@
</v-btn>
<!-- Input area -->
<v-container v-if="!useVoiceMode && !useFileModeNonAdmin && room" fluid :class="['input-area-outer', replyToEvent ? 'reply-to' : '']">
<v-container v-if="!useVoiceMode && !useFileModeNonAdmin && room && room.currentState.getStateEvents('m.room.tombstone').length == 0" fluid :class="['input-area-outer', replyToEvent ? 'reply-to' : '']">
<div :class="[replyToEvent ? 'iput-area-inner-box' : '']">
<v-row class="ma-0 pa-0">
<div v-if="replyToEvent" class="row">

View file

@ -13,7 +13,7 @@
<script setup lang="ts">
import { inject, ref, Ref, watch } from "vue";
import { MessageProps, useMessage } from "./useMessage";
import { MessageEmits, MessageProps, useMessage } from "./useMessage";
import utils from "@/plugins/utils";
import { Room } from "matrix-js-sdk";
import { useI18n } from "vue-i18n";
@ -23,8 +23,9 @@ const $matrix: any = inject("globalMatrix");
const $navigation: any = inject("globalNavigation");
const props = defineProps<MessageProps>();
const emits = defineEmits<MessageEmits>();
const predecessorRoom: Ref<Room | undefined> = ref(undefined);
const predecessorRoom: Ref<Room | undefined> = ref(undefined);
const { event, eventSenderDisplayName } = useMessage(
$matrix,

View file

@ -10,12 +10,13 @@
<script setup lang="ts">
import { inject } from "vue";
import { MessageProps } from "./useMessage";
import { MessageEmits, MessageProps } from "./useMessage";
import utils from "@/plugins/utils";
const $navigation: any = inject("globalNavigation");
const props = defineProps<MessageProps>();
const emits = defineEmits<MessageEmits>();
const goToSuccessor = (e: Event) => {
e.preventDefault();

View file

@ -23,6 +23,11 @@ export type MessageEmits = {
(event: "other-avatar-clicked", value: { event: KeanuEvent; anchor: any }): void;
(event: "contextMenu", value: { event: KeanuEvent; anchor: any }): void;
(event: "addQuickHeartReaction", value: { position: { top: string; left: string } }): void;
(event: "send-quick-reaction", value: {reaction: string, event: KeanuEvent }): void;
(event: "download", value: { event: KeanuEvent }): void;
(event: "poll-closed", value: any): void;
(event: "more", value: { event: KeanuEvent }): void;
(event: "layout-change", value: { element: Element | undefined; action: () => void }): void;
};
export const useMessage = (