Skip to content

Commit f84d372

Browse files
committed
fixed autofocus: #41
1 parent 0be309a commit f84d372

File tree

4 files changed

+50
-14
lines changed

4 files changed

+50
-14
lines changed

martor/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
22

3-
__VERSION__ = '1.3.0'
3+
__VERSION__ = '1.3.1'
44
__AUTHOR__ = 'Agus Makmun (Summon Agus)'
55
__AUTHOR_EMAIL__ = 'agus@python.web.id'

martor/static/martor/css/martor.min.css

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

martor/static/martor/js/martor.js

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
2-
* Name : Martor v1.3.0
2+
* Name : Martor v1.3.1
33
* Created by : Agus Makmun (Summon Agus)
4-
* Release date : 20-Aug-2018
4+
* Release date : 02-Sep-2018
55
* License : GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007
66
* Repository : https://github.com/agusmakmun/django-markdown-editor
77
**/
@@ -144,7 +144,7 @@
144144
// update the preview if this menu is clicked
145145
var currentTab = $('.tab.segment[data-tab=preview-tab-'+field_name+']');
146146
var previewTabButton = $('.item[data-tab=preview-tab-'+field_name+']');
147-
refreshPreview = function() {
147+
var refreshPreview = function() {
148148
var value = editor.getValue();
149149
var form = new FormData();
150150
form.append('content', value);
@@ -169,13 +169,15 @@
169169
}
170170
});
171171
};
172-
previewTabButton.click(function(){
173-
// hide the `.martor-toolbar` for this current editor if under preview.
174-
$(this).closest('.tab-martor-menu').find('.martor-toolbar').hide();
175-
refreshPreview();
176-
});// end click `previewTabButton`
172+
177173
if (editorConfig.living === 'true') {
178174
editor.on('change', refreshPreview);
175+
}else {
176+
previewTabButton.click(function(){
177+
// hide the `.martor-toolbar` for this current editor if under preview.
178+
$(this).closest('.tab-martor-menu').find('.martor-toolbar').hide();
179+
refreshPreview();
180+
});
179181
}
180182

