Skip to content

Commit 63abf37

Browse files
committed
Make right drawer resizeable
1 parent dedde28 commit 63abf37

File tree

2 files changed

+27
-5
lines changed

2 files changed

+27
-5
lines changed

frontend/src/App.vue

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import ProtocolList from "@/components/protocol/ProtocolList.vue";
88
import {useQuasar} from "quasar";
99
import {useUiStateStore} from "@/store/uiState";
1010
11-
const uiState = useUiStateStore()
11+
const uiStore = useUiStateStore()
1212
1313
const leftDrawerOpen = ref(false)
1414
const toggleLeftDrawer = () => {
@@ -22,11 +22,19 @@ const $q = useQuasar()
2222
const darkMode = computed(() => $q.dark.isActive)
2323
const toggleDarkMode = () => {
2424
$q.dark.toggle()
25-
uiState.darkMode = $q.dark.isActive
25+
uiStore.darkMode = $q.dark.isActive
2626
}
2727
28-
if (uiState.darkMode !== undefined) {
29-
$q.dark.set(uiState.darkMode)
28+
if (uiStore.darkMode !== undefined) {
29+
$q.dark.set(uiStore.darkMode)
30+
}
31+
32+
let initialDrawerWidth = 0
33+
const resizeDrawer = (ev: any) => {
34+
if (ev.isFirst === true) {
35+
initialDrawerWidth = uiStore.rightDrawerWidth
36+
}
37+
uiStore.rightDrawerWidth = initialDrawerWidth - ev.offset.x
3038
}
3139
3240
const dev = computed(() => {
@@ -72,7 +80,8 @@ const dev = computed(() => {
7280
<ManualControlView/>
7381
</q-drawer>
7482

75-
<q-drawer v-model="rightDrawerOpen" side="right" bordered :width="400">
83+
<q-drawer v-model="rightDrawerOpen" side="right" bordered :width="uiStore.rightDrawerWidth">
84+
<div v-touch-pan.preserveCursor.prevent.mouse.horizontal="resizeDrawer" class="q-drawer__resizer"></div>
7685
<ProtocolList dense/>
7786
</q-drawer>
7887

@@ -88,3 +97,14 @@ const dev = computed(() => {
8897

8998
</q-layout>
9099
</template>
100+
101+
<style>
102+
.q-drawer__resizer {
103+
position: absolute;
104+
top: 0;
105+
bottom: 0;
106+
left: -2px;
107+
width: 4px;
108+
cursor: ew-resize;
109+
}
110+
</style>

frontend/src/store/uiState/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ interface UiState {
88
teamDetailsYellowCardsExpanded: boolean,
99
teamDetailsRedCardsExpanded: boolean,
1010
darkMode?: boolean,
11+
rightDrawerWidth: number,
1112
}
1213

1314
export const useUiStateStore = defineStore('uiState', {
@@ -18,6 +19,7 @@ export const useUiStateStore = defineStore('uiState', {
1819
teamDetailsYellowCardsExpanded: true,
1920
teamDetailsRedCardsExpanded: true,
2021
darkMode: undefined,
22+
rightDrawerWidth: 400,
2123
}
2224
const storedData = localStorage.getItem('ui-state')
2325
if (storedData) {

0 commit comments

Comments
 (0)