Note that substantial changes will be required for the updated Android
mockups, putting the quotation into the text box next to the attachment
preview.
- Remove extra padding at top of Android bubbles, via sibling selector
- Don't include .attachments, .quote-wrapper, .content in bubble unless
we actually need them. This allows for sibling selectors.
- This is a different technique for adding the ReactWrapperView for
quotes - it is now appended to the DOM instead of attaching to
something already in the DOM. This allows us to use .remove(), so it's
a bit cleaner.
- Users of ReactWrapperView can now specify tagName and className
But only if it doesn't have an error.
Also: reformatted message template in legacy_templates.js to match what
is in background.html for easier diffing.
Due to a number of hacks, the style guide can be used to show Backbone
views. This will allow a smooth path from the old way of doing things to
the new.
Going through the git history the existing logic of "dont do this if
it's already selected" was just for audio or video QOL enhancements to
not stop playing when the same conversation is selected.
When searching for an existing conversation using a phone number, it’s possible
to click on ‘Start conversation…’ and have that new dummy entry overwrite the
existing conversation.
This change ensures we are always showing a dummy conversation model that is not
part of the conversation collection. Adding it is always idempotent as it goes
through `getOrCreateAndWait`.
Class: `ConversationController`.
This function should not be used in application code as it creates potentially
invalid `Conversation` instances in our global conversation collection. We keep
making it available for testing purposes.