Page MenuHomePhabricator

D12104.diff
No OneTemporary

D12104.diff

diff --git a/resources/celerity/map.php b/resources/celerity/map.php
--- a/resources/celerity/map.php
+++ b/resources/celerity/map.php
@@ -352,8 +352,8 @@
'rsrc/js/application/aphlict/behavior-aphlict-status.js' => 'ea681761',
'rsrc/js/application/auth/behavior-persona-login.js' => '9414ff18',
'rsrc/js/application/config/behavior-reorder-fields.js' => '14a827de',
- 'rsrc/js/application/conpherence/ConpherenceThreadManager.js' => '6a9169bb',
- 'rsrc/js/application/conpherence/behavior-durable-column.js' => 'e975bd12',
+ 'rsrc/js/application/conpherence/ConpherenceThreadManager.js' => '24561adb',
+ 'rsrc/js/application/conpherence/behavior-durable-column.js' => 'eedc463c',
'rsrc/js/application/conpherence/behavior-menu.js' => 'c4151295',
'rsrc/js/application/conpherence/behavior-pontificate.js' => '21ba5861',
'rsrc/js/application/conpherence/behavior-quicksand-blacklist.js' => '7927a7d3',
@@ -517,7 +517,7 @@
'conpherence-menu-css' => '9b37a261',
'conpherence-message-pane-css' => 'e78e9d3c',
'conpherence-notification-css' => '04a6e10a',
- 'conpherence-thread-manager' => '6a9169bb',
+ 'conpherence-thread-manager' => '24561adb',
'conpherence-update-css' => '1099a660',
'conpherence-widget-pane-css' => '9efbfed0',
'differential-changeset-view-css' => '6a8b172a',
@@ -583,7 +583,7 @@
'javelin-behavior-diffusion-locate-file' => '6d3e1947',
'javelin-behavior-diffusion-pull-lastmodified' => '2b228192',
'javelin-behavior-doorkeeper-tag' => 'e5822781',
- 'javelin-behavior-durable-column' => 'e975bd12',
+ 'javelin-behavior-durable-column' => 'eedc463c',
'javelin-behavior-error-log' => '6882e80a',
'javelin-behavior-fancy-datepicker' => 'c51ae228',
'javelin-behavior-global-drag-and-drop' => 'bbdf75ca',
@@ -988,6 +988,16 @@
'javelin-workflow',
'javelin-util',
),
+ '24561adb' => array(
+ 'javelin-dom',
+ 'javelin-util',
+ 'javelin-stratcom',
+ 'javelin-install',
+ 'javelin-workflow',
+ 'javelin-router',
+ 'javelin-behavior-device',
+ 'javelin-vector',
+ ),
'2818f5ce' => array(
'javelin-install',
'javelin-util',
@@ -1270,16 +1280,6 @@
'69adf288' => array(
'javelin-install',
),
- '6a9169bb' => array(
- 'javelin-dom',
- 'javelin-util',
- 'javelin-stratcom',
- 'javelin-install',
- 'javelin-workflow',
- 'javelin-router',
- 'javelin-behavior-device',
- 'javelin-vector',
- ),
'6c2b09a2' => array(
'javelin-install',
'javelin-util',
@@ -1893,7 +1893,13 @@
'javelin-dom',
'phabricator-draggable-list',
),
- 'e975bd12' => array(
+ 'ea681761' => array(
+ 'javelin-behavior',
+ 'javelin-aphlict',
+ 'phabricator-phtize',
+ 'javelin-dom',
+ ),
+ 'eedc463c' => array(
'javelin-behavior',
'javelin-dom',
'javelin-stratcom',
@@ -1903,12 +1909,6 @@
'phabricator-keyboard-shortcut',
'conpherence-thread-manager',
),
- 'ea681761' => array(
- 'javelin-behavior',
- 'javelin-aphlict',
- 'phabricator-phtize',
- 'javelin-dom',
- ),
'efe49472' => array(
'javelin-install',
'javelin-util',
diff --git a/webroot/rsrc/js/application/conpherence/ConpherenceThreadManager.js b/webroot/rsrc/js/application/conpherence/ConpherenceThreadManager.js
--- a/webroot/rsrc/js/application/conpherence/ConpherenceThreadManager.js
+++ b/webroot/rsrc/js/application/conpherence/ConpherenceThreadManager.js
@@ -175,15 +175,16 @@
if (r.latest_transaction_id < this._updating.knownID) {
return false;
}
- // we need to let the update code handle things here
- if (r.latest_transaction_id > this._updating.knownID) {
- this._updating.knownID = r.latest_transaction_id;
- return false;
- }
}
return true;
},
+ _markUpdated: function(r) {
+ this._updating.knownID = r.latest_transaction_id;
+ this._latestTransactionID = r.latest_transaction_id;
+ JX.Stratcom.invoke('notification-panel-update', null, {});
+ },
+
_updateThread: function() {
var params = this._getParams({
action: 'load',
@@ -194,19 +195,11 @@
var workflow = new JX.Workflow(uri)
.setData(params)
.setHandler(JX.bind(this, function(r) {
- if (this._updating &&
- this._updating.threadPHID == this._loadedThreadPHID) {
- // we have a different, more current update in progress so
- // return early
- if (r.latest_transaction_id < this._updating.knownID) {
- return;
- }
- }
- this._updating.knownID = r.latest_transaction_id;
- this._latestTransactionID = r.latest_transaction_id;
- JX.Stratcom.invoke('notification-panel-update', null, {});
+ if (this._shouldUpdateDOM(r)) {
+ this._markUpdated(r);
- this._didUpdateThreadCallback(r);
+ this._didUpdateThreadCallback(r);
+ }
}));
this.syncWorkflow(workflow, 'finally');
@@ -235,8 +228,7 @@
.setData(params)
.setHandler(JX.bind(this, function(r) {
if (this._shouldUpdateDOM(r)) {
- this._latestTransactionID = r.latest_transaction_id;
- JX.Stratcom.invoke('notification-panel-update', null, {});
+ this._markUpdated(r);
this._didUpdateWorkflowCallback(r);
}
@@ -283,8 +275,7 @@
var workflow = JX.Workflow.newFromForm(form, params, keep_enabled)
.setHandler(JX.bind(this, function(r) {
if (this._shouldUpdateDOM(r)) {
- this._latestTransactionID = r.latest_transaction_id;
- JX.Stratcom.invoke('notification-panel-update', null, {});
+ this._markUpdated(r);
this._didSendMessageCallback(r);
}
diff --git a/webroot/rsrc/js/application/conpherence/behavior-durable-column.js b/webroot/rsrc/js/application/conpherence/behavior-durable-column.js
--- a/webroot/rsrc/js/application/conpherence/behavior-durable-column.js
+++ b/webroot/rsrc/js/application/conpherence/behavior-durable-column.js
@@ -120,7 +120,7 @@
JX.Stratcom.invoke('notification-panel-close');
});
threadManager.setDidUpdateWorkflowCallback(function(r) {
- var messages = this._getMessagesNode();
+ var messages = _getColumnMessagesNode();
JX.DOM.appendContent(messages, JX.$H(r.transactions));
scrollbar.scrollTo(messages.scrollHeight);
JX.DOM.setContent(_getColumnTitleNode(), r.conpherence_title);

File Metadata

Mime Type
text/plain
Expires
Fri, Dec 20, 3:54 AM (20 h, 29 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6909444
Default Alt Text
D12104.diff (6 KB)

Event Timeline