PDA

View Full Version : [CLOSED] [1.2.3] Fade in broken



Cputerace
3 Mar 2009, 11:01 AM
We populate our UI in the background based on RPC calls, then fade in the application as a whole. We do this by first calling fadeout with a duration of 1ms on the viewport right after the objects are added, we then do the RPC call to populate the data, then call fadein when everything is ready. It worked fine up to 1.2.2, but is now broken in 1.2.3. I have created a simple prototype that displays the problem. If you run the below code with 1.2.2 gxt, it works fine, and the buttons fade in after the timer delay. If you swap the library to 1.2.3, the buttons never fade in:


package com.mycompany.gwtprototype.client;

import com.extjs.gxt.ui.client.fx.FxConfig;
import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.Viewport;
import com.extjs.gxt.ui.client.widget.button.Button;
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.ui.RootPanel;

public class GwtPrototype implements EntryPoint {

private Viewport v;

public void onModuleLoad() {
v = new Viewport();
LayoutContainer lc = new LayoutContainer();
lc.setLayout(new FlowLayout());
lc.add(new Button("Hello"));
lc.add(new Button("World"));
RootPanel.get().add(v);
v.add(lc);
FxConfig fxConfig = new FxConfig();
fxConfig.setDuration(1);
v.el().fadeOut(fxConfig);

Timer t = new Timer(){
@Override
public void run()
{
FxConfig fxConfig = new FxConfig();
fxConfig.setDuration(3000);
v.el().fadeIn(fxConfig);
}
};
t.schedule(2000);
}
}

Note that the timer above simulates the time taken to run the RPC and populate the data.

We cannot upgrade to 1.2.3 till this is fixed.

sven
3 Mar 2009, 11:07 AM
This has nothing to do with FX class. There was a change made to viewport that was already reverted. The approach you are doing is also really bad and needs to reinvestigated. The change is already in SVN.

Cputerace
3 Mar 2009, 11:30 AM
I am up for any suggestions on how best to accomplish this. I tried viewport.setVisible(false), viewport.setAttribute("opacity", "0"), and viewport.setAttribute("filter", "0"), but none seemed to accomplish it.

Is the viewport issue something big enough to prompt a quick 1.2.4 release?