Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
f0fca41
Toolbar: support keyboard navigation according to APG W3C
EugeniyKiyashko May 14, 2026
e926260
Toolbar: support keyboard navigation according to APG W3C
EugeniyKiyashko May 14, 2026
e3ff633
update imports for classnames
dmlvr May 15, 2026
b98de3d
add testfile
dmlvr May 15, 2026
84c694f
add tests
pharret31 May 15, 2026
46ae4b1
remove extra tests and unskipped some
dmlvr May 15, 2026
87d48e7
merge test part
dmlvr May 15, 2026
0a7da03
fix qunit scenarios
EugeniyKiyashko May 18, 2026
cf7e016
Merge branch '26_1' into 26_1_toolbar_kbn
EugeniyKiyashko May 18, 2026
3208739
fix old tests
EugeniyKiyashko May 18, 2026
dfdc9ee
exclude disabled items
EugeniyKiyashko May 18, 2026
bb24433
fix jquery related tests
dmlvr May 18, 2026
720a174
Merge branch '26_1_toolbar_kbn' of github.com:EugeniyKiyashko/DevExtr…
dmlvr May 18, 2026
84c6bf3
consider more scenarios
EugeniyKiyashko May 18, 2026
9584e39
prevent item focusing inside overflow menu
EugeniyKiyashko May 18, 2026
86e5c76
add fallback strategy using focusStateEnabled option
EugeniyKiyashko May 18, 2026
a953640
add focusStateEnabled tests
pharret31 May 18, 2026
301115e
remove extra comments
dmlvr May 18, 2026
a840a5d
non-focusable service items
pharret31 May 18, 2026
0bcb3db
add templates tests
pharret31 May 18, 2026
1e0a66a
add enter/exit tests
pharret31 May 18, 2026
d1f4e57
repair tests
EugeniyKiyashko May 19, 2026
ba22bb2
Merge branch '26_1' into 26_1_toolbar_kbn
EugeniyKiyashko May 19, 2026
5b360ed
Merge remote-tracking branch 'EugeniyKiyashko/26_1_toolbar_kbn' into …
pharret31 May 19, 2026
6ee9c86
add tab/shift-tab testcafe tests
pharret31 May 19, 2026
23765ef
remove only
pharret31 May 19, 2026
a3092f3
add some extra test cases
dmlvr May 19, 2026
d615427
Merge branch '26_1_toolbar_kbn' of github.com:EugeniyKiyashko/DevExtr…
dmlvr May 19, 2026
f59577b
fix one tab stop on editors according to APG
EugeniyKiyashko May 19, 2026
ec821cb
add more tests
EugeniyKiyashko May 20, 2026
00f218e
add focus outline with base color
pharret31 May 20, 2026
0a75daa
consider more scenarios
EugeniyKiyashko May 20, 2026
c527f2c
Merge branch '26_1_toolbar_kbn' of https://github.com/EugeniyKiyashko…
EugeniyKiyashko May 20, 2026
3cf14f8
fix ts
EugeniyKiyashko May 20, 2026
b5e431b
Merge branch '26_1' into 26_1_toolbar_kbn
EugeniyKiyashko May 20, 2026
be2517e
turn on fallback mode in components
EugeniyKiyashko May 20, 2026
03e512d
Merge branch '26_1_toolbar_kbn' of https://github.com/EugeniyKiyashko…
EugeniyKiyashko May 20, 2026
680b105
updates
EugeniyKiyashko May 21, 2026
0f24557
use focus outline only in new kbn mode
pharret31 May 21, 2026
df9d87f
update focusStateEnabled at runtime
pharret31 May 21, 2026
59abdac
fix scss
pharret31 May 21, 2026
c374f7a
refactor menu implementation
EugeniyKiyashko May 22, 2026
2a6e6c3
refactor
EugeniyKiyashko May 24, 2026
ba9faf1
refactor
EugeniyKiyashko May 25, 2026
d860094
fix grids scenarios
EugeniyKiyashko May 27, 2026
a4dc10f
fix styles
EugeniyKiyashko May 27, 2026
5374701
refactoring
dmlvr May 28, 2026
c4dc5a1
Merge branch '26_1_toolbar_kbn' into dmlvr/26_1_toolbar_kbn
dmlvr May 28, 2026
8d7900f
avoid of duplication
EugeniyKiyashko May 29, 2026
75d16d6
Merge branch '26_1' into 26_1_toolbar_kbn
EugeniyKiyashko May 29, 2026
ebf7a10
refactor
EugeniyKiyashko May 29, 2026
ff8466c
Merge branch '26_1_toolbar_kbn' of https://github.com/EugeniyKiyashko…
EugeniyKiyashko May 29, 2026
fb5f5ad
Add allowKeyboardNavigation option
pharret31 May 28, 2026
21d6009
fix name
pharret31 May 29, 2026
e0175be
fix name of classes
pharret31 May 29, 2026
33aff93
rename
pharret31 May 29, 2026
e35bfc5
refactor
pharret31 May 29, 2026
b0d744c
Merge pull request #46 from pharret31/26_1_toolbar_kbn-add-allow-keyb…
EugeniyKiyashko May 29, 2026
822680f
fix some issues
EugeniyKiyashko May 29, 2026
3cf190a
fix scenarios in demos
EugeniyKiyashko May 31, 2026
6e0645a
update
EugeniyKiyashko May 31, 2026
6bf8447
Merge branch '26_1' into 26_1_toolbar_kbn
EugeniyKiyashko Jun 1, 2026
a09a8bd
Merge branch '26_1' into 26_1_toolbar_kbn
EugeniyKiyashko Jun 2, 2026
77fec65
refactoring
pharret31 Jun 5, 2026
8efbb3d
Merge branch '26_1' into 26_1_toolbar_kbn
pharret31 Jun 5, 2026
3fa69e1
Update grids snapshots
pharret31 Jun 5, 2026
a039120
fix toolbar tests
pharret31 Jun 5, 2026
6387af6
fix textedit issue
pharret31 Jun 5, 2026
0a592a7
add tests
pharret31 Jun 5, 2026
d428b09
test disabling new kbn in toolbar
pharret31 Jun 5, 2026
ec6190f
bypass grids screenshots test
pharret31 Jun 5, 2026
2dbb1c2
bypass more grids screenshot tests
pharret31 Jun 5, 2026
1290c52
remove bumping unnecessary option
pharret31 Jun 5, 2026
83a1a44
fix getting active element in kbn tests
pharret31 Jun 5, 2026
1cdd075
fix datagrid demos to pass tests
pharret31 Jun 5, 2026
e2ea499
disable new toolbar kbn in scheduler
pharret31 Jun 5, 2026
a749b9f
add default option to test
pharret31 Jun 5, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
[dataSource]="orders"
keyExpr="ID"
[showBorders]="true"
(onToolbarPreparing)="onToolbarPreparing($event)"
>
<dxo-data-grid-grouping [autoExpandAll]="expandAll"></dxo-data-grid-grouping>
<dxo-data-grid-column-chooser [enabled]="true"></dxo-data-grid-column-chooser>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import {
DxButtonModule,
} from 'devextreme-angular';
import { DxButtonTypes } from 'devextreme-angular/ui/button';
import { DxDataGridTypes } from 'devextreme-angular/ui/data-grid';
import { query } from 'devextreme-angular/common/data';
import { DxSelectBoxModule, DxSelectBoxTypes } from 'devextreme-angular/ui/select-box';
import { Service, Order } from './app.service';
Expand Down Expand Up @@ -88,6 +89,10 @@ export class AppComponent {
toggleExpandAll() {
this.expandAll = !this.expandAll;
}

onToolbarPreparing(e: DxDataGridTypes.ToolbarPreparingEvent) {
e.toolbarOptions.allowKeyboardNavigation = false;
}
}

