@refinitiv-ui/efx-grid 6.0.119 → 6.0.120
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/core/dist/core.js +97 -6
- package/lib/core/dist/core.min.js +1 -1
- package/lib/core/es6/data/DataView.js +7 -5
- package/lib/core/es6/grid/Core.js +1 -1
- package/lib/core/es6/grid/components/Cell.d.ts +2 -0
- package/lib/core/es6/grid/components/Cell.js +89 -0
- package/lib/filter-dialog/themes/base-checkbox.less +1 -1
- package/lib/filter-dialog/themes/elemental/dark/checkbox-list.js +1 -1
- package/lib/filter-dialog/themes/elemental/dark/es5/all-elements.js +1 -1
- package/lib/filter-dialog/themes/elemental/light/checkbox-list.js +1 -1
- package/lib/filter-dialog/themes/elemental/light/es5/all-elements.js +1 -1
- package/lib/filter-dialog/themes/halo/dark/checkbox-list.js +1 -1
- package/lib/filter-dialog/themes/halo/dark/es5/all-elements.js +1 -1
- package/lib/filter-dialog/themes/halo/light/checkbox-list.js +1 -1
- package/lib/filter-dialog/themes/halo/light/es5/all-elements.js +1 -1
- package/lib/filter-dialog/themes/solar/charcoal/checkbox-list.js +1 -1
- package/lib/filter-dialog/themes/solar/charcoal/es5/all-elements.js +1 -1
- package/lib/filter-dialog/themes/solar/pearl/checkbox-list.js +1 -1
- package/lib/filter-dialog/themes/solar/pearl/es5/all-elements.js +1 -1
- package/lib/grid/index.js +1 -1
- package/lib/rt-grid/dist/rt-grid.js +210 -87
- package/lib/rt-grid/dist/rt-grid.min.js +1 -1
- package/lib/rt-grid/es6/ColumnDefinition.js +7 -0
- package/lib/rt-grid/es6/Grid.js +106 -81
- package/lib/tr-grid-auto-tooltip/es6/AutoTooltip.js +18 -15
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +6 -1
- package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +0 -2
- package/lib/tr-grid-row-dragging/es6/RowDragging.js +82 -77
- package/lib/tr-grid-row-selection/es6/RowSelection.js +155 -35
- package/lib/types/es6/Core/grid/components/Cell.d.ts +2 -0
- package/lib/types/es6/RowDragging.d.ts +0 -2
- package/lib/versions.json +5 -5
- package/package.json +1 -1
@@ -1,4 +1,4 @@
|
|
1
1
|
import "./imports/native-elements.js";
|
2
2
|
|
3
3
|
|
4
|
-
dispatchEvent(new CustomEvent('ef.customStyles.define', { detail: { name: 'checkbox-list', styles: ':host{display:block;scrollbar-face-color:#8a8a96;scrollbar-shadow-color:#8a8a96;scrollbar-highlight-color:#8a8a96;scrollbar-arrow-color:#8a8a96;scrollbar-track-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-darkshadow-color:#fff
|
4
|
+
dispatchEvent(new CustomEvent('ef.customStyles.define', { detail: { name: 'checkbox-list', styles: ':host{display:block;scrollbar-face-color:#8a8a96;scrollbar-shadow-color:#8a8a96;scrollbar-highlight-color:#8a8a96;scrollbar-arrow-color:#8a8a96;scrollbar-track-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-darkshadow-color:#fff}:host .hidden{display:none}:host .select-btn{margin-top:0;margin-bottom:4px}@supports not selector(::-webkit-scrollbar){:host{scrollbar-color:#8a8a96 #fff}}:host #container{border:1px solid #a9afba;overflow-y:auto;min-height:48px;flex-grow:1}:host .item-container{display:flex;width:100%;align-items:center}:host .item-label{margin-left:7px;min-width:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .root{display:flex;flex-flow:column;overflow:hidden}::-webkit-scrollbar{width:13px;height:13px}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #fff;height:12px;width:12px;display:block}::-webkit-scrollbar-thumb{background:#8a8a96;border-radius:7px;border:2px solid #fff}::-webkit-scrollbar-thumb:hover{background:#a9afba}::-webkit-scrollbar-thumb:active{background:#ee7600}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-corner{background:#fff}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:end:increment{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:horizontal:start:decrement{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}' }}));
|
@@ -1,4 +1,4 @@
|
|
1
1
|
dispatchEvent(new CustomEvent('ef.customStyles.define', { detail: { name: 'filter-dialog', styles: ':host{display:block}:host *{margin-bottom:0;margin-top:0}:host .compact{padding-top:8px;padding-bottom:8px}:host .compact #filterAdvancedUI,:host .compact #filterValueUI{margin-top:5px}:host .compact #filterValueUI>*+*{margin-top:4px}:host .compact .input-group ef-combo-box+ef-combo-box,:host .compact .input-group ef-combo-box+ef-datetime-picker{margin-top:10px}:host .compact .input-group ef-combo-box+div.radio-group,:host .compact .input-group ef-datetime-picker+div.radio-group{margin-top:6px}:host .compact .input-group div.radio-group+ef-combo-box{margin-top:8px}:host .compact .cancel-ok{margin-top:4px}:host .compact #separator,:host .compact .group-label{display:none}:host ef-panel{box-shadow:0 0 10px rgba(0,0,0,.5);padding-top:17px;padding-bottom:31px;display:block}:host label{line-height:18px;font-size:12px}:host hr{border-top:1px solid;margin-top:9px;margin-bottom:6px;width:100%}:host ef-radio-button{height:18px}:host #filterCoralSplitBtn,:host ef-combo-box,:host ef-input,:host ef-search-field,:host ef-datetime-picker{width:100%}:host ef-radio-group{text-align:center}:host #root_panel{display:flex;flex-direction:column}:host #filterUI{display:flex;flex-direction:column;overflow-y:hidden;flex:1}:host #dataSelector{overflow:hidden;display:flex;flex-direction:column}:host #filterAdvancedUI,:host #filterValueUI{margin-top:19px;display:flex;flex-direction:column;flex:1;overflow:auto}:host #filterValueUI>*+*{margin-top:19px}:host #filterDialogContent{width:243px;display:flex;flex-direction:column;overflow:hidden;flex:1}:host #dataFilter{flex:0 0 auto}:host .group-block>*+*{margin-top:4px}:host .group-block label{display:block}:host .group-filter{overflow:hidden;display:flex;flex-direction:column;flex:1}:host .input-group ef-combo-box+ef-combo-box,:host .input-group ef-combo-box+ef-datetime-picker{margin-top:19px}:host .input-group ef-radio-button+ef-radio-button{margin-left:6px}:host .input-group ef-combo-box+div.radio-group,:host .input-group ef-datetime-picker+div.radio-group{margin-top:13px}:host .input-group div.radio-group+ef-combo-box{margin-top:16px}:host .cancel-ok{text-align:right;margin-top:31px}:host .cancel-ok #cancel_btn{margin-left:12px}:host .cancel-ok #clear_btn{float:left}:host .hide{display:none!important}#filterDialogContent.no-filter-ui{width:119px}' }}))
|
2
2
|
|
3
|
-
dispatchEvent(new CustomEvent('ef.customStyles.define', { detail: { name: 'checkbox-list', styles: ':host{display:block;scrollbar-face-color:#8a8a96;scrollbar-shadow-color:#8a8a96;scrollbar-highlight-color:#8a8a96;scrollbar-arrow-color:#8a8a96;scrollbar-track-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-darkshadow-color:#fff
|
3
|
+
dispatchEvent(new CustomEvent('ef.customStyles.define', { detail: { name: 'checkbox-list', styles: ':host{display:block;scrollbar-face-color:#8a8a96;scrollbar-shadow-color:#8a8a96;scrollbar-highlight-color:#8a8a96;scrollbar-arrow-color:#8a8a96;scrollbar-track-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-darkshadow-color:#fff}:host .hidden{display:none}:host .select-btn{margin-top:0;margin-bottom:4px}@supports not selector(::-webkit-scrollbar){:host{scrollbar-color:#8a8a96 #fff}}:host #container{border:1px solid #a9afba;overflow-y:auto;min-height:48px;flex-grow:1}:host .item-container{display:flex;width:100%;align-items:center}:host .item-label{margin-left:7px;min-width:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .root{display:flex;flex-flow:column;overflow:hidden}::-webkit-scrollbar{width:13px;height:13px}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #fff;height:12px;width:12px;display:block}::-webkit-scrollbar-thumb{background:#8a8a96;border-radius:7px;border:2px solid #fff}::-webkit-scrollbar-thumb:hover{background:#a9afba}::-webkit-scrollbar-thumb:active{background:#ee7600}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-corner{background:#fff}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:end:increment{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:horizontal:start:decrement{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment{background-image:linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96),linear-gradient(#8a8a96,#8a8a96);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba),linear-gradient(#a9afba,#a9afba);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600),linear-gradient(#ee7600,#ee7600);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}' }}));
|
4
4
|
|
package/lib/grid/index.js
CHANGED
@@ -15522,6 +15522,13 @@ ColumnDefinition.getDataType = function(field) {
|
|
15522
15522
|
return "";
|
15523
15523
|
};
|
15524
15524
|
/** @public
|
15525
|
+
* @ignore
|
15526
|
+
* @return {boolean|string|null}
|
15527
|
+
*/
|
15528
|
+
ColumnDefinition.prototype.getTooltipValue = function() {
|
15529
|
+
return this._tooltip;
|
15530
|
+
};
|
15531
|
+
/** @public
|
15525
15532
|
* @return {string}
|
15526
15533
|
*/
|
15527
15534
|
ColumnDefinition.prototype.getTooltip = function() {
|
@@ -18274,6 +18281,10 @@ Cell.prototype._floatingPanel = null;
|
|
18274
18281
|
* @type {CellFloatingPanel}
|
18275
18282
|
*/
|
18276
18283
|
Cell.prototype._frontIcon = null;
|
18284
|
+
/** @type {Object}
|
18285
|
+
* @private
|
18286
|
+
*/
|
18287
|
+
Cell.prototype._tooltipInfo = null;
|
18277
18288
|
|
18278
18289
|
//#region ElementWrapper
|
18279
18290
|
/** {@link ElementWrapper#getContent}
|
@@ -18866,6 +18877,91 @@ Cell.prototype.getClientWidth = function () {
|
|
18866
18877
|
Cell.prototype.getClientHeight = function () {
|
18867
18878
|
return (this._element) ? this._element.clientHeight : this.getHeight();
|
18868
18879
|
};
|
18880
|
+
|
18881
|
+
/** To remove the tooltip, pass str as an empty string. To allow cell calculation for the correct tooltip, set str to null.
|
18882
|
+
* @public
|
18883
|
+
* @param {string|null} str
|
18884
|
+
*/
|
18885
|
+
Cell.prototype.setTooltip = function(str) {
|
18886
|
+
this.setTooltipInfo("userTooltip", str);
|
18887
|
+
this.updateTooltip();
|
18888
|
+
};
|
18889
|
+
/** @public
|
18890
|
+
* @ignore
|
18891
|
+
* @param {string} type
|
18892
|
+
* @param {*=} tooltip
|
18893
|
+
*/
|
18894
|
+
Cell.prototype.setTooltipInfo = function(type, tooltip) {
|
18895
|
+
let tooltipInfo = this._tooltipInfo;
|
18896
|
+
if(!tooltipInfo) {
|
18897
|
+
tooltipInfo = this._tooltipInfo = {};
|
18898
|
+
}
|
18899
|
+
|
18900
|
+
tooltipInfo[type] = tooltip;
|
18901
|
+
};
|
18902
|
+
/** @public
|
18903
|
+
* @ignore
|
18904
|
+
*/
|
18905
|
+
Cell.prototype.updateTooltip = function() {
|
18906
|
+
let tooltipInfo = this._tooltipInfo;
|
18907
|
+
if(!tooltipInfo) {
|
18908
|
+
return;
|
18909
|
+
}
|
18910
|
+
|
18911
|
+
let defaultTooltip = "";
|
18912
|
+
let customizedTooltip = null;
|
18913
|
+
|
18914
|
+
// Clipped text tooltip takes precedence over default group header and column tooltip
|
18915
|
+
if(tooltipInfo["clippedText"]) { // boolean
|
18916
|
+
defaultTooltip = customizedTooltip = tooltipInfo["clippedTextTooltip"];
|
18917
|
+
}
|
18918
|
+
|
18919
|
+
if(tooltipInfo["groupHeaderTooltip"] == null) {
|
18920
|
+
if(tooltipInfo["columnDefault"] !== false) {
|
18921
|
+
if(tooltipInfo["columnDefault"] != null) { // true, "", string
|
18922
|
+
customizedTooltip = tooltipInfo["columnTooltip"];
|
18923
|
+
} else { // null
|
18924
|
+
defaultTooltip = tooltipInfo["columnTooltip"];
|
18925
|
+
}
|
18926
|
+
}
|
18927
|
+
} else { // Group header tooltip takes precedence over column tooltip
|
18928
|
+
if(tooltipInfo["groupHeaderDefault"] !== false) {
|
18929
|
+
if(tooltipInfo["groupHeaderDefault"] != null) {
|
18930
|
+
customizedTooltip = tooltipInfo["groupHeaderTooltip"];
|
18931
|
+
} else {
|
18932
|
+
defaultTooltip = tooltipInfo["groupHeaderTooltip"];
|
18933
|
+
}
|
18934
|
+
}
|
18935
|
+
}
|
18936
|
+
|
18937
|
+
// User tooltip take the highest precedence
|
18938
|
+
if(tooltipInfo["userTooltip"] != null) { // "", string
|
18939
|
+
customizedTooltip = tooltipInfo["userTooltip"];
|
18940
|
+
}
|
18941
|
+
|
18942
|
+
if(customizedTooltip == null) {
|
18943
|
+
customizedTooltip = defaultTooltip;
|
18944
|
+
}
|
18945
|
+
|
18946
|
+
if(customizedTooltip) {
|
18947
|
+
if(this.getAttribute("title") !== customizedTooltip) {
|
18948
|
+
this.setAttribute("title", customizedTooltip);
|
18949
|
+
}
|
18950
|
+
} else if(this.getAttribute("title") != null) {
|
18951
|
+
this.removeAttribute("title");
|
18952
|
+
}
|
18953
|
+
};
|
18954
|
+
/** @public
|
18955
|
+
* @ignore
|
18956
|
+
* @param {string} type
|
18957
|
+
* @return {*}
|
18958
|
+
*/
|
18959
|
+
Cell.prototype.getTooltipInfo = function(type) {
|
18960
|
+
if(this._tooltipInfo) {
|
18961
|
+
return this._tooltipInfo[type];
|
18962
|
+
}
|
18963
|
+
return null;
|
18964
|
+
};
|
18869
18965
|
//#region Internal Public Methods
|
18870
18966
|
|
18871
18967
|
//#region Private Methods
|
@@ -32017,7 +32113,7 @@ DataView.prototype._updateRowIds = function(opt_rowIds) {
|
|
32017
32113
|
|
32018
32114
|
this._excludedRids = {};
|
32019
32115
|
let exclusionCount = 0;
|
32020
|
-
exclusionCount += DataView.
|
32116
|
+
exclusionCount += DataView._copyValidObjectKeys(this._excludedRids, this._hiddenRids);
|
32021
32117
|
|
32022
32118
|
// Segment separators should not be filtered out (hidden)
|
32023
32119
|
let segments = this._dt._getSegmentSeparators();
|
@@ -32037,7 +32133,7 @@ DataView.prototype._updateRowIds = function(opt_rowIds) {
|
|
32037
32133
|
}
|
32038
32134
|
this._collapsedRids = segments.getCollapsedRows();
|
32039
32135
|
// Children of collapsed segments must be filtered out (hidden)
|
32040
|
-
exclusionCount += DataView.
|
32136
|
+
exclusionCount += DataView._copyValidObjectKeys(this._excludedRids, this._collapsedRids);
|
32041
32137
|
}
|
32042
32138
|
|
32043
32139
|
if(this._groupLevel > 0 && !opt_rowIds) { // WARNING: The line below is quite slow
|
@@ -32567,13 +32663,15 @@ DataView._removeArrayItems = function(ary, items) {
|
|
32567
32663
|
* @param {Object} masterObj
|
32568
32664
|
* @returns {number}
|
32569
32665
|
*/
|
32570
|
-
DataView.
|
32666
|
+
DataView._copyValidObjectKeys = function(baseObj, masterObj) {
|
32571
32667
|
if(masterObj) {
|
32572
32668
|
let count = 0;
|
32573
32669
|
|
32574
32670
|
for(let key in masterObj) {
|
32575
|
-
|
32576
|
-
|
32671
|
+
if(masterObj[key]) {
|
32672
|
+
baseObj[key] = 1;
|
32673
|
+
++count; // WARNING: duplicated key can be counted more than once
|
32674
|
+
}
|
32577
32675
|
}
|
32578
32676
|
return count;
|
32579
32677
|
}
|
@@ -36467,7 +36565,7 @@ Core.prototype._hasPendingRowChange = false;
|
|
36467
36565
|
* @return {string}
|
36468
36566
|
*/
|
36469
36567
|
Core.getVersion = function () {
|
36470
|
-
return "5.1.
|
36568
|
+
return "5.1.121";
|
36471
36569
|
};
|
36472
36570
|
/** {@link ElementWrapper#dispose}
|
36473
36571
|
* @override
|
@@ -45043,11 +45141,11 @@ let _hasFieldOrId = function(colDef, str) {
|
|
45043
45141
|
};
|
45044
45142
|
|
45045
45143
|
/** Compare the difference in the 'id' property.
|
45046
|
-
|
45047
|
-
|
45048
|
-
|
45049
|
-
|
45050
|
-
|
45144
|
+
* @private
|
45145
|
+
* @param {Object} obj1
|
45146
|
+
* @param {Object} obj2
|
45147
|
+
* @returns {boolean} If the id property of two objects is equal, the return will be true, otherwise it will be false.
|
45148
|
+
*/
|
45051
45149
|
let _hasMatchingId = function(obj1, obj2) {
|
45052
45150
|
if(!obj1 || !obj2 || !obj1.id || !obj2.id) { // Handle nullable, if the object or id have null, it's means difference value
|
45053
45151
|
return false;
|
@@ -45055,6 +45153,25 @@ let _hasMatchingId = function(obj1, obj2) {
|
|
45055
45153
|
return obj1.id === obj2.id;
|
45056
45154
|
};
|
45057
45155
|
|
45156
|
+
/** @private
|
45157
|
+
* @param {Object} e
|
45158
|
+
*/
|
45159
|
+
let _preventDefault = function(e) {
|
45160
|
+
if(e) {
|
45161
|
+
e.preventDefault();
|
45162
|
+
}
|
45163
|
+
};
|
45164
|
+
/** @private
|
45165
|
+
* @param {number=} id
|
45166
|
+
* @returns {number} Always return 0
|
45167
|
+
*/
|
45168
|
+
let _clearTimeout = function(id) {
|
45169
|
+
if(id) {
|
45170
|
+
clearTimeout(id);
|
45171
|
+
}
|
45172
|
+
return 0;
|
45173
|
+
};
|
45174
|
+
|
45058
45175
|
/** @constructor
|
45059
45176
|
* @extends {EventDispatcher}
|
45060
45177
|
* @param {(Element|null)=} placeholder
|
@@ -45365,10 +45482,6 @@ Grid.prototype._topSection = true;
|
|
45365
45482
|
* @private
|
45366
45483
|
*/
|
45367
45484
|
Grid.prototype._focusingArgs = null;
|
45368
|
-
/** @type {number}
|
45369
|
-
* @private
|
45370
|
-
*/
|
45371
|
-
Grid.prototype._scrolledRow = -1;
|
45372
45485
|
/** @type {boolean}
|
45373
45486
|
* @private
|
45374
45487
|
*/
|
@@ -45383,10 +45496,8 @@ Grid.prototype.dispose = function() {
|
|
45383
45496
|
clearInterval(this._autoLayoutTimer);
|
45384
45497
|
this._autoLayoutTimer = 0;
|
45385
45498
|
}
|
45386
|
-
|
45387
|
-
|
45388
|
-
this._pollingTimerId = 0;
|
45389
|
-
}
|
45499
|
+
this._pollingTimerId = _clearTimeout(this._pollingTimerId);
|
45500
|
+
|
45390
45501
|
this.removeAllColumns(); // Some conflators are reset
|
45391
45502
|
this.removeAllRows(); // Some conflators are reset
|
45392
45503
|
this._sorter.dispose();
|
@@ -45409,9 +45520,8 @@ Grid.prototype.dispose = function() {
|
|
45409
45520
|
}
|
45410
45521
|
|
45411
45522
|
if(this._focusingArgs) {
|
45412
|
-
|
45413
|
-
|
45414
|
-
}
|
45523
|
+
_clearTimeout(this._focusingArgs.id);
|
45524
|
+
_clearTimeout(this._focusingArgs.timeoutId);
|
45415
45525
|
this._focusingArgs = null;
|
45416
45526
|
}
|
45417
45527
|
};
|
@@ -45716,6 +45826,7 @@ Grid.prototype.initialize = function(gridOption) {
|
|
45716
45826
|
this.addListener(gridOption, "beforeContentBinding");
|
45717
45827
|
this.addListener(gridOption, "firstRendered");
|
45718
45828
|
this.addListener(gridOption, "afterContentBinding");
|
45829
|
+
this.addListener(gridOption, "tabNavigation");
|
45719
45830
|
|
45720
45831
|
if(gridOption["autoDateConversion"]) {
|
45721
45832
|
t._autoDateConversion = true;
|
@@ -48232,12 +48343,15 @@ Grid.prototype._renderColumnHeader = function(colIndex, arg) {
|
|
48232
48343
|
let colName = colDef.getName();
|
48233
48344
|
let colTooltip = colDef.getTooltip();
|
48234
48345
|
let headerAlignment = colDef.getHeaderAlignment();
|
48346
|
+
let tooltipValue = colDef.getTooltipValue();
|
48235
48347
|
|
48236
48348
|
for(let r = 0; r < rowCount; ++r) {
|
48237
48349
|
let tCell = tSection.getCell(colIndex, r, false);
|
48238
48350
|
// Default behaviors
|
48239
48351
|
tCell.setContent(colName);
|
48240
|
-
tCell.
|
48352
|
+
tCell.setTooltipInfo("columnDefault", tooltipValue);
|
48353
|
+
tCell.setTooltipInfo("columnTooltip", colTooltip);
|
48354
|
+
tCell.updateTooltip();
|
48241
48355
|
tCell.setStyle("textAlign", headerAlignment);
|
48242
48356
|
|
48243
48357
|
if(customRenderer) {
|
@@ -48985,38 +49099,49 @@ Grid.prototype.getVScrollView = function () {
|
|
48985
49099
|
return this._grid.getVScrollView();
|
48986
49100
|
};
|
48987
49101
|
|
48988
|
-
/** @private
|
48989
|
-
* @param {Element} el
|
48990
|
-
* @return {boolean}
|
48991
|
-
*/
|
48992
|
-
function isFocusableContent(el) {
|
48993
|
-
if(el) {
|
48994
|
-
return (el.tagName !== "SPAN" && !el.disabled);
|
48995
|
-
}
|
48996
|
-
return false;
|
48997
|
-
}
|
48998
49102
|
/** @private
|
48999
49103
|
* @param {Object} cell
|
49104
|
+
* @param {Object} args
|
49000
49105
|
* @return {boolean}
|
49001
49106
|
*/
|
49002
|
-
function
|
49107
|
+
Grid.prototype._focusCell = function(cell, args) {
|
49003
49108
|
if(cell) {
|
49004
49109
|
let cellContent = cell.getContent();
|
49005
|
-
if(cellContent
|
49006
|
-
|
49007
|
-
|
49110
|
+
if(cellContent) {
|
49111
|
+
let nfe = null;
|
49112
|
+
if(this.hasListener("tabNavigation")) {
|
49113
|
+
let tabNavArg = {
|
49114
|
+
"shiftKey": args.shiftKey,
|
49115
|
+
"activeElement": args.activeElement,
|
49116
|
+
"cellContent": cellContent,
|
49117
|
+
"cell": cell,
|
49118
|
+
"colIndex": args.colIndex,
|
49119
|
+
"rowIndex": args.rowIndex,
|
49120
|
+
"field": args.fields ? args.fields[args.colIndex] : ""
|
49121
|
+
};
|
49122
|
+
this._dispatch("tabNavigation", tabNavArg);
|
49123
|
+
nfe = tabNavArg.nextFocusableElement;
|
49124
|
+
} else if(cellContent.tagName !== "SPAN") {
|
49125
|
+
nfe = cellContent;
|
49126
|
+
}
|
49127
|
+
|
49128
|
+
if(nfe && nfe !== args.activeElement && !nfe.disabled) {
|
49129
|
+
nfe.focus();
|
49130
|
+
return true;
|
49131
|
+
}
|
49008
49132
|
}
|
49009
49133
|
}
|
49010
49134
|
return false;
|
49011
|
-
}
|
49135
|
+
};
|
49012
49136
|
/** @private
|
49013
49137
|
*/
|
49014
49138
|
Grid.prototype._onVScroll = function() {
|
49015
49139
|
let args = this._focusingArgs;
|
49016
49140
|
if(args) {
|
49141
|
+
args.timeoutId = _clearTimeout(args.timeoutId);
|
49017
49142
|
this._focusingArgs = null;
|
49018
49143
|
let cell = this._grid.getCell("content", args.colIndex, args.rowIndex);
|
49019
|
-
if(!
|
49144
|
+
if(!this._focusCell(cell, args)) {
|
49020
49145
|
if(args.shiftKey) {
|
49021
49146
|
this._focusPrevCellContent(args);
|
49022
49147
|
} else {
|
@@ -49027,6 +49152,11 @@ Grid.prototype._onVScroll = function() {
|
|
49027
49152
|
};
|
49028
49153
|
/** @private
|
49029
49154
|
*/
|
49155
|
+
Grid.prototype._onScrollTimeout = function() {
|
49156
|
+
this._focusingArgs = null;
|
49157
|
+
};
|
49158
|
+
/** @private
|
49159
|
+
*/
|
49030
49160
|
Grid.prototype._selfScrollToRow = function() {
|
49031
49161
|
let args = this._focusingArgs;
|
49032
49162
|
if(args) {
|
@@ -49036,20 +49166,14 @@ Grid.prototype._selfScrollToRow = function() {
|
|
49036
49166
|
};
|
49037
49167
|
/** @private
|
49038
49168
|
* @param {Object} args
|
49039
|
-
* @param {number} colIndex
|
49040
|
-
* @param {number} rowIndex
|
49041
49169
|
*/
|
49042
|
-
Grid.prototype._requestScroll = function(args
|
49043
|
-
if(this._focusingArgs
|
49044
|
-
|
49170
|
+
Grid.prototype._requestScroll = function(args) {
|
49171
|
+
if(!this._focusingArgs) {
|
49172
|
+
this._focusingArgs = args;
|
49173
|
+
args.event = null; // The event is invalid after the scroll
|
49174
|
+
args.id = setTimeout(this._selfScrollToRow, 0); // Avoid event loop protection
|
49175
|
+
args.timeoutId = setTimeout(this._onScrollTimeout, 100); // To avoid a fail case where scroll cannot be performed
|
49045
49176
|
}
|
49046
|
-
|
49047
|
-
this._scrolledRow = args.rowIndex;
|
49048
|
-
this._focusingArgs = args;
|
49049
|
-
args.colIndex = colIndex;
|
49050
|
-
args.rowIndex = rowIndex;
|
49051
|
-
args.event = null; // The event is invalid after the scroll
|
49052
|
-
args.id = setTimeout(this._selfScrollToRow); // Avoid event loop protection
|
49053
49177
|
};
|
49054
49178
|
/** @private
|
49055
49179
|
* @param {Object} args
|
@@ -49073,28 +49197,27 @@ Grid.prototype._focusNextCellContent = function(args) {
|
|
49073
49197
|
startIdx = i;
|
49074
49198
|
}
|
49075
49199
|
}
|
49076
|
-
// If the current focus is on a valid content, starts on the next cell
|
49077
|
-
if(args.event && args.validContent) {
|
49078
|
-
startIdx++;
|
49079
|
-
}
|
49080
49200
|
|
49081
49201
|
let grid = this._grid;
|
49082
49202
|
let section = grid.getSection("content");
|
49083
49203
|
let viewInfo = grid.getVerticalViewInfo();
|
49084
49204
|
let lastFullRow = viewInfo.lastFullRow;
|
49085
49205
|
let rowCount = this.getRowCount();
|
49206
|
+
|
49207
|
+
args.fields = grid.getColumnFields();
|
49086
49208
|
for(let r = rowIndex; r < rowCount; r++) {
|
49209
|
+
args.rowIndex = r;
|
49087
49210
|
for(i = startIdx; i < len; i++) {
|
49088
49211
|
let c = focusableColIndices[i];
|
49212
|
+
args.colIndex = c;
|
49089
49213
|
if(r > lastFullRow) {
|
49090
|
-
|
49214
|
+
_preventDefault(args.event);
|
49215
|
+
this._requestScroll(args);
|
49091
49216
|
return;
|
49092
49217
|
} else {
|
49093
49218
|
let cell = section.getCell(c, r);
|
49094
|
-
if(
|
49095
|
-
|
49096
|
-
args.event.preventDefault();
|
49097
|
-
}
|
49219
|
+
if(this._focusCell(cell, args)) {
|
49220
|
+
_preventDefault(args.event);
|
49098
49221
|
return;
|
49099
49222
|
}
|
49100
49223
|
}
|
@@ -49102,9 +49225,8 @@ Grid.prototype._focusNextCellContent = function(args) {
|
|
49102
49225
|
startIdx = 0;
|
49103
49226
|
}
|
49104
49227
|
|
49105
|
-
|
49106
|
-
|
49107
|
-
}
|
49228
|
+
// The current focus on the last focusable content
|
49229
|
+
this._grid.getHiddenInput().focus();
|
49108
49230
|
};
|
49109
49231
|
/** @private
|
49110
49232
|
* @param {Object} args
|
@@ -49128,27 +49250,26 @@ Grid.prototype._focusPrevCellContent = function(args) {
|
|
49128
49250
|
startIdx = i;
|
49129
49251
|
}
|
49130
49252
|
}
|
49131
|
-
// If the current focus is on a valid content, starts on the next cell
|
49132
|
-
if(args.event && args.validContent) {
|
49133
|
-
--startIdx;
|
49134
|
-
}
|
49135
49253
|
|
49136
49254
|
let grid = this._grid;
|
49137
49255
|
let section = grid.getSection("content");
|
49138
49256
|
let viewInfo = grid.getVerticalViewInfo();
|
49139
49257
|
let firstFullRow = viewInfo.firstFullRow;
|
49258
|
+
|
49259
|
+
args.fields = this.getColumnFields();
|
49140
49260
|
for(let r = rowIndex; r >= 0; r--) {
|
49261
|
+
args.rowIndex = r;
|
49141
49262
|
for(i = startIdx; i >= 0; i--) {
|
49142
49263
|
let c = focusableColIndices[i];
|
49264
|
+
args.colIndex = c;
|
49143
49265
|
if(r < firstFullRow) {
|
49144
|
-
|
49266
|
+
_preventDefault(args.event);
|
49267
|
+
this._requestScroll(args);
|
49145
49268
|
return;
|
49146
49269
|
} else {
|
49147
49270
|
let cell = section.getCell(c, r);
|
49148
|
-
if(
|
49149
|
-
|
49150
|
-
args.event.preventDefault();
|
49151
|
-
}
|
49271
|
+
if(this._focusCell(cell, args)) {
|
49272
|
+
_preventDefault(args.event);
|
49152
49273
|
return;
|
49153
49274
|
}
|
49154
49275
|
}
|
@@ -49156,15 +49277,18 @@ Grid.prototype._focusPrevCellContent = function(args) {
|
|
49156
49277
|
startIdx = len - 1;
|
49157
49278
|
}
|
49158
49279
|
|
49159
|
-
|
49160
|
-
|
49161
|
-
}
|
49280
|
+
// The current focus on the last focusable content
|
49281
|
+
this._grid.getHiddenInput(true).focus();
|
49162
49282
|
};
|
49163
49283
|
|
49164
49284
|
/** @private
|
49165
49285
|
* @param {Object} e
|
49166
49286
|
*/
|
49167
49287
|
Grid.prototype._onTabNavigation = function(e) {
|
49288
|
+
if(this._focusingArgs) {
|
49289
|
+
return; // Cannot do another tab navigation while waiting for scrolling
|
49290
|
+
}
|
49291
|
+
|
49168
49292
|
let colDefs = this.getColumnDefinitions();
|
49169
49293
|
let colCount = colDefs.length;
|
49170
49294
|
|
@@ -49179,19 +49303,8 @@ Grid.prototype._onTabNavigation = function(e) {
|
|
49179
49303
|
return;
|
49180
49304
|
}
|
49181
49305
|
|
49182
|
-
this._scrolledRow = -1; // Reset the scroll loop protector
|
49183
49306
|
let keyEvt = e.event;
|
49184
49307
|
let pos = this.getRelativePosition(keyEvt);
|
49185
|
-
let validContent = true;
|
49186
|
-
let activeElement = e.activeElement;
|
49187
|
-
if(activeElement) {
|
49188
|
-
validContent = !activeElement.classList.contains("valigner");
|
49189
|
-
}
|
49190
|
-
|
49191
|
-
if(validContent) {
|
49192
|
-
let content = pos["cell"] ? pos["cell"].getContent() : null;
|
49193
|
-
validContent = isFocusableContent(content);
|
49194
|
-
}
|
49195
49308
|
let startingRowIndex = pos["rowIndex"];
|
49196
49309
|
if(e.onTheEdge) {
|
49197
49310
|
let viewInfo = this._grid.getVerticalViewInfo();
|
@@ -49203,7 +49316,7 @@ Grid.prototype._onTabNavigation = function(e) {
|
|
49203
49316
|
colIndex: pos["colIndex"],
|
49204
49317
|
rowIndex: startingRowIndex,
|
49205
49318
|
focusableColIndices: focusableColIndices,
|
49206
|
-
|
49319
|
+
activeElement: e.activeElement
|
49207
49320
|
};
|
49208
49321
|
|
49209
49322
|
if(keyEvt.shiftKey) {
|
@@ -49213,6 +49326,16 @@ Grid.prototype._onTabNavigation = function(e) {
|
|
49213
49326
|
}
|
49214
49327
|
};
|
49215
49328
|
|
49329
|
+
/** @public
|
49330
|
+
* @ignore
|
49331
|
+
* @return {!Object}
|
49332
|
+
*/
|
49333
|
+
Grid.prototype._getEventHandlers = function() {
|
49334
|
+
return {
|
49335
|
+
"tabNavigation": this._onTabNavigation
|
49336
|
+
};
|
49337
|
+
};
|
49338
|
+
|
49216
49339
|
|
49217
49340
|
/* harmony default export */ var js_Grid = (Grid);
|
49218
49341
|
|