Page MenuHomePhabricator

D11559.diff
No OneTemporary

D11559.diff

diff --git a/resources/celerity/map.php b/resources/celerity/map.php
--- a/resources/celerity/map.php
+++ b/resources/celerity/map.php
@@ -8,7 +8,7 @@
return array(
'names' => array(
'core.pkg.css' => '8815f87d',
- 'core.pkg.js' => 'a27c1b62',
+ 'core.pkg.js' => '65e04767',
'darkconsole.pkg.js' => '8ab24e01',
'differential.pkg.css' => '8af45893',
'differential.pkg.js' => '7b5a4aa4',
@@ -203,7 +203,7 @@
'rsrc/externals/javelin/lib/URI.js' => '6eff08aa',
'rsrc/externals/javelin/lib/Vector.js' => '2caa8fb8',
'rsrc/externals/javelin/lib/WebSocket.js' => '3f840822',
- 'rsrc/externals/javelin/lib/Workflow.js' => 'a2ccdfec',
+ 'rsrc/externals/javelin/lib/Workflow.js' => '84d6aea0',
'rsrc/externals/javelin/lib/__tests__/Cookie.js' => '5ed109e8',
'rsrc/externals/javelin/lib/__tests__/DOM.js' => 'c984504b',
'rsrc/externals/javelin/lib/__tests__/JSON.js' => '837a7d68',
@@ -691,7 +691,7 @@
'javelin-view-renderer' => '6c2b09a2',
'javelin-view-visitor' => 'efe49472',
'javelin-websocket' => '3f840822',
- 'javelin-workflow' => 'a2ccdfec',
+ 'javelin-workflow' => '84d6aea0',
'lightbox-attachment-css' => '7acac05d',
'maniphest-batch-editor' => '8f380ebc',
'maniphest-report-css' => '6fc16517',
@@ -1420,6 +1420,17 @@
'javelin-workflow',
'phabricator-draggable-list',
),
+ '84d6aea0' => array(
+ 'javelin-stratcom',
+ 'javelin-request',
+ 'javelin-dom',
+ 'javelin-vector',
+ 'javelin-install',
+ 'javelin-util',
+ 'javelin-mask',
+ 'javelin-uri',
+ 'javelin-routable',
+ ),
'851f167c' => array(
'javelin-behavior',
'javelin-aphlict',
@@ -1579,17 +1590,6 @@
'javelin-vector',
'javelin-magical-init',
),
- 'a2ccdfec' => array(
- 'javelin-stratcom',
- 'javelin-request',
- 'javelin-dom',
- 'javelin-vector',
- 'javelin-install',
- 'javelin-util',
- 'javelin-mask',
- 'javelin-uri',
- 'javelin-routable',
- ),
'a4ae61bf' => array(
'javelin-install',
'javelin-dom',
diff --git a/webroot/rsrc/externals/javelin/lib/Workflow.js b/webroot/rsrc/externals/javelin/lib/Workflow.js
--- a/webroot/rsrc/externals/javelin/lib/Workflow.js
+++ b/webroot/rsrc/externals/javelin/lib/Workflow.js
@@ -172,11 +172,15 @@
[],
JX.Workflow._onsyntheticsubmit);
- var frame = JX.DOM.getContentFrame();
- frame.appendChild(this._root);
+ // Note that even in the presence of a content frame, we're doing
+ // everything here at top level: dialogs are fully modal and cover
+ // the entire window.
+
+ document.body.appendChild(this._root);
+
var d = JX.Vector.getDim(this._root);
- var v = JX.Vector.getDim(frame);
- var s = JX.Vector.getAggregateScrollForNode(frame);
+ var v = JX.Vector.getViewport();
+ var s = JX.Vector.getScroll();
// Normally, we position dialogs 100px from the top of the screen.
// Use more space if the dialog is large (at least roughly the size
@@ -206,7 +210,9 @@
// The `focus()` call may have scrolled the window. Scroll it back to
// where it was before -- we want to focus the control, but not adjust
// the scroll position.
- JX.DOM.scrollToPosition(s.x, s.y);
+
+ // Dialogs are window-level, so scroll the window explicitly.
+ window.scrollTo(s.x, s.y);
} else if (this.getHandler()) {
this.getHandler()(r);

File Metadata

Mime Type
text/plain
Expires
Fri, Jan 31, 3:09 AM (8 h, 55 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7076968
Default Alt Text
D11559.diff (3 KB)

Event Timeline