bootstrapApplication(AppComponent, {
Expand Down
9 changes: 7 additions & 2 deletions apps/demos/Demos/DataGrid/Toolbar/React/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import SelectBox, { type SelectBoxTypes } from 'devextreme-react/select-box';
import DataGrid, {
Grouping, Column, ColumnChooser, LoadPanel, Toolbar, Item,
} from 'devextreme-react/data-grid';
import type { DataGridRef } from 'devextreme-react/data-grid';
import type { DataGridRef, DataGridTypes } from 'devextreme-react/data-grid';
import { query } from 'devextreme-react/common/data';

import { orders } from './data.ts';
Expand Down Expand Up @@ -54,13 +54,18 @@ const App = () => {
},
}), []);

const onToolbarPreparing = useCallback((e: DataGridTypes.ToolbarPreparingEvent) => {
e.toolbarOptions.allowKeyboardNavigation = false;
}, []);

return (
<DataGrid
id="gridContainer"
ref={dataGridRef}
dataSource={orders}
keyExpr="ID"
showBorders={true}>
showBorders={true}
onToolbarPreparing={onToolbarPreparing}>
<Grouping autoExpandAll={expandAll} />
<ColumnChooser enabled={true} />
<LoadPanel enabled={true} />
Expand Down
4 changes: 4 additions & 0 deletions apps/demos/Demos/DataGrid/Toolbar/ReactJs/App.js
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,17 @@ const App = () => {
}),
[],
);
const onToolbarPreparing = useCallback((e) => {
e.toolbarOptions.allowKeyboardNavigation = false;
}, []);
return (
<DataGrid
id="gridContainer"
ref={dataGridRef}
dataSource={orders}
keyExpr="ID"
showBorders={true}
onToolbarPreparing={onToolbarPreparing}
>
<Grouping autoExpandAll={expandAll} />
<ColumnChooser enabled={true} />
Expand Down
6 changes: 6 additions & 0 deletions apps/demos/Demos/DataGrid/Toolbar/Vue/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
:data-source="orders"
key-expr="ID"
:show-borders="true"
@toolbar-preparing="onToolbarPreparing"
>
<DxGrouping :auto-expand-all="expandAll"/>
<DxColumnChooser :enabled="true"/>
Expand Down Expand Up @@ -86,6 +87,7 @@ import {
DxToolbar,
DxItem,
} from 'devextreme-vue/data-grid';
import type { DxDataGridTypes } from 'devextreme-vue/data-grid';
import { DxSelectBox, type DxSelectBoxTypes } from 'devextreme-vue/select-box';
import { query } from 'devextreme-vue/common/data';
import { orders } from './data.ts';
Expand Down Expand Up @@ -130,6 +132,10 @@ const refreshButtonOptions = {
dataGridRef.value!.instance!.refresh();
},
};

