@@ -9,10 +9,10 @@ var showMainMenu = () => {
99 var mainmenu = {
1010 "" : {
1111 title : "Pattern Launcher" ,
12- } ,
13- "< Back" : ( ) => {
14- log ( "cancel" ) ;
15- load ( ) ;
12+ back : ( ) => {
13+ log ( "showMainMenu cancel" ) ;
14+ load ( ) ;
15+ }
1616 } ,
1717 "Add Pattern" : ( ) => {
1818 log ( "creating pattern" ) ;
@@ -83,11 +83,11 @@ var showMainMenu = () => {
8383 var settingsmenu = {
8484 "" : {
8585 title : "Pattern Settings" ,
86- } ,
87- "< Back" : ( ) => {
88- log ( "cancel" ) ;
89- load ( ) ;
90- } ,
86+ back : ( ) => {
87+ log ( "settings cancel" ) ;
88+ showMainMenu ( ) ;
89+ } ,
90+ }
9191 } ;
9292
9393 if ( settings . lockDisabled ) {
@@ -116,28 +116,20 @@ var showMainMenu = () => {
116116
117117var recognizeAndDrawPattern = ( ) => {
118118 return new Promise ( ( resolve ) => {
119- E . showMenu ( ) ;
120- g . clear ( ) ;
121- drawCirclesWithPattern ( [ ] ) ;
122-
123119 var pattern = [ ] ;
124-
125120 var isFinished = false ;
126121 var finishHandler = ( ) => {
127122 if ( pattern . length === 0 || isFinished ) {
128123 return ;
129124 }
130125 log ( "Pattern is finished." ) ;
131126 isFinished = true ;
132- Bangle . removeListener ( "drag" , dragHandler ) ;
133- Bangle . removeListener ( "tap" , finishHandler ) ;
127+ Bangle . setUI ( ) ;
134128 resolve ( pattern . join ( "" ) ) ;
135129 } ;
136- setWatch ( ( ) => finishHandler ( ) , BTN ) ;
137- // setTimeout(() => Bangle.on("tap", finishHandler), 250);
138130
139131 var positions = [ ] ;
140- var getPattern = ( positions ) => {
132+ var getPattern = ( positions ) => { "ram" ; /*faster*/
141133 var circles = [
142134 { x : 25 , y : 25 , i : 0 } ,
143135 { x : 87 , y : 25 , i : 1 } ,
@@ -151,18 +143,8 @@ var recognizeAndDrawPattern = () => {
151143 ] ;
152144 return positions . reduce ( ( pattern , p , i , arr ) => {
153145 var idx = circles . findIndex ( ( c ) => {
154- var dx = p . x > c . x ? p . x - c . x : c . x - p . x ;
155- if ( dx > CIRCLE_RADIUS ) {
156- return false ;
157- }
158- var dy = p . y > c . y ? p . y - c . y : c . y - p . y ;
159- if ( dy > CIRCLE_RADIUS ) {
160- return false ;
161- }
162- if ( dx + dy <= CIRCLE_RADIUS ) {
163- return true ;
164- }
165- return dx * dx + dy * dy <= CIRCLE_RADIUS_2 ;
146+ var dx = p . x - c . x , dy = p . y - c . y ;
147+ return dx * dx + dy * dy <= CIRCLE_RADIUS_2 ;
166148 } ) ;
167149 if ( idx >= 0 ) {
168150 pattern += circles [ idx ] . i ;
@@ -183,7 +165,9 @@ var recognizeAndDrawPattern = () => {
183165 positions = [ ] ;
184166 }
185167 } ;
186- Bangle . on ( "drag" , dragHandler ) ;
168+ g . clear ( ) ;
169+ drawCirclesWithPattern ( [ ] ) ;
170+ Bangle . setUI ( { mode :"custom" , drag :dragHandler , btn :finishHandler } ) ;
187171 } ) ;
188172} ;
189173
@@ -215,14 +199,14 @@ var getAppList = () => {
215199} ;
216200
217201var getSelectedApp = ( ) => {
218- E . showMessage ( "Loading apps..." ) ;
202+ E . showMessage ( /*LANG*/ "Loading apps..." ) ;
219203 return new Promise ( ( resolve ) => {
220204 var selectAppMenu = {
221205 "" : {
222- title : "Select App" ,
206+ title : /*LANG*/ "Select App" ,
223207 } ,
224208 "< Cancel" : ( ) => {
225- log ( "cancel" ) ;
209+ log ( "getSelectedApp cancel" ) ;
226210 showMainMenu ( ) ;
227211 } ,
228212 } ;
@@ -286,6 +270,8 @@ var drawAppWithPattern = (i, r, storedPatterns) => {
286270
287271var showScrollerContainingAppsWithPatterns = ( ) => {
288272 var storedPatternsArray = getStoredPatternsArray ( ) ;
273+ if ( ! storedPatternsArray . length )
274+ return E . showAlert ( /*LANG*/ "No Patterns" , { title :/*LANG*/ "Patterns" } ) . then ( ( ) => ( { pattern : "back" , appName :"" } ) ) ;
289275 log ( "drawing scroller for stored patterns" ) ;
290276 log ( storedPatternsArray ) ;
291277 log ( storedPatternsArray . length ) ;
@@ -485,4 +471,4 @@ var log = (message) => {
485471// run main function
486472//////
487473
488- showMainMenu ( ) ;
474+ showMainMenu ( ) ;
0 commit comments