68 lines
1.3 KiB
Markdown
68 lines
1.3 KiB
Markdown
# BeeOS Phase 5 Notes
|
|
|
|
## Completed in this phase
|
|
|
|
Phase 5 adds:
|
|
|
|
- app runtime sessions
|
|
- simulated touch delivery
|
|
- `on_touch(event)` support
|
|
- `on_close()` support
|
|
- permission approval prompts
|
|
- permission approval persistence
|
|
- plugin hook registry placeholder
|
|
- built-in watch face registry
|
|
|
|
## New files
|
|
|
|
```text
|
|
beeos/core/permission_manager.py
|
|
beeos/core/plugin_manager.py
|
|
beeos/core/watchfaces.py
|
|
beeos/data/permission_approvals.json
|
|
```
|
|
|
|
## Runtime lifecycle now supports
|
|
|
|
```python
|
|
class BeeApp:
|
|
def __init__(self, ctx): ...
|
|
def on_open(self): ...
|
|
def on_draw(self, display): ...
|
|
def on_touch(self, event): ...
|
|
def on_close(self): ...
|
|
```
|
|
|
|
## Runtime touch event format
|
|
|
|
```python
|
|
{
|
|
"type": "tap",
|
|
"x": 205,
|
|
"y": 260
|
|
}
|
|
```
|
|
|
|
## Permission behavior
|
|
|
|
HiveStore and sideload installs now show a permission approval screen before installation.
|
|
|
|
Approved permissions are saved to:
|
|
|
|
```text
|
|
beeos/data/permission_approvals.json
|
|
```
|
|
|
|
This is not real sandboxing yet. It is the first user-facing permission model.
|
|
|
|
## Next possible phase
|
|
|
|
Phase 6 should probably add:
|
|
|
|
- real per-permission API enforcement
|
|
- background service/session model
|
|
- plugin hook execution
|
|
- notification action buttons
|
|
- on-watch package update simulation
|
|
- app settings pages
|