220 Commits

Author SHA1 Message Date
Gordon Williams
ef27cea5b7 nRF52: Bootloader now doesn't reset RESETREAS
nRF52: If we reboot because of LOCKUP, don't enable DCDC converter
            Bangle.js2: Test screen now fails if no DCDC enabled
2025-01-16 12:28:53 +00:00
Gordon Williams
7386f49f1c Bangle.js: .setUI now only clears back widget if it hasn't been hidden by widget_utils 2024-11-07 10:11:00 +00:00
Gordon Williams
4954da67d4 Bangle.js2: Including Layout module in internal flash 2024-11-04 11:37:21 +00:00
Gordon Williams
513817c9e6 JS in the binary now uses jspExecuteJSFunctionCode which helps to skip a parsing step
JS modules that are included are now pretokenised

# Conflicts:
#	libs/js/banglejs/Bangle_setUI_F18.min.js
#	libs/js/banglejs/Bangle_setUI_Q3.min.js
2024-11-04 11:37:02 +00:00
thyttan
12dacead0d Bangle_setUI_F18: (WIP) finish rewrite 2024-11-02 01:32:59 +01:00
thyttan
cdfb4d61cb Bangle_setUI_F18: add btnRelease (read below)
Explicitly state button should fire on falling edge.

Does not change `btn` mapped handlers to act on rising edge just jet.

As per suggestion in
https://github.com/espruino/Espruino/pull/2571#issuecomment-2426702779.
2024-11-01 21:14:18 +01:00
thyttan
269b3e3e80 Bangle_setUI_Q3: tweaks (read below)
- Add custom handlers on top of the standard modes as well. Previously this was only possible for mode == "custom".
  - The goal here is to make it possible to move all input handling inside `setUI` where today some apps add on extra handlers outside of `setUI` calls.
- Change the default behaviour of the hardware button to act immediately on press down. Previously it has been acting on button release.
  - This makes the interaction slightly snappier.
  - In addition to the existing `btn` key a new `btnRelease` key can now be specified. `btnRelease` will let you listen to the rising edge of the hardware button.
2024-10-15 22:48:38 +02:00
Gordon Williams
25cb6ae3b3 minified files for #2565 2024-10-11 14:35:54 +01:00
thyttan
54f631d7ea E_showMenu_/E_showScroller_Q3: forward touch event
The goal was to make it possible for menus to distinguish between short
and long touches when the entry maps to a function.

With this alarms in the `alarm` app could be made togglable by longpressing
corresponding menu entries.
2024-10-11 10:46:49 +02:00
Gordon Williams
ea96724089 update other showMenus after #2569 2024-10-11 08:55:12 +01:00
thyttan
a49add78aa E_showMenu_F18/Q3: rm internal l as cb func arg
Remove internal menu object `l` as argument to callback function.

This removes a potential for memory leaks and should otherwise have no
impact. As no app on the main BangleApps repo seems to use the option.
See https://github.com/espruino/Espruino/issues/2567.

