@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix the "x" link in tokenizer tokens incorrectly closing dialogs

Summary:
See <https://discourse.phabricator-community.org/t/removing-tags-or-subscribers-from-a-maniphest-modal-causes-the-modal-to-close/2874>.

My Javascript is rusty: `'' + null == 'null'`. Same for `undefined`. Use an explicit typecheck instead.

Test Plan: Clicked the "x" in a tokenizer token in a dialog, saw the token removed instead of the dialog closed.

Reviewers: amckinley

Reviewed By: amckinley

Differential Revision: https://secure.phabricator.com/D20623

+19 -15
+14 -14
resources/celerity/map.php
··· 10 10 'conpherence.pkg.css' => '3c8a0668', 11 11 'conpherence.pkg.js' => '020aebcf', 12 12 'core.pkg.css' => 'af983028', 13 - 'core.pkg.js' => '8225dc58', 13 + 'core.pkg.js' => '5a792749', 14 14 'differential.pkg.css' => '8d8360fb', 15 15 'differential.pkg.js' => '67e02996', 16 16 'diffusion.pkg.css' => '42c75c37', ··· 253 253 'rsrc/externals/javelin/lib/URI.js' => '2e255291', 254 254 'rsrc/externals/javelin/lib/Vector.js' => 'e9c80beb', 255 255 'rsrc/externals/javelin/lib/WebSocket.js' => 'fdc13e4e', 256 - 'rsrc/externals/javelin/lib/Workflow.js' => '851f642d', 256 + 'rsrc/externals/javelin/lib/Workflow.js' => '445e21a8', 257 257 'rsrc/externals/javelin/lib/__tests__/Cookie.js' => 'ca686f71', 258 258 'rsrc/externals/javelin/lib/__tests__/DOM.js' => '4566e249', 259 259 'rsrc/externals/javelin/lib/__tests__/JSON.js' => '710377ae', ··· 752 752 'javelin-workboard-header' => '111bfd2d', 753 753 'javelin-workboard-header-template' => 'ebe83a6b', 754 754 'javelin-workboard-order-template' => '03e8891f', 755 - 'javelin-workflow' => '851f642d', 755 + 'javelin-workflow' => '445e21a8', 756 756 'maniphest-report-css' => '3d53188b', 757 757 'maniphest-task-edit-css' => '272daa84', 758 758 'maniphest-task-summary-css' => '61d1667e', ··· 1294 1294 '43bc9360' => array( 1295 1295 'javelin-install', 1296 1296 ), 1297 + '445e21a8' => array( 1298 + 'javelin-stratcom', 1299 + 'javelin-request', 1300 + 'javelin-dom', 1301 + 'javelin-vector', 1302 + 'javelin-install', 1303 + 'javelin-util', 1304 + 'javelin-mask', 1305 + 'javelin-uri', 1306 + 'javelin-routable', 1307 + ), 1297 1308 '46116c01' => array( 1298 1309 'javelin-request', 1299 1310 'javelin-behavior', ··· 1605 1616 'javelin-json', 1606 1617 'javelin-dom', 1607 1618 'javelin-resource', 1608 - 'javelin-routable', 1609 - ), 1610 - '851f642d' => array( 1611 - 'javelin-stratcom', 1612 - 'javelin-request', 1613 - 'javelin-dom', 1614 - 'javelin-vector', 1615 - 'javelin-install', 1616 - 'javelin-util', 1617 - 'javelin-mask', 1618 - 'javelin-uri', 1619 1619 'javelin-routable', 1620 1620 ), 1621 1621 '87428eb2' => array(
+5 -1
webroot/rsrc/externals/javelin/lib/Workflow.js
··· 104 104 var link = event.getNode('tag:a'); 105 105 106 106 // If the link is an anchor, or does not go anywhere, ignore the event. 107 - var href = '' + link.getAttribute('href'); 107 + var href = link.getAttribute('href'); 108 + if (typeof href !== 'string') { 109 + return; 110 + } 111 + 108 112 if (!href.length || href[0] === '#') { 109 113 return; 110 114 }