|
2 | 2 |
|
3 | 3 | <!DOCTYPE html> |
4 | 4 |
|
5 | | -<html> |
| 5 | +<html lang=en> |
6 | 6 |
|
7 | 7 | <head> |
8 | 8 | <meta charset=utf-8> |
|
77 | 77 | //: |
78 | 78 |
|
79 | 79 |
|
80 | | - mod.stack.add = init; |
81 | | - |
82 | 80 | async function init(){ |
83 | 81 | debug('init',version); |
84 | 82 | //keydown = keydown(); |
|
99 | 97 | mainmenu.initmod({ext,$,menu,editor,filemod}); |
100 | 98 | filemod.initmod({ext,$,menu,menumod,complete,source,focus,log}); |
101 | 99 | publish.initmod({ext,$,ui,menu,source,complete,log}); |
102 | | - editor.initmod({ext,$,menu,ace}); |
| 100 | + editor.initmod({ext,$,menu,ace,on}); |
103 | 101 | output.initmod({ext,$}); |
104 | 102 | log.initmod({ext,$}); |
105 | 103 |
|
|
116 | 114 |
|
117 | 115 | //: |
118 | 116 |
|
| 117 | + icon.def = $('[rel*=icon]').href; |
119 | 118 |
|
120 | 119 | window.onfocus = ()=>editor && editor.focus(); |
121 | 120 | keydown.add(kd); |
|
247 | 246 |
|
248 | 247 | <div id=save-root> |
249 | 248 | <button id=save>save</button> |
| 249 | + <checkbox-one id=autosave></checkbox-one> |
250 | 250 | <div id=save-menu-root class=menu-root> |
251 | 251 | <img id=save-menu-icon class=menu-icon> |
252 | 252 | <div id=save-menu class=menu style='display:none'> |
253 | | - <checkbox-one id=autosave></checkbox-one> |
254 | 253 | </div> |
255 | 254 | </div> |
256 | 255 | </div> |
|
325 | 324 | var ui = {}; |
326 | 325 | ui.mode = 'vert'; |
327 | 326 |
|
| 327 | + var icon = {}; |
328 | 328 |
|
329 | 329 | var btn = {}; |
330 | | - var mode = {}; |
| 330 | + var mode = {}; |
| 331 | + var on = {}; |
| 332 | + var set = {}; |
331 | 333 |
|
332 | 334 |
|
333 | 335 |
|
|
576 | 578 |
|
577 | 579 | }//obfuscator |
578 | 580 |
|
| 581 | + |
| 582 | + //: |
| 583 | + |
| 584 | + |
| 585 | + on.change = function(){ |
| 586 | + |
| 587 | + set.favicon(icon.save); |
| 588 | + |
| 589 | + }//change |
| 590 | + |
| 591 | + |
| 592 | + set.title = function(title){ |
| 593 | + |
| 594 | + document.title = title; |
| 595 | + |
| 596 | + }//title |
579 | 597 |
|
580 | 598 | //: |
581 | 599 |
|
|
595 | 613 | editor.filename(file); |
596 | 614 | editor.filename.save.hide(); |
597 | 615 | filemod.cur = file; |
598 | | - document.title = file.name||file.filename; |
| 616 | + var title = file.name||file.filename; |
| 617 | + set.title(title); |
| 618 | + set.favicon(icon.def); |
599 | 619 | } |
600 | 620 | menu.close(); |
601 | 621 | editor.focus(); |
|
730 | 750 |
|
731 | 751 | function run(){ |
732 | 752 |
|
| 753 | + if(autosave.checked){ |
| 754 | + console.log('save'); |
| 755 | + filemod.save(); |
| 756 | + } |
| 757 | + |
| 758 | + |
733 | 759 | var js = editor.getValue(); |
734 | 760 | if(mode.iframe.checked){ |
735 | 761 | output.run.iframe(js,{async:mode.async.checked}); |
736 | 762 | }else{ |
737 | 763 | output.run(js,{async:mode.async.checked}); |
738 | 764 | } |
739 | 765 |
|
740 | | - if(autosave.checked){ |
741 | | - console.log('save'); |
742 | | - filemod.save(); |
743 | | - } |
744 | 766 |
|
745 | 767 | }//run |
746 | 768 |
|
|
795 | 817 |
|
796 | 818 | }//syntax |
797 | 819 |
|
798 | | - |
| 820 | + |
| 821 | + //: |
| 822 | + |
| 823 | + |
| 824 | + icon.save = 'data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAKlBMVEX/pQD/////qhH/pAD/rhr/zHH/yGT/wlP//vz/8dn/tjD/+u//6MD/2ZUL9bZAAAAA30lEQVQoz2OQvuWihARUMgUFBRlamRkYlqXBQLoy10Sg4CUGBisgDQLSu3dLXGBeAxRczMBg3ggR3LZqaeMhBquDggzOCMFdxuZAQWYfQQYHuKDELgOQINA0JEFBqCDzSiwqGdiwqGRgYlDAVIksSIpKYyyC28E+ggoi/L5D8AJMkGFZKAyEKcAFjRGAAS6IBsCCzMbGKGpBgkwqLshAASzoOxMFHDEACjJXCKKANmyCYkNI0IEGgs7YBBdjCpowXGBejSq43YCVYSszV1ooEkgrMMhmkL6lhAIUlJZuBAAfSYTf2T2EkwAAAABJRU5ErkJggg=='; |
| 825 | + |
| 826 | + |
| 827 | + |
799 | 828 |
|
800 | 829 | </script> |
801 | 830 |
|
802 | 831 | </html> |
803 | 832 |
|
| 833 | + |
| 834 | + |
0 commit comments