Changeset View
Changeset View
Standalone View
Standalone View
webroot/rsrc/js/application/diff/behavior-preview-link.js
- This file was added.
| /** | |||||
| * @provides javelin-behavior-diff-preview-link | |||||
| * @requires javelin-behavior | |||||
| * javelin-stratcom | |||||
| * javelin-dom | |||||
| */ | |||||
| JX.behavior('diff-preview-link', function(config, statics) { | |||||
| if (statics.initialized) { | |||||
| return; | |||||
| } | |||||
| statics.initialized = true; | |||||
| var pht = JX.phtize(config.pht); | |||||
| // After inline comment previews are rendered, hook up the links to the | |||||
| // comments that are visible on the current page. | |||||
| function link_inline_preview(e) { | |||||
| var root = e.getData().rootNode; | |||||
| var links = JX.DOM.scry(root, 'a', 'differential-inline-preview-jump'); | |||||
| for (var ii = 0; ii < links.length; ii++) { | |||||
| var data = JX.Stratcom.getData(links[ii]); | |||||
| try { | |||||
| JX.$(data.anchor); | |||||
| links[ii].href = '#' + data.anchor; | |||||
| JX.DOM.setContent(links[ii], pht('view')); | |||||
| } catch (ignored) { | |||||
| // This inline comment isn't visible, e.g. on some other diff. | |||||
| } | |||||
| } | |||||
| } | |||||
| JX.Stratcom.listen('EditEngine.didCommentPreview', null, link_inline_preview); | |||||
| }); | |||||