Commit Graph

42 Commits (2e2275c262ca24d436c79e2f202bb25458400661)

Author SHA1 Message Date
Richard de Boer 7b842294e0
Layout: add support for `back` option 2022-03-17 15:33:32 +01:00
Salim Blume aebc8bb3d5 Initial commit 2022-03-05 21:18:51 -06:00
Gordon Williams 17b7d85950 Layout: remove 'fsz' hack as any firmware 2v11+ will support font size in the string now 2022-02-23 10:45:18 +00:00
Gordon Williams 580497b1e7 Fix Layout module rendering black text on white 2022-02-21 10:55:22 +00:00
Gordon Williams af0dfed2c3 allow non-button elements of Layout to be tapped 2022-02-08 10:42:14 +00:00
Gordon Williams 08e168ab62 docs on modules 2022-01-28 09:46:19 +00:00
Richard de Boer 6a72aafc19
layout: use 'col' for btn label/image 2022-01-07 20:18:17 +01:00
Gordon Williams 896508e7a2 docs 2022-01-05 16:37:24 +00:00
Gordon Williams f4f40cee3a Fixes for Bangle.js 1 2021-11-10 13:42:11 +00:00
Gordon Williams 935d409f4c ability to depend on a specific app ID
Layout can display images in buttons
iOS and Android integration apps
2021-11-04 17:16:02 +00:00
Gordon Williams f87f0a19f4 Layout now uses appRect (should be fine with the new polyFill) 2021-10-27 16:50:16 +01:00
Gordon Williams fc3ce86009 misc tweaks for layout/gps time/bootloader 2021-10-20 20:28:28 +01:00
Gordon Williams 1e0f6cd675 Allow non-function images, and fix touch handling for 'fake' buttons on Bangle.js 2 2021-10-18 14:33:42 +01:00
Gordon Williams c4c2a93056 oops 2021-10-18 13:35:28 +01:00
Gordon Williams f41b3c5a88 Update bootloader to include polyfills for g.wrapString, g.imageMetrics, g.stringMetrics - and modify Layout lib to use those functions 2021-10-18 12:01:40 +01:00
Gordon Williams 3f26b8b88e Layout module now allows 'soft' buttons to be cycled through and selected using up/down on Bangle.js 1 2021-10-18 11:32:46 +01:00
Ben Whittaker cdf95566bd Layout: Add `forgetLazyState` method 2021-10-05 20:57:10 -04:00
Ben Whittaker f37b744ed5 Layout: defer initial update until first render 2021-10-05 12:32:06 -04:00
Ben Whittaker 202690de40 Layout: Implement text wrapping 2021-10-04 16:06:46 -04:00
Gordon Williams c5d7a73f4f fix image width/height code 2021-09-30 17:00:46 +01:00
Gordon Williams dd49e1f631 tweaks to reduce layout memory usage 2021-09-29 14:22:36 +01:00
Gordon Williams c96ae6c8ae Minor layout speed tweak 2021-09-29 09:20:56 +01:00
Gordon Williams ee60bda59b Merge branch 'master' of github.com:espruino/BangleApps 2021-09-29 09:18:46 +01:00
Ben Whittaker 3622895f09 Layout: avoid floating point numbers
The previous approach involved calculating the width of each element
independently, and deriving the `x` coordinate of each element by
summing the previous widths. However, if the widths are rounded, summing
them leads to accumulated rounding errors.

This change effectively takes the alternate approach of calculating the
`x` coordinate of each element independently, and then deriving the
widths from the differences between adjacent values of `x`.

As a bonus, this change corrects a couple issues in the
`padding_with_fill` test.
2021-09-28 23:07:00 -04:00
Gordon Williams 912b7e8dbf Minor speed/memory layout tweaks - issue with floating point width/height still outstanding 2021-09-28 11:19:46 +01:00
Ben Whittaker be5539d948 Lazy Layout: don't assume bg is already cleared 2021-09-27 11:00:22 -04:00
Ben Whittaker 221c3acc94 Layout: make `pad` behave more consistently
Fixes the second test case in #819
2021-09-24 17:43:56 -04:00
Ben Whittaker 807ac743fc Layout: only set fillxy/y if null
Fixes #820
2021-09-23 22:32:06 -04:00
Gordon Williams 0109a8114b Ensure padding works correctly (fix #819), also add Layout test harness basics 2021-09-23 12:47:12 +01:00
Gordon Williams bc2ed2f495
Merge branch 'master' into layout-img-object 2021-09-20 10:14:10 +01:00
Gordon Williams fc11f68d2e remove solid bg - not needed now we fill the bg anyway 2021-09-17 19:38:02 +01:00
Gordon Williams e280d192ee More speed improvements, and fix issue with minifier so we don't need .min.js 2021-09-16 11:27:52 +01:00
Gordon Williams 7a9aad93e4 Switch to object lookup for update & render code - around 20% faster 2021-09-16 10:49:14 +01:00
Gordon Williams 76b6ca0bff allow numeric fill values 2021-09-16 10:17:27 +01:00
Ben Whittaker 0c4ac74214 Optimization 2021-09-15 20:28:49 -04:00
Ben Whittaker 74e739d019 Handle bg colors correctly in lazy layout render 2021-09-15 10:13:46 -04:00
Ben Whittaker 6bd606b645 Don't use getModified in lazy layout rendering 2021-09-15 06:00:35 -04:00
Ben Whittaker 95d353a749 Add lazy rendering support to Layout 2021-09-14 20:02:09 -04:00
Richard de Boer 5972b991f9 Layout: add support for "img" with object or ArrayBuffer Graphics object
Rendering these already worked, because we simply pass src to drawImage,
so we just need to determine the correct size.
2021-09-05 20:42:36 +02:00
Gordon Williams c34216c884 layout lib tweaks 2021-09-02 11:39:53 +01:00
Gordon Williams 0410a0dd8e accellog: 0.02: Use the new multiplatform 'Layout' library
Loads of layout lib improvements
2021-08-25 17:00:44 +01:00
Gordon Williams f6b46395fc add first draft of layout module 2021-07-27 17:01:21 +01:00