const store = Ext.create('Ext.data.Store', {
data: [{
firstname: "Michael",
lastname: "Scott"
}, {
firstname: "Dwight",
lastname: "Schrute"
}, {
firstname: "Jim",
lastname: "Halpert"
}, {
firstname: "Kevin",
lastname: "Malone"
}, {
firstname: "Angela",
lastname: "Martin"
}]
});
const grid = Ext.create('Ext.grid.Panel', {
title: 'Action Column Demo',
store: store,
columns: [{
text: 'First Name',
dataIndex: 'firstname',
width: 150,
locked: true, // locked column will trigger the LoadMask bug.
}, {
text: 'Last Name',
dataIndex: 'lastname',
width: 200,
}, ],
width: 300,
renderTo: Ext.getBody()
});
new Ext.LoadMask({
target: grid,
}).show();
If grid has locked
column, LoadMask does't cover the whole grid, some one can help me to fix this issue?
If the grid has no locked column, everything is ok, but once to set any column to locked
, this bug will happen.
Here is the demo: https://fiddle.sencha.com/#view/editor&fiddle/3kr3
Thanks!
This is done on purpose by the framework (not sure why). Check the
afterInjectLockable
method in Ext.grid.locking.Lockable. It goes like this:You can see that
maskElement
is set to "scrollContainer". You could create an override to set it back to "el".Something like this:
Fiddle: https://fiddle.sencha.com/#view/editor&fiddle/3krr