Page MenuHomePhabricator

D13260.diff
No OneTemporary

D13260.diff

diff --git a/resources/celerity/map.php b/resources/celerity/map.php
--- a/resources/celerity/map.php
+++ b/resources/celerity/map.php
@@ -11,7 +11,7 @@
'core.pkg.js' => 'a590b451',
'darkconsole.pkg.js' => 'e7393ebb',
'differential.pkg.css' => '2de124c9',
- 'differential.pkg.js' => 'ebef29b1',
+ 'differential.pkg.js' => 'fd95c208',
'diffusion.pkg.css' => '385e85b3',
'diffusion.pkg.js' => '0115b37c',
'maniphest.pkg.css' => '4845691a',
@@ -407,7 +407,7 @@
'rsrc/js/application/releeph/releeph-preview-branch.js' => 'b2b4fbaf',
'rsrc/js/application/releeph/releeph-request-state-change.js' => 'a0b57eb8',
'rsrc/js/application/releeph/releeph-request-typeahead.js' => 'de2e896f',
- 'rsrc/js/application/repository/repository-crossreference.js' => 'bea81850',
+ 'rsrc/js/application/repository/repository-crossreference.js' => 'e9eeb416',
'rsrc/js/application/search/behavior-reorder-queries.js' => 'e9581f08',
'rsrc/js/application/slowvote/behavior-slowvote-embed.js' => '887ad43f',
'rsrc/js/application/transactions/behavior-show-older-transactions.js' => 'dbbf48b6',
@@ -643,7 +643,7 @@
'javelin-behavior-remarkup-preview' => 'f7379f45',
'javelin-behavior-reorder-applications' => '76b9fc3e',
'javelin-behavior-reorder-columns' => 'e1d25dfb',
- 'javelin-behavior-repository-crossreference' => 'bea81850',
+ 'javelin-behavior-repository-crossreference' => 'e9eeb416',
'javelin-behavior-scrollbar' => '834a1173',
'javelin-behavior-search-reorder-queries' => 'e9581f08',
'javelin-behavior-select-on-click' => '4e3e79a6',
@@ -1745,12 +1745,6 @@
'javelin-util',
'phabricator-shaped-request',
),
- 'bea81850' => array(
- 'javelin-behavior',
- 'javelin-dom',
- 'javelin-stratcom',
- 'javelin-uri',
- ),
'c1700f6f' => array(
'javelin-install',
'javelin-util',
@@ -1913,6 +1907,12 @@
'javelin-dom',
'phabricator-draggable-list',
),
+ 'e9eeb416' => array(
+ 'javelin-behavior',
+ 'javelin-dom',
+ 'javelin-stratcom',
+ 'javelin-uri',
+ ),
'ea681761' => array(
'javelin-behavior',
'javelin-aphlict',
diff --git a/webroot/rsrc/js/application/repository/repository-crossreference.js b/webroot/rsrc/js/application/repository/repository-crossreference.js
--- a/webroot/rsrc/js/application/repository/repository-crossreference.js
+++ b/webroot/rsrc/js/application/repository/repository-crossreference.js
@@ -40,8 +40,7 @@
'tag:span',
function(e) {
if (e.getType() === 'mouseout') {
- highlighted && JX.DOM.alterClass(highlighted, classHighlight, false);
- highlighted = null;
+ unhighlight();
return;
}
if (!isSignalkey(e)) {
@@ -63,6 +62,10 @@
}
});
}
+ function unhighlight() {
+ highlighted && JX.DOM.alterClass(highlighted, classHighlight, false);
+ highlighted = null;
+ }
function openSearch(target, lang) {
var symbol = target.textContent || target.innerText;
@@ -110,6 +113,7 @@
linkAll(e.getData().container);
});
+
JX.Stratcom.listen(
['keydown', 'keyup'],
null,
@@ -117,14 +121,28 @@
if (e.getRawEvent().keyCode !== signalKey) {
return;
}
- statics.active = (e.getType() === 'keydown');
- linked.forEach(function(element) {
- JX.DOM.alterClass(element, classMouseCursor, statics.active);
- });
+ setCursorMode(e.getType() === 'keydown');
if (!statics.active) {
- highlighted && JX.DOM.alterClass(highlighted, classHighlight, false);
- highlighted = null;
+ unhighlight();
}
});
+
+ JX.Stratcom.listen(
+ 'blur',
+ null,
+ function(e) {
+ if (e.getTarget()) {
+ return;
+ }
+ unhighlight();
+ setCursorMode(false);
+ });
+
+ function setCursorMode(active) {
+ statics.active = active;
+ linked.forEach(function(element) {
+ JX.DOM.alterClass(element, classMouseCursor, statics.active);
+ });
+ }
});

File Metadata

Mime Type
text/plain
Expires
Sun, May 12, 6:04 AM (3 w, 1 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6290461
Default Alt Text
D13260.diff (4 KB)

Event Timeline