UI Functionality and Code Review TODO List
UI Functionality
Miscellaneous
- Add 'Select Term' to text install service menu.
- EFI label warnings / changes
- When there is an F2 error, the focus should be moved to the corresponding field
- Tab / Down Arrow not always working?
- Map "return" key to move to next EditField
- CTRL-L should repaint the screen
Editable Fields
- Variable length, numeric fields:
- Partition/slice sizes
- Value is right-aligned, cursor under last char. Cursor is always at right-most position, value is always right justified.
- First char, if numeric, deletes value, enters char at right-most position.
- Backspace deletes right-most char and shifts value right to maintain right-align.
- Additional input shifts value left and appends new char.
Enhancements
- type letter on scroll list, scroll to first item starting with that letter.
- Split generic UI Components into separate directory from text installer specific screens
- Investigate viability of saving the UI components from screen to screen, instead of re-instantiating each time
- Date/Time Screen: Bottom error message not clearing on keypress.
- class FileSize and functions get_minimum_size and get_recommended_size can and should be moved to a more commonly accessible area so other caiman python modules can access them.
- Displaying Errors: Create new exception class instead of relying on ValueError
- Occasional "-0.0" appears on part/slice edit screens
- exported_zpool / existing rpool issue
- InstallProfile.users -> convert from array to a dict with the username as the key.
- ColorTheme: Improve comments explaining that all fields are bitwise OR's of curses attributes
- Update EditField.init comment referencing "area.lines is overriden to 1"
- In EditField._set_text(), verify call to is_valid is still needed, and if so, add comment explaining why return value is not checked.
- EditField.run_on_exit() should return True if on_exit is not callable
Phase 2 TODOs
- Change copyrights to 2010
- Implement Static IP backend
- Update logging statements (ensure logging of user's InstallProfile changes), verify verbosities, log user's UI input