181183
var editorTabButton = $('.item[data-tab=editor-tab-'+field_name+']');
@@ -191,12 +193,14 @@
191193
if (editor.selection.isEmpty()) {
192194
var curpos = editor.getCursorPosition();
193195
editor.session.insert(curpos, ' **** ');
196+
editor.focus();
194197
editor.selection.moveTo(curpos.row, curpos.column+3);
195198
}else {
196199
var range = editor.getSelectionRange();
197200
var text = editor.session.getTextRange(range);
198201
editor.session.replace(range, '**'+text+'**');
199202
originalRange.end.column += 4; // this because injected from 4 `*` characters.
203+
editor.focus();
200204
editor.selection.setSelectionRange(originalRange);
201205
}
202206
};
@@ -206,12 +210,14 @@
206210
if (editor.selection.isEmpty()) {
207211
var curpos = editor.getCursorPosition();
208212
editor.session.insert(curpos, ' __ ');
213+
editor.focus();
209214
editor.selection.moveTo(curpos.row, curpos.column+2);
210215
}else {
211216
var range = editor.getSelectionRange();
212217
var text = editor.session.getTextRange(range);
213218
editor.session.replace(range, '_'+text+'_');
214219
originalRange.end.column += 2; // this because injected from 2 `_` characters.
220+
editor.focus();
215221
editor.selection.setSelectionRange(originalRange);
216222
}
217223
};
@@ -221,12 +227,14 @@
221227
if (editor.selection.isEmpty()) {
222228
var curpos = editor.getCursorPosition();
223229
editor.session.insert(curpos, ' ++++ ');
230+
editor.focus();
224231
editor.selection.moveTo(curpos.row, curpos.column+3);
225232
}else {
226233
var range = editor.getSelectionRange();
227234
var text = editor.session.getTextRange(range);
228235
editor.session.replace(range, '++'+text+'++');
229236
originalRange.end.column += 4; // this because injected from 4 `*` characters.
237+
editor.focus();
230238
editor.selection.setSelectionRange(originalRange);
231239
}
232240
};
@@ -236,12 +244,14 @@
236244
if (editor.selection.isEmpty()) {
237245
var curpos = editor.getCursorPosition();
238246
editor.session.insert(curpos, ' ~~~~ ');
247+
editor.focus();
239248
editor.selection.moveTo(curpos.row, curpos.column+3);
240249
}else {
241250
var range = editor.getSelectionRange();
242251
var text = editor.session.getTextRange(range);
243252
editor.session.replace(range, '~~'+text+'~~');
244253
originalRange.end.column += 4; // this because injected from 4 `*` characters.
254+
editor.focus();
245255
editor.selection.setSelectionRange(originalRange);
246256
}
247257
};
@@ -251,12 +261,14 @@
251261
if (editor.selection.isEmpty()) {
252262
var curpos = editor.getCursorPosition();
253263
editor.session.insert(curpos, '\n\n----------\n\n');
264+
editor.focus();
254265
editor.selection.moveTo(curpos.row+4, curpos.column+10);
255266
}
256267
else {
257268
var range = editor.getSelectionRange();
258269
var text = editor.session.getTextRange(range);
259270
editor.session.replace(range, '\n\n----------\n\n'+text);
271+
editor.focus();
260272
editor.selection.moveTo(
261273
originalRange.end.row+4,
262274
originalRange.end.column+10
@@ -269,12 +281,14 @@
269281
if (editor.selection.isEmpty()) {
270282
var curpos = editor.getCursorPosition();
271283
editor.session.insert(curpos, '\n\n# ');
284+
editor.focus();
272285
editor.selection.moveTo(curpos.row+2, curpos.column+2);
273286
}
274287
else {
275288
var range = editor.getSelectionRange();
276289
var text = editor.session.getTextRange(range);
277290
editor.session.replace(range, '\n\n# '+text+'\n');
291+
editor.focus();
278292
editor.selection.moveTo(
279293
originalRange.end.row+2,
280294
originalRange.end.column+2
@@ -287,12 +301,14 @@
287301
if (editor.selection.isEmpty()) {
288302
var curpos = editor.getCursorPosition();
289303
editor.session.insert(curpos, '\n\n## ');
304+
editor.focus();
290305
editor.selection.moveTo(curpos.row+2, curpos.column+3);
291306
}
292307
else {
293308
var range = editor.getSelectionRange();
294309
var text = editor.session.getTextRange(range);
295310
editor.session.replace(range, '\n\n## '+text+'\n');
311+
editor.focus();
296312
editor.selection.moveTo(
297313
originalRange.end.row+2,
298314
originalRange.end.column+3
@@ -305,12 +321,14 @@
305321
if (editor.selection.isEmpty()) {
306322
var curpos = editor.getCursorPosition();
307323
editor.session.insert(curpos, '\n\n### ');
324+
editor.focus();
308325
editor.selection.moveTo(curpos.row+2, curpos.column+4);
309326
}
310327
else {
311328
var range = editor.getSelectionRange();
312329
var text = editor.session.getTextRange(range);
313330
editor.session.replace(range, '\n\n### '+text+'\n');
331+
editor.focus();
314332
editor.selection.moveTo(
315333
originalRange.end.row+2,
316334
originalRange.end.column+4
@@ -323,12 +341,14 @@
323341
if (editor.selection.isEmpty()) {
324342
var curpos = editor.getCursorPosition();
325343
editor.session.insert(curpos, '\n\n```\n\n```\n');
344+
editor.focus();
326345
editor.selection.moveTo(curpos.row+3, curpos.column);
327346
}
328347
else {
329348
var range = editor.getSelectionRange();
330349
var text = editor.session.getTextRange(range);
331350
editor.session.replace(range, '\n\n```\n'+text+'\n```\n');
351+
editor.focus();
332352
editor.selection.moveTo(
333353
originalRange.end.row+3,
334354
originalRange.end.column+3
@@ -341,12 +361,14 @@
341361
if (editor.selection.isEmpty()) {
342362
var curpos = editor.getCursorPosition();
343363
editor.session.insert(curpos, ' `` ');
364+
editor.focus();
344365
editor.selection.moveTo(curpos.row, curpos.column+2);
345366
}else {
346367
var range = editor.getSelectionRange();
347368
var text = editor.session.getTextRange(range);
348369
editor.session.replace(range, '`'+text+'`');
349370
originalRange.end.column += 2; // this because injected from 2 `_` characters.
371+
editor.focus();
350372
editor.selection.setSelectionRange(originalRange);
351373
}
352374
};
@@ -356,12 +378,14 @@
356378
if (editor.selection.isEmpty()) {
357379
var curpos = editor.getCursorPosition();
358380
editor.session.insert(curpos, '\n\n> \n');
381+
editor.focus();
359382
editor.selection.moveTo(curpos.row+2, curpos.column+2);
360383
}
361384
else {
362385
var range = editor.getSelectionRange();
363386
var text = editor.session.getTextRange(range);
364387
editor.session.replace(range, '\n\n> '+text+'\n');
388+
editor.focus();
365389
editor.selection.moveTo(
366390
originalRange.end.row+2,
367391
originalRange.end.column+2
@@ -374,12 +398,14 @@
374398
if (editor.selection.isEmpty()) {
375399
var curpos = editor.getCursorPosition();
376400
editor.session.insert(curpos, '\n\n* ');
401+
editor.focus();
377402
editor.selection.moveTo(curpos.row+2, curpos.column+2);
378403
}
379404
else {
380405
var range = editor.getSelectionRange();
381406
var text = editor.session.getTextRange(range);
382407
editor.session.replace(range, '\n\n* '+text);
408+
editor.focus();
383409
editor.selection.moveTo(
384410
originalRange.end.row+2,
385411
originalRange.end.column+2
@@ -392,12 +418,14 @@
392418
if (editor.selection.isEmpty()) {
393419
var curpos = editor.getCursorPosition();
394420
editor.session.insert(curpos, '\n\n1. ');
421+
editor.focus();
395422
editor.selection.moveTo(curpos.row+2, curpos.column+3);
396423
}
397424
else {
398425
var range = editor.getSelectionRange();
399426
var text = editor.session.getTextRange(range);
400427
editor.session.replace(range, '\n\n1. '+text);
428+
editor.focus();
401429
editor.selection.moveTo(
402430
originalRange.end.row+2,
403431
originalRange.end.column+3
@@ -410,11 +438,13 @@
410438
if (editor.selection.isEmpty()) {
411439
var curpos = editor.getCursorPosition();
412440
editor.session.insert(curpos, ' [](http://) ');
441+
editor.focus();
413442
editor.selection.moveTo(curpos.row, curpos.column+2);
414443
}else {
415444
var range = editor.getSelectionRange();
416445
var text = editor.session.getTextRange(range);
417446
editor.session.replace(range, '['+text+'](http://) ');
447+
editor.focus();
418448
editor.selection.moveTo(
419449
originalRange.end.row,
420450
originalRange.end.column+10
@@ -429,11 +459,13 @@
429459
if (editor.selection.isEmpty()) {
430460
var curpos = editor.getCursorPosition();
431461
editor.session.insert(curpos, ' ![](http://) ');
462+
editor.focus();
432463
editor.selection.moveTo(curpos.row, curpos.column+3);
433464
}else {
434465
var range = editor.getSelectionRange();
435466
var text = editor.session.getTextRange(range);
436467
editor.session.replace(range, '!['+text+'](http://) ');
468+
editor.focus();
437469
editor.selection.moveTo(
438470
originalRange.end.row,
439471
originalRange.end.column+11
@@ -442,6 +474,7 @@
442474
}else { // this if use image upload to imgur.
443475
var curpos = editor.getCursorPosition();
444476
editor.session.insert(curpos, '!['+imageData.name+']('+imageData.link+') ');
477+
editor.focus();
445478
editor.selection.moveTo(
446479
curpos.row,
447480
curpos.column+imageData.name.length+2
@@ -454,11 +487,13 @@
454487
if (editor.selection.isEmpty()) {
455488
var curpos = editor.getCursorPosition();
456489
editor.session.insert(curpos, ' @[]');
490+
editor.focus();
457491
editor.selection.moveTo(curpos.row, curpos.column+3);
458492
}else {
459493
var range = editor.getSelectionRange();
460494
var text = editor.session.getTextRange(range);
461495
editor.session.replace(range, '@['+text+']');
496+
editor.focus();
462497
editor.selection.moveTo(
463498
originalRange.end.row,
464499
originalRange.end.column+3
@@ -469,6 +504,7 @@
469504
var markdownToEmoji = function(editor, data_target) {
470505
var curpos = editor.getCursorPosition();
471506
editor.session.insert(curpos, ' '+data_target+' ');
507+
editor.focus();
472508
editor.selection.moveTo(curpos.row, curpos.column+data_target.length+2);
473509
};
474510
// Markdown Image Uploader auto insert to editor.

0 commit comments

Comments
 (0)