canvasPointerDown(e)">
@@ -168,7 +170,6 @@
.side {
height: 100%;
flex: 0 0 auto;
- display: flex;
align-items: center;
margin: 0 4px;
}
@@ -181,8 +182,6 @@
.shelf-and-viewport {
.shelf {
flex: 0 0 auto;
- display: flex;
- flex-direction: column;
.tools {
flex: 0 1 auto;
@@ -198,7 +197,6 @@
.swap-and-reset {
flex: 0 0 auto;
- display: flex;
}
}
}
diff --git a/frontend/src/components/panels/Minimap.vue b/frontend/src/components/panels/Minimap.vue
deleted file mode 100644
index 0763d62cd..000000000
--- a/frontend/src/components/panels/Minimap.vue
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-
diff --git a/frontend/src/components/panels/Properties.vue b/frontend/src/components/panels/Properties.vue
index 0763d62cd..56c3a2de2 100644
--- a/frontend/src/components/panels/Properties.vue
+++ b/frontend/src/components/panels/Properties.vue
@@ -1,5 +1,5 @@
-
+
@@ -7,5 +7,9 @@
diff --git a/frontend/src/components/widgets/buttons/IconButton.vue b/frontend/src/components/widgets/buttons/IconButton.vue
index 65e7de9b6..82bdd3d4c 100644
--- a/frontend/src/components/widgets/buttons/IconButton.vue
+++ b/frontend/src/components/widgets/buttons/IconButton.vue
@@ -6,7 +6,7 @@
@@ -34,6 +33,7 @@ import { defineComponent, PropType } from "vue";
import { ToolName } from "@/dispatcher/js-messages";
import { WidgetRow, IconButtonWidget } from "@/utilities/widgets";
+import LayoutRow from "@/components/layout/LayoutRow.vue";
import IconButton from "@/components/widgets/buttons/IconButton.vue";
import PopoverButton from "@/components/widgets/buttons/PopoverButton.vue";
import NumberInput from "@/components/widgets/inputs/NumberInput.vue";
@@ -182,6 +182,7 @@ export default defineComponent({
IconButton,
PopoverButton,
NumberInput,
+ LayoutRow,
},
});
diff --git a/frontend/src/components/widgets/scrollbars/PersistentScrollbar.vue b/frontend/src/components/widgets/scrollbars/PersistentScrollbar.vue
index 7668843df..2d31f96d9 100644
--- a/frontend/src/components/widgets/scrollbars/PersistentScrollbar.vue
+++ b/frontend/src/components/widgets/scrollbars/PersistentScrollbar.vue
@@ -15,7 +15,6 @@
.arrow {
flex: 0 0 auto;
- display: block;
background: none;
outline: none;
border: none;
diff --git a/frontend/src/components/window/MainWindow.vue b/frontend/src/components/window/MainWindow.vue
index 1e96de92b..e70696ca7 100644
--- a/frontend/src/components/window/MainWindow.vue
+++ b/frontend/src/components/window/MainWindow.vue
@@ -1,14 +1,10 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
@@ -18,29 +14,12 @@
overflow: auto;
touch-action: none;
}
-
-.title-bar-row {
- height: 28px;
- flex: 0 0 auto;
-}
-
-.workspace-row {
- position: relative;
- flex: 1 1 100%;
-}
-
-.status-bar-row {
- flex: 0 0 auto;
- // Prevents the creation of a scrollbar due to the child's negative margin
- overflow: hidden;
-}
diff --git a/frontend/src/components/window/title-bar/TitleBar.vue b/frontend/src/components/window/title-bar/TitleBar.vue
index 1a09d03f2..0dced7699 100644
--- a/frontend/src/components/window/title-bar/TitleBar.vue
+++ b/frontend/src/components/window/title-bar/TitleBar.vue
@@ -1,32 +1,38 @@
-
-
-
+
+
+
+
+
@@ -34,6 +40,7 @@
diff --git a/frontend/src/components/window/title-bar/WindowButtonsMac.vue b/frontend/src/components/window/title-bar/WindowButtonsMac.vue
index a3036fed2..fb03c0a4a 100644
--- a/frontend/src/components/window/title-bar/WindowButtonsMac.vue
+++ b/frontend/src/components/window/title-bar/WindowButtonsMac.vue
@@ -1,24 +1,28 @@
-
+
@@ -139,7 +142,7 @@ export default defineComponent({
activeDocumentIndex(newIndex: number) {
this.$nextTick(() => {
const documentsPanel = this.$refs.documentsPanel as typeof Panel;
- const newActiveTab = documentsPanel.$el.querySelectorAll(".tab-bar .tab-group .tab")[newIndex];
+ const newActiveTab = documentsPanel.$el.querySelectorAll("[data-tab-bar] [data-tab]")[newIndex];
newActiveTab.scrollIntoView();
});
},
diff --git a/frontend/src/lifetime/input.ts b/frontend/src/lifetime/input.ts
index 6befe70ab..5d985d53f 100644
--- a/frontend/src/lifetime/input.ts
+++ b/frontend/src/lifetime/input.ts
@@ -105,8 +105,8 @@ export function createInputManager(editor: EditorState, container: HTMLElement,
const onPointerDown = (e: PointerEvent): void => {
const { target } = e;
- const inCanvas = target instanceof Element && target.closest(".canvas");
- const inDialog = target instanceof Element && target.closest(".dialog-modal .floating-menu-content");
+ const inCanvas = target instanceof Element && target.closest("[data-canvas]");
+ const inDialog = target instanceof Element && target.closest("[data-dialog-modal] [data-floating-menu-content]");
if (dialog.dialogIsVisible() && !inDialog) {
dialog.dismissDialog();
@@ -139,9 +139,9 @@ export function createInputManager(editor: EditorState, container: HTMLElement,
const onMouseScroll = (e: WheelEvent): void => {
const { target } = e;
- const inCanvas = target instanceof Element && target.closest(".canvas");
+ const inCanvas = target instanceof Element && target.closest("[data-canvas]");
- const horizontalScrollableElement = target instanceof Element && target.closest(".scrollable-x");
+ const horizontalScrollableElement = target instanceof Element && target.closest("[data-scrollable-x]");
if (horizontalScrollableElement && e.deltaY !== 0) {
horizontalScrollableElement.scrollTo(horizontalScrollableElement.scrollLeft + e.deltaY, 0);
return;
@@ -157,7 +157,7 @@ export function createInputManager(editor: EditorState, container: HTMLElement,
// Window events
const onWindowResize = (container: HTMLElement): void => {
- const viewports = Array.from(container.querySelectorAll(".canvas"));
+ const viewports = Array.from(container.querySelectorAll("[data-canvas]"));
const boundsOfViewports = viewports.map((canvas) => {
const bounds = canvas.getBoundingClientRect();
return [bounds.left, bounds.top, bounds.right, bounds.bottom];