Pārlūkot izejas kodu

rename isHidden, daygrid event-placement improvements

Adam Shaw 4 gadi atpakaļ
vecāks
revīzija
e54b11a88d

+ 1 - 1
packages/daygrid/src/TableCell.tsx

@@ -192,7 +192,7 @@ export class TableCell extends DateComponent<TableCellProps> {
       for (let placement of singlePlacements) {
         allSegs.push(placement.seg)
 
-        if (placement.isHidden) {
+        if (!placement.isVisible) {
           hiddenSegs.push(placement.seg)
         }
       }

+ 6 - 6
packages/daygrid/src/TableRow.tsx

@@ -191,14 +191,14 @@ export class TableRow extends DateComponent<TableRowProps, TableRowState> {
 
   renderFgSegs(
     segPlacements: TableSegPlacement[],
-    selectedInstanceHash: { [instanceId: string]: any },
+    selectedInstanceHash: { [instanceId: string]: any }, // for hiding the original in event dnd/resize
     todayRange: DateRange,
     isDragging?: boolean,
     isResizing?: boolean,
     isDateSelecting?: boolean,
   ): VNode[] {
     let { context } = this
-    let { eventSelection } = this.props
+    let { eventSelection } = this.props // being selected by touch. bad vocab confusion with selectedInstanceHash!
     let { framePositions } = this.state
     let defaultDisplayEventEnd = this.props.cells.length === 1 // colCnt === 1
     let nodes: VNode[] = []
@@ -210,8 +210,8 @@ export class TableRow extends DateComponent<TableRowProps, TableRowState> {
         let key = instanceId + ':' + placement.partIndex
         let isSelected = selectedInstanceHash[instanceId]
         let isMirror = isDragging || isResizing || isDateSelecting
-        let isHidden = placement.isHidden || isSelected
-        let isAbsolute = placement.isAbsolute || isHidden || isMirror
+        let isVisible = placement.isVisible && !isSelected
+        let isAbsolute = placement.isAbsolute
         let left: CssDimValue = ''
         let right: CssDimValue = ''
 
@@ -235,7 +235,7 @@ export class TableRow extends DateComponent<TableRowProps, TableRowState> {
             key={key}
             ref={isMirror ? null : this.segHarnessRefs.createRef(key)}
             style={{
-              visibility: isHidden ? 'hidden' : ('' as any),
+              visibility: isVisible ? ('' as any) : 'hidden',
               marginTop: isAbsolute ? '' : placement.marginTop,
               top: isAbsolute ? placement.absoluteTop : '',
               left: left,
@@ -381,7 +381,7 @@ function buildMirrorPlacements(mirrorSegs: TableSeg[], colPlacements: TableSegPl
   return mirrorSegs.map((seg: TableSeg) => ({
     seg,
     partIndex: 0,
-    isHidden: false,
+    isVisible: true,
     isAbsolute: true,
     absoluteTop: topsByInstanceId[seg.eventRange.instance.instanceId],
     marginTop: 0

+ 8 - 8
packages/daygrid/src/event-placement.ts

@@ -17,7 +17,7 @@ import { TableSeg } from './TableSeg'
 export interface TableSegPlacement {
   seg: TableSeg
   partIndex: number
-  isHidden: boolean
+  isVisible: boolean
   isAbsolute: boolean
   absoluteTop: number // populated regardless of isAbsolute
   marginTop: number
@@ -77,7 +77,7 @@ export function computeFgSegPlacement(
     multiColPlacements[seg.firstCol].push({
       seg,
       partIndex: 0,
-      isHidden: true,
+      isVisible: false,
       isAbsolute: true,
       absoluteTop: 0,
       marginTop: 0,
@@ -88,7 +88,7 @@ export function computeFgSegPlacement(
       singleColPlacements[col].push({
         seg: resliceSeg(seg, col, col + 1, cells),
         partIndex: 0,
-        isHidden: true,
+        isVisible: false,
         isAbsolute: false,
         absoluteTop: 0,
         marginTop: 0,
@@ -106,7 +106,7 @@ export function computeFgSegPlacement(
     multiColPlacements[hiddenEntry.spanStart].push({
       seg,
       partIndex: 0,
-      isHidden: true,
+      isVisible: false,
       isAbsolute: true,
       absoluteTop: 0,
       marginTop: 0,
@@ -117,7 +117,7 @@ export function computeFgSegPlacement(
       singleColPlacements[col].push({
         seg: resliceSeg(seg, col, col + 1, cells),
         partIndex: 0,
-        isHidden: true,
+        isVisible: false,
         isAbsolute: false,
         absoluteTop: 0,
         marginTop: 0,
@@ -158,7 +158,7 @@ function placeRects(rects: SegRect[], segs: TableSeg[], cells: TableCellModel[])
       singlePlacements.push({
         seg: resliceSeg(seg, col, col + 1, cells),
         partIndex: rect.partIndex,
-        isHidden: false,
+        isVisible: true,
         isAbsolute: false,
         absoluteTop: 0,
         marginTop: rect.levelCoord - currentHeight
@@ -184,7 +184,7 @@ function placeRects(rects: SegRect[], segs: TableSeg[], cells: TableCellModel[])
           multiPlacements.push({
             seg: resliceSeg(seg, rect.spanStart, rect.spanEnd, cells),
             partIndex: rect.partIndex,
-            isHidden: false,
+            isVisible: true,
             isAbsolute: true,
             absoluteTop: rect.levelCoord,
             marginTop: 0,
@@ -195,7 +195,7 @@ function placeRects(rects: SegRect[], segs: TableSeg[], cells: TableCellModel[])
           multiPlacements.push({
             seg: resliceSeg(seg, rect.spanStart, rect.spanEnd, cells),
             partIndex: rect.partIndex,
-            isHidden: false,
+            isVisible: true,
             isAbsolute: false,
             absoluteTop: 0,
             marginTop: currentMarginTop // claim the margin