diff --git a/src/public/app/layouts/desktop_layout.js b/src/public/app/layouts/desktop_layout.js index 64302d2fb..c39e02b9a 100644 --- a/src/public/app/layouts/desktop_layout.js +++ b/src/public/app/layouts/desktop_layout.js @@ -80,6 +80,7 @@ import RelationMapButtons from "../widgets/floating_buttons/relation_map_buttons import MermaidExportButton from "../widgets/floating_buttons/mermaid_export_button.js"; import EditableCodeButtonsWidget from "../widgets/type_widgets/editable_code_buttons.js"; import ApiLogWidget from "../widgets/api_log.js"; +import HideFloatingButtonsButton from "../widgets/floating_buttons/hide_floating_buttons_button.js"; export default class DesktopLayout { constructor(customWidgets) { @@ -186,6 +187,7 @@ export default class DesktopLayout { .child(new RelationMapButtons()) .child(new MermaidExportButton()) .child(new BacklinksWidget()) + .child(new HideFloatingButtonsButton()) ) .child(new MermaidWidget()) .child( diff --git a/src/public/app/widgets/basic_widget.js b/src/public/app/widgets/basic_widget.js index f8a1c3ce8..213182c5c 100644 --- a/src/public/app/widgets/basic_widget.js +++ b/src/public/app/widgets/basic_widget.js @@ -8,6 +8,28 @@ class BasicWidget extends Component { style: '' }; this.classes = []; + + this.children = []; + this.childPositionCounter = 10; + } + + child(...components) { + if (!components) { + return this; + } + + super.child(...components); + + for (const component of components) { + if (component.position === undefined) { + component.position = this.childPositionCounter; + this.childPositionCounter += 10; + } + } + + this.children.sort((a, b) => a.position - b.position < 0 ? -1 : 1); + + return this; } id(id) { diff --git a/src/public/app/widgets/containers/container.js b/src/public/app/widgets/containers/container.js index f51ddce27..15ee0e928 100644 --- a/src/public/app/widgets/containers/container.js +++ b/src/public/app/widgets/containers/container.js @@ -1,33 +1,6 @@ import BasicWidget from "../basic_widget.js"; export default class Container extends BasicWidget { - constructor() { - super(); - - this.children = []; - - this.positionCounter = 10; - } - - child(...components) { - if (!components) { - return this; - } - - super.child(...components); - - for (const component of components) { - if (component.position === undefined) { - component.position = this.positionCounter; - this.positionCounter += 10; - } - } - - this.children.sort((a, b) => a.position - b.position < 0 ? -1 : 1); - - return this; - } - doRender() { this.$widget = $(`