diff --git a/src/renderer/components/Workspace.vue b/src/renderer/components/Workspace.vue index f9173308..b84bdfae 100644 --- a/src/renderer/components/Workspace.vue +++ b/src/renderer/components/Workspace.vue @@ -7,7 +7,7 @@ ref="tabWrap" class="tab tab-block column col-12" > -
  • +
  • diff --git a/src/renderer/components/WorkspacePropsTab.vue b/src/renderer/components/WorkspacePropsTab.vue index 98b84347..48770610 100644 --- a/src/renderer/components/WorkspacePropsTab.vue +++ b/src/renderer/components/WorkspacePropsTab.vue @@ -32,15 +32,15 @@ {{ $t('word.add') }} - - - @@ -57,6 +57,7 @@ :table="table" :schema="schema" mode="table" + @remove-field="removeField" /> @@ -193,7 +194,7 @@ export default { const orgName = originalField.name; if (JSON.stringify(originalField) !== JSON.stringify(this.localFields[lI]) || originalSibling !== localSibling) - changes.push({ ...this.localFields[lI], after, orgName }); + if (this.localFields[lI]) changes.push({ ...this.localFields[lI], after, orgName }); }); const params = { diff --git a/src/renderer/components/WorkspacePropsTable.vue b/src/renderer/components/WorkspacePropsTable.vue index 656b038b..434417a3 100644 --- a/src/renderer/components/WorkspacePropsTable.vue +++ b/src/renderer/components/WorkspacePropsTable.vue @@ -7,8 +7,8 @@
    @@ -100,6 +100,7 @@ :key="row._id" :row="row" :data-types="dataTypes" + @contextmenu="contextMenu" />
    @@ -110,11 +111,13 @@ import { mapActions, mapGetters } from 'vuex'; import draggable from 'vuedraggable'; import TableRow from '@/components/WorkspacePropsTableRow'; +import TableContext from '@/components/WorkspacePropsTableContext'; export default { name: 'WorkspacePropsTable', components: { TableRow, + TableContext, draggable }, props: { @@ -131,8 +134,7 @@ export default { localResults: [], isContext: false, contextEvent: null, - selectedCell: null, - selectedRows: [], + selectedField: null, scrollElement: null }; }, @@ -186,12 +188,13 @@ export default { refreshScroller () { this.resizeResults(); }, - contextMenu (event, cell) { - this.selectedCell = cell; - if (!this.selectedRows.includes(cell.id)) - this.selectedRows = [cell.id]; + contextMenu (event, uid) { + this.selectedField = uid; this.contextEvent = event; this.isContext = true; + }, + removeField () { + this.$emit('remove-field', this.selectedField); } } }; diff --git a/src/renderer/components/WorkspacePropsTableContext.vue b/src/renderer/components/WorkspacePropsTableContext.vue new file mode 100644 index 00000000..29744157 --- /dev/null +++ b/src/renderer/components/WorkspacePropsTableContext.vue @@ -0,0 +1,41 @@ + + + diff --git a/src/renderer/components/WorkspacePropsTableRow.vue b/src/renderer/components/WorkspacePropsTableRow.vue index 2c13096a..49cb7e79 100644 --- a/src/renderer/components/WorkspacePropsTableRow.vue +++ b/src/renderer/components/WorkspacePropsTableRow.vue @@ -1,5 +1,5 @@