Author: dongxu
Date: Thu Sep 12 03:14:41 2013
New Revision: 1522177
URL: http://svn.apache.org/r1522177
Log:
fix the CellTable display
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LoginActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/IMAPMessageListView.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java?rev=1522177&r1=1522176&r2=1522177&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java
Thu Sep 12 03:14:41 2013
@@ -870,20 +870,13 @@ public class IMAPMessageListActivity ext
eventBus.fireEvent(new
DecreaseUnseenEvent(user, folder, response.getCount()));
}
});
-
- // dispatcher.execute(new DeleteMessageByUid(folder,uids), new
- // HupaEvoCallback<DeleteMessageResult>(dispatcher, eventBus) {
- // public void callback(DeleteMessageResult result) {
- // eventBus.fireEvent(new
- // DecreaseUnseenEvent(user,folder,result.getCount()));
- // }
- // });
}
public IMAPMessageListActivity with(MailFolderPlace place) {
this.user = place.getUser();
this.folder = place.getFolder();
this.searchValue = place.getSearchValue();
<<<<<<< HEAD
+<<<<<<< HEAD
=======
}
@Override
@@ -1128,6 +1121,8 @@ public class IMAPMessageListActivity ext
=======
display.setImapFolder(folder);
>>>>>>> use CellTable to deal with MessageTableModel, even a few issues
+=======
+>>>>>>> fix the CellTable display
return this;
}
@@ -1302,7 +1297,6 @@ public class IMAPMessageListActivity ext
public HasValue<String> getSearchValue();
public void fillSearchOracle(List<Message> messages);
public void setExpandLoading(boolean expanding);
- void setImapFolder(ImapFolder folder);
}
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LoginActivity.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LoginActivity.java?rev=1522177&r1=1522176&r2=1522177&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LoginActivity.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LoginActivity.java
Thu Sep 12 03:14:41 2013
@@ -241,7 +241,7 @@ public class LoginActivity extends Abstr
public void bind() {
display.getLoginClick().addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
- doLogin();
+ doLogin();// FIXME double run if press "ENTER"
key in the login page
}
});
<<<<<<< HEAD
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java?rev=1522177&r1=1522176&r2=1522177&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java
Thu Sep 12 03:14:41 2013
@@ -912,7 +912,7 @@ System.out.println("1111111"+response);
}
display.setLoadingMessage(true);
- if(messagesRequest == null){
+ if (messagesRequest == null) {
messagesRequest =
requestFactory.messagesRequest();
}
GetMessageDetailsRequest req =
messagesRequest.append(requestFactory.messageDetailsRequest());
@@ -937,9 +937,6 @@ System.out.println("1111111"+response);
eventBus.fireEvent(new
DecreaseUnseenEvent(user, folder));
}
display.setLoadingMessage(false);
- // showMessage(user, folder,
message,
- //
response.getMessageDetails());
-
placeController.goTo(messagePlaceProvider.get().with(user, folder, message,
response.getMessageDetails()));
}
@@ -1100,6 +1097,7 @@ System.out.println("1111111"+response);
folder = messagesRequest.edit(editableFolder);
// folder = (ImapFolder) tItem.getUserObject();
+ // FIXME not good to find
eventBus.fireEvent(new LoadMessagesEvent(user,
folder));
<<<<<<< HEAD
>>>>>>> fix the frozen autobean issue, yet another occur
@@ -1337,7 +1335,7 @@ System.out.println("1111111"+response);
this.searchValue = searchValue;
// FIXME goto?
-// placeController.goTo(new MailFolderPlace().with(user, folder,
searchValue));
+ placeController.goTo(new MailFolderPlace().with(user, folder,
searchValue));
//
placeController.goTo(mailInboxPlaceProvider.get().with(user));
// System.out.println("111");
// placeController.goTo(new
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java?rev=1522177&r1=1522176&r2=1522177&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java
Thu Sep 12 03:14:41 2013
@@ -416,7 +416,7 @@ public class AppGinModule extends Abstra
bind(PagingScrollTableRowDragController.class).in(Singleton.class);
bind(MessageTableModel.class).in(Singleton.class);
-// bind(MessagesCellTable.class).in(Singleton.class);
+ bind(MessagesCellTable.class).in(Singleton.class);
// Places
bind(PlaceHistoryMapper.class).to(AppPlaceHistoryMapper.class).in(Singleton.class);
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/IMAPMessageListView.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/IMAPMessageListView.java?rev=1522177&r1=1522176&r2=1522177&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/IMAPMessageListView.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/IMAPMessageListView.java
Thu Sep 12 03:14:41 2013
@@ -75,7 +75,6 @@ import com.google.gwt.dom.client.Style.U
>>>>>>> Change to new mvp framework - first step
import org.apache.hupa.client.bundles.HupaImageBundle;
import org.apache.hupa.client.dnd.PagingScrollTableRowDragController;
-import org.apache.hupa.client.rf.FetchMessagesRequest;
import org.apache.hupa.client.rf.HupaRequestFactory;
import org.apache.hupa.client.widgets.CommandsBar;
import org.apache.hupa.client.widgets.ConfirmDialogBox;
@@ -83,11 +82,12 @@ import org.apache.hupa.client.widgets.Dr
import
org.apache.hupa.client.widgets.DragRefetchPagingScrollTable.DragHandlerFactory;
import org.apache.hupa.client.widgets.EnableButton;
import org.apache.hupa.client.widgets.HasDialog;
+import org.apache.hupa.shared.data.MessageImpl;
import org.apache.hupa.shared.data.MessageImpl.IMAPFlag;
-import org.apache.hupa.shared.domain.FetchMessagesAction;
-import org.apache.hupa.shared.domain.FetchMessagesResult;
import org.apache.hupa.shared.domain.ImapFolder;
import org.apache.hupa.shared.domain.Message;
+import org.apache.hupa.shared.events.DecreaseUnseenEvent;
+import org.apache.hupa.shared.events.ExpandMessageEvent;
import org.apache.hupa.widgets.ui.HasEnable;
import org.apache.hupa.widgets.ui.Loading;
import org.apache.hupa.widgets.ui.PagingOptions;
@@ -96,6 +96,7 @@ import org.cobogw.gwt.user.client.ui.But
<<<<<<< HEAD
<<<<<<< HEAD
+<<<<<<< HEAD
>>>>>>> Change to new mvp framework - first step
=======
>>>>>>> Change to new mvp framework - first step
@@ -108,6 +109,8 @@ import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.Scheduler;
import com.google.gwt.core.client.Scheduler.ScheduledCommand;
>>>>>>> use CellTable to deal with MessageTableModel, even a few issues
+=======
+>>>>>>> fix the CellTable display
import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.HasChangeHandlers;
@@ -119,6 +122,7 @@ import com.google.gwt.event.dom.client.K
<<<<<<< HEAD
<<<<<<< HEAD
import com.google.gwt.event.shared.EventBus;
+<<<<<<< HEAD
import com.google.gwt.user.cellview.client.SimplePager;
import com.google.gwt.user.cellview.client.SimplePager.TextLocation;
import com.google.gwt.user.client.ui.Anchor;
@@ -767,6 +771,8 @@ public class IMAPMessageListView extends
=======
import com.google.gwt.event.shared.EventBus;
>>>>>>> fix some bugs related to RF, and try to use new CellView to replace
>>>>>>> gwt-incubator
+=======
+>>>>>>> fix the CellTable display
import com.google.gwt.gen2.table.client.AbstractColumnDefinition;
import com.google.gwt.gen2.table.client.AbstractScrollTable.ColumnResizePolicy;
import com.google.gwt.gen2.table.client.AbstractScrollTable.ResizePolicy;
@@ -794,6 +800,7 @@ import com.google.gwt.i18n.client.DateTi
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
+<<<<<<< HEAD
=======
import com.google.gwt.user.cellview.client.AbstractPager;
import com.google.gwt.user.cellview.client.DataGrid;
@@ -809,6 +816,9 @@ import com.google.gwt.user.cellview.clie
import com.google.gwt.user.cellview.client.SimplePager;
import com.google.gwt.user.cellview.client.SimplePager.TextLocation;
>>>>>>> use CellTable to deal with MessageTableModel, even a few issues
+=======
+import com.google.gwt.user.cellview.client.SimplePager;
+>>>>>>> fix the CellTable display
import com.google.gwt.user.client.ui.Anchor;
>>>>>>>
import com.google.gwt.user.client.ui.Composite;
@@ -822,10 +832,9 @@ import com.google.gwt.user.client.ui.Sug
import com.google.gwt.user.client.ui.TableListener;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
-import com.google.gwt.view.client.ListDataProvider;
+import com.google.gwt.view.client.SelectionChangeEvent;
+import com.google.gwt.view.client.SingleSelectionModel;
import com.google.inject.Inject;
-import com.google.web.bindery.requestfactory.shared.Receiver;
-import com.google.web.bindery.requestfactory.shared.ServerFailure;
@SuppressWarnings("deprecation")
<<<<<<< HEAD
@@ -1595,14 +1604,8 @@ public class IMAPMessageListView extends
private Button searchButton;
private Loading loading;
- private MessagesCellTable table;
private SimplePager pager;
-
- private ImapFolder folder;
- @Override
- public void setImapFolder(ImapFolder folder){
- this.folder = folder;
- }
+ private EventBus eventBus;
@Inject
public IMAPMessageListView(final PagingScrollTableRowDragController
controller,
@@ -1611,9 +1614,7 @@ public class IMAPMessageListView extends
final MessagesCellTable table) {
this.messages = messages;
this.imageBundle = imageBundle;
-
- // table = new MessagesCellTable(eventBus, requestFactory,
imageBundle);
- this.table = table;
+ this.eventBus = eventBus;
pager = new SimplePager();
pager.setDisplay(table);
@@ -1630,7 +1631,6 @@ public class IMAPMessageListView extends
this.cTableModel = new CachedTableModel<Message>(mTableModel);
cTableModel.setRowCount(MutableTableModel.UNKNOWN_ROW_COUNT);
mTableModel.addRowCountChangeHandler(new
RowCountChangeHandler() {
-
public void onRowCountChange(RowCountChangeEvent event)
{
cTableModel.setRowCount(event.getNewRowCount());
}
@@ -1642,11 +1642,9 @@ public class IMAPMessageListView extends
createTableDefinitation(), controller, 1);
mailTable.setPageSize(20);
mailTable.setDragHandler(0, 30, new DragHandlerFactory() {
-
public Widget createHandler() {
return new
Image(imageBundle.readyToMoveMailIcon());
}
-
});
HTML emptyTable = new HTML(constants.emptyMailTable());
@@ -1732,142 +1730,14 @@ public class IMAPMessageListView extends
commandsBar.addRight(pager);
msgListContainer.add(commandsBar);
+
+ msgListContainer.add(table);
// msgListContainer.add(mailTable);
- msgListContainer.add(createTable(eventBus, requestFactory,
imageBundle));
- // msgListContainer.addSouth(table, DEFAULT_MSG_PAGE_SIZE);
confirmBox.setText(messages.confirmDeleteMessages());
confirmDeleteAllBox.setText(messages.confirmDeleteAllMessages());
initWidget(msgListContainer);
}
-
- private boolean pending;
- private ListDataProvider<Message> dataProvider = new
ListDataProvider<Message>();
- private MessagesCellTable createTable(final EventBus eventBus, final
HupaRequestFactory requestFactory,
- final HupaImageBundle imageBundle){
- MessagesCellTable table = new MessagesCellTable(eventBus,
requestFactory, imageBundle);
- table.setWidth("100%", true);
- SimplePager.Resources pr =
GWT.create(SimplePager.Resources.class);
- pager = new SimplePager(TextLocation.CENTER, pr, false, 0,
true);
- pager.setDisplay(table);
-
- table.addColumn(new CheckboxColumn());
- table.addColumn(new FromColumn());
- table.addColumn(new SubjectColumn());
- table.addColumn(new AttachmentColumn());
- table.addColumn(new DateColumn());
-
- if (!pending) {
- pending = true;
- Scheduler.get().scheduleFinally(new ScheduledCommand() {
- @Override
- public void execute() {
- pending = false;
- fetch(0, requestFactory);
- }
- });
- }
- dataProvider.addDataDisplay(table);
- return table;
- }
-
- public void fetch(final int start, final HupaRequestFactory
requestFactory) {
- FetchMessagesRequest messagesRequest =
requestFactory.messagesRequest();
- FetchMessagesAction action =
messagesRequest.create(FetchMessagesAction.class);
- final ImapFolder folder1 =
messagesRequest.create(ImapFolder.class);
- folder1.setChildren(this.folder.getChildren());
- folder1.setDelimiter(this.folder.getDelimiter());
- folder1.setFullName(this.folder.getFullName());
- folder1.setMessageCount(this.folder.getMessageCount());
- folder1.setName(this.folder.getName());
- folder1.setSubscribed(this.folder.getSubscribed());
-
folder1.setUnseenMessageCount(this.folder.getUnseenMessageCount());
- // FIXME cannot put setFolder to the first place
- action.setOffset(table.getPageSize());
- action.setFolder(folder1);
- action.setSearchString(null);
- action.setStart(start);
- messagesRequest.fetch(action).fire(new
Receiver<FetchMessagesResult>() {
-
- @Override
- public void onFailure(ServerFailure error) {
- if (error.isFatal()) {
- throw new
RuntimeException(error.getMessage());
- }
- }
- @Override
- public void onSuccess(final FetchMessagesResult result)
{
- assert result != null;
- folder.setMessageCount(result.getRealCount());
-
folder.setUnseenMessageCount(result.getRealUnreadCount());
- dataProvider.setList(result.getMessages());
-// table.setRowCount(result.getRealCount());
-// if (result.getMessages() != null) {
-// table.setRowData(start +
table.getPageSize(), result.getMessages());
-// } else {
-// table.setRowData(start
+table.getPageSize(), result.getMessages());
-// }
-
- pager.setPageStart(start);
-// if (start == 0 || !table.isRowCountExact()) {
-// table.setRowCount(start + result.getMessages().size(),
result.getMessages().size() < table.getPageSize());
-// }
-// flush();
- // Notify presenter to update folder tree view
-// eventBus.fireEvent(new
MessagesReceivedEvent(folder1, result.getMessages()));
- }
- });
- }
-
- private class CheckboxColumn extends Column<Message, Boolean> {
- public CheckboxColumn() {
- super(new CheckboxCell());
- }
- @Override
- public Boolean getValue(Message object) {
- return true;
- }
- }
-
- private class FromColumn extends Column<Message, String> {
- public FromColumn() {
- super(new TextCell());
- }
- @Override
- public String getValue(Message object) {
- return object.getFrom();
- }
- }
-
- private class SubjectColumn extends Column<Message, String> {
- public SubjectColumn() {
- super(new TextCell());
- }
- @Override
- public String getValue(Message object) {
- return object.getSubject();
- }
- }
-
- private class AttachmentColumn extends Column<Message, ImageResource> {
- public AttachmentColumn() {
- super(new ImageResourceCell());
- }
- @Override
- public ImageResource getValue(Message object) {
- return object.hasAttachment() ?
imageBundle.attachmentIcon() : null;
- }
- }
-
- private class DateColumn extends Column<Message, Date> {
- public DateColumn() {
- super(new
DateCell(DateTimeFormat.getFormat("dd.MMM.yyyy")));
- }
- @Override
- public Date getValue(Message object) {
- return object.getReceivedDate();
- }
- }
PageLoadHandler onMessagePageLoadHandler = new PageLoadHandler() {
public void onPageLoad(PageLoadEvent event) {
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java?rev=1522177&r1=1522176&r2=1522177&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java
Thu Sep 12 03:14:41 2013
@@ -483,11 +483,14 @@ import org.apache.hupa.client.bundles.Hu
import org.apache.hupa.client.rf.FetchMessagesRequest;
import org.apache.hupa.client.rf.HupaRequestFactory;
import org.apache.hupa.shared.data.ImapFolderImpl;
+import org.apache.hupa.shared.data.MessageImpl;
import org.apache.hupa.shared.domain.FetchMessagesAction;
import org.apache.hupa.shared.domain.FetchMessagesResult;
import org.apache.hupa.shared.domain.ImapFolder;
import org.apache.hupa.shared.domain.Message;
import org.apache.hupa.shared.domain.User;
+import org.apache.hupa.shared.events.DecreaseUnseenEvent;
+import org.apache.hupa.shared.events.ExpandMessageEvent;
import org.apache.hupa.shared.events.FolderSelectionEvent;
import org.apache.hupa.shared.events.FolderSelectionEventHandler;
import org.apache.hupa.shared.events.LoadMessagesEvent;
@@ -502,21 +505,25 @@ import com.google.gwt.cell.client.Checkb
import com.google.gwt.cell.client.DateCell;
import com.google.gwt.cell.client.ImageResourceCell;
import com.google.gwt.cell.client.TextCell;
+import com.google.gwt.core.client.Scheduler;
+import com.google.gwt.core.client.Scheduler.ScheduledCommand;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.resources.client.ImageResource;
import com.google.gwt.user.cellview.client.CellTable;
import com.google.gwt.user.cellview.client.Column;
-import
com.google.gwt.user.cellview.client.HasKeyboardSelectionPolicy.KeyboardSelectionPolicy;
import com.google.gwt.user.cellview.client.SimplePager;
+import com.google.gwt.view.client.ListDataProvider;
import com.google.gwt.view.client.RangeChangeEvent;
+import com.google.gwt.view.client.SelectionChangeEvent;
+import com.google.gwt.view.client.SingleSelectionModel;
import com.google.inject.Inject;
import com.google.web.bindery.requestfactory.shared.Receiver;
import com.google.web.bindery.requestfactory.shared.ServerFailure;
public class MessagesCellTable extends CellTable<Message> {
- private static final int PAGE_SIZE = 25;
+ private static final int PAGE_SIZE = 15;
private User user;
private ImapFolder folder;
@@ -527,6 +534,7 @@ public class MessagesCellTable extends C
private boolean pending;
private SimplePager pager;
+ private ListDataProvider<Message> dataProvider;
public SimplePager getPager(){
return pager;
@@ -548,26 +556,15 @@ public class MessagesCellTable extends C
pager = new SimplePager();
pager.setDisplay(this);
+ dataProvider = new ListDataProvider<Message>();
+ dataProvider.addDataDisplay(this);
setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
- setVisible(true);
addRangeChangeHandler(new RangeChangeEvent.Handler() {
@Override
public void onRangeChange(RangeChangeEvent event) {
fetch(event.getNewRange().getStart());
}
});
- /*
- if (!pending) {
- pending = true;
- Scheduler.get().scheduleFinally(new ScheduledCommand() {
- @Override
- public void execute() {
- pending = false;
- fetch(0);
- }
- });
- }
- */
// bind some Events
eventBus.addHandler(LoadMessagesEvent.TYPE, new
LoadMessagesEventHandler() {
@@ -575,7 +572,18 @@ public class MessagesCellTable extends C
user = loadMessagesEvent.getUser();
folder = loadMessagesEvent.getFolder();
searchValue =
loadMessagesEvent.getSearchValue();
-// fetch(0);
+ fetch(0);
+// if (!pending) {
+// pending = true;
+// Scheduler.get().scheduleFinally(new
ScheduledCommand() {
+// @Override
+// public void execute() {
+// pending = false;
+// fetch(0);
+// }
+// });
+// }
+
}
});
eventBus.addHandler(FolderSelectionEvent.TYPE, new
FolderSelectionEventHandler() {
@@ -592,7 +600,16 @@ public class MessagesCellTable extends C
user = event.getUser();
folder = new
ImapFolderImpl(user.getSettings().getInboxFolderName());
searchValue = null;
-// fetch(0);
+ if (!pending) {
+ pending = true;
+ Scheduler.get().scheduleFinally(new
ScheduledCommand() {
+ @Override
+ public void execute() {
+ pending = false;
+ fetch(0);
+ }
+ });
+ }
}
});
eventBus.addHandler(LogoutEvent.TYPE, new LogoutEventHandler() {
@@ -606,22 +623,49 @@ public class MessagesCellTable extends C
// this.setRowData(values);
+ setSelectionModel(selectionModel);
+ selectionModel.addSelectionChangeHandler(new
SelectionChangeEvent.Handler() {
+ @Override
+ public void onSelectionChange(SelectionChangeEvent event) {
+ refreshSelection();
+ }
+ });
+
}
+
+ private final SingleSelectionModel<Message> selectionModel = new
SingleSelectionModel<Message>();
+ protected void refreshSelection() {
+ Message message = selectionModel.getSelectedObject();
+ if(message == null) return;
+// display.setExpandLoading(true);
+
+ if (message.getFlags().contains(MessageImpl.IMAPFlag.SEEN) ==
false) {
+ // add flag, fire event and redraw
+ message.getFlags().add(MessageImpl.IMAPFlag.SEEN);
+ eventBus.fireEvent(new DecreaseUnseenEvent(user,
folder, 1));
+
+// display.redraw();
+
+ }
+ eventBus.fireEvent(new ExpandMessageEvent(user, folder,
message));
+ selectionModel.setSelected(message, false);
+
+ }
public void fetch(final int start) {
FetchMessagesRequest messagesRequest =
requestFactory.messagesRequest();
FetchMessagesAction action =
messagesRequest.create(FetchMessagesAction.class);
- final ImapFolder folder =
messagesRequest.create(ImapFolder.class);
- folder.setChildren(this.folder.getChildren());
- folder.setDelimiter(this.folder.getDelimiter());
- folder.setFullName(this.folder.getFullName());
- folder.setMessageCount(this.folder.getMessageCount());
- folder.setName(this.folder.getName());
- folder.setSubscribed(this.folder.getSubscribed());
-
folder.setUnseenMessageCount(this.folder.getUnseenMessageCount());
+ final ImapFolder folder1 =
messagesRequest.create(ImapFolder.class);
+ folder1.setChildren(this.folder.getChildren());
+ folder1.setDelimiter(this.folder.getDelimiter());
+ folder1.setFullName(this.folder.getFullName());
+ folder1.setMessageCount(this.folder.getMessageCount());
+ folder1.setName(this.folder.getName());
+ folder1.setSubscribed(this.folder.getSubscribed());
+
folder1.setUnseenMessageCount(this.folder.getUnseenMessageCount());
// FIXME cannot put setFolder to the first place
action.setOffset(getPageSize());
- action.setFolder(folder);
+ action.setFolder(folder1);
action.setSearchString(searchValue);
action.setStart(start);
messagesRequest.fetch(action).fire(new
Receiver<FetchMessagesResult>() {
@@ -637,6 +681,7 @@ public class MessagesCellTable extends C
assert result != null;
MessagesCellTable.this.folder.setMessageCount(result.getRealCount());
MessagesCellTable.this.folder.setUnseenMessageCount(result.getRealUnreadCount());
+ dataProvider.setList(result.getMessages());
setRowCount(result.getRealCount());
if (result.getMessages() != null) {
setRowData(start + getPageSize(),
result.getMessages());
@@ -650,7 +695,7 @@ public class MessagesCellTable extends C
}
// flush();
// Notify presenter to update folder tree view
- eventBus.fireEvent(new
MessagesReceivedEvent(folder, result.getMessages()));
+ eventBus.fireEvent(new
MessagesReceivedEvent(folder1, result.getMessages()));
}
});
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]