Scott Nonnenberg
548c8e69cf
Emojification now all done with react via a few new components
...
Three locations were changed:
1. a group update, which lists a set of contacts
2. the contact name in the left pane
3. the conversation title
Three new components were added to window.Signal.Components to support
these scenarios, respectively:
1. Emojify
2. ContactName
3. ConversationTitle
Note that there are a number of other places in the app that should be
emojified, but never have been before. Essentially any place that a
contact name might be shown. A non-exhaustive list:
- Show group members
- Show safety number
- Verified change notification
- Disappearing timer change notification
- Contact verification notification
- Quote contact name
2018-05-23 16:26:47 -07:00
Scott Nonnenberg
a5416e42c4
Refactor all emoji utility methods into window.Signal.Emoji
2018-05-23 16:26:47 -07:00
Scott Nonnenberg
d54aedcefa
A few fixes for the contact detail screen ( #2374 )
...
* Only show 'send message' on contact detail when user has account
* Make contact detail headers visible in dark mode
* Fix vertical scrolling for very large contact in detail pane
* Fix a couple comment typos
2018-05-23 12:15:46 -07:00
Scott Nonnenberg
4e5c8965ff
Move to react for newlines, emoji, and links in message body
2018-05-14 16:09:37 -07:00
Daniel Gasienica
e723484498
Simplify closing emoji panel on escape key down
2018-05-08 17:30:11 -04:00
tommypacker
48708d5738
Close emoji panel on escape press
2018-05-08 17:25:20 -04:00
Scott Nonnenberg
37821e5a1b
Wire up all contact behaviors, refactor Contact type/selector
2018-05-07 19:11:35 -07:00
Scott Nonnenberg
41be7f126b
Visuals for embedded contacts as well as contact detail screen
2018-05-07 19:09:55 -07:00
Daniel Gasienica
13f1ec2e51
Use structured logs
...
Easier to search for static prefix and fields are named.
2018-05-03 13:24:39 -04:00
Daniel Gasienica
822850433e
Apply manual fixes for ESLint errors
2018-04-30 16:53:34 -04:00
Daniel Gasienica
1dd87ad197
Format all source code using Prettier
2018-04-30 16:53:34 -04:00
Daniel Gasienica
fccbf70d57
Pre-process media for LightboxGallery
2018-04-30 11:59:26 -04:00
Daniel Gasienica
d00fb560b0
Avoid exposing AttachmentTS
2018-04-27 16:31:43 -04:00
Daniel Gasienica
e1b620602d
Display attachments from disk
2018-04-27 16:31:43 -04:00
Daniel Gasienica
e2a2165d9c
Remove lightbox on unload
2018-04-27 16:31:43 -04:00
Daniel Gasienica
45d6c7a5a8
Implement video support in lightbox
2018-04-27 16:31:42 -04:00
Daniel Gasienica
ac04f0648a
Load more documents than media
2018-04-27 16:31:42 -04:00
Daniel Gasienica
b86f9c0be8
Allow saving of attachments from media gallery lightbox
2018-04-27 16:31:42 -04:00
Daniel Gasienica
b74b761255
Implement click to save for document list
2018-04-27 16:31:42 -04:00
Daniel Gasienica
954433366e
Load documents for media gallery
2018-04-27 16:31:42 -04:00
Daniel Gasienica
2a5f513ebc
Organize global
s
2018-04-27 16:31:42 -04:00
Daniel Gasienica
bf3a547a76
Organize global
s
2018-04-25 15:28:56 -04:00
Daniel Gasienica
8e3c38d5fe
Fix formatting
2018-04-25 15:25:12 -04:00
Daniel Gasienica
96be0df8c7
Show lightbox controls based on presence of handlers
2018-04-25 15:24:52 -04:00
Daniel Gasienica
86a9923181
Remove TODOs
2018-04-25 15:24:52 -04:00
Daniel Gasienica
204de3aaea
Lazily bind Signal.Components.MediaGallery
2018-04-25 15:24:52 -04:00
Daniel Gasienica
b4a4182613
Hide ‘Save As…’ button in media gallery
...
Wait until we support it.
2018-04-25 15:24:51 -04:00
Daniel Gasienica
0d676a65b8
Open media gallery item in lightbox
2018-04-25 15:24:51 -04:00
Daniel Gasienica
4ce0472b9f
Extract Message.loadWithObjectURL
2018-04-25 15:24:51 -04:00
Daniel Gasienica
2dc3877fd4
Integrate visual media attachment gallery
2018-04-25 15:24:51 -04:00
Daniel Gasienica
f367a9b059
Move private
method below public
ones
2018-04-25 15:24:51 -04:00
Daniel Gasienica
d7b21ef5dc
Render attachments grouped by date
2018-04-25 15:24:51 -04:00
Daniel Gasienica
ae419764bf
Use arrow function over .bind
2018-04-25 15:24:51 -04:00
Daniel Gasienica
272c49c5bf
Use existing ReactWrapper
2018-04-25 15:24:50 -04:00
Daniel Gasienica
32a3ef518b
Render media gallery placeholder panel
2018-04-25 15:24:50 -04:00
Daniel Gasienica
273248d3fd
Wire up ‘View All Media’ menu item
2018-04-25 15:24:50 -04:00
Scott Nonnenberg
21713cbce7
Update quotes to render emoji just like normal messages
2018-04-20 15:24:05 -07:00
Scott Nonnenberg
d0bcf506b4
Put focus in the message composition field on reply
2018-04-20 15:24:03 -07:00
Scott Nonnenberg
73edabfb17
Full pipeline to send quotes, including thumbnail upload
2018-04-20 15:23:57 -07:00
Scott Nonnenberg
13ce056830
Make thumbnails on quote load and on quote preview creation
2018-04-20 15:23:56 -07:00
Scott Nonnenberg
f4d9ab8ba0
Put quote preview in text box for Android, above it in iOS
2018-04-20 15:23:54 -07:00
Scott Nonnenberg
afad1a8d77
conversation_view: Remove logging in quote handling
2018-04-20 15:23:52 -07:00
Scott Nonnenberg
c71dcf0139
Show current quoted message above composition field
...
Note that substantial changes will be required for the updated Android
mockups, putting the quotation into the text box next to the attachment
preview.
2018-04-20 15:23:51 -07:00
Scott Nonnenberg
b4ff223d18
Refactor: Push selector logic for quote props into Message model
2018-04-20 15:23:49 -07:00
Scott Nonnenberg
d0b11c59f5
Eslintify conversation_view.js
2018-04-20 15:23:49 -07:00
Scott Nonnenberg
a6467d4fda
Constrain 'start recording' event listener to capture-audio only
...
(it was firing when clicking on a microphone icon in quotation!)
2018-04-13 18:10:52 -07:00
Scott Nonnenberg
32925ed026
Load attachment data for quotedMessages, processMessage on add
...
Not ideal that it loads it twice, but AttachmentView is so selfish with
its blob and objectUrl!
2018-04-13 18:10:50 -07:00
Scott Nonnenberg
0f8dd7e2db
Fix a number of lint failures
2018-04-13 18:10:48 -07:00
Scott Nonnenberg
1cc0633786
Full support for quotations in Android theme
2018-04-13 18:10:48 -07:00
Scott Nonnenberg
fb2ebddaa3
Remove expired message if it expired during database fetch ( #1983 )
...
* Log SyncMessage destination, even if it's a group
* Remove disappearing message even if deleted during fetch
This change fixes a potential race condition with disappearing message
removal from the UI. If the UI is in the middle of making a database
request for messages to display, then we need to wait for that to
complete before removing the newly-deleted expired message.
2018-01-23 12:27:34 -08:00