Browse Source

fix: click outside bug

Signed-off-by: mertmit <mertmit99@gmail.com>
pull/5896/head
mertmit 1 year ago
parent
commit
9c0daaffe5
  1. 6
      packages/nc-gui/components/smartsheet/Grid.vue
  2. 2
      packages/nc-gui/composables/useMultiSelect/index.ts

6
packages/nc-gui/components/smartsheet/Grid.vue

@ -211,6 +211,7 @@ const {
makeActive,
selectedRange,
isCellInFillRange,
isFillMode,
} = useMultiSelect(
meta,
fields,
@ -668,10 +669,13 @@ onClickOutside(tableBodyEl, (e) => {
if (editEnabled && (isVirtualCol(activeCol) || activeCol.uidt === UITypes.JSON)) return
// skip if fill mode is active
if (isFillMode.value) return
// ignore unselecting if clicked inside or on the picker(Date, Time, DateTime, Year)
// or single/multi select options
const activePickerOrDropdownEl = document.querySelector(
'.nc-picker-datetime.active,.nc-dropdown-single-select-cell.active,.nc-dropdown-multi-select-cell.active,.nc-picker-date.active,.nc-picker-year.active,.nc-picker-time.active,.nc-fill-handle',
'.nc-picker-datetime.active,.nc-dropdown-single-select-cell.active,.nc-dropdown-multi-select-cell.active,.nc-picker-date.active,.nc-picker-year.active,.nc-picker-time.active',
)
if (
e.target &&

2
packages/nc-gui/composables/useMultiSelect/index.ts

@ -903,8 +903,8 @@ export function useMultiSelect(
resetSelectedRange,
selectedRange,
makeActive,
fillHandleMouseDown,
isCellInFillRange,
isMouseDown,
isFillMode,
}
}

Loading…
Cancel
Save