Replace the watch app's menu UI with a single scrollable report page, add the config page
build / build (push) Successful in 18s
build / build (push) Successful in 18s
Report screen (ui_report_window.c, new): replaces the MenuLayer +
per-item drill-down windows (ui_menu_window.c/h, ui_card_window.c/h,
removed) with one continuously scrollable page mirroring the
interpreter's own text/HTML report - day significance, each transit's
narrative, the full Celtic Cross spread, and guidance last. Bigger/
bolder fonts throughout. Card images are a fixed 72px wide: a full-
display-width version was tried first but reliably crashes the real
PNG decoder ("PNG memory allocation failed") on actual hardware,
independent of the app's own heap or lazy-loading - 72px is the
hardware-verified ceiling.
Config page (pkjs/index.js): a self-contained `data:` URI settings form
for birth data/language/notification, submitting via AppMessage to the
existing app_message.c receiver. package.json needed
"capabilities": ["configurable"] for the Pebble mobile app to expose a
Settings entry for the sideloaded app at all - app_message.c's own
receiving logic was already correct. Added config_log() (config.c) to
confirm on-device, via APP_LOG, exactly which values a shown reading is
based on - both right after a config submission and at every app
launch.
This commit is contained in:
+116
-23
@@ -2,7 +2,9 @@
|
||||
"name": "deck_in_a_dash_watch",
|
||||
"author": "Matthias Ladkau",
|
||||
"version": "1.0.0",
|
||||
"keywords": ["pebble-app"],
|
||||
"keywords": [
|
||||
"pebble-app"
|
||||
],
|
||||
"private": true,
|
||||
"dependencies": {},
|
||||
"pebble": {
|
||||
@@ -10,6 +12,9 @@
|
||||
"uuid": "7f47ed93-f44e-4c1a-9998-7edcfa61218e",
|
||||
"sdkVersion": "3",
|
||||
"enableMultiJS": true,
|
||||
"capabilities": [
|
||||
"configurable"
|
||||
],
|
||||
"targetPlatforms": [
|
||||
"basalt",
|
||||
"chalk",
|
||||
@@ -37,28 +42,116 @@
|
||||
],
|
||||
"resources": {
|
||||
"media": [
|
||||
{ "type": "bitmap", "name": "IMG_CARD_FOOL", "file": "img/fool.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_MAGICIAN", "file": "img/magician.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_HIGH_PRIESTESS", "file": "img/high_priestess.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_EMPRESS", "file": "img/empress.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_EMPEROR", "file": "img/emperor.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_HIEROPHANT", "file": "img/hierophant.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_LOVERS", "file": "img/lovers.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_CHARIOT", "file": "img/chariot.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_STRENGTH", "file": "img/strength.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_HERMIT", "file": "img/hermit.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_WHEEL_OF_FORTUNE", "file": "img/wheel_of_fortune.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_JUSTICE", "file": "img/justice.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_HANGED_MAN", "file": "img/hanged_man.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_DEATH", "file": "img/death.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_TEMPERANCE", "file": "img/temperance.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_DEVIL", "file": "img/devil.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_TOWER", "file": "img/tower.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_STAR", "file": "img/star.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_MOON", "file": "img/moon.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_SUN", "file": "img/sun.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_JUDGEMENT", "file": "img/judgement.png" },
|
||||
{ "type": "bitmap", "name": "IMG_CARD_WORLD", "file": "img/world.png" }
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_FOOL",
|
||||
"file": "img/fool.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_MAGICIAN",
|
||||
"file": "img/magician.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_HIGH_PRIESTESS",
|
||||
"file": "img/high_priestess.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_EMPRESS",
|
||||
"file": "img/empress.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_EMPEROR",
|
||||
"file": "img/emperor.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_HIEROPHANT",
|
||||
"file": "img/hierophant.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_LOVERS",
|
||||
"file": "img/lovers.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_CHARIOT",
|
||||
"file": "img/chariot.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_STRENGTH",
|
||||
"file": "img/strength.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_HERMIT",
|
||||
"file": "img/hermit.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_WHEEL_OF_FORTUNE",
|
||||
"file": "img/wheel_of_fortune.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_JUSTICE",
|
||||
"file": "img/justice.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_HANGED_MAN",
|
||||
"file": "img/hanged_man.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_DEATH",
|
||||
"file": "img/death.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_TEMPERANCE",
|
||||
"file": "img/temperance.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_DEVIL",
|
||||
"file": "img/devil.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_TOWER",
|
||||
"file": "img/tower.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_STAR",
|
||||
"file": "img/star.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_MOON",
|
||||
"file": "img/moon.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_SUN",
|
||||
"file": "img/sun.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_JUDGEMENT",
|
||||
"file": "img/judgement.png"
|
||||
},
|
||||
{
|
||||
"type": "bitmap",
|
||||
"name": "IMG_CARD_WORLD",
|
||||
"file": "img/world.png"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user