const onToolbarPreparing = (e: DxDataGridTypes.ToolbarPreparingEvent) => {
e.toolbarOptions.allowKeyboardNavigation = false;
};
</script>
<style>

Expand Down
3 changes: 3 additions & 0 deletions apps/demos/Demos/DataGrid/Toolbar/jQuery/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@ $(() => {
'columnChooserButton',
],
},
onToolbarPreparing(e) {
e.toolbarOptions.allowKeyboardNavigation = false;
},
}).dxDataGrid('instance');

function getGroupCount(groupField) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ test('column separator should work properly with expand columns', async (t) => {
},
],
allowColumnReordering: true,
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
}));

test('HeaderRow should be highlighted when dragging column with allowColumnReordering=false', async (t) => {
Expand Down Expand Up @@ -138,6 +141,9 @@ test('The group separator should not appear when dragging a grouped column to th
},
],
allowColumnReordering: false,
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
}).after(async () => {
await MouseUpEvents.enable(MouseAction.dragToOffset);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,9 @@ test('allowExportSelectedData: false, menu: true', async (t) => {
enabled: true,
},
width: 30,
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
}));

test('allowExportSelectedData: true, menu: true', async (t) => {
Expand All @@ -109,6 +112,9 @@ test('allowExportSelectedData: true, menu: true', async (t) => {
formats: ['xlsx', 'pdf'],
},
width: 30,
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
}));

test.meta({ browserSize: [800, 800] })('Export is disabled when no data columns is in grid header, menu: false', async (t) => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ const DATA_GRID_SELECTOR = '#container';
groupIndex: 0,
},
],
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
});

Expand Down Expand Up @@ -91,6 +94,9 @@ const DATA_GRID_SELECTOR = '#container';
groupIndex: 0,
},
],
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
});

Expand Down Expand Up @@ -224,6 +230,9 @@ test('Reordering of grouping column should not work when onKeyDown.args.handled
groupIndex: 0,
},
],
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
});

Expand Down Expand Up @@ -265,6 +274,9 @@ test('The group column should not be reordered when groupPanel.allowColumnDraggi
groupIndex: 0,
},
],
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
});

Expand Down Expand Up @@ -307,6 +319,9 @@ test('The group column should not be reordered when it has allowGrouping set to
allowGrouping: false,
},
],
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
});

Expand Down Expand Up @@ -659,6 +674,9 @@ test('Ungroup column when pressing Delete', async (t) => {
groupIndex: 0,
},
],
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,9 @@ test.meta({ browserSize: [900, 800] })('The header row should be highlighted cor
visible: true,
},
allowColumnReordering: false,
onToolbarPreparing(e): void {
e.toolbarOptions.allowKeyboardNavigation = false;
},
});
}).after(async () => {
await MouseUpEvents.enable(MouseAction.dragToOffset);
Expand Down
Loading
Loading