You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by no...@apache.org on 2009/08/24 20:00:16 UTC
svn commit: r807322 - in /labs/hupa/src/main/java/org/apache/hupa/client:
mvp/IMAPMessageListPresenter.java mvp/IMAPMessageListView.java
mvp/IMAPMessagePresenter.java widgets/RefetchPagingScrollTable.java
Author: norman
Date: Mon Aug 24 18:00:16 2009
New Revision: 807322
URL: http://svn.apache.org/viewvc?rev=807322&view=rev
Log:
only bind handlers if the presenter is not already bound
fix deleting of rows from the table
Modified:
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java
labs/hupa/src/main/java/org/apache/hupa/client/widgets/RefetchPagingScrollTable.java
Modified: labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java?rev=807322&r1=807321&r2=807322&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java (original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java Mon Aug 24 18:00:16 2009
@@ -83,6 +83,7 @@
private String searchValue;
private DispatchAsync dispatcher;
private ShowMessageTableListener tableListener = new ShowMessageTableListener();
+ private boolean isBound = false;
public final static Place PLACE = new Place("IMAPMessageList");
@@ -167,7 +168,7 @@
}));
display.addTableListener(tableListener);
-
+ isBound = true;
}
private void deleteMessages() {
@@ -190,7 +191,10 @@
this.user = user;
this.folder = folder;
this.searchValue = searchValue;
- bind();
+ // workaround
+ if (isBound == false) {
+ bind();
+ }
refreshDisplay();
}
@Override
@@ -204,6 +208,7 @@
display.removeTableListener(tableListener);
display.reset();
display.deselectAllMessages();
+ isBound = false;
}
public void refreshDisplay() {
Modified: labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java
URL: http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java?rev=807322&r1=807321&r2=807322&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java (original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java Mon Aug 24 18:00:16 2009
@@ -113,7 +113,6 @@
private Hyperlink allLink = new Hyperlink(constants.all(),"");
private Hyperlink noneLink = new Hyperlink(constants.none(),"");
-
@Inject
public IMAPMessageListView(DispatchAsync dispatcher,EventBus bus, PagingScrollTableRowDragController controller) {
Modified: labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java?rev=807322&r1=807321&r2=807322&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java (original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java Mon Aug 24 18:00:16 2009
@@ -74,6 +74,7 @@
private DispatchAsync dispatcher;
private IMAPFolder folder;
private User user;
+ private boolean isBound = false;
@Inject
private IMAPMessagePresenter(IMAPMessagePresenter.Display display,EventBus bus, DispatchAsync dispatcher) {
@@ -86,7 +87,9 @@
this.message = message;
this.folder = folder;
this.user = user;
- bind();
+ if (isBound == false) {
+ bind();
+ }
refreshDisplay();
}
@@ -149,7 +152,7 @@
}
}));
-
+ isBound = true;
}
@Override
@@ -181,7 +184,7 @@
@Override
protected void onUnbind() {
-
+ isBound = false;
}
public void refreshDisplay() {
Modified: labs/hupa/src/main/java/org/apache/hupa/client/widgets/RefetchPagingScrollTable.java
URL: http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/widgets/RefetchPagingScrollTable.java?rev=807322&r1=807321&r2=807322&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/widgets/RefetchPagingScrollTable.java (original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/widgets/RefetchPagingScrollTable.java Mon Aug 24 18:00:16 2009
@@ -23,6 +23,7 @@
import java.util.HashSet;
import java.util.Iterator;
+import com.google.gwt.core.client.GWT;
import com.google.gwt.gen2.table.client.FixedWidthFlexTable;
import com.google.gwt.gen2.table.client.FixedWidthGrid;
import com.google.gwt.gen2.table.client.MutableTableModel;
@@ -97,10 +98,12 @@
// Check if we found any rows to remove
if (rowsIndex.isEmpty() == false) {
// remove the row value on deletion
- getRowValues().removeAll(rows);
- selectedRows.removeAll(rows);
for (int i = 0; i <rowsIndex.size();i++) {
- ((MutableTableModel) getTableModel()).removeRow(rowsIndex.get(i));
+ int index = rowsIndex.get(i) -i;
+ selectedRows.remove(getRowValue(index));
+ getRowValues().remove(index);
+
+ ((MutableTableModel) getTableModel()).removeRow(index);
}
// Check if we need to refetch rows
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org