You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-desktop/js
Scott Nonnenberg d8ce198f55 Fetch conversations once, clean up ConversationController API (#1420)
* Fetch conversations once, clean up ConversationController API

Race conditions around re-fetching have caused some problems recently,
so this removes the need to re-fetch conversations. They are fetched
once or saved once, and that is it. All interaction goes through the
ConversationController, which is the central source of truth.

We have two rules for Conversations:

1. If a conversation is in the ConversationController it doesn't need
   to be fetched, but its initial fetch/save might be in progress. You
   can wait for that fetch/save with conversation.initialPromise.
2. If a conversation is not already in the ConversationController, it's
   not yet in the database. It needs to be added to the
   ConversationController and saved to the database.

FREEBIE

* Remove Conversation.fetch() call in Message.handleDataMessage()

FREEBIE

* ConversationController.API cleanup: Fix two missing spots

FREEBIE
8 years ago
..
models Fetch conversations once, clean up ConversationController API (#1420) 8 years ago
views Fetch conversations once, clean up ConversationController API (#1420) 8 years ago
Mp3LameEncoder.min.js Add voice notes 9 years ago
WebAudioRecorderMp3.js Add voice notes 9 years ago
background.js Fetch conversations once, clean up ConversationController API (#1420) 8 years ago
backup.js Export: Properly generate directory names for nameless groups (#1421) 8 years ago
chromium.js Move clear/drawAttention logging up a level to reduce verbosity 8 years ago
components.js Introduce new filesize dependency 8 years ago
conversation_controller.js Fetch conversations once, clean up ConversationController API (#1420) 8 years ago
conversation_panel.js Remove erroneous license file and headers 10 years ago
database.js Cache messages on receipt, remove from cache when processed 8 years ago
debugLog.js Increase log length to 5000, since we're logging so much now 8 years ago
delivery_receipts.js Additional logging when we get delivery receipt for unknown msg 8 years ago
emoji_util.js Bulletproof getCountOfAllMatches against non-global regex input 8 years ago
expire.js Add build support for expiring old releases 9 years ago
expiring_messages.js Add a max setTimout for expiring messages (over max == immediate) 8 years ago
index.js Use appendChild instead of append 8 years ago
keychange_listener.js Fetch conversations once, clean up ConversationController API (#1420) 8 years ago
libphonenumber-util.js Refactor number parsing and validation 10 years ago
libsignal-protocol-worker.js Update libsignal-protocol v1.0.0 9 years ago
libtextsecure.js Fix race handling contact sync with verified info (#1419) 8 years ago
notifications.js Fetch conversations once, clean up ConversationController API (#1420) 8 years ago
options.js Move Whisper.events out of views and tests 8 years ago
panel_controller.js Move clear/drawAttention logging up a level to reduce verbosity 8 years ago
read_receipts.js Read/Delivery Receipts: Wait for resolution in main queue 8 years ago
register.js Fix minor style errors 9 years ago
registration.js Refactor registration event 9 years ago
reliable_trigger.js Apply reliable trigger to Backbone.Collection as well 8 years ago
rotate_signed_prekey_listener.js Remove some global refs to window.events 8 years ago
signal_protocol_store.js isUntrusted: Return false if firstUse is true 8 years ago
storage.js Log on failure to fetch storage 9 years ago
wall_clock_listener.js Remove some global refs to window.events 8 years ago