aboutsummaryrefslogtreecommitdiff
path: root/kaios/apppage.pl (follow)
Commit message (Collapse)AuthorAge
* KaiOS: set show-labels=true in preferences for GuessBen Harris2023-08-21
| | | | | | | | On a device with a phone keypad, driving Guess by typing numbers rather than using the arrow keys seems natural. But if you're going to do that, showing the labels makes it a lot easier. KaiOS doesn't have any way for the user to control this, so we should default to the friendlier state.
* Turn on PUZZLES_SHOW_CURSOR on KaiOSBen Harris2023-03-22
| | | | | | | | Most KaiOS devices are primarily keyboard-based, so this seems like a reasonable approach. I've also switched to specifying boolean values as JSON booleans because that works now.
* KaiOS: explicitly set the font family to Open SansBen Harris2023-01-23
| | | | | | | This means that you'll get the right font if you one the app page on a desktop browser (assuming you have Open Sans installed). Also my Nokia 800 Tough seems to default to a different font (maybe Noto Sans?) and I'd prefer to have the same font everywhere.
* kaios: Add hooks for the KaiAds APIBen Harris2023-01-19
| | | | | | | | | | | The Kai Store makes display of advertisements provided by the KaiAds API mandatory. I don't want such adverts to be inconvenient for the users, so I've just gone for adding a menu item that will display one. This is probably a little too crude, but it's good for testing things. The actual KaiAds API code is not free software, so it's not included here. My intention is to add it by hand to the Zip files for Kai Store uploads. Without it, the advertising code does nothing.
* kaios: Turn off :hover highlighting in menusBen Harris2023-01-19
| | | | | | Even when the virtual pointer is hidden in KaiOS, it still causes :hover on whatever element is nominally under it, which is confusing. Disable all the :hover effects as a workaround.
* kaios: Hack out everything that needs dialogue boxesBen Harris2023-01-19
| | | | | | | | | | | | | They're proving to be a right nuisance and will probably require a substantial overhaul to how they work across the entire JavaScript front-end. I don't think any of the functionality provided by the dialogue boxes is critical, so in the interests of getting a minimum viable product actually released I've disabled those features. In most cases, this just involves commenting out bits of HTML. The "Custom..." menu item is added by C code, though, so there I've fallen back to the standard Puzzles way to implement a nasty hack: an environment variable.
* js: Use current_key_label() to label feature phone softkeysBen Harris2023-01-19
|
* kaios: Major parts of a build for KaiOSBen Harris2023-01-19
KaiOS (which is based on Firefox OS, formerly Boot to Gecko) runs its "native" apps in a Web browser, so this is essentially a rather specialised version of the JavaScript front-end. Indeed, the JavaScript and C parts are the same as the Web version. There are three major parts that are specific to the KaiOS build. First, there's manifest.pl, which generates a KaiOS-specific JSON manifest describing each puzzle. Second, there's a new HTML page generator, apppage.pl, that generates an HTML page that is much less like a Web page, and much more like an application, than the one generated by jspage.pl. It expects to build a single HTML page at a time and gets all its limited knowledge of the environment from its command line. This makes it gratuitously different from jspage.pl and javapage.pl, but makes it easier to run from the build system. And finally, there's the CMake glue that assembles the necessary parts for each application in a directory. This includes the manifest, the HTML, the JavaScript, the KaiOS-specific icons (generated as part of the GTK build) and a copy of the HTML documentation. The directory is assembled using CMake's install() function, and can be installed on a KaiOS device using the developer tools.