From 83984700bf89261b377405eabcc40a44223c44aa Mon Sep 17 00:00:00 2001 From: Keavon Chambers Date: Sat, 29 May 2021 21:55:43 -0700 Subject: [PATCH] Generalize and rename overlays as "floating menus" Progress towards #135. --- client/web/src/App.vue | 4 +- client/web/src/components/panels/Document.vue | 4 +- .../web/src/components/panels/LayerTree.vue | 4 +- .../widgets/buttons/PopoverButton.vue | 15 +- .../floating-menus}/ColorPicker.vue | 6 +- .../widgets/floating-menus/FloatingMenu.vue | 250 ++++++++++++++++++ .../widgets/inputs/SwatchPairInput.vue | 27 +- .../components/widgets/overlays/Popover.vue | 236 ----------------- client/web/src/components/workspace/Panel.vue | 4 +- 9 files changed, 283 insertions(+), 267 deletions(-) rename client/web/src/components/{popovers => widgets/floating-menus}/ColorPicker.vue (98%) create mode 100644 client/web/src/components/widgets/floating-menus/FloatingMenu.vue delete mode 100644 client/web/src/components/widgets/overlays/Popover.vue diff --git a/client/web/src/App.vue b/client/web/src/App.vue index f171cecde..3ccf85601 100644 --- a/client/web/src/App.vue +++ b/client/web/src/App.vue @@ -26,7 +26,7 @@ // TODO: Replace with CSS color() function to calculate alpha when browsers support it // See https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/color() and https://caniuse.com/css-color-function // E6 = 90% alpha - --popover-opacity-color-2-mildblack: #222222e6; + --floating-menu-opacity-color-2-mildblack: #222222e6; } html, @@ -54,7 +54,7 @@ img { } // For placeholder messages (remove eventually) -.popover { +.floating-menu { h1, h2, h3, diff --git a/client/web/src/components/panels/Document.vue b/client/web/src/components/panels/Document.vue index e9af33846..fa3d39a1f 100644 --- a/client/web/src/components/panels/Document.vue +++ b/client/web/src/components/panels/Document.vue @@ -170,7 +170,7 @@ import { ResponseType, registerResponseHandler, Response, UpdateCanvas, SetActiv import LayoutRow from "../layout/LayoutRow.vue"; import LayoutCol from "../layout/LayoutCol.vue"; import WorkingColors from "../widgets/WorkingColors.vue"; -import { PopoverDirection } from "../widgets/overlays/Popover.vue"; +import { MenuDirection } from "../widgets/floating-menus/FloatingMenu.vue"; import ShelfItem from "../widgets/ShelfItem.vue"; import Separator, { SeparatorDirection, SeparatorType } from "../widgets/Separator.vue"; import IconButton from "../widgets/buttons/IconButton.vue"; @@ -256,7 +256,7 @@ export default defineComponent({ return { viewportSvg: "", activeTool: "Select", - PopoverDirection, + MenuDirection, SeparatorDirection, SeparatorType, }; diff --git a/client/web/src/components/panels/LayerTree.vue b/client/web/src/components/panels/LayerTree.vue index f24d76938..c633f61ed 100644 --- a/client/web/src/components/panels/LayerTree.vue +++ b/client/web/src/components/panels/LayerTree.vue @@ -85,7 +85,7 @@ import LayoutCol from "../layout/LayoutCol.vue"; import Separator, { SeparatorType } from "../widgets/Separator.vue"; import NumberInput from "../widgets/inputs/NumberInput.vue"; import PopoverButton from "../widgets/buttons/PopoverButton.vue"; -import { PopoverDirection } from "../widgets/overlays/Popover.vue"; +import { MenuDirection } from "../widgets/floating-menus/FloatingMenu.vue"; import IconButton from "../widgets/buttons/IconButton.vue"; import Icon from "../widgets/labels/Icon.vue"; @@ -125,7 +125,7 @@ export default defineComponent({ }, data() { return { - PopoverDirection, + MenuDirection, SeparatorType, layers: [] as Array, }; diff --git a/client/web/src/components/widgets/buttons/PopoverButton.vue b/client/web/src/components/widgets/buttons/PopoverButton.vue index ef6c795c0..f170518cb 100644 --- a/client/web/src/components/widgets/buttons/PopoverButton.vue +++ b/client/web/src/components/widgets/buttons/PopoverButton.vue @@ -1,9 +1,9 @@ @@ -15,7 +15,7 @@ height: 24px; flex: 0 0 auto; - .popover { + .floating-menu { left: 50%; } @@ -41,7 +41,7 @@ diff --git a/client/web/src/components/widgets/inputs/SwatchPairInput.vue b/client/web/src/components/widgets/inputs/SwatchPairInput.vue index ac499d944..6f1767cc3 100644 --- a/client/web/src/components/widgets/inputs/SwatchPairInput.vue +++ b/client/web/src/components/widgets/inputs/SwatchPairInput.vue @@ -2,15 +2,15 @@
- + - +
- + - +
@@ -53,7 +53,7 @@ } } - .popover { + .floating-menu { top: 50%; right: -2px; } @@ -68,26 +68,26 @@ diff --git a/client/web/src/components/workspace/Panel.vue b/client/web/src/components/workspace/Panel.vue index 115bb92ef..544dba304 100644 --- a/client/web/src/components/workspace/Panel.vue +++ b/client/web/src/components/workspace/Panel.vue @@ -139,7 +139,7 @@ import LayerTree from "../panels/LayerTree.vue"; import Minimap from "../panels/Minimap.vue"; import IconButton from "../widgets/buttons/IconButton.vue"; import PopoverButton, { PopoverButtonIcon } from "../widgets/buttons/PopoverButton.vue"; -import { PopoverDirection } from "../widgets/overlays/Popover.vue"; +import { MenuDirection } from "../widgets/floating-menus/FloatingMenu.vue"; export default defineComponent({ components: { @@ -160,7 +160,7 @@ export default defineComponent({ data() { return { PopoverButtonIcon, - PopoverDirection, + MenuDirection, }; }, });