closes #2567
2024-10-11 00:10:28 +02:00
Gordon Williams
8a6aa36c16 Bangle.js: Remove debug log messages from E.showScroller (#2564)
Adding minified code
2024-10-07 10:07:18 +01:00
thyttan
3ba1c56129 E_showScroller_Q3: comment out prints to console 2024-10-06 21:10:58 +02:00
Gordon Williams
c776b2ca0c Bangle.js: Remove meridian from default locale.time function (to match 'Languages' app)
Fix https://github.com/espruino/EspruinoDocs/pull/738
2024-09-30 10:56:54 +01:00
Anton
b3add18aff Support forced meridians 2024-08-27 13:59:51 +02:00
Anton
2ec20b21b8 Update locale with support for meridians 2024-08-15 21:31:50 +02:00
Gordon Williams
ad25468f82 Bangle.js2: If tapping at the bottom of the screen on a menu that is <12px onscreen, choose the menu item above (#3476) 2024-07-04 11:17:28 +01:00
Gordon Williams
57d6b2277f Bangle.js2: After Bangle.showTestScreen, put Bangle.js into a hard off state (not soft off) 2024-06-28 08:59:14 +01:00
Gordon Williams
43f806d691 Bangle.js1: Fix issue where going out of and back into a menu would cause 'Back' to be added twice (fix #2470) 2024-05-21 11:52:18 +01:00
Gordon Williams
04a74c8eda Bangle.js: Remove calls to require('locale').translate in menus as it's been deprecated and replaced with /*LANG*/ 2024-05-15 14:22:24 +01:00
Gordon Williams
476724364a check reported voltage range 2024-04-29 16:13:33 +01:00
Gordon Williams
86099d41fc Bangle.js2: Bangle.showTestScreen now shows firmware and battery 2024-04-29 16:02:01 +01:00
Gordon Williams
0fc1f3c344 Ensure Bangle.load(".bootcde") just calls load() if no uiRemove - fix error loading clock without widgets
Fixes https://github.com/espruino/BangleApps/pull/3353
2024-04-15 13:21:33 +01:00
Gordon Williams
03a0c06c3e Merge branch 'master' into atjn-deprecate-currency
# Conflicts:
#	ChangeLog
#	libs/js/banglejs/locale.min.js
2024-03-22 09:09:22 +00:00
Gordon Williams
34c8cb268e Bangle.js: Locale currency deprecated, 'number' updated to BangleApps version with thousands separator, date now doesn't sometimes have trailing spaces 2024-03-22 09:02:59 +00:00
thyttan
fbef914604 locale: fix trailing space on date < 10
The trailing whitespace would make the date string look uncentered on
e.g. `antonclk` clock app on Bangle.js.

Possibly similar change should be made to the `locale` library of
espruino/BangleApps - but I'm not sure.
2024-03-21 20:23:37 +01:00
Anton
e5fbdaa9bb Revert changes to currencySym 2024-03-20 13:54:58 +01:00
Anton
378b34d717 Deprecate currency information in locale 2024-03-20 12:20:17 +01:00
Gordon Williams
8f18a3002e Bangle.js: Bangle.setUI's back widget now uses stopEventPropagation to stop other touch handlers getting called
https://github.com/espruino/BangleApps/pull/3233#issuecomment-1975384171
2024-03-04 11:15:57 +00:00
Gordon Williams
5aecc1a66c one more minor self test tweak 2024-01-10 13:32:16 +00:00
Gordon Williams
5da926f243 Minor sanity tweaks for Bangle self test 2024-01-10 13:30:29 +00:00
Gordon Williams
f37bb94a1d Squeeze a few more bytes out for Bangle.js 1 2024-01-08 16:49:53 +00:00
Gordon Williams
89b99d3bfe Bangle.js2: Add 'Test' option to factory reset menu, and Bangle.showTestScreen() 2024-01-08 16:22:56 +00:00
Gordon Williams
bbb6c89ebe Bangle.js: Change order of items in the Recovery Menu (hold BTN at boot) to put more common options first 2023-10-05 11:39:41 +01:00
Gordon Williams
138452fb65 Merging Dickens-specific changes into master 2023-09-27 14:57:47 +01:00
Gordon Williams
9a1d5b6202 Minify for https://github.com/espruino/Espruino/pull/2393 2023-07-20 12:33:38 +01:00
Rob Pilling
a4cb4002de Guard against Bangle.setUI({ <no mode> })
Following on from #2389, this makes it clear that while `setUI()`
can be used to reset the UI, `setUI({})` cannot, and must always
specify `mode` (amongst other options).
2023-07-17 20:07:48 +01:00
Gordon Williams
554e2dfb19 Bangle.js2: number selector now supports tapping at top/bottom to increment/decrement value 2023-07-06 11:41:00 +01:00
Gordon Williams
529fb0779e Bangle.js: setUI now has a 'redraw' argument to allow apps to provide a way to redraw themselves
Also fixes for scroller.isActive (and redraw checks) that break if there is a back icon
2023-06-20 11:00:23 +01:00
Gordon Williams
6111708929 re-minify using newer minifier 2023-06-13 09:22:21 +01:00
Gordon Williams
a0e2d9231d Bangle.js: showMenu now won't redraw menu items if the onchange handler changed the menu
https://github.com/espruino/BangleApps/issues/2816

Also change builtin unicode string escapes to \x## - faster and encodes as a single byte so doesn't break when Unicode enabl;ed on builds
2023-06-13 09:21:23 +01:00
Gordon Williams
85872e6fff Bangle.js: Add Bangle.showRecoveryMenu, and if storage is corrupt then show it rather than automatically doing factory reset 2023-06-05 16:07:55 +01:00
Gordon Williams
9c94cb9754 Bangle.js: E.showPrompt now resets background color before clearing the screen 2023-05-19 16:36:59 +01:00
Gordon Williams
b6f8105b63 Bangle.js2: Ensure that changing a menu item when half-scrolled off screen doesn't overwrite widgets 2023-04-05 10:47:19 +01:00
Gordon Williams
9568516412 Bangle.js2: Fix regression in E.showMenu so you can use menu items with ':undefined' (as in the example in the reference) 2023-02-20 16:23:04 +00:00
Gordon Williams
2aa394040c Bangle.js2: Fix scroller overlap with widget bar when scrolled more than the screen's height in one step 2022-12-14 10:50:51 +00:00
Gordon Williams
4adadf7b26 formatting 2022-12-08 10:48:38 +00:00
Gordon Williams
84675e4368 Bangle.js1: Bangle.setUI({back}) now responds to BTN3 if there were no other watches on buttons 2022-12-07 08:19:56 +00:00
Gordon Williams
2d3c34ef7c Bangle.js1/2: Fix showMenu/showScroller spacing with back if no widgets loaded (ref #2286) 2022-12-05 16:35:01 +00:00
Gordon Williams
039ffb5441 Bangle.js2: setUI(updown/leftright) now responds to button on falling (not rising) edge 2022-12-01 10:29:06 +00:00