@@ -15,19 +15,40 @@ import { dblclick, flushGrid, getContainerCell } from '@vaadin/grid-pro/test/hel
15
15
describe ( 'grid-pro custom editor' , ( ) => {
16
16
let grid , cell ;
17
17
18
- function createGrid ( path , autoOpen = false ) {
18
+ function createGrid ( path ) {
19
19
grid = fixtureSync ( `
20
20
<vaadin-grid-pro>
21
21
<vaadin-grid-pro-edit-column path="${ path } " editor-type="custom"></vaadin-grid-pro-edit-column>
22
22
</vaadin-gri-pro>
23
23
` ) ;
24
24
25
+ // 1. Ensure grid cells have some height.
26
+ // 2. Allow date-picker backdrop clicks.
27
+ fixtureSync ( `
28
+ <style>
29
+ vaadin-grid-pro::part(cell) {
30
+ min-height: 36px;
31
+ }
32
+
33
+ vaadin-date-picker-overlay[fullscreen] {
34
+ inset: 0 !important;
35
+ justify-content: flex-end !important;
36
+ }
37
+
38
+ vaadin-date-picker-overlay[fullscreen]::part(overlay) {
39
+ width: 100%;
40
+ height: 70vh;
41
+ max-height: 70vh;
42
+ }
43
+ </style>
44
+ ` ) ;
45
+
25
46
const column = grid . querySelector ( `[path="${ path } "]` ) ;
26
47
switch ( path ) {
27
48
case 'date' :
28
- column . editModeRenderer = ( root , _ , model ) => {
49
+ column . editModeRenderer = ( root , column , model ) => {
29
50
root . innerHTML = `
30
- <vaadin-date-picker value="${ model . item . date } " ${ ! autoOpen ? 'auto-open-disabled' : '' } ></vaadin-date-picker>
51
+ <vaadin-date-picker value="${ model . item . date } " ${ ! column . autoOpen ? 'auto-open-disabled' : '' } ></vaadin-date-picker>
31
52
` ;
32
53
} ;
33
54
break ;
@@ -175,8 +196,8 @@ describe('grid-pro custom editor', () => {
175
196
176
197
beforeEach ( async ( ) => {
177
198
await setViewport ( { width : 420 , height : 1020 } ) ;
178
- grid = createGrid ( 'date' , true ) ;
179
- await nextRender ( ) ;
199
+ // Do not set auto-open-disabled on the date-picker
200
+ grid . querySelector ( 'vaadin-grid-pro-edit-column' ) . autoOpen = true ;
180
201
cell = getContainerCell ( grid . $ . items , 0 , 0 ) ;
181
202
await sendMouse ( { type : 'click' , position : [ 10 , 10 ] } ) ;
182
203
} ) ;
@@ -215,7 +236,7 @@ describe('grid-pro custom editor', () => {
215
236
const datePicker = cell . _content . querySelector ( 'vaadin-date-picker' ) ;
216
237
await untilOverlayRendered ( datePicker ) ;
217
238
218
- sendMouse ( { type : 'click' , position : [ 10 , 10 ] } ) ;
239
+ await sendMouse ( { type : 'click' , position : [ 10 , 10 ] } ) ;
219
240
await nextRender ( ) ;
220
241
expect ( cell . _content . querySelector ( 'vaadin-date-picker' ) ) . to . not . be . ok ;
221
242
expect ( previousContent ) . to . be . equal ( cell . _content . textContent ) ;
0 commit comments