From 210908c36c70bd9467367564a2221715b3abdc4a Mon Sep 17 00:00:00 2001 From: Matthew Runyon Date: Fri, 2 Jun 2023 10:02:40 -0500 Subject: [PATCH] refactor: Clean up golden-layout css (#1338) Reverts revert #1334 Applies #1322 w/ a fix for enterprise builds Still seems to need the ignore in `karma.config.cjs` though. Probably because the golden-layout package tests use old libraries --- package-lock.json | 2 + packages/dashboard/src/PanelPlaceholder.scss | 6 +- packages/dashboard/src/PanelPlaceholder.tsx | 2 +- .../src/layout/GoldenLayout.module.scss | 9 - .../dashboard/src/layout/GoldenLayout.scss | 345 +--------------- packages/dashboard/src/layout/LayoutUtils.ts | 15 +- packages/dashboard/src/layout/index.ts | 1 - packages/golden-layout/karma.conf.cjs | 6 + packages/golden-layout/package.json | 3 +- .../golden-layout/scss/goldenlayout-base.scss | 12 - .../scss/goldenlayout-dark-theme.scss | 379 ++++++++++++------ .../src/GoldenLayout.module.scss | 8 + .../src}/GoldenLayoutThemeExport.ts | 0 packages/golden-layout/src/LayoutManager.ts | 2 + packages/golden-layout/src/declaration.d.ts | 6 + packages/golden-layout/src/index.ts | 2 + tests/golden-layout.spec.ts | 2 +- ...drag-tab-to-left-edge-2-chromium-linux.png | Bin 4294 -> 4635 bytes ...-drag-tab-to-left-edge-2-firefox-linux.png | Bin 6548 -> 6828 bytes ...n-drag-tab-to-left-edge-2-webkit-linux.png | Bin 3863 -> 4168 bytes ...drag-tab-to-left-edge-3-chromium-linux.png | Bin 34515 -> 34344 bytes ...-drag-tab-to-left-edge-3-firefox-linux.png | Bin 65051 -> 64903 bytes ...n-drag-tab-to-left-edge-3-webkit-linux.png | Bin 31279 -> 31122 bytes 23 files changed, 318 insertions(+), 482 deletions(-) delete mode 100644 packages/dashboard/src/layout/GoldenLayout.module.scss create mode 100644 packages/golden-layout/src/GoldenLayout.module.scss rename packages/{dashboard/src/layout => golden-layout/src}/GoldenLayoutThemeExport.ts (100%) create mode 100644 packages/golden-layout/src/declaration.d.ts diff --git a/package-lock.json b/package-lock.json index 61bd02320c..c9f9d3ba3b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26588,6 +26588,7 @@ "version": "0.40.3", "license": "Apache-2.0", "dependencies": { + "@deephaven/components": "file:../components", "jquery": "^3.6.0" }, "devDependencies": { @@ -28472,6 +28473,7 @@ "@deephaven/golden-layout": { "version": "file:packages/golden-layout", "requires": { + "@deephaven/components": "file:../components", "browserify": "^17.0.0", "esmify": "^2.1.1", "jquery": "^3.6.0", diff --git a/packages/dashboard/src/PanelPlaceholder.scss b/packages/dashboard/src/PanelPlaceholder.scss index 284c222a09..1b77207852 100644 --- a/packages/dashboard/src/PanelPlaceholder.scss +++ b/packages/dashboard/src/PanelPlaceholder.scss @@ -4,9 +4,13 @@ display: flex; flex-direction: column; justify-content: center; - padding: $spacer-3; min-height: 100%; max-height: 100%; text-align: center; overflow: hidden; + + // add padding on an inner wrapper so it is included in max height of parent + div { + padding: $spacer-3; + } } diff --git a/packages/dashboard/src/PanelPlaceholder.tsx b/packages/dashboard/src/PanelPlaceholder.tsx index b659523ccf..d0684500aa 100644 --- a/packages/dashboard/src/PanelPlaceholder.tsx +++ b/packages/dashboard/src/PanelPlaceholder.tsx @@ -11,7 +11,7 @@ const PanelPlaceholder = React.forwardRef( const component = LayoutUtils.getComponentNameFromPanel({ props }); return (
- Component "{component}" is not registered. +
Component "{component}" is not registered.
); } diff --git a/packages/dashboard/src/layout/GoldenLayout.module.scss b/packages/dashboard/src/layout/GoldenLayout.module.scss deleted file mode 100644 index 681a0b118a..0000000000 --- a/packages/dashboard/src/layout/GoldenLayout.module.scss +++ /dev/null @@ -1,9 +0,0 @@ -@import '@deephaven/components/scss/custom.scss'; -@import './GoldenLayout.scss'; - -// Exported variables for use in GoldenLayoutThemeExport.js -/* stylelint-disable property-no-unknown */ -:export { - tab-height: $tab-height; - drag-border-width: $drag-border-width; -} diff --git a/packages/dashboard/src/layout/GoldenLayout.scss b/packages/dashboard/src/layout/GoldenLayout.scss index d3dce8bee2..0392db293d 100644 --- a/packages/dashboard/src/layout/GoldenLayout.scss +++ b/packages/dashboard/src/layout/GoldenLayout.scss @@ -2,344 +2,22 @@ @import '@deephaven/golden-layout/scss/goldenlayout-base.scss'; @import '@deephaven/golden-layout/scss/goldenlayout-dark-theme.scss'; -$tab-height: 28px; -$drag-border-width: 5px; -$close-button-height: 8px; -$tab-font-size: 12px; +// Styling for behaviours not part of the default golden layout package -$lm-tab-color: $gray-400; -$lm-tab-hover-color: $gray-300; -$lm-tab-active-color: $white; -$lm-tab-icon-color: $gray-200; - -//make some subtle tab background colors relative to our defined color -$lm-tab-active-background: $content-bg; -$lm-tab-background: darken($lm-tab-active-background, 3.5); -$lm-header-background: darken($lm-tab-active-background, 5); - -$lm-close-button-hover-color: $gray-100; -$lm-close-button-active-color: $gray-400; - -$lm-splitter-hover-color: $gray-400; -$lm-splitter-active-color: $gray-300; - -.lm_goldenlayout { - background: $background; - position: absolute; - - .lm_header { - box-sizing: content-box; // golden-layout sets a js height using a content box model - height: $tab-height; - padding-top: 0; - background: $lm-header-background; - box-shadow: inset 0 -1px 0 0 $background; - // inset box shadows with 0-blur used to draw borders without impacting spacing or GL size calculations. - // golden layout default styling doesnt have the same border styling we want - // this trick is used elsewhere in the header as well for the same purpose - - .lm_controls { - > li { - height: 100%; - width: 24px; - } - } - } -} - -.lm_maximised { - border: 15px solid rgba($black, 0.85); - height: 100% !important; - width: 100% !important; - .lm_items { - box-shadow: $box-shadow-900; - } -} - -.lm_header .lm_controls .lm_tabpreviousbutton { - background-size: 16px; - // vsChevronLeft - background-image: str-replace( - url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M5.928 7.976l4.357 4.357-.618.62L5 8.284v-.618L9.667 3l.618.619-4.357 4.357z'/%3E%3C/svg%3E"), - '#', - '%23' - ); -} - -.lm_header .lm_controls .lm_tabnextbutton { - background-size: 16px; - // vsChevronRight - background-image: str-replace( - url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M10.072 8.024L5.715 3.667l.618-.62L11 7.716v.618L6.333 13l-.618-.619 4.357-4.357z'/%3E%3C/svg%3E"), - '#', - '%23' - ); -} - -.lm_header .lm_controls .lm_tabdropdown { - background-size: 16px; - // vsChevronDown - background-image: str-replace( - url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M7.976 10.072l4.357-4.357.62.618L8.284 11h-.618L3 6.333l.619-.618 4.357 4.357z'/%3E%3C/svg%3E"), - '#', - '%23' - ); - - &::before { - display: none; - } -} - -.lm_header .lm_controls .lm_maximise { - background-size: 16px; - // vsChromeMaximize - background-image: str-replace( - url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M3 3v10h10V3H3zm9 9H4V4h8v8z'/%3E%3C/svg%3E"), - '#', - '%23' - ); -} - -.lm_tabs:empty + .lm_controls .lm_maximise { +.lm_tab .editor-unsaved-indicator { display: none; -} - -.lm_maximised .lm_header .lm_controls .lm_maximise { - opacity: 0.7; - // vsChromeMinimize - background-image: str-replace( - url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$gray-100}' d='M14 8v1H3V8h11z'/%3E%3C/svg%3E"), - '#', - '%23' - ); - - &:hover { - opacity: 1; - } -} - -.lm_header .lm_tab { - display: flex; - align-items: center; - font-family: $font-family-sans-serif; - background-color: $lm-tab-background; - color: $lm-tab-color; - height: $tab-height; - font-size: $tab-font-size; - min-width: 5rem; - margin: 0; - padding: 0 $spacer-1 0 $spacer-2; - box-shadow: inset -1px -1px 0 0 $background; // acting as bottom and right border - transition: color $transition, background-color $transition; - max-width: 12rem; - white-space: nowrap; - overflow: hidden; - - .lm_title { - flex-grow: 1; - padding-right: $spacer-1; - // add equalized spacing for tabs without close buttons - // so that when a tab is longer then min-width it still - // is balanced with equal padding. Extra padding is then - // removed from tabs with close buttons via negative margin - } - - .lm_title_before { - display: flex; - align-items: center; - } - - .editor-unsaved-indicator { - display: none; - margin-right: 5px; - width: 8px; - height: 8px; - border-radius: 50%; - background: $primary; - - &.is-unsaved { - display: inline-block; - } - } -} - -.lm_header .lm_tab.lm_active, -.lm_header .lm_tab.lm_active:hover { - height: $tab-height; - background-color: $lm-tab-active-background; - color: $lm-tab-active-color; - padding-bottom: 0; - box-shadow: inset -1px 0 0 0 $background; // act as right border only when active - // also kills the default shadow, doesn't work well with our design - &.lm_focusin { - box-shadow: inset 0 1px $primary, inset -1px 0 0 0 $background; // top focus indicator, right border - } -} - -.lm_window_blur { - .lm_header .lm_tab.lm_active.lm_focusin { - box-shadow: none; - } -} - -.lm_content { - background: $content-bg; - overflow: visible; -} - -.lm_header .lm_tab .lm_close_tab { - $lm-close-button-padding: 4px; + margin-right: 5px; + width: 8px; + height: 8px; + border-radius: 50%; + background: $primary; - cursor: pointer; - position: relative; - top: unset; - right: unset; - width: $close-button-height; - height: $close-button-height; - padding: $lm-close-button-padding; - margin-left: -$spacer-1; // undo padding on title - background-image: none; //remove the golden-layout image url - //fa-times-light url svg encoded as a background mask - background-color: $lm-tab-background; //set the backgroun color to nothing - mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E"); - mask-position: center center; - mask-repeat: no-repeat; - mask-size: $close-button-height; - opacity: 1; //overide the opacity change - transition: background-color $transition; -} - -.lm_splitter, -.lm_splitter:hover { - background: $lm-splitter-hover-color; -} - -.lm_splitter.lm_dragging { - background: $lm-splitter-active-color; -} - -.lm_dragProxy { - .lm_content { - height: 100%; - width: 100%; - box-shadow: $box-shadow; - } - - .lm_header { - height: $tab-height; - - .lm_tab { - border: 0; - } + &.is-unsaved { + display: inline-block; } } -.lm_header .lm_tabdropdown_list { - z-index: $zindex-dropdown; - background: $lm-tab-background; - top: 22px; - right: 24px; - box-shadow: $box-shadow-900; - border-radius: $border-radius; - max-width: 12rem; - - .lm_tabdropdown_search { - padding: $spacer-1; - input { - padding: $input-padding-y $input-padding-x; - line-height: $input-line-height; - color: $input-color; - background-color: $input-bg; - border: $input-border-width solid $input-border-color; - border-radius: $border-radius; - max-width: 100%; - - &::placeholder { - color: $input-placeholder-color; - opacity: 1; - } - - &:focus { - border-color: $input-focus-border-color; - box-shadow: $input-btn-focus-box-shadow; - outline: 0; - } - } - } - - .lm_tab { - background: $lm-tab-background; - color: $lm-tab-hover-color; - box-shadow: none; - - .editor-unsaved-indicator { - width: 10px; - height: 10px; - border: 1px solid $lm-tab-background; - } - - &.lm_keyboard_active { - color: $lm-tab-hover-color; - background-color: $primary-dark; - } - - &:hover { - color: $lm-tab-active-color; - background-color: $primary; - } - } -} - -// disable hover styling during drag (pointer-events still needed) -body:not(.lm_dragging) .lm_header .lm_tab:not(.lm_active):hover { - color: $lm-tab-hover-color; -} - -.lm_header .lm_tab.lm_active .lm_close_tab { - background-color: $lm-tab-active-background; -} - -body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab { - background-color: $lm-close-button-active-color; -} - -body:not(.lm_dragging) .lm_header .lm_tab .lm_close_tab:hover { - background-color: $lm-close-button-hover-color; -} - -.lm_dropTargetIndicator { - @include ants-base($white, $black); //replace with ants - - box-sizing: border-box; - outline: 0; //clear the normal dotted line - box-shadow: none; //get rid of standard dropshadow as it overlapps ants now, and re-apply to exsising inner element -} - -.lm_dropTargetIndicator .lm_inner { - box-sizing: border-box; - border: $ant-thickness solid transparent; //offset shadow using a transparent border - box-shadow: inset 0 0 1rem 1px rgba(black, 0.45); //true black for this shadow - opacity: 1; //set opacity back to 1, default 0.2 and backroudn was solid. - background: rgba($primary, 0.1); //apply scrim as rgba background now instead -} - -//is added to the body class, prevents overflow in our app context .lm_dragging { - overflow: hidden; -} - -.lm_dragging .app { - pointer-events: none; - - // disable other control buttons during drag - .lm_controls > li { - &.lm_tabpreviousbutton, - &.lm_tabnextbutton { - pointer-events: auto; - } - - pointer-events: none; - } - //disable plotly pointer events while dragging golden layout .js-plotly-plot .plotly { svg, @@ -349,9 +27,4 @@ body:not(.lm_dragging) .lm_header .lm_tab .lm_close_tab:hover { pointer-events: none !important; } } - - // we still need events on our header for scroll while dragging to work - .lm_header { - pointer-events: auto; - } } diff --git a/packages/dashboard/src/layout/LayoutUtils.ts b/packages/dashboard/src/layout/LayoutUtils.ts index e1e2d9dfa7..baedbc14b4 100644 --- a/packages/dashboard/src/layout/LayoutUtils.ts +++ b/packages/dashboard/src/layout/LayoutUtils.ts @@ -1,10 +1,13 @@ import deepEqual from 'deep-equal'; import shortid from 'shortid'; import isMatch from 'lodash.ismatch'; -import { DragEvent } from 'react'; import Log from '@deephaven/log'; -import { isComponent, isRoot, isStack } from '@deephaven/golden-layout'; -import type GoldenLayout from '@deephaven/golden-layout'; +import GoldenLayout, { + isComponent, + isRoot, + isStack, + GoldenLayoutThemeExport, +} from '@deephaven/golden-layout'; import type { ComponentConfig, Config, @@ -16,9 +19,9 @@ import type { Stack, Tab, CloseOptions, + DragSourceEvent, } from '@deephaven/golden-layout'; import { assertNotNull } from '@deephaven/utils'; -import GoldenLayoutThemeExport from './GoldenLayoutThemeExport'; import { DashboardLayoutConfig } from '../DashboardLayout'; import { PanelConfig } from '../DashboardPlugin'; @@ -465,7 +468,7 @@ class LayoutUtils { replaceConfig?: Partial; createNewStack?: boolean; focusElement?: string; - dragEvent?: DragEvent; + dragEvent?: DragSourceEvent; } = {}): void { // attempt to retain focus after dom manipulation, which can break focus const maintainFocusElement = document.activeElement; @@ -475,7 +478,7 @@ class LayoutUtils { config.id = shortid.generate(); } - if (dragEvent) { + if (dragEvent !== undefined) { root?.layoutManager.createDragSourceFromEvent(config, dragEvent); return; } diff --git a/packages/dashboard/src/layout/index.ts b/packages/dashboard/src/layout/index.ts index 38249a807b..3912df26bb 100644 --- a/packages/dashboard/src/layout/index.ts +++ b/packages/dashboard/src/layout/index.ts @@ -1,4 +1,3 @@ -export { default as GoldenLayoutThemeExport } from './GoldenLayoutThemeExport'; export { default as LayoutUtils } from './LayoutUtils'; export { default as GLPropTypes } from './GLPropTypes'; diff --git a/packages/golden-layout/karma.conf.cjs b/packages/golden-layout/karma.conf.cjs index 7a401373f1..6e3d414805 100644 --- a/packages/golden-layout/karma.conf.cjs +++ b/packages/golden-layout/karma.conf.cjs @@ -25,6 +25,12 @@ module.exports = function (config) { browserify: { plugin: ['esmify'], + // ignored because it doesn't understand the scss import in GoldenLayoutThemeExport + configure: function (bundle) { + bundle.on('prebundle', function () { + bundle.ignore('./dist/GoldenLayoutThemeExport.js'); + }); + }, }, // test results reporter to use diff --git a/packages/golden-layout/package.json b/packages/golden-layout/package.json index 65466da704..f672e82bce 100644 --- a/packages/golden-layout/package.json +++ b/packages/golden-layout/package.json @@ -10,6 +10,7 @@ "source": "src/index.ts", "type": "module", "dependencies": { + "@deephaven/components": "file:../components", "jquery": "^3.6.0" }, "peerDependencies": { @@ -18,7 +19,7 @@ }, "scripts": { "build": "cross-env NODE_ENV=production run-p build:*", - "build:sass": "sass --embed-sources --style=compressed ./scss:./css", + "build:sass": "sass --embed-sources --load-path=../../node_modules --style=compressed ./src:./dist ./scss:./css", "build:babel": "babel ./src --out-dir ./dist --extensions \".ts,.js,.tsx,.jsx\" --source-maps --root-mode upward", "pretest": "npm run build", "test": "karma start karma.conf.cjs", diff --git a/packages/golden-layout/scss/goldenlayout-base.scss b/packages/golden-layout/scss/goldenlayout-base.scss index 52f2e6e4a6..cbfdcde5fe 100644 --- a/packages/golden-layout/scss/goldenlayout-base.scss +++ b/packages/golden-layout/scss/goldenlayout-base.scss @@ -259,18 +259,6 @@ $height6: 15px; // Appears 1 time // Dropdown arrow for additional tabs when too many to be displayed .lm_header { - .lm_controls .lm_tabdropdown:before { - content: ''; - width: 0; - height: 0; - vertical-align: middle; - display: inline-block; - border-top: 5px dashed; - border-right: 5px solid transparent; - border-left: 5px solid transparent; - color: white; // Overriden in specific Themes - } - .lm_tabdropdown_list { position: absolute; top: 20px; diff --git a/packages/golden-layout/scss/goldenlayout-dark-theme.scss b/packages/golden-layout/scss/goldenlayout-dark-theme.scss index e993886d53..3acce7d53a 100644 --- a/packages/golden-layout/scss/goldenlayout-dark-theme.scss +++ b/packages/golden-layout/scss/goldenlayout-dark-theme.scss @@ -1,150 +1,234 @@ -// Color variables (appears count calculates by raw css) -$color0: #000000; // Appears 7 times -$color1: #222222; // Appears 3 times -$color2: #eeeeee; // Appears 2 times -$color3: #dddddd; // Appears 2 times - -$color4: #cccccc; // Appears 1 time -$color5: #444444; // Appears 1 time -$color6: #999999; // Appears 1 time -$color7: #111111; // Appears 1 time -$color8: #452500; // Appears 1 time -$color9: #555555; // Appears 1 time -$color10: #ffffff; // Appears 2 time +@import '@deephaven/components/scss/custom.scss'; + +$tab-height: 28px; +$drag-border-width: 5px; + +$close-button-height: 8px; +$tab-font-size: 12px; + +$lm-tab-color: $gray-400; +$lm-tab-hover-color: $gray-300; +$lm-tab-active-color: $white; +$lm-tab-icon-color: $gray-200; + +//make some subtle tab background colors relative to our defined color +$lm-tab-active-background: $content-bg; +$lm-tab-background: darken($lm-tab-active-background, 3.5); +$lm-header-background: darken($lm-tab-active-background, 5); + +$lm-close-button-hover-color: $gray-100; +$lm-close-button-active-color: $gray-400; + +$lm-splitter-hover-color: $gray-400; +$lm-splitter-active-color: $gray-300; // ".lm_dragging" is applied to BODY tag during Drag and is also directly applied to the root of the object being dragged +//is added to the body class, prevents overflow in our app context +.lm_dragging { + overflow: hidden; + pointer-events: none; + + // we still need events on our header for scroll while dragging to work + .lm_goldenlayout .lm_header { + pointer-events: auto; + + // disable other control buttons during drag + .lm_controls > li { + pointer-events: none; + + &.lm_tabpreviousbutton, + &.lm_tabnextbutton { + pointer-events: auto; + } + } + } +} + +// disable hover styling during drag (pointer-events still needed) +body:not(.lm_dragging) .lm_header .lm_tab:not(.lm_active):hover { + color: $lm-tab-hover-color; +} + +.lm_header .lm_tab.lm_active .lm_close_tab { + background-color: $lm-tab-active-background; +} + +body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab { + background-color: $lm-close-button-active-color; +} + +body:not(.lm_dragging) .lm_header .lm_tab .lm_close_tab:hover { + background-color: $lm-close-button-hover-color; +} // Entire GoldenLayout Container, if a background is set, it is visible as color of "pane header" and "splitters" (if these latest has opacity very low) .lm_goldenlayout { - background: $color0; + background: $background; + position: absolute; } // Single Pane content (area in which final dragged content is contained) .lm_content { - background: $color1; + background: $content-bg; + overflow: visible; } // Single Pane content during Drag (style of moving window following mouse) .lm_dragProxy { .lm_content { - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9); + height: 100%; + width: 100%; + box-shadow: $box-shadow; + } + .lm_header { + height: $tab-height; + box-shadow: none; + + .lm_tab, + .lm_tab.lm_active { + border: 0; + box-shadow: $box-shadow; + } } } // Placeholder Container of target position .lm_dropTargetIndicator { - box-shadow: inset 0 0 30px $color0; - outline: 1px dashed $color4; - transition: all 200ms ease; + @include ants-base($white, $black); //replace with ants + box-sizing: border-box; + transition: all $transition-mid ease; // Inner Placeholder .lm_inner { - background: $color0; - opacity: 0.2; + box-sizing: border-box; + border: $ant-thickness solid transparent; //offset shadow using a transparent border + box-shadow: inset 0 0 1rem 1px rgba(black, 0.45); //true black for this shadow + opacity: 1; //set opacity back to 1, default 0.2 and backroudn was solid. + background: rgba( + $primary, + 0.1 + ); //apply scrim as rgba background now instead } } // Separator line (handle to change pane size) .lm_splitter { - background: $color0; + background: $lm-splitter-hover-color; opacity: 0.001; - transition: opacity 200ms ease; + transition: opacity $transition ease; &:hover, // When hovered by mouse... &.lm_dragging { - background: $color5; + background: $lm-splitter-active-color; opacity: 1; } } // Pane Header (container of Tabs for each pane) .lm_header { - height: 20px; + box-sizing: content-box; // golden-layout sets a js height using a content box model + height: $tab-height; + padding-top: 0; + background: $lm-header-background; + box-shadow: inset 0 -1px 0 0 $background; + // inset box shadows with 0-blur used to draw borders without impacting spacing or GL size calculations. + // golden layout default styling doesnt have the same border styling we want + // this trick is used elsewhere in the header as well for the same purpose user-select: none; + .lm_controls { + > li { + height: 100%; + width: 24px; + } + } + &.lm_selectable { cursor: pointer; } // Single Tab container. A single Tab is set for each pane, a group of Tabs are contained in ".lm_header" .lm_tab { - font-family: Arial, sans-serif; - font-size: 12px; - color: $color6; - background: $color7; - box-shadow: 2px -2px 2px rgba(0, 0, 0, 0.3); - margin-right: 2px; - padding-bottom: 2px; - padding-top: 2px; - - /*.lm_title // Present in LIGHT Theme - { - padding-top:1px; - }*/ + display: flex; + align-items: center; + font-family: $font-family-sans-serif; + background-color: $lm-tab-background; + color: $lm-tab-color; + height: $tab-height; + font-size: $tab-font-size; + min-width: 5rem; + margin: 0; + padding: 0 $spacer-1 0 $spacer-2; + box-shadow: inset -1px -1px 0 0 $background; // acting as bottom and right border + transition: color $transition, background-color $transition; + max-width: 12rem; + white-space: nowrap; + overflow: hidden; + + .lm_title { + flex-grow: 1; + padding-right: $spacer-1; + // add equalized spacing for tabs without close buttons + // so that when a tab is longer then min-width it still + // is balanced with equal padding. Extra padding is then + // removed from tabs with close buttons via negative margin + } + + .lm_title_before { + display: flex; + align-items: center; + } // Close Tab Icon .lm_close_tab { - width: 11px; - height: 11px; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAATElEQVR4nG3OwQ0DMQwDwZGRBtR/j1YJzMc5+IDoR+yCVO29g+pu981MFgqZmRdAfU7+CYWcbF11LwALjpBL0N0qybNx/RPU+gOeiS/+XCRwDlTgkQAAAABJRU5ErkJggg==); - background-position: center center; - background-repeat: no-repeat; - top: 4px; - right: 6px; - opacity: 0.4; + $lm-close-button-padding: 4px; + + cursor: pointer; + position: relative; + width: $close-button-height; + height: $close-button-height; + padding: $lm-close-button-padding; + margin-left: -$spacer-1; // undo padding on title + //fa-times-light url svg encoded as a background mask + background-color: $lm-tab-background; //set the backgroun color to nothing + mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E"); + mask-position: center center; + mask-repeat: no-repeat; + mask-size: $close-button-height; + opacity: 1; + transition: background-color $transition; &:hover { opacity: 1; } } - - // If Tab is active, so if it's in foreground - &.lm_active { - border-bottom: none; - box-shadow: 0 -2px 2px $color0; - padding-bottom: 3px; - - .lm_close_tab { - opacity: 1; - } - } - } -} - -.lm_dragProxy.lm_bottom, -.lm_stack.lm_bottom { - .lm_header .lm_tab { - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3); - &.lm_active { - box-shadow: 0 2px 2px $color0; - } } } // If Pane Header (container of Tabs for each pane) is selected (used only if addition of new Contents is made "by selection" and not "by drag") .lm_selected { .lm_header { - background-color: $color8; + background-color: $lm-tab-active-background; } } -.lm_tab { - &:hover, // If Tab is hovered - &.lm_active // If Tab is active, so if it's in foreground - { - background: $color1; - color: $color3; +.lm_header .lm_tab.lm_active, +.lm_header .lm_tab.lm_active:hover { + height: $tab-height; + background-color: $lm-tab-active-background; + color: $lm-tab-active-color; + padding-bottom: 0; + box-shadow: inset -1px 0 0 0 $background; // act as right border only when active + // also kills the default shadow, doesn't work well with our design + &.lm_focusin { + box-shadow: inset 0 1px $primary, inset -1px 0 0 0 $background; // top focus indicator, right border } } -.lm_header .lm_tabs .lm_tab.lm_keyboard_active { - color: $color0; - background: $color3; -} - -// Dropdown arrow for additional tabs when too many to be displayed -.lm_header .lm_controls .lm_tabdropdown:before { - color: $color10; +.lm_window_blur { + .lm_header .lm_tab.lm_active.lm_focusin { + box-shadow: none; + } } // Pane controls (popout, maximize, minimize, close) @@ -169,7 +253,23 @@ $color10: #ffffff; // Appears 2 time // Icon to Maximize Pane, so it will fill the entire GoldenLayout Container .lm_maximise { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAKElEQVR4nGP8////fwYCgImQAgYGBgYWKM2IR81/okwajIpgvsMbVgAwgQYRVakEKQAAAABJRU5ErkJggg==); + background-size: 16px; + // vsChromeMaximize + background-image: str-replace( + url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M3 3v10h10V3H3zm9 9H4V4h8v8z'/%3E%3C/svg%3E"), + '#', + '%23' + ); + } + + .lm_tabdropdown { + background-size: 16px; + // vsChevronDown + background-image: str-replace( + url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M7.976 10.072l4.357-4.357.62.618L8.284 11h-.618L3 6.333l.619-.618 4.357 4.357z'/%3E%3C/svg%3E"), + '#', + '%23' + ); } // Icon to Close Pane and so remove it from GoldenLayout Container @@ -178,52 +278,103 @@ $color10: #ffffff; // Appears 2 time } .lm_tabnextbutton { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABxJREFUCNdjUGBgEGBg4GBgYGFgYAKTHCARoDgABscAe0vtWukAAAAASUVORK5CYII=); + background-size: 16px; + // vsChevronRight + background-image: str-replace( + url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M10.072 8.024L5.715 3.667l.618-.62L11 7.716v.618L6.333 13l-.618-.619 4.357-4.357z'/%3E%3C/svg%3E"), + '#', + '%23' + ); } .lm_tabpreviousbutton { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAABxJREFUCNdjYGJgYGFg4GBgEGBgUACTHCARoDgABSMAXe2fzqEAAAAASUVORK5CYII=); + background-size: 16px; + // vsChevronLeft + background-image: str-replace( + url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$lm-tab-icon-color}' d='M5.928 7.976l4.357 4.357-.618.62L5 8.284v-.618L9.667 3l.618.619-4.357 4.357z'/%3E%3C/svg%3E"), + '#', + '%23' + ); } } -// If a specific Pane is maximized -.lm_maximised { - // Pane Header (container of Tabs for each pane) can have different style when is Maximized - .lm_header { - background-color: $color0; - } +.lm_header .lm_tabdropdown_list { + z-index: $zindex-dropdown; + background: $lm-tab-background; + top: 22px; + right: 24px; + box-shadow: $box-shadow-900; + border-radius: $border-radius; + max-width: 12rem; + + .lm_tabdropdown_search { + padding: $spacer-1; + input { + padding: $input-padding-y $input-padding-x; + line-height: $input-line-height; + color: $input-color; + background-color: $input-bg; + border: $input-border-width solid $input-border-color; + border-radius: $border-radius; + max-width: 100%; + + &::placeholder { + color: $input-placeholder-color; + opacity: 1; + } - // Pane controls are different in Maximized Mode, especially the old Icon "Maximise" that now has a different meaning, so "Minimize" (even if CSS Class did not change) - .lm_controls { - .lm_maximise { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAJ0lEQVR4nGP8//8/AzGAiShVI1YhCwMDA8OsWbPwBmZaWhoj0SYCAN1lBxMAX4n0AAAAAElFTkSuQmCC); + &:focus { + border-color: $input-focus-border-color; + box-shadow: $input-btn-focus-box-shadow; + outline: 0; + } } } -} -// If a specific Pane is Popped Out, so move it to a different Browser Window, Icon to restore original position is: -.lm_popin { - cursor: pointer; + .lm_tab { + background: $lm-tab-background; + color: $lm-tab-hover-color; + box-shadow: none; - // Background of Icon - .lm_bg { - background: $color10; - opacity: 0.3; + &.lm_keyboard_active { + color: $lm-tab-hover-color; + background-color: $primary-dark; + } + + &:hover { + color: $lm-tab-active-color; + background-color: $primary; + } } +} - // Icon to Restore original position in Golden Layout Container - .lm_icon { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAJCAYAAADpeqZqAAAAWklEQVR4nJWOyw3AIAxDHcQC7L8jbwT3AlJBfNp3SiI7dtRaLSlKKeoA1oEsKSQZCEluexw8Tm3ohk+E7bnOUHUGcNh+HwbBygw4AZ7FN/Lt84p0l+yTflV8AKQyLdcCRJi/AAAAAElFTkSuQmCC); - background-position: center center; - background-repeat: no-repeat; - border-left: 1px solid $color2; - border-top: 1px solid $color2; - opacity: 0.7; +// If a specific Pane is maximized +.lm_maximised { + border: 15px solid rgba($black, 0.85); + height: 100% !important; + width: 100% !important; + .lm_items { + box-shadow: $box-shadow-900; } - &:hover { - .lm_icon { - opacity: 1; + // Pane controls are different in Maximized Mode, especially the old Icon "Maximise" that now has a different meaning, so "Minimize" (even if CSS Class did not change) + .lm_controls { + .lm_maximise { + opacity: 0.7; + // vsChromeMinimize + background-image: str-replace( + url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$gray-100}' d='M14 8v1H3V8h11z'/%3E%3C/svg%3E"), + '#', + '%23' + ); + + &:hover { + opacity: 1; + } } } } + +.lm_tabs:empty + .lm_controls .lm_maximise { + display: none; +} diff --git a/packages/golden-layout/src/GoldenLayout.module.scss b/packages/golden-layout/src/GoldenLayout.module.scss new file mode 100644 index 0000000000..6090dcd543 --- /dev/null +++ b/packages/golden-layout/src/GoldenLayout.module.scss @@ -0,0 +1,8 @@ +@use '../scss/goldenlayout-dark-theme.scss' as theme; + +// Exported variables for use in GoldenLayoutThemeExport.js +/* stylelint-disable property-no-unknown */ +:export { + tab-height: theme.$tab-height; + drag-border-width: theme.$drag-border-width; +} diff --git a/packages/dashboard/src/layout/GoldenLayoutThemeExport.ts b/packages/golden-layout/src/GoldenLayoutThemeExport.ts similarity index 100% rename from packages/dashboard/src/layout/GoldenLayoutThemeExport.ts rename to packages/golden-layout/src/GoldenLayoutThemeExport.ts diff --git a/packages/golden-layout/src/LayoutManager.ts b/packages/golden-layout/src/LayoutManager.ts index af7df0deeb..6386ba7466 100644 --- a/packages/golden-layout/src/LayoutManager.ts +++ b/packages/golden-layout/src/LayoutManager.ts @@ -43,6 +43,8 @@ export type ComponentConstructor< new (container: ItemContainer, state: unknown): unknown; }; +export type DragSourceEvent = JQuery.TriggeredEvent; + /** * The main class that will be exposed as GoldenLayout. * diff --git a/packages/golden-layout/src/declaration.d.ts b/packages/golden-layout/src/declaration.d.ts new file mode 100644 index 0000000000..a10272fac6 --- /dev/null +++ b/packages/golden-layout/src/declaration.d.ts @@ -0,0 +1,6 @@ +declare module '*.module.scss' { + const content: Record; + export default content; +} + +declare module '*.scss'; diff --git a/packages/golden-layout/src/index.ts b/packages/golden-layout/src/index.ts index 50772dcb89..6f3d0f26bb 100644 --- a/packages/golden-layout/src/index.ts +++ b/packages/golden-layout/src/index.ts @@ -7,3 +7,5 @@ export * from './controls'; export * from './errors'; export * from './items'; export * from './utils'; +export { default as GoldenLayoutThemeExport } from './GoldenLayoutThemeExport'; +export type { DragSourceEvent } from './LayoutManager'; diff --git a/tests/golden-layout.spec.ts b/tests/golden-layout.spec.ts index d4fed1d301..0bf4079f3b 100644 --- a/tests/golden-layout.spec.ts +++ b/tests/golden-layout.spec.ts @@ -10,7 +10,7 @@ test.describe('tests golden-layout operations', () => { page = await browser.newPage(); await page.goto(''); - // reset the layout before each test + // load a custom layout for the tests await page.getByTestId('app-main-panels-button').click(); // start listener before click const fileChooserPromise = page.waitForEvent('filechooser'); diff --git a/tests/golden-layout.spec.ts-snapshots/tests-golden-layout-operations-golden-layout-can-drag-tab-to-left-edge-2-chromium-linux.png b/tests/golden-layout.spec.ts-snapshots/tests-golden-layout-operations-golden-layout-can-drag-tab-to-left-edge-2-chromium-linux.png index cdb413555e14136f66e2c9ef5c1a1af8a43c5b0a..095bd7a4d8d191cfe9cc88cb37a300e9e9ce57a6 100644 GIT binary patch literal 4635 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 JsZp|u{2zZ-d13$n literal 6548 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 OV5li+DOSFMg!~s<(+Up& diff --git a/tests/golden-layout.spec.ts-snapshots/tests-golden-layout-operations-golden-layout-can-drag-tab-to-left-edge-2-webkit-linux.png b/tests/golden-layout.spec.ts-snapshots/tests-golden-layout-operations-golden-layout-can-drag-tab-to-left-edge-2-webkit-linux.png index 3f555d588abb1b64764a6438ffbebd42859c46ef..a29cffd8aa4b8a73edea896696f69d5077f76748 100644 GIT binary patch literal 4168 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 diff --git a/tests/golden-layout.spec.ts-snapshots/tests-golden-layout-operations-golden-layout-can-drag-tab-to-left-edge-3-webkit-linux.png b/tests/golden-layout.spec.ts-snapshots/tests-golden-layout-operations-golden-layout-can-drag-tab-to-left-edge-3-webkit-linux.png index 0c2f0d06f14c8728a9c31edafe5af8bc9bb421ee..ab218a640ce7b71672af39a8b13140dffa418eda 100644 GIT binary patch delta 14715 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 phYQe5s?zL@^&{{yQ-Fv|b{ delta 14842 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