PDA

View Full Version : [OPEN-988] Shadow on drag proxy not correct size



mrusinak
21 May 2010, 11:13 AM
Ext version tested:


Ext 3.2.1


Adapter used:


ext


css used:


only default ext-all.css




Browser versions tested against:


IE8
FF3 (firebug 1.5.4 installed)


Operating System:


Xubuntu 10.4
Windows 7 Ult


Description:


I'm using an Ext.grid.GridPanel, with "enableDragDrop" set to TRUE. I'm playing around with making a drag-to-reorder plugin, so on Render I get the grid's view's dragZone and set resizeFrame to TRUE (as well as constrainTo). However, by making resizeFrame TRUE, the shadow on the drag proxy is no longer positioned correctly.
Also, the Ext.grid.GridDragZone sets it's ddel.className to "x-grid-dd-wrap", but looking in the CSS I only see "x-grid3-dd-wrap"



Test Case:
Create a grid


ExampleGrid = Ext.extend(Ext.grid.GridPanel, {
enableDragDrop: true,

initComponent: function() {
// ...
ExampleGrid.superclass.initComponent.call(this);
},

onRender: function(ct, position) {
ExampleGrid.superclass.onRender.call(this, ct, position);

var view = this.getView();
view.dragZone.resizeFrame = true;
view.dragZone.ddel.className = 'x-grid3-dd-wrap';
}
});
See this URL : -


Steps to reproduce the problem:


Set enableDragDrop to TRUE on a grid
In onRender, set the view's dragZone's resizeFrame member to TRUE
Drag a row



The result that was expected:


The shadow's size is the same as it is when resizeFrame is FALSE



The result that occurs instead:


The shadow is much larger along the bottom



Screenshot or Video:


resizeFrame(FALSE):
20621
resizeFrame(TRUE):
20620



Debugging already done:


If resizeFrame is TRUE, the realign(l,t,w,h) method of Ext.Shadow winds up getting called twice as opposed to once
The first time (whether resizeFrame is TRUE or FALSE), the "s.left" and "s.top" variables are set to some huge negative number
The second time, which again only happens if resizeFrame is TRUE, those same two variables have "real" values (ie, "400" and "325" or something along those lines)



Possible fix:


not provided

mrusinak
21 May 2010, 12:22 PM
A quick followup - After more playing around, it seems as though when resizeFrame is TRUE, the shadow is resized according to the size of the row the drag started from, and not the size of the proxy itself.