aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx
diff options
context:
space:
mode:
authorNathan-SR <144961007+Nathan-SR@users.noreply.github.com>2024-06-12 03:28:07 -0400
committerNathan-SR <144961007+Nathan-SR@users.noreply.github.com>2024-06-12 03:28:07 -0400
commit707a1a4cba9f0af9ee07b487eddf0f4ca85c8a78 (patch)
tree96fc90a99c3f6af6199add401b6b0d74d7729b15 /src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx
parent571220cb349644efc149b8e13d000a37366db664 (diff)
col menu icon now shows only on hover
Diffstat (limited to 'src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx')
-rw-r--r--src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx b/src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx
index 0da186f81..0fe0033d4 100644
--- a/src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx
+++ b/src/client/views/collections/collectionSchema/SchemaColumnHeader.tsx
@@ -1,6 +1,6 @@
/* eslint-disable react/no-unused-prop-types */
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
-import { action, computed, observable } from 'mobx';
+import { action, computed, makeObservable, observable } from 'mobx';
import { observer } from 'mobx-react';
import * as React from 'react';
import { returnEmptyDoclist, returnEmptyFilter, returnFalse, returnZero, setupMoveUpEvents } from '../../../../ClientUtils';
@@ -51,7 +51,7 @@ export interface SchemaColumnHeaderProps {
export class SchemaColumnHeader extends ObservableReactComponent<SchemaColumnHeaderProps> {
@observable _altTitle: string | undefined = undefined;
- @observable _displayKeysDropdown: boolean = false;
+ @observable _showMenuIcon: boolean = false;
@computed get fieldKey() {
return this._props.columnKeys[this._props.columnIndex];
@@ -59,6 +59,7 @@ export class SchemaColumnHeader extends ObservableReactComponent<SchemaColumnHea
constructor(props: SchemaColumnHeaderProps){
super(props);
+ makeObservable(this);
this._props.schemaView.openColumnMenu(0, false)
}
@@ -196,6 +197,11 @@ export class SchemaColumnHeader extends ObservableReactComponent<SchemaColumnHea
return toRender;
}
+ @action handlePointerEnter = () => this._showMenuIcon = true;
+ @action handlePointerLeave = () => this._showMenuIcon = false;
+
+ @computed get displayButton() {return this._showMenuIcon;}
+
render() {
return (
<div
@@ -203,6 +209,8 @@ export class SchemaColumnHeader extends ObservableReactComponent<SchemaColumnHea
style={{
width: this._props.columnWidths[this._props.columnIndex],
}}
+ onPointerEnter={() => {this.handlePointerEnter()}}
+ onPointerLeave={() => {this.handlePointerLeave()}}
onPointerDown={this.setupDrag}
ref={col => {
if (col) {
@@ -215,7 +223,7 @@ export class SchemaColumnHeader extends ObservableReactComponent<SchemaColumnHea
<div className="schema-header-menu">
<div className="schema-header-button">
- {this.headerButton}
+ {this.displayButton ? this.headerButton : null}
</div>
</div>
</div>