... | ... | @@ -71,3 +71,41 @@ For the mappings it maintains the following functions and attributes: |
|
|
From the summary above, it seems like `ConversationTextview` is all of the model, the view and the controller: it maintains the data to be presented in all its aspects (model), it generates/manages presentation by virtue of the various `print_*` methods (view) and it deals with various signals (e.g. user input) which affect presentation as well as other actions such as starting external browsers and all.
|
|
|
|
|
|
This mixture of roles of the `ConversationTextview` complicates replacing the presentation of messages with a ListBox from a Textview.
|
|
|
|
|
|
|
|
|
## Approach to moving to a listbox
|
|
|
|
|
|
1. Separate the concerns currently concentrated in ConversationTextview
|
|
|
a. Add new setup to this document
|
|
|
a. Agree on changed separation of concerns with @lovetox (and others?)
|
|
|
2. Gradually implement the new separation
|
|
|
3.
|
|
|
|
|
|
|
|
|
|
|
|
## Requirements for a new design
|
|
|
|
|
|
|
|
|
|
|
|
### High level functional requirements
|
|
|
|
|
|
|
|
|
|
|
|
### Technical design
|
|
|
|
|
|
|
|
|
### Concluding
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In a chat with @lovetox, the following requirements were mentioned as well:
|
|
|
|
|
|
```plain
|
|
|
[04:46:27 PM] lovetox: first goals should be, the listbox should provide a way to add a message row,
|
|
|
the message row itself should be a object that displays an avatar, the message,
|
|
|
encryption symbol
|
|
|
[04:47:25 PM] lovetox: the message row object should be based on some generic object, we will probably
|
|
|
need many row objects that slightly differ
|
|
|
[04:47:43 PM] lovetox: like some kind of status messages, error messages, info messages, etc
|
|
|
``` |