diff --git a/packages/client/src/App.vue b/packages/client/src/App.vue index 1305a549..3c1446a6 100644 --- a/packages/client/src/App.vue +++ b/packages/client/src/App.vue @@ -2,6 +2,7 @@ import type { Ref } from 'vue' import { useDevToolsBridge, useDevToolsState } from '@vue-devtools-next/core' import { isInChromePanel } from '@vue-devtools-next/shared' +import { Pane, Splitpanes } from 'splitpanes' // @TODO: fix browser extension cross-origin localStorage issue useColorMode() @@ -36,6 +37,13 @@ useEventListener('keydown', (e) => { if (e.code === 'KeyD' && e.altKey && e.shiftKey) bridge.value.emit('toggle-panel') }) + +const splitScreenEnabled = computed(() => clientState.value.splitScreen.enabled) +const isSplitScreenAvailable = splitScreenAvailable +const splitScreenSize = computed({ + get: () => clientState.value.splitScreen.size, + set: v => clientState.value.splitScreen.size = v, +}) diff --git a/packages/client/src/assets/styles/main.css b/packages/client/src/assets/styles/main.css index a22c0c05..427bc954 100644 --- a/packages/client/src/assets/styles/main.css +++ b/packages/client/src/assets/styles/main.css @@ -25,39 +25,35 @@ body::-webkit-scrollbar { .splitpanes__splitter { position: relative; } - .splitpanes__splitter:before { position: absolute; left: 0; top: 0; - transition: .2s ease; + transition: 0.2s ease; content: ''; transition: opacity 0.4s; z-index: 1; } - .splitpanes__splitter:hover:before { background: #8881; opacity: 1; } - -.splitpanes--vertical>.splitpanes__splitter { +.splitpanes--vertical > .splitpanes__splitter { min-width: 0 !important; width: 0 !important; + @apply border-r border-base; } - -.splitpanes--horizontal>.splitpanes__splitter { +.splitpanes--horizontal > .splitpanes__splitter { min-height: 0 !important; height: 0 !important; + --uno: border-t border-base; } - -.splitpanes--vertical>.splitpanes__splitter:before { +.splitpanes--vertical > .splitpanes__splitter:before { left: -5px; right: -4px; height: 100%; } - -.splitpanes--horizontal>.splitpanes__splitter:before { +.splitpanes--horizontal > .splitpanes__splitter:before { top: -5px; bottom: -4px; width: 100%; diff --git a/packages/client/src/components/common/DockingPanel.vue b/packages/client/src/components/common/DockingPanel.vue index 3e140bcc..e7c44493 100644 --- a/packages/client/src/components/common/DockingPanel.vue +++ b/packages/client/src/components/common/DockingPanel.vue @@ -13,6 +13,12 @@ const expandSidebar = computed({ set: v => (devtoolsClientState.value.expandSidebar = v), }) +const splitScreenEnabled = computed({ + get: () => devtoolsClientState.value.splitScreen.enabled, + set: v => (devtoolsClientState.value.splitScreen.enabled = v), +}) +const isSplitScreenAvailable = splitScreenAvailable + function refreshPage() { location.reload() } @@ -36,6 +42,12 @@ function refreshPage() {
Settings
+
+ +
+ {{ splitScreenEnabled ? 'Close Split Screen' : 'Split Screen' }} + +
Refresh Page diff --git a/packages/client/src/components/common/SideNav.vue b/packages/client/src/components/common/SideNav.vue index 5d4f0749..7c45bef9 100644 --- a/packages/client/src/components/common/SideNav.vue +++ b/packages/client/src/components/common/SideNav.vue @@ -9,7 +9,7 @@ const buttonMoreTabs = ref() const sidebarExpanded = computed(() => devtoolsClientState.value.expandSidebar) const sidebarScrollable = ref(false) -const { categorizedTabs: displayedTabs } = useAllTabs() +const { enabledTabs } = useAllTabs()