Skip to content

Commit 2aa4f60

Browse files
committed
fix(smallWidthChat): move buttons bar outside for small messages so it is possible to copy the text
Signed-off-by: Dorra Jaouad <dorra.jaoued7@gmail.com>
1 parent 5105f04 commit 2aa4f60

File tree

2 files changed

+29
-4
lines changed

2 files changed

+29
-4
lines changed

src/components/MessagesList/MessagesGroup/Message/MessageItem.vue

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@
3333
:has-call="conversation.hasCall"
3434
:message="message"
3535
:read-info="readInfo"
36-
:is-split-view-enabled>
36+
:is-split-view-enabled
37+
@update:is-short-simple-message="isShortSimpleMessage = $event">
3738
<!-- reactions buttons and popover with details -->
3839
<ReactionsWrapper
3940
v-if="Object.keys(message.reactions).length"
@@ -52,7 +53,8 @@
5253
:class="{
5354
outgoing: actorStore.checkIfSelfIsActor(message) && isSplitViewEnabled && isUserMessage,
5455
incoming: !actorStore.checkIfSelfIsActor(message) && isSplitViewEnabled && isUserMessage,
55-
'bottom-side': isSplitViewEnabled && (isSmallMobile || isSidebar),
56+
'bottom-side': isSplitViewEnabled && !isShortSimpleMessage && (isSmallMobile || isSidebar),
57+
overlay: isSplitViewEnabled && isReactionsMenuOpen && !(isSmallMobile || isSidebar),
5658
}">
5759
<MessageButtonsBar
5860
v-if="showMessageButtonsBar"
@@ -61,7 +63,7 @@
6163
v-model:is-reactions-menu-open="isReactionsMenuOpen"
6264
v-model:is-forwarder-open="isForwarderOpen"
6365
class="message-buttons-bar"
64-
:class="{ outlined: !isSplitViewEnabled || isReactionsMenuOpen || isSmallMobile || isSidebar }"
66+
:class="{ outlined: buttonsBarOutlined && !isShortSimpleMessage }"
6567
:is-translation-available="isTranslationAvailable"
6668
:can-react="canReact"
6769
:message="message"
@@ -121,7 +123,7 @@ import { showError, showSuccess, showWarning, TOAST_DEFAULT_TIMEOUT } from '@nex
121123
import { t } from '@nextcloud/l10n'
122124
import { useIsSmallMobile } from '@nextcloud/vue/composables/useIsMobile'
123125
import { vIntersectionObserver as IntersectionObserver } from '@vueuse/components'
124-
import { inject } from 'vue'
126+
import { inject, ref } from 'vue'
125127
import NcAssistantButton from '@nextcloud/vue/components/NcAssistantButton'
126128
import NcButton from '@nextcloud/vue/components/NcButton'
127129
import IconUnfoldLessHorizontal from 'vue-material-design-icons/UnfoldLessHorizontal.vue'
@@ -250,6 +252,7 @@ export default {
250252
isReactionsMenuOpen: false,
251253
isForwarderOpen: false,
252254
isTranslateDialogOpen: false,
255+
isShortSimpleMessage: ref(false),
253256
}
254257
},
255258
@@ -405,6 +408,10 @@ export default {
405408
isUserMessage() {
406409
return !this.isSystemMessage && !this.isCombinedSystemMessage
407410
},
411+
412+
buttonsBarOutlined() {
413+
return !this.isSplitViewEnabled || this.isReactionsMenuOpen || this.isSmallMobile || this.isSidebar
414+
},
408415
},
409416
410417
methods: {
@@ -578,6 +585,10 @@ export default {
578585
inset-inline-end: 100%;
579586
top: calc(50% - var(--default-clickable-area) / 2);
580587
padding-inline: var(--default-grid-baseline);
588+
589+
&.overlay {
590+
inset-inline-end: calc(100% - var(--default-clickable-area) * 6);
591+
}
581592
}
582593
583594
&.incoming {
@@ -591,6 +602,10 @@ export default {
591602
inset-inline-start: 100%;
592603
top: calc(50% - var(--default-clickable-area) / 2);
593604
padding-inline: var(--default-grid-baseline);
605+
606+
&.overlay {
607+
inset-inline-start: calc(100% - var(--default-clickable-area) * 6);
608+
}
594609
}
595610
// END Split view
596611
}

src/components/MessagesList/MessagesGroup/Message/MessagePart/MessageBody.vue

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,8 @@ export default {
273273
},
274274
},
275275
276+
emits: ['update:isShortSimpleMessage'],
277+
276278
setup(props) {
277279
const { message } = toRefs(props)
278280
const {
@@ -494,6 +496,14 @@ export default {
494496
showJoinCallButton() {
495497
EventBus.emit('scroll-chat-to-bottom', { smooth: true })
496498
},
499+
500+
isShortSimpleMessage: {
501+
handler(newValue) {
502+
this.$emit('update:isShortSimpleMessage', newValue)
503+
},
504+
505+
immediate: true,
506+
},
497507
},
498508
499509
mounted() {

0 commit comments

Comments
 (0)