dequeueTask => cancelTask, implement in C++

This commit is contained in:
Ben Gotow 2017-07-30 16:52:58 -07:00
parent 3e63d71cb6
commit d2238d2a4a
7 changed files with 17 additions and 15 deletions

View file

@ -26,7 +26,7 @@ class SendingCancelButton extends React.Component
</div>
_onClick: =>
Actions.dequeueTask(@props.taskId)
Actions.cancelTask(@props.taskId)
@setState(cancelling: true)
module.exports = SendingCancelButton

View file

@ -256,7 +256,7 @@ class PreferencesMailRules extends React.Component {
{`${Number(task.numberOfImpactedItems()).toLocaleString()} processed...`}
</div>
<div style={{flex: 1}} />
<button className="btn btn-sm" onClick={() => Actions.dequeueTask(task.id)}>
<button className="btn btn-sm" onClick={() => Actions.cancelTask(task)}>
Cancel
</button>
</Flexbox>

View file

@ -13,7 +13,7 @@ function UndoSendToast(props) {
if (!visible) { return }
event.preventDefault();
event.stopPropagation();
Actions.dequeueTask(sendActionTaskId)
Actions.cancelTask(sendActionTaskId)
},
}}
>
@ -22,7 +22,7 @@ function UndoSendToast(props) {
className="undo-send-toast"
undoMessage="Sending draft"
visibleDuration={null}
onUndo={() => Actions.dequeueTask(sendActionTaskId)}
onUndo={() => Actions.cancelTask(sendActionTaskId)}
/>
</KeyCommandsRegion>
)

View file

@ -95,7 +95,7 @@ class Actions {
*Scope: Main Window*
*/
static dequeueTask = ActionScopeMainWindow;
static cancelTask = ActionScopeMainWindow;
/*
Public: Dequeue a {Task} matching the description provided.

View file

@ -17,7 +17,7 @@ export default class MailsyncBridge {
Actions.queueTask.listen(this.onQueueTask, this);
Actions.queueTasks.listen(this.onQueueTasks, this);
Actions.dequeueTask.listen(this.onDequeueTask, this);
Actions.cancelTask.listen(this.onCancelTask, this);
Actions.fetchBodies.listen(this.onFetchBodies, this);
this.clients = {};
@ -72,7 +72,7 @@ export default class MailsyncBridge {
task.validate();
task.status = 'local';
this.sendMessageToAccount(task.accountId, {type: 'task-queued', task: task});
this.sendMessageToAccount(task.accountId, {type: 'queue-task', task: task});
}
onQueueTasks(tasks) {
@ -80,12 +80,12 @@ export default class MailsyncBridge {
for (const task of tasks) { this.onQueueTask(task); }
}
onDequeueTask() { // taskOrId
// const task = this._resolveTaskArgument(taskOrId);
// if (!task) {
// throw new Error("Couldn't find task in queue to dequeue");
// }
throw new Error("Unimplemented");
onCancelTask(taskOrId) {
const task = this._resolveTaskArgument(taskOrId);
if (!task) {
throw new Error("Couldn't find task in queue to cancel");
}
this.sendMessageToAccount(task.accountId, {type: 'cancel-task', taskId: task.id});
}
onIncomingMessages(msgs) {

View file

@ -50,8 +50,9 @@ class TaskQueue extends NylasStore {
this._waitingForRemote = [];
Rx.Observable.fromQuery(DatabaseStore.findAll(Task)).subscribe((tasks => {
this._queue = tasks.filter(t => t.status !== Task.Status.Complete);
this._completed = tasks.filter(t => t.status === Task.Status.Complete);
const finished = [Task.Status.Complete, Task.Status.Cancelled];
this._queue = tasks.filter(t => !finished.includes(t.status));
this._completed = tasks.filter(t => finished.includes(t.status));
const all = [].concat(this._queue, this._completed);
this._waitingForLocal.filter(({task, resolve}) => {

View file

@ -10,6 +10,7 @@ const Status = {
Local: "local",
Remote: "remote",
Complete: "complete",
Cancelled: "cancelled",
};
export default class Task extends Model {