From 35f82c0d4b18d06cee7f29c06f213af224cc6ce3 Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Tue, 19 Nov 2024 10:59:59 +0400 Subject: [PATCH 1/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- .../blocks/sd-matrixdynamic.scss | 50 +++++++++++++++---- 1 file changed, 39 insertions(+), 11 deletions(-) diff --git a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss index 236703944d..812c38b9ed 100644 --- a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss +++ b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss @@ -58,13 +58,31 @@ } } +.sd-table__row:hover { + .sd-drag-element__svg { + visibility: visible; + } +} + +.sd-table__cell.sd-table__cell--drag { + >div { + display: flex; + justify-content: center; + align-items: center; + margin-left: calcSize(-5); + width: calcSize(5); + } +} + .sd-drag-element__svg { - width: calcSize(2); - height: calcSize(2); + width: calcSize(3); + height: calcSize(3); display: block; + cursor: pointer; + visibility: hidden; use { - fill: $foreground-light; + fill: $primary; } } @@ -72,15 +90,18 @@ from { border-width: 0px; } + to { border-width: 8px; } } + @keyframes paddingAnimation { from { padding-top: 0; padding-bottom: 0; } + to { padding-top: 24px; padding-bottom: 32px; @@ -88,25 +109,27 @@ } @keyframes empty { - from { - } - to { - } + from {} + + to {} } + .sd-table__row--leave, .sd-table__row--enter { animation-name: empty; --move-whole-animation-duration: calc(var(--move-animation-duration) + var(--move-animation-delay)); --fade-whole-animation-duration: calc(var(--fade-animation-duration) + var(--fade-animation-delay)); animation-duration: max(var(--fade-whole-animation-duration), var(--move-whole-animation-duration)); - & > td { + + &>td { animation-name: borderAnimation; animation-direction: var(--animation-direction); animation-timing-function: var(--animation-timing-function); animation-duration: var(--move-animation-duration); animation-fill-mode: forwards; animation-delay: var(--move-animation-delay); - & > div { + + &>div { animation-name: fadeIn, moveInWithOverflow; opacity: 0; animation-direction: var(--animation-direction); @@ -117,6 +140,7 @@ } } } + .sd-table__row--enter { --move-animation-delay: 0s; --move-animation-duration: #{$matrix-row-move-in-duration}; @@ -125,6 +149,7 @@ --animation-direction: normal; --animation-timing-function: #{$ease-out}; } + .sd-table__row--leave { --move-animation-delay: #{$matrix-row-move-out-delay}; --move-animation-duration: #{$matrix-row-move-out-duration}; @@ -133,10 +158,12 @@ --animation-direction: reverse; --animation-timing-function: #{$reverse-ease-out}; } + .sd-table__row--detail { + &.sd-table__row--enter, &.sd-table__row--leave { - & > td { + &>td { animation-name: borderAnimation, paddingAnimation; animation-duration: var(--move-animation-duration); animation-fill-mode: forwards; @@ -153,6 +180,7 @@ --animation-direction: normal; --animation-timing-function: #{$ease-out}; } + &.sd-table__row--leave { --move-animation-delay: #{$matrix-detail-row-move-out-delay}; --move-animation-duration: #{$matrix-detail-row-move-out-duration}; @@ -161,4 +189,4 @@ --animation-direction: reverse; --animation-timing-function: #{$reverse-ease-out}; } -} +} \ No newline at end of file From 57fe167e0943f85ca49a47e6a3852d8367d5af6c Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Wed, 20 Nov 2024 16:28:47 +0400 Subject: [PATCH 2/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- packages/survey-core/src/question_matrixdynamic.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/survey-core/src/question_matrixdynamic.ts b/packages/survey-core/src/question_matrixdynamic.ts index 98d30799c9..77ba1c042c 100644 --- a/packages/survey-core/src/question_matrixdynamic.ts +++ b/packages/survey-core/src/question_matrixdynamic.ts @@ -105,7 +105,7 @@ export class QuestionMatrixDynamicModel extends QuestionMatrixDropdownModelBase return true; } public onPointerDown(pointerDownEvent: PointerEvent, row: MatrixDropdownRowModelBase):void { - if (!row || !this.isRowsDragAndDrop) return; + if (!row || !this.isRowsDragAndDrop || this.isDesignMode) return; if (this.isBanStartDrag(pointerDownEvent)) return; if (row.isDetailPanelShowing) return; this.draggedRow = row; From 53144385c478237904a081d7aefe9272676b4f91 Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Thu, 21 Nov 2024 15:10:23 +0400 Subject: [PATCH 3/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- .../src/defaultV2-theme/blocks/sd-matrixdynamic.scss | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss index 812c38b9ed..741744fcb1 100644 --- a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss +++ b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss @@ -71,6 +71,8 @@ align-items: center; margin-left: calcSize(-5); width: calcSize(5); + background-color: $question-background; + min-height: calcSize(6); } } From 1a22b888bf5e25a516ae6dbeb15e698649447ac3 Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Thu, 21 Nov 2024 15:41:53 +0400 Subject: [PATCH 4/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- packages/survey-core/src/common-styles/sv-drag-drop.scss | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/survey-core/src/common-styles/sv-drag-drop.scss b/packages/survey-core/src/common-styles/sv-drag-drop.scss index d7b5bb720f..76322a2757 100644 --- a/packages/survey-core/src/common-styles/sv-drag-drop.scss +++ b/packages/survey-core/src/common-styles/sv-drag-drop.scss @@ -47,6 +47,13 @@ align-items: center; line-height: 0; } + + .sd-table__cell.sd-table__cell--drag { + >div { + background-color: $question-background; + min-height: calcSize(6); + } + } } .sv-matrix-row--drag-drop-ghost-mod td { From 36d0491bcdffbcacefd7bd5f061fad1389e7b9a4 Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Tue, 26 Nov 2024 16:09:41 +0400 Subject: [PATCH 5/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- .../survey-core/src/common-styles/sv-drag-drop.scss | 7 +++++++ .../survey-core/src/question_matrixdropdownrendered.ts | 10 ++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/packages/survey-core/src/common-styles/sv-drag-drop.scss b/packages/survey-core/src/common-styles/sv-drag-drop.scss index 76322a2757..8b9694228b 100644 --- a/packages/survey-core/src/common-styles/sv-drag-drop.scss +++ b/packages/survey-core/src/common-styles/sv-drag-drop.scss @@ -56,6 +56,13 @@ } } +.sd-table__cell--header, +.sd-table__cell { + &.sd-table__cell--drag { + padding-right: 0; + } +} + .sv-matrix-row--drag-drop-ghost-mod td { background-color: $background-dim; } diff --git a/packages/survey-core/src/question_matrixdropdownrendered.ts b/packages/survey-core/src/question_matrixdropdownrendered.ts index 241dd1fe4b..3a45d7e7ae 100644 --- a/packages/survey-core/src/question_matrixdropdownrendered.ts +++ b/packages/survey-core/src/question_matrixdropdownrendered.ts @@ -494,7 +494,7 @@ export class QuestionMatrixDropdownRenderedTable extends Base { if (!isShown) return; this.headerRowValue = this.createRenderedRow(this.cssClasses); if (this.isRowsDragAndDrop) { - this.headerRow.cells.push(this.createHeaderCell(null, "action")); + this.headerRow.cells.push(this.createHeaderCell(null, "action", this.cssClasses.actionsCellDrag)); } if (this.hasActionCellInRows("start")) { this.headerRow.cells.push(this.createHeaderCell(null, "action")); @@ -1072,23 +1072,25 @@ export class QuestionMatrixDropdownRenderedTable extends Base { if (!choices || !Array.isArray(choices)) return null; return choices; } - private setHeaderCellCssClasses(cell: QuestionMatrixDropdownRenderedCell, cellType?: string): void { + private setHeaderCellCssClasses(cell: QuestionMatrixDropdownRenderedCell, cellType?: string, classMod?: string): void { cell.className = new CssClassBuilder() .append(this.cssClasses.headerCell) .append(this.cssClasses.columnTitleCell, this.matrix.isColumnLayoutHorizontal) .append(this.cssClasses.emptyCell, !!cell.isEmpty) .append(this.cssClasses.cell + "--" + cellType, !!cellType) + .append(classMod, !!classMod) .toString(); } private createHeaderCell( column: MatrixDropdownColumn, - cellType: string = null + cellType: string = null, + classMod?: string ): QuestionMatrixDropdownRenderedCell { let cell = !!column ? this.createTextCell(column.locTitle) : this.createEmptyCell(); cell.column = column; this.setHeaderCell(column, cell); if (!cellType) cellType = (!!column && column.cellType !== "default") ? column.cellType : this.matrix.cellType; - this.setHeaderCellCssClasses(cell, cellType); + this.setHeaderCellCssClasses(cell, cellType, classMod); return cell; } private setHeaderCell( From 910e708db94ae1c73f2250461fbc2850af35737a Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Fri, 29 Nov 2024 14:05:08 +0400 Subject: [PATCH 6/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- packages/survey-core/src/common-styles/sv-drag-drop.scss | 1 + .../src/defaultV2-theme/blocks/sd-matrixdynamic.scss | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/survey-core/src/common-styles/sv-drag-drop.scss b/packages/survey-core/src/common-styles/sv-drag-drop.scss index 8b9694228b..9956294cfd 100644 --- a/packages/survey-core/src/common-styles/sv-drag-drop.scss +++ b/packages/survey-core/src/common-styles/sv-drag-drop.scss @@ -60,6 +60,7 @@ .sd-table__cell { &.sd-table__cell--drag { padding-right: 0; + padding-left: 0; } } diff --git a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss index 741744fcb1..98cfca3737 100644 --- a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss +++ b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss @@ -69,7 +69,7 @@ display: flex; justify-content: center; align-items: center; - margin-left: calcSize(-5); + margin-left: calcSize(-4); width: calcSize(5); background-color: $question-background; min-height: calcSize(6); From d8fe982d8115786c06b78fff1d26c2ebfce0c12a Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Mon, 2 Dec 2024 10:39:28 +0400 Subject: [PATCH 7/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- .../src/defaultV2-theme/blocks/sd-matrixdynamic.scss | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss index 98cfca3737..229e96ab47 100644 --- a/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss +++ b/packages/survey-core/src/defaultV2-theme/blocks/sd-matrixdynamic.scss @@ -67,10 +67,10 @@ .sd-table__cell.sd-table__cell--drag { >div { display: flex; - justify-content: center; + justify-content: end; align-items: center; margin-left: calcSize(-4); - width: calcSize(5); + width: calcSize(4); background-color: $question-background; min-height: calcSize(6); } From 7e13137e91019e2f6759266d6814fd61627f2357 Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Mon, 2 Dec 2024 15:43:10 +0400 Subject: [PATCH 8/9] work for the https://github.com/surveyjs/survey-library/issues/8596 --- .../survey-core/src/common-styles/sv-drag-drop.scss | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/survey-core/src/common-styles/sv-drag-drop.scss b/packages/survey-core/src/common-styles/sv-drag-drop.scss index 9956294cfd..54753b47e3 100644 --- a/packages/survey-core/src/common-styles/sv-drag-drop.scss +++ b/packages/survey-core/src/common-styles/sv-drag-drop.scss @@ -64,6 +64,16 @@ } } +.sd-question--mobile { + + .sd-table__cell--header, + .sd-table__cell { + &.sd-table__cell--drag { + display: none; + } + } +} + .sv-matrix-row--drag-drop-ghost-mod td { background-color: $background-dim; } From 42c8710c1bb7805a4b6a143efd6dfb4bab13bbf2 Mon Sep 17 00:00:00 2001 From: dmitrykurmanov Date: Tue, 3 Dec 2024 08:56:38 +0400 Subject: [PATCH 9/9] https://github.com/surveyjs/survey-library/issues/8596 --- ...-allowRowsDragAndDrop-lockedRowCount-2.png | Bin 0 -> 13775 bytes ...ic-allowRowsDragAndDrop-lockedRowCount.png | Bin 14479 -> 13318 bytes .../matrixdynamic-allowRowsDragAndDrop.png | Bin 19990 -> 19799 bytes .../tests/defaultV2/matrixdynamic.ts | 4 ++++ 4 files changed, 4 insertions(+) create mode 100644 visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop-lockedRowCount-2.png diff --git a/visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop-lockedRowCount-2.png b/visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop-lockedRowCount-2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7b36388d940c31db5c43dc815ecef3d75d74e85 GIT binary patch literal 13775 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 URS0X~IOY*ZR#~R>naS(_0r1PUT>t<8 literal 0 HcmV?d00001 diff --git a/visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop-lockedRowCount.png b/visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop-lockedRowCount.png index edc6f99972db532e107df98de3530096f0bbde95..cfdfbbc1b9219a848193f974ed4a3c789fdb972f 100644 GIT binary patch literal 13318 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 aOFh{7ujg(YH_uWExx4s$)AX0C-~V@90AzXq literal 14479 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 BWHJB% diff --git a/visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop.png b/visualRegressionTests/tests/defaultV2/etalons/matrixdynamic-allowRowsDragAndDrop.png index 2c11c5caadd899c6aa95368ef19ef74986b2d3b0..850bf045efd969674a978bd6ae464ef52638aa9a 100644 GIT binary patch literal 19799 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 sBOz<^|^4zd;ahiT8mgr$W_1hhQ=3#r2k<^TWy literal 19990 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 { const matrixdynamicRoot = Selector(".sd-question"); await resetFocusToBody(); + await t.hover(matrixdynamicRoot.find(".sd-table__row")); await takeElementScreenshot("matrixdynamic-allowRowsDragAndDrop.png", matrixdynamicRoot, t, comparer); }); }); @@ -246,7 +247,10 @@ frameworks.forEach(framework => { const matrixdynamicRoot = Selector(".sd-question"); await resetFocusToBody(); + await t.hover(matrixdynamicRoot.find(".sd-table__row").nth(0)); await takeElementScreenshot("matrixdynamic-allowRowsDragAndDrop-lockedRowCount.png", matrixdynamicRoot, t, comparer); + await t.hover(matrixdynamicRoot.find(".sd-table__row").nth(1)); + await takeElementScreenshot("matrixdynamic-allowRowsDragAndDrop-lockedRowCount-2.png", matrixdynamicRoot, t, comparer); await ClientFunction(() => { (window as any).survey.getAllQuestions()[0].allowRowsDragAndDrop = false; })(); await takeElementScreenshot("matrixdynamic-lockedRowCount.png", matrixdynamicRoot, t, comparer);