Autoselect input in markup dialog

Some code inspiration from @WouterDS.

See #371.
This commit is contained in:
Thaddee Tyl 2015-02-24 14:31:54 +01:00
parent ea86aec5a7
commit 23a2d3dcdf

View File

@ -733,6 +733,8 @@ is where the current server got started.
<script>
// Search
//
var searchBadgeDb = {index: [], tr: []};
function searchBadgeDbInit() {
searchBadgeDb = {index: [], tr: []};
@ -765,6 +767,8 @@ function searchBadge(event) {
document.addEventListener('DOMContentLoaded', searchBadgeDbInit);
// Suggested badges search
//
function isUrl(url) {
var http = url.slice(0, 5) === 'http:';
var https = url.slice(0, 6) === 'https:';
@ -806,8 +810,32 @@ function suggestBadgeInit() {
document.addEventListener('DOMContentLoaded', suggestBadgeInit);
// Auto-select code snippets
//
// Select and highlight the node's textual content.
// Use this as an event listener.
function selectNode(e) {
if (e.target.select) {
e.target.select();
} else {
if (document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(e.target);
range.select();
} else if (window.getSelection) {
var range = document.createRange();
range.selectNode(e.target);
window.getSelection().addRange(range);
}
}
};
copyMarkdown.addEventListener('click', selectNode);
copyreStructuredText.addEventListener('click', selectNode);
// Markup copier dialog
//
function markupDialogInit() {
var trs = document.querySelectorAll('table.badge tr');
for (var i = 0; i < trs.length; i++) {
@ -884,7 +912,10 @@ copyForm.addEventListener('click', function(event) {
event.stopPropagation();
});
// Custom badge
//
function makeImage() {
var url = document.getElementById('imgUrlPrefix').textContent;
url += escapeField(imageMaker.subject.value);
@ -900,6 +931,8 @@ function escapeField(s) {
// Convert object literal to xhr-sendable.
//
function toXhrSend(data) {
var str = '', start = true;
var jsondata = '';