Subversion Repository Public Repository

litesoft

Diff Revisions 905 vs 906 for /trunk/mobileGWT/mgwt/src/main/java/com/googlecode/mgwt/ui/client/widget/base/PullPanel.java

Diff revisions: vs.
  @@ -26,6 +26,7 @@
26 26 import com.googlecode.mgwt.ui.client.widget.event.scroll.ScrollEndEvent;
27 27 import com.googlecode.mgwt.ui.client.widget.event.scroll.ScrollMoveEvent;
28 28 import com.googlecode.mgwt.ui.client.widget.event.scroll.ScrollRefreshEvent;
29 + import com.googlecode.mgwt.ui.client.widget.event.scroll.ScrollStartEvent;
29 30
30 31 public class PullPanel extends Composite implements HasWidgets, HasRefresh {
31 32
  @@ -120,6 +121,21 @@
120 121 }
121 122 });
122 123
124 + scrollPanel.addScrollStartHandler(new ScrollStartEvent.Handler() {
125 + @Override
126 + public void onScrollStart(ScrollStartEvent event) {
127 + if (header != null && headerPullhandler != null) {
128 + headerState = PullState.NORMAL;
129 + headerPullhandler.onPullStateChanged(header, headerState);
130 + }
131 +
132 + if (footer != null && footerPullhandler != null) {
133 + footerState = PullState.NORMAL;
134 + footerPullhandler.onPullStateChanged(footer, footerState);
135 + }
136 + }
137 + });
138 +
123 139 scrollPanel.addScrollMoveHandler(new ScrollMoveEvent.Handler() {
124 140
125 141 @Override
  @@ -220,6 +236,8 @@
220 236 if (this.header != null) {
221 237 main.insert(this.header, 0);
222 238 scrollPanel.setOffSetY(this.header.getHeight());
239 + } else {
240 + scrollPanel.setOffSetY(0);
223 241 }
224 242
225 243 scrollPanel.refresh();
  @@ -234,6 +252,8 @@
234 252 if (this.footer != null) {
235 253 main.insert(this.footer, main.getWidgetCount());
236 254 scrollPanel.setOffSetMaxY(this.footer.getHeight());
255 + } else {
256 + scrollPanel.setOffSetMaxY(0);
237 257 }
238 258
239 259 scrollPanel.refresh();