+
@@ -15,7 +16,8 @@ import Preview from './components/Preview.vue';
import Sidebar from './components/Sidebar.vue';
import Controls from './components/Controls.vue';
import NavBar from './components/NavBar.vue';
-import { useIsMacOS } from './integration/platform';
+import CommandBar from './components/CommandBar.vue';
+import { useIsMacOS, useIsWindows } from './integration/platform';
export default defineComponent({
name: 'App',
@@ -24,10 +26,12 @@ export default defineComponent({
Sidebar,
Controls,
NavBar,
+ CommandBar,
},
setup() {
return {
- isMacOS: useIsMacOS()
+ isMacOS: useIsMacOS(),
+ isWindows: useIsWindows()
}
}
});
diff --git a/src/background.ts b/src/background.ts
index 5837586..213ceb5 100644
--- a/src/background.ts
+++ b/src/background.ts
@@ -5,7 +5,7 @@ import { createProtocol } from 'vue-cli-plugin-electron-builder/lib'
import installExtension, { VUEJS3_DEVTOOLS } from 'electron-devtools-installer'
import { basename } from 'path';
-import { installContextMenuHandling, configureApplicationMenu } from './electron/menus';
+import { installContextMenuHandling, configureApplicationMenu, showsApplicationMenu } from './electron/menus';
import emitter from './electron/events';
import { openPreferences } from './electron/preferences-window';
import { injectSystemColors } from './electron/colors';
@@ -51,7 +51,8 @@ async function createWindow() {
minWidth: 1050,
show: false,
vibrancy: 'sidebar',
- titleBarStyle: process.platform === 'darwin' ? 'hiddenInset' : 'default',
+ titleBarStyle: process.platform === 'darwin' ? 'hiddenInset' : 'hidden',
+ titleBarOverlay: process.platform === 'win32',
webPreferences: {
// Use pluginOptions.nodeIntegration, leave this alone
@@ -70,6 +71,15 @@ async function createWindow() {
win.show();
});
+ if (!showsApplicationMenu() && isDevelopment) {
+ win.webContents.on('before-input-event', (event, input) => {
+ if (input.control && input.shift && input.key.toLocaleLowerCase() == 'i') {
+ win.webContents.openDevTools({ mode: 'undocked' });
+ event.preventDefault();
+ }
+ })
+ }
+
if (process.env.WEBPACK_DEV_SERVER_URL) {
// Load the url of the dev server if in development mode
await win.loadURL(process.env.WEBPACK_DEV_SERVER_URL as string)
diff --git a/src/components/CommandBar.vue b/src/components/CommandBar.vue
new file mode 100644
index 0000000..24bee9f
--- /dev/null
+++ b/src/components/CommandBar.vue
@@ -0,0 +1,59 @@
+
+
+
+
+
+ obs-layout
+
+
+
+
+
+
+ Sync
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/ConnectionState.vue b/src/components/ConnectionState.vue
new file mode 100644
index 0000000..acbc249
--- /dev/null
+++ b/src/components/ConnectionState.vue
@@ -0,0 +1,72 @@
+
+
+
+
+
diff --git a/src/components/NavBar.vue b/src/components/NavBar.vue
index 5f532dd..c3c7816 100644
--- a/src/components/NavBar.vue
+++ b/src/components/NavBar.vue
@@ -12,33 +12,20 @@
-
-
Sync current layout to scene:
-
-
-
-
-
-
-
-
-
+
-
+