fix(mail): fit workspace within private layout

Signed-off-by: Sebastian <krupinski01@gmail.com>
This commit is contained in:
2026-07-09 21:20:30 -04:00
parent 7d9bd8491c
commit 93a8157166
3 changed files with 24 additions and 8 deletions
+16 -6
View File
@@ -215,13 +215,15 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
<!-- Normal UI --> <!-- Normal UI -->
<div v-else class="mail-container"> <div v-else class="mail-container">
<!-- Top toolbar --> <!-- Top toolbar -->
<v-app-bar class="mail-toolbar" elevation="0" density="compact"> <v-toolbar class="mail-toolbar" elevation="0" density="compact">
<v-app-bar-nav-icon <v-btn
v-if="isMobile" v-if="isMobile"
icon="mdi-menu"
variant="text"
@click="sidebarToggle" @click="sidebarToggle"
/> />
<v-app-bar-title>Mail</v-app-bar-title> <v-toolbar-title>Mail</v-toolbar-title>
<v-spacer /> <v-spacer />
@@ -255,13 +257,14 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
> >
mdi-sync mdi-sync
</v-icon> </v-icon>
</v-app-bar> </v-toolbar>
<!-- Main content area --> <!-- Main content area -->
<div class="mail-content"> <div class="mail-content">
<!-- Folder tree sidebar --> <!-- Folder tree sidebar -->
<v-navigation-drawer <v-navigation-drawer
v-model="sidebarVisible" v-model="sidebarVisible"
contained
:permanent="!isMobile" :permanent="!isMobile"
:temporary="isMobile" :temporary="isMobile"
width="280" width="280"
@@ -411,7 +414,8 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
height: 100vh; height: 100%;
min-height: 0;
padding: 48px; padding: 48px;
text-align: center; text-align: center;
width: 100%; width: 100%;
@@ -425,7 +429,8 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
.mail-container { .mail-container {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
height: 100vh; height: 100%;
min-height: 0;
isolation: isolate; isolation: isolate;
} }
@@ -436,6 +441,7 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
.mail-content { .mail-content {
display: flex; display: flex;
flex: 1; flex: 1;
min-height: 0;
overflow: hidden; overflow: hidden;
position: relative; position: relative;
} }
@@ -447,6 +453,7 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
.mail-main { .mail-main {
flex: 1; flex: 1;
min-height: 0;
display: flex; display: flex;
overflow: hidden; overflow: hidden;
min-width: 0; min-width: 0;
@@ -454,6 +461,8 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
.mail-wrapper { .mail-wrapper {
flex: 1; flex: 1;
min-height: 0;
min-width: 0;
display: flex; display: flex;
overflow: hidden; overflow: hidden;
} }
@@ -467,6 +476,7 @@ const handleMessageSelectionDelete = () => mailUiStore.deleteSelectedMessages()
overflow-y: auto; overflow-y: auto;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
min-height: 0;
} }
.mail-reader-panel { .mail-reader-panel {
+2 -1
View File
@@ -5,7 +5,8 @@ const routes = [
component: () => import('@/pages/MailPage.vue'), component: () => import('@/pages/MailPage.vue'),
meta: { meta: {
title: 'Mail', title: 'Mail',
requiresAuth: true requiresAuth: true,
layout: 'fixed'
} }
}, },
] ]
+6 -1
View File
@@ -3,7 +3,8 @@
.mail-container { .mail-container {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
height: 100vh; height: 100%;
min-height: 0;
isolation: isolate; isolation: isolate;
} }
@@ -14,6 +15,7 @@
.mail-content { .mail-content {
display: flex; display: flex;
flex: 1; flex: 1;
min-height: 0;
overflow: hidden; overflow: hidden;
position: relative; position: relative;
} }
@@ -25,6 +27,7 @@
.mail-main { .mail-main {
flex: 1; flex: 1;
min-height: 0;
display: flex; display: flex;
overflow: hidden; overflow: hidden;
min-width: 0; min-width: 0;
@@ -32,6 +35,8 @@
.mail-wrapper { .mail-wrapper {
flex: 1; flex: 1;
min-height: 0;
min-width: 0;
display: flex; display: flex;
overflow: hidden; overflow: hidden;
} }