3636 </template >
3737 <template #name >
3838 <template v-if =" compact && iconType " >
39- <component :is =" iconType.component" :size =" 15" :fillColor =" iconType.color" />
39+ <component
40+ :is =" iconType.component"
41+ :size =" 15"
42+ :fillColor =" iconType.color" />
4043 <span class =" hidden-visually" >{{ iconType.text }}</span >
4144 </template >
4245 <span class =" text" > {{ item.displayName }} </span >
4346 </template >
44- <template v-if =" ! compact && ! item .isSensitive " #subname >
47+ <template v-if =" ! compact && ! item .isSensitive && ! isVoiceRoom " #subname >
4548 <span class =" conversation__subname" :title =" conversationInformation.title" >
4649 <span
4750 v-if =" conversationInformation.actor"
@@ -292,7 +295,7 @@ import { emit } from '@nextcloud/event-bus'
292295import { t } from ' @nextcloud/l10n'
293296import { useIsDarkTheme } from ' @nextcloud/vue/composables/useIsDarkTheme'
294297import { spawnDialog } from ' @nextcloud/vue/functions/dialog'
295- import { ref , toRefs } from ' vue'
298+ import { h , ref , toRefs } from ' vue'
296299import { isNavigationFailure , NavigationFailureType } from ' vue-router'
297300import NcActionButton from ' @nextcloud/vue/components/NcActionButton'
298301import NcActionSeparator from ' @nextcloud/vue/components/NcActionSeparator'
@@ -324,6 +327,7 @@ import IconVideo from 'vue-material-design-icons/Video.vue' // Filled for better
324327import ConfirmDialog from ' ../../UIShared/ConfirmDialog.vue'
325328import ConversationIcon from ' ./../../ConversationIcon.vue'
326329import IconMarkChatRead from ' ../../../../img/material-icons/mark-chat-read.svg?raw'
330+ import IconVolumeHighOutline from ' ../../../../img/material-icons/volume-high-outline.svg?raw'
327331import { useConversationInfo } from ' ../../../composables/useConversationInfo.ts'
328332import { AVATAR , CONVERSATION , PARTICIPANT } from ' ../../../constants.ts'
329333import { getTalkConfig , hasTalkFeature } from ' ../../../services/CapabilitiesManager.ts'
@@ -486,6 +490,10 @@ export default {
486490 && (! this .item .remoteServer || hasTalkFeature (this .item .token , ' federation-v2' ))
487491 },
488492
493+ isVoiceRoom () {
494+ return !! (this .item .attributes & CONVERSATION .ATTRIBUTE .VOICE_ROOM )
495+ },
496+
489497 iconType () {
490498 if (this .item .hasCall ) {
491499 return {
@@ -499,6 +507,11 @@ export default {
499507 color: this .isDarkTheme ? ' #FFCC00' : ' currentColor' ,
500508 text: t (' spreed' , ' Favorite' ),
501509 }
510+ } else if (this .isVoiceRoom ) {
511+ return {
512+ component: h (NcIconSvgWrapper, { svg: IconVolumeHighOutline, inline: true }),
513+ text: t (' spreed' , ' Voice room' ),
514+ }
502515 }
503516 return null
504517 },
@@ -758,7 +771,6 @@ export default {
758771 font- weight: 400 ;
759772 }
760773 }
761-
762774 }
763775
764776 & __subname {
0 commit comments