11var app = require ( 'app' )
22var BrowserWindow = require ( 'browser-window' )
33var Menu = require ( 'menu' )
4+ var MenuItem = require ( 'menu-item' )
45var Tray = require ( 'tray' )
56
67require ( 'crash-reporter' ) . start ( )
@@ -10,11 +11,54 @@ var appIcon = null
1011var menu = null
1112var popUpWindow = null
1213
14+ var update = null
15+
1316// app.on('window-all-closed', function () {
1417// if (process.platform !== 'darwin') app.quit()
1518// })
1619
20+ var version = '0.2.0'
21+ var nn = require ( 'node-notifier' )
22+ var autoUpdater = require ( 'auto-updater' )
23+
24+ autoUpdater
25+ . on ( 'error' , function ( err , message ) {
26+ nn . notify ( {
27+ title : 'Boost Update Center Ver. ' + version ,
28+ message : message
29+ } )
30+ } )
31+ . on ( 'checking-for-update' , function ( ) {
32+ nn . notify ( {
33+ title : 'Boost Update Center Ver. ' + version ,
34+ message : 'Hello from Main processor, Mr. User!'
35+ } )
36+ } )
37+ . on ( 'update-available' , function ( ) {
38+ nn . notify ( {
39+ title : 'Boost Update Center Ver. ' + version ,
40+ message : 'Update is available. Starting download latest build...'
41+ } )
42+ } )
43+ . on ( 'update-not-available' , function ( ) {
44+ nn . notify ( {
45+ title : 'Boost Update Center Ver. ' + version ,
46+ message : 'Latest Build :D'
47+ } )
48+ } )
49+ . on ( 'update-downloaded' , function ( event , releaseNotes , releaseName , releaseDate , updateUrl , quitAndUpdate ) {
50+ nn . notify ( {
51+ title : 'Boost Update Center Ver. ' + version ,
52+ message : 'Ready to Update: ' + releaseName
53+ } )
54+ update = quitAndUpdate
55+ } )
56+
57+
1758app . on ( 'ready' , function ( ) {
59+ console . log ( 'Version ' + version )
60+ autoUpdater . setFeedUrl ( 'http://localhost:8000/testcat/test/latest?version=' + version )
61+ autoUpdater . checkForUpdates ( )
1862 // menu start
1963 var template = require ( './modules/menu-template' )
2064
@@ -24,12 +68,32 @@ app.on('ready', function () {
2468 // menu end
2569 appIcon = new Tray ( __dirname + '/tray-icon.png' )
2670 appIcon . setToolTip ( 'Codexen' )
27- appIcon . on ( 'clicked' , function ( ) {
28- if ( mainWindow == null ) {
29- makeNewMainWindow ( )
71+
72+ var trayMenu = new Menu ( )
73+ trayMenu . append ( new MenuItem ( {
74+ label : 'Open main window' ,
75+ click : function ( ) {
76+ if ( mainWindow == null ) {
77+ makeNewMainWindow ( )
78+ }
79+ mainWindow . show ( )
3080 }
31- mainWindow . show ( )
32- } )
81+ } ) )
82+ trayMenu . append ( new MenuItem ( {
83+ label : 'Update App' ,
84+ click : function ( ) {
85+ if ( update != null ) {
86+ update ( )
87+ }
88+ }
89+ } ) )
90+ trayMenu . append ( new MenuItem ( {
91+ label : 'Quit' ,
92+ click : function ( ) {
93+ app . quit ( )
94+ }
95+ } ) )
96+ appIcon . setContextMenu ( trayMenu )
3397
3498 makeNewMainWindow ( )
3599
0 commit comments