a few updates
This commit is contained in:
parent
77139697d6
commit
e1981ecaeb
17
DESIGN.md
17
DESIGN.md
|
@ -7,9 +7,13 @@
|
||||||
1. Subiquity is entirely usable by pressing up, down, space (or return) and the
|
1. Subiquity is entirely usable by pressing up, down, space (or return) and the
|
||||||
occasional bit of typing.
|
occasional bit of typing.
|
||||||
|
|
||||||
2. The UI never blocks. If something takes more than about 0.1s, it is done in
|
2. The UI never blocks. If something takes more than about 0.1s, it is done
|
||||||
the background, possibly with some kind of indication in the UI (and the
|
in the background, possibly with some kind of indication in the UI and the
|
||||||
ability to cancel if appropriate).
|
ability to cancel if appropriate. (We should consider making sure that if
|
||||||
|
we pop up a progress dialog while something happens -- e.g. applying
|
||||||
|
keyboard configuration, which the user just has to wait for until going on
|
||||||
|
to the next screen -- that the dialog appears for at least, say, 0.5s to
|
||||||
|
avoid flickering the UI).
|
||||||
|
|
||||||
3. General UX principles that it is worth keeping in mind:
|
3. General UX principles that it is worth keeping in mind:
|
||||||
|
|
||||||
|
@ -168,7 +172,7 @@ us not use a background thread for absolutely every action we want to run in
|
||||||
the background (there's no real reason to tie up a thread waiting for a
|
the background (there's no real reason to tie up a thread waiting for a
|
||||||
subprocess to exit, for example).
|
subprocess to exit, for example).
|
||||||
|
|
||||||
Only touch the UI from the main thread.
|
A cast-iron rule: Only touch the UI from the main thread.
|
||||||
|
|
||||||
### Terminal things
|
### Terminal things
|
||||||
|
|
||||||
|
@ -211,6 +215,11 @@ For "real" testing, you need to make a snap (`snapcraft snap`), mash it into an
|
||||||
existing ISO using `./scripts/inject-subiquity-snap.sh`, and boot the result in
|
existing ISO using `./scripts/inject-subiquity-snap.sh`, and boot the result in
|
||||||
a VM.
|
a VM.
|
||||||
|
|
||||||
|
There are integration tests that run daily at
|
||||||
|
https://platform-qa-jenkins.ubuntu.com/view/server (unfortunately you need to
|
||||||
|
be connected to the Canonical VPN -- i.e. be a Canonical staff member -- to
|
||||||
|
see these results).
|
||||||
|
|
||||||
## Development process
|
## Development process
|
||||||
|
|
||||||
When adding a new feature to subiquity, I have found it easiest to design the
|
When adding a new feature to subiquity, I have found it easiest to design the
|
||||||
|
|
Loading…
Reference in New Issue