Commit Graph

260 Commits (fadbb370227203dfd227aecbe58473cfb0eee675)

Author SHA1 Message Date
Maxim Shishmarev debb922521 Medium groups with sender keys essentials 5 years ago
Mikunj Varsani 24a3e05154
Revert "Revert "Clean up unused dependencies."" 5 years ago
Vince 5ff7476359
Revert "Clean up unused dependencies." 5 years ago
Mikunj 9d2417c2f6 Removed proxy-agent and web-socket.
Trimmed down web_api.js to most basic functions we are using. This needs to be completely removed in the future.
5 years ago
Audric Ackermann 6d03a63d4a
add sync of open groups on device link 5 years ago
Mikunj 0eaebcbcac Don't send contact sync message with pairing authorisation.
Don't send secondary devices in contact sync messages.
5 years ago
Mikunj f35493ce9f Linting 5 years ago
Mikunj abf298ba25 Added sending of group sync message 5 years ago
Mikunj fc6ca57e1e Added support for group request info 5 years ago
Mikunj 38182efe01 Fix check to see if we have keys or not.
The previous check was also forcing the keys to be processed, which we don't want.
5 years ago
Mikunj 6620092959 Wait for prekeys to be processed before sending a message on session reset.
Remove old code.
5 years ago
Mikunj Varsani 4f6dd7a8d5 Rename functions to be less confusing 5 years ago
Mikunj Varsani a75ef365b8 Fix device unlinking.
Fix session request being sent even if we have keys to setup a session.
Fix minor crash.
5 years ago
Mikunj Varsani 68f1ba543b Fix closed group creation from secondary device 5 years ago
Mikunj Varsani d9c521b09d Fix message syncing in closed groups 5 years ago
Mikunj Varsani beb4cdbed8 Closed group fixes. (#816)
* Fix group updates not syning

* Fix leaving closed groups

* Fix incorrect members being shown on create group dialog

* Linting

* Fix create closed group showing our own conversation
5 years ago
Mikunj 164303180f Remove unneeded boolean condition. 5 years ago
Mikunj c9f60826b4 Fix friend request messages being sent to users you don't have a session in closed groups.
Disable typing messages and read receipts in groups.
Send out session request messages if you don't have a session with a member in the group.
5 years ago
Mikunj 8ae793db19 Rename BACKGROUND_FRIEND_REQUEST to SESSION_REQUEST.
Don't trigger friend request logic if a message is aimed at a group.
5 years ago
Ryan Tharp 2cf39cc1ed
Merge pull request #690 from neuroscr/multidevice-publicchat
Add/Remove Moderators interface
5 years ago
Ryan Tharp 6c9f14fc31 fix makeAttachmentPointer to make 3 parameter optional 5 years ago
Mikunj 84a8b0f0af Merge branch 'clearnet' into bug-fix 5 years ago
Maxim Shishmarev 5123fa0409
Merge pull request #669 from msgmaxim/restoration
Prompting the user to reset session on invalid ciphertext
5 years ago
Mikunj daf5da09c6 Fix minor profile picture bugs. 5 years ago
sachaaaaa b0122b6ce6 Ensure the primary profile is used on secondary devices 5 years ago
sachaaaaa 7c52a1d038 encrypt and decrypt images before upload and after download 5 years ago
Maxim Shishmarev 81bfa90943 Prompting the user to reset session on invalid ciphertext 5 years ago
Maxim Shishmarev 8ea82b14e3 Add channel id field to invitations 5 years ago
Maxim Shishmarev a5fce17d8c public chat invitations 6 years ago
Maxim Shishmarev 5a08ac9cc1 Use avatar specific endpoint 6 years ago
Maxim Shishmarev 4dd314c18f Enable profile pictures 6 years ago
Beaudan Brown 56a1c31bf4 Ensure we can still send messages to ourselves (sync) and disable group chats 6 years ago
Beaudan Brown 685ada5cc5 Merge branch 'clearnet' into prep-merge 6 years ago
Beaudan Brown 1c022856b1 Address review 6 years ago
Beaudan Brown 370dee5abb Ensure we have the correct apis and listeners during the pairing process. Catch upnp error. Remove redundant friend requests 6 years ago
Beaudan Brown 332cd30052 Send contact sync message when becoming friends with contact and auto accept/send friend requests when receiving contact sync 6 years ago
Beaudan Brown 4aaa9ba26d Update sendSyncMessage to use primary pubkey and don't send to itsself, don't send typing messages for primary conversation (note to self) 6 years ago
Maxim Shishmarev 7c05939f55 Add group admins and the ability to remove members from private groups 6 years ago
Maxim Shishmarev cf18572049 Adding new group members; establishing sessions between non-friends 6 years ago
Maxim Shishmarev 0d19b708f9 Creating private group chats between friends 6 years ago
Beaudan Brown 72b60077c7 Give a simple error instead of logging a failed null check 6 years ago
Beaudan Brown 638f1c0e6c Bringing together all the stuff for attachments and link previews 6 years ago
Beaudan Brown a1921cfff3 Enable link previews to be sent as attachments, might need some more tweaking 6 years ago
Beaudan Brown c7a91686a8 Update proto id and use the server id as the attachmentpointer id 6 years ago
Beaudan Brown 5710c1268c Revert id field and add new url field to be compatible with mobile 6 years ago
Beaudan Brown 4e85435bf7 Update attachment pipeline to upload and download from loki fileserver 6 years ago
Mikunj c4dd10a5cd Simplified profile setting. Renamed functions to be less confusing. Removed storing profile in local storage. 6 years ago
Beaudan Brown b5fd01a468 Add required metadata to sending pipeline and send to public channels 6 years ago
Beaudan 21f0149e22 Send profile and update it 6 years ago
Beaudan 014558d939 Squash and clean of old PRs, move towards sending cleartext again 6 years ago
Mikunj 2c12c8a1d8 Convert profile field in data message to use LokiProfile instead of signal Contact. 6 years ago
Mikunj 8808100796 Merge signal-1.24.0
# Conflicts:
#	.github/PULL_REQUEST_TEMPLATE.md
#	background.html
#	config/default.json
#	config/production.json
#	js/models/conversations.js
#	js/models/messages.js
#	js/views/conversation_view.js
#	js/views/inbox_view.js
#	js/views/settings_view.js
#	main.js
#	package.json
#	test/index.html
#	ts/components/conversation/ContactName.tsx
#	yarn.lock
6 years ago
Mikunj 3a8111020e Merge v1.23.0
# Conflicts:
#	background.html
#	package.json
#	yarn.lock
6 years ago
Mikunj 48c4ed1a29 Partial Merge commit 'bf904ddd129ceba8fa363ccf6d10ecd256c65f63' into signal-1.23
# Conflicts:
#	_locales/en/messages.json
#	app/sql.js
#	js/background.js
#	js/conversation_controller.js
#	js/models/conversations.js
#	js/views/inbox_view.js
#	main.js
6 years ago
Mikunj e343a04eea Merge commit '18b5b7c046436f2defab2e20407e22da180bf97b' into signal-1.22
# Conflicts:
#	app/sql.js
#	background.html
#	config/default.json
#	js/background.js
#	js/models/conversations.js
#	js/models/messages.js
#	js/modules/data.js
#	js/signal_protocol_store.js
#	js/views/conversation_search_view.js
#	libtextsecure/message_receiver.js
#	libtextsecure/sendmessage.js
#	main.js
#	package.json
#	preload.js
#	test/index.html
#	ts/components/Avatar.tsx
#	ts/components/conversation/ConversationHeader.md
#	ts/components/conversation/ConversationHeader.tsx
6 years ago
Scott Nonnenberg a450cdf528 Lint fixes for recent PRs 6 years ago
sachaaaaa d99dc100a5 Fix arguments in MessageSenderWrapper (#2671) 6 years ago
Scott Nonnenberg 32fa5cccde Send sync sent messages properly in 1-member group 6 years ago
Scott Nonnenberg b83ae11cb3 Single member groups: Make all group-related sends a noop 6 years ago
Scott Nonnenberg c76d537482 Note to Self: On just expire timer update, set TIMER_UPDATE flag 6 years ago
Scott Nonnenberg 0b0dfbce9d Don't return error for groups with no members but yourself 6 years ago
Scott Nonnenberg af40ceda6c Note to Self timer fixes for bugs reported by beta users 6 years ago
Scott Nonnenberg 5b54c9554e Remove groups table, conversation is single source of truth 6 years ago
Scott Nonnenberg a43a78731a Note to Self 6 years ago
sachaaaaa 68fe552156 Merge commit '5c8558e293989094693f918a63b672301f1aeb55' into merge_1_21_1
* commit '5c8558e293989094693f918a63b672301f1aeb55':
  v1.21.1
  v1.21.1-beta.1
  Fix: Navigation to message via quote click didn't always work
  mainWindow.close - be ready for null mainWindow
  Ensure that Curve.async points to worker after startWorker call
  Protect against unhandled promises when calling checkForUpdates
  Reenable send when link preview is missing an image

# Conflicts:
#	package.json
6 years ago
Mikunj a1e4b740f2 Fixed up settings view.
Fix review issues.
6 years ago
Mikunj ae695fe32f Remove sending attachments. 6 years ago
Scott Nonnenberg b3eb0646c0 Reenable send when link preview is missing an image 6 years ago
sachaaaaa a0f67c22da Merge branch 'textsecure/master' into merge_1_21_0
* textsecure/master: (26 commits)
  v1.21.0
  v1.21.0-beta.4
  Dark Theme: Preserve blue background on app loading screen
  Localization updates
  Fix width of audio player when window is very narrow
  A number of small fixes for Link Previews
  Get rid of the white flash when the app starts up (#3083)
  v1.21.0-beta.3
  Lint fixes
  Introduce new language: NB
  Fail over to all numbers in retry if errors don't have numbers
  Use the proper method for pulling attachments off disk for retry
  Fix rendering bug with verified state in updateVerified()
  Update electron-builder and electron-updater
  Ensure that dialog pops up when permissions denied for voice note
  Lint fixes
  Large update to localization strings
  Link Previews
  Ensure that blocked messages are dropped even after sealed sender
  Don't linkify quoted message contents
  ...

# Conflicts:
#	.github/PULL_REQUEST_TEMPLATE.md
#	_locales/cs/messages.json
#	background.html
#	config/default.json
#	index.html
#	js/models/conversations.js
#	js/modules/web_api.js
#	js/settings_start.js
#	js/views/conversation_view.js
#	js/views/settings_view.js
#	package.json
#	protos/SignalService.proto
#	stylesheets/_index.scss
#	stylesheets/_settings.scss
6 years ago
Scott Nonnenberg 813924685e Link Previews 6 years ago
Mikunj 1a15ec9c15 Merge commit signal/master into signal-1.20 6 years ago
Scott Nonnenberg 00755072ee Include caption, width and height for outgoing attachments 6 years ago
Mikunj 654b0dac84 Merge signal-master. 6 years ago
Scott Nonnenberg 3851bf351f Throttle typing events, fix profile logging, fix group typing 6 years ago
sachaaaaa 7e612700f7 Handle session reset, Loki style 6 years ago
Mikunj f596c8125a Only attach profile if name is set. 6 years ago
Mikunj 18d638fdbf Fix sending and receiving profile.
Don't delete profile after if we set the display name to empty.
6 years ago
Mikunj 14ee7fec65 Moved and nicknames into conversations. 6 years ago
Mikunj aa57693fce Update profile if we get it through a message. 6 years ago
Mikunj 774c52a407 Added dynamic profile fetching in conversation.
Added setting profile when sending DataMessage.
6 years ago
Scott Nonnenberg 79a861a870 Typing Indicators 7 years ago
Mikunj f589fdac5c Merge signal changes into branch. 7 years ago
Scott Nonnenberg a7d78c0e9b Sealed Sender support
https://signal.org/blog/sealed-sender/
7 years ago
Beaudan 9d8890594c Removed unused retransmit function 7 years ago
Scott Nonnenberg 727925a266 Clean up old messages, better handle errors from sending 7 years ago
Scott Nonnenberg 3105b77475 Migrate to SQLCipher for messages/cache
Quite a few other fixes, including:
  - Sending to contact with no avatar yet (not synced from mobile)
  - Left pane doesn't update quickly or at all on new message
  - Left pane doesn't show sent or error status

Also:
 - Contributing.md: Ensure set of linux dev dependencies is complete
7 years ago
Scott Nonnenberg 0774ba2903 Eslintify all of libtextsecure 7 years ago
Scott Nonnenberg 5933a34a18 Use window.log in browser context, turn on console eslint rule 7 years ago
Scott Nonnenberg 1c23c6a9d7 Remove window.config in favor of window.getXXX() accessors 7 years ago
Scott Nonnenberg f3bd0cf903 Refactor api.js into web_api, which encapsulates all web access 7 years ago
Scott Nonnenberg a0ed993b42 Now we've got everything prettified! 7 years ago
Daniel Gasienica 95321e5d3e Remove Vim mode lines 7 years ago
Scott Nonnenberg c02860af5c
Responding to pull request review feedback
- messages.getQuoteObjectUrl: early return
- backup.js: explaining variables for long if statement
- types/messages.js: Log if thumbnail has neither data nor path
- sendmessage.js:
  - remove extraneous logging
  - fix indentation
  - upload attachments and thumbnails in parallel
- preload: don't load fs for tests, just fse
- _conversation.scss: split two selectors into two lines, 0px -> 0
- backup_test.js: use fse.existsSync and comment twoSlashes regex
- network_tests_view_test.js: Comment duplicate assignment to window.getSocketStatus
7 years ago
Scott Nonnenberg 73edabfb17
Full pipeline to send quotes, including thumbnail upload 7 years ago
Daniel Gasienica 32911002d4 Verify `makeAttachmentPointer` and `encryptAttachment` arguments
The underlying `crypto.subtle.encrypt` API requires it.
7 years ago
Daniel Gasienica b6ef67c402 Sync Protocol Buffers with `libsignal-service-java` (#2046)
Synchronizes our protocol buffers with `libsignal-service-java` project.

**Changes**
- [x] **BREAKING:** Rename `package` from `textsecure` to `signalservice`.
      ⚠️~~Workaround: Rename back to `textsecure`.~~
      Changed all protobuf `package` names across our project.
- [x] Rename `java_` metadata.
- [x] Move `NullMessage`, `ReceiptMessage`, and `Verified`.
- [x] Rename `Contacts.isComplete` to `Contacts.complete`. Confirmed to be
      unreferenced in our project.
- [x] Rename `Settings` to `Configuration` (`textsecure.protobuf.Settings` seems
      to be unused)
  - [x] Rename `libtextsecure` `MessageReceiver` `settings` event to
        `configuration`.
- [x] Rename `ReceiptMessage.timestamps` to `ReceiptMessage.timestamp`.
- [x] Add `AttachmentPointer` `width` and `height`.
- [x] Renamed `IncomingPushMessageSignal.proto` to `SignalService.proto` to
      match server.

---

commit 2b6aa19bf9ea5d8f2f4fd9e4102699a9d06a2b45
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Wed Feb 14 19:41:24 2018 -0500

    Rename protobuf `package`: `textsecure` --> `signalservice`

    Brings us closer to `libsignal-service-java`.

commit 91612880a5bf2c9ae8a9334877ac24e91102b905
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Wed Feb 14 19:19:35 2018 -0500

    Rename `SyncMessage.Settings` to `SyncMessage.Configuration`

commit 848eb9559928c54dffd3426bba8e7cd7b1687cdc
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 13 20:16:43 2018 -0500

    Rename `ReadReceipt` `timestamps` --> `timestamp`

commit 39859e64b41ddf41127b52d963fe7cc2b9fcad68
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Wed Feb 14 18:43:42 2018 -0500

    Rename `IncomingPushMessageSignal.proto` to `SignalService.proto`

    This matches the `libsignal-service-java` filename.

commit fd4bfd76af57ffa44178caf21d350cca211dc048
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 13 16:24:36 2018 -0500

    Revert protobuf `package` to `textsecure`

    This was a breaking change and would need to be introduced with additional
    changes.

commit 9f618fa91717a0349f1ea28bf6d365ef0a5c9ca5
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 13 16:09:55 2018 -0500

    Sync service protocol buffers with Java project

    Snapshot: 4684a49b2e/protobuf/SignalService.proto
7 years ago
Scott Nonnenberg bbab4bba10
Fix device ID check, clean up prekey fetch logging (#1961)
* DeviceId is a string, so we use the less-strict comparison

* Clean up prekey fetch logging
7 years ago
Scott Nonnenberg 2fdb048721
NullMessage sent before verification sync should not be silent (#1857) 7 years ago
Scott Nonnenberg 21325bc922
Move sync messages to silent = true (#1843)
* Set silent = true for all sync messages

* sendmessage.js: Remove brace-less if
8 years ago
Scott Nonnenberg 158b575885
Proper session reset: Delete sessions before and after (#1796)
* web requests: Don't fail if JSON not well-formed in error cases

Turns out that before our move to node-fetch, we ignored JSON.parse()
failures: https://github.com/WhisperSystems/Signal-Desktop/pull/1552/files#diff-1103a6aff0f28b6066715c6994278767L37518

* Update to libsignal v1.2.0, delete sessions on reset session

Previously we only archived sessions when sending or receiving a
'reset secure session, which didn't match up with the mobile apps.
8 years ago