Scott Nonnenberg
19ff050b3a
Show 'Off' text when disappearing messages are turned off
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
8b92e6112c
Add dir='auto' to Message and Quote body for RTL languages
7 years ago
Scott Nonnenberg
f38647dfa5
ContactListItem: Add spacing above and below (for 'show members')
7 years ago
Scott Nonnenberg
f39a96bc76
Move to centralized message/cache data layer
...
Also, ensure that conversation.messageCollection has nothing in it
unless it has an associated ConversationView.
7 years ago
Scott Nonnenberg
e80857562a
Disappearing messages: show 'disabled' instead of 'set to off'
7 years ago
Scott Nonnenberg
7dd931fb7e
ConversationHeader: centered title, ConvoListItem: unbold name
7 years ago
Scott Nonnenberg
3a07e9ae73
Ensure that color mapping matches the spreadsheet
7 years ago
Scott Nonnenberg
5933a34a18
Use window.log in browser context, turn on console eslint rule
7 years ago
Scott Nonnenberg
643739f65d
Responding to feedback on the updated visuals ( #2549 )
...
* Conversation List Item: timestamp bold only when convo has unread
* Preserve the positioning of overlays on re-entry into convo
* ConversationListItem: Handle missing and broken thumbnails
* Shorten timestamp in left pane for better Android consistency
* Update convo last updated if last was expire timer change
But not if it was from a sync instead of from you or from a contact.
* Make links in quotes the same color as the text
* MediaGridItem: Update placeholder icon colors for dark theme
* Ensure turning off timer shows 'Timer set to off' in left pane
* ConversationListItem: Show unread count in blue circle
* Add one pixel margin to blue indicator for text alignment
* Ensure replies to voice message can bet sent successfully
7 years ago
Scott Nonnenberg
2384988b0a
ConversationHeader: Ensure that profile has tilde before it
7 years ago
Scott Nonnenberg
fa18e2ba77
LightBox: tslint exception for play() call which returns promise
7 years ago
Scott Nonnenberg
4fa6a785f4
Remove unused code
7 years ago
Scott Nonnenberg
e90355dab5
Lightbox: Play video on open, play/pause on click of video itself
7 years ago
Scott Nonnenberg
66bd6c826d
Fix MediaGallery handling of videos - show thumbnail and overlay
7 years ago
Scott Nonnenberg
0b9b738c88
Remove empty file: colorSVG.ts
7 years ago
Scott Nonnenberg
95976b10e7
Timestamp: Eliminate 'Invalid date' from potential output
7 years ago
Scott Nonnenberg
675e34fc8d
New React component: ConversationListItem, installed in left pane
...
When collecting a conversation's last message, we grab that message's
status as well (if outgoing) and show it.
7 years ago
Scott Nonnenberg
7e2d7b5e60
Media Gallery: Support for dark theme
7 years ago
Scott Nonnenberg
3c69886320
Finish new Message component, integrate into application
...
Also:
- New schema version 8 with video/image thumbnails, screenshots, sizes
- Upgrade messages not at current schema version when loading messages
to show in conversation
- New MessageDetail react component
- New ConversationHeader react component
7 years ago
Scott Nonnenberg
43a44793c5
Remove jshint - move everything over to eslint
...
Also removed all hints of previous linters
7 years ago
Scott Nonnenberg
dc11db92f9
New React component: Message
...
Also: Use react to render contects on the 'show group members' screen
7 years ago
Scott Nonnenberg
fc5c52fbdf
Remove iOS theme in favor of plain light/dark themes
7 years ago
Scott Nonnenberg
445839770b
Fix width of message detail screen ( #2478 )
7 years ago
Scott Nonnenberg
951ae6d52c
Disable inline rendering of SVG attachments
...
Like TIFF, they are now treated as binary files.
7 years ago
Scott Nonnenberg
925e02e397
Fix lint error in OS.ts
7 years ago
Scott Nonnenberg
34f423b52c
Remove unused code; move signal.js to js/modules for eslint
...
(noticed as I was doing this that signal.js doesn't get eslint coverage)
7 years ago
Scott Nonnenberg
9dedda84e2
Add style guide examples for ContactName and ConversationTitle
7 years ago
Scott Nonnenberg
2988da0981
Turn on all of Microsoft's recommend lint rules
...
Biggest changes forced by this: alt tags for all images, resulting in
new strings added to messages.json, and a new i18n paramter/prop added
in a plot of places.
Another change of note is that there are two new tslint.json files under
ts/test and ts/styleguide to relax our rules a bit there. This required
a change to our package.json script, as manually specifying the config
file there made it ignore our tslint.json files in subdirectories
7 years ago
Scott Nonnenberg
23586be6b0
Add emojification to contact names shown in quotes
7 years ago
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
7 years ago
Scott Nonnenberg
d9e5338dff
Refactor link/emoji/newline components for composability
7 years ago
Scott Nonnenberg
a5416e42c4
Refactor all emoji utility methods into window.Signal.Emoji
7 years ago
Scott Nonnenberg
a328a70ba2
Update React-based emoji handling to fix skin tone modifiers ( #2399 )
7 years ago
jython234
84759d813e
Modify OS.isWindows to check platform before version ( #2407 )
...
* Modify OS.isWindows to check if OS is Windows first before checking version.
Previously OS.isWindows checked if the windows version matched the one required. This worked fine, except for the fact that it would end up comparing a linux kernel version to a windows version as it didn't check if the platform was Windows in the first place before.
This caused issues as it would throw an error when comparing with non-semver linux kernels (such as Fedora). Now it checks if the current platform is Windows first, and if not, immediately returns false.
Resolves : #2396
* Fix formatting for OS.ts
7 years ago
Scott Nonnenberg
4e5c8965ff
Move to react for newlines, emoji, and links in message body
7 years ago
Scott Nonnenberg
8f934251ae
Fix a few types: relax contact, Email->Phone
7 years ago
Scott Nonnenberg
80b069e9b6
Move phone number format/parse into ts/types/PhoneNumber
7 years ago
Scott Nonnenberg
aa13a2c6f7
Parse phone numbers into e164 as part of schema upgrade
7 years ago
Scott Nonnenberg
8cb1f1f532
Fall back on givenName/familyName if no displayName/organization
7 years ago
Scott Nonnenberg
eafa038ba4
Use backup labels if custom contact type labels are missing
7 years ago
Daniel Gasienica
3bf8a8966a
Notification improvements
...
- Remove on read, on focus, and on exit.
- Show multi-message notifications like '5 new messages'.
7 years ago
Daniel Gasienica
d349dd903d
Add `AttachmentSection` to style guide
7 years ago
Daniel Gasienica
121bb0ecef
Style guide: Fix empty state
7 years ago
Daniel Gasienica
f19e6ea93d
Wrap JSX siblings in container
7 years ago
Daniel Gasienica
a8cd0b782e
Rename `DocumentListItem::isLast` to `shouldShowSeparator`
7 years ago
Daniel Gasienica
05f67dc04a
Hide separator for last document list entry
7 years ago
Daniel Gasienica
fd883b2896
Fix `LightboxGallery` style guide entry
7 years ago
Daniel Gasienica
bfe7eb7d5e
Consolidate styles
7 years ago
Daniel Gasienica
90329a2764
Display icon for unsupported file formats
...
Still allows users to download media.
7 years ago
Daniel Gasienica
623bdd9284
Port `colorSVG` from Sass to TypeScript (React)
7 years ago
Daniel Gasienica
16bc1d34c6
Message schema 6: Change classification of media and documents
...
For an easier implementation, we change our original definition of
`initializeAttachmentMetadata`. This means we have to re-run it marked as
version 6 and mark schema version 5 as deprecated as its definition has changed.
7 years ago
Daniel Gasienica
f4a5bc9907
Add new MIME types
7 years ago
Daniel Gasienica
63bd9dcc61
Add tests for `Attachment.isVisualMedia`
7 years ago
Daniel Gasienica
53918d68de
Add `Attachment.isFile` definition
7 years ago
Daniel Gasienica
20246c4d07
Classify all images and videos as visual media
...
Even if we can’t play it back. Handle that in the lightbox.
Also: Exclude voice messages.
7 years ago
Scott Nonnenberg
0282635142
Remove Object.assign still hanging around in typescript
7 years ago
Scott Nonnenberg
1918a88722
Drop ifTruthy suffix
7 years ago
Scott Nonnenberg
1fd487be3f
Refactor to remove duplicated code, lint/prettier fixes
7 years ago
Scott Nonnenberg
f628df1035
Eliminate arrows in the standalone Lightbox component examples
7 years ago
Scott Nonnenberg
8beeef4d10
Show contact name when you reply to message with a contact
7 years ago
Scott Nonnenberg
9d1847a7e5
Pull all setup in preload.js into signal.js. goal: webpackable
7 years ago
Scott Nonnenberg
30cb673405
Fix style guide for LightboxGallery component
7 years ago
Scott Nonnenberg
37821e5a1b
Wire up all contact behaviors, refactor Contact type/selector
7 years ago
Scott Nonnenberg
41be7f126b
Visuals for embedded contacts as well as contact detail screen
7 years ago
Daniel Gasienica
daa4a3d63f
Compile all protocol buffers
7 years ago
Daniel Gasienica
15759f0db5
Normalize package naming
7 years ago
Daniel Gasienica
f88ebdf8b7
Compile protocol buffers as part of `yarn grunt dev`
7 years ago
Daniel Gasienica
38f3ad6518
Use `SignalService` vs `textsecure` for protobuf
7 years ago
Daniel Gasienica
6589247750
Expose `SignalService` to style guide
7 years ago
Daniel Gasienica
86346ee239
Expose `Signal.Types.Attachment` to style guide
7 years ago
Daniel Gasienica
5789b3eb75
Add `Attachment.isVoiceMessage`
7 years ago
Daniel Gasienica
fa4c3fda2b
Extract common MIME types
7 years ago
Daniel Gasienica
8a4f062120
Add `MIME.APPLICATION_OCTET_STREAM`
7 years ago
Daniel Gasienica
5d230d3778
Add `Settings.isNotificationGroupingSupported`
...
See: https://github.com/electron/electron/issues/11189
7 years ago
Daniel Gasienica
ecf23b6b2e
Disable audio notifications on Windows 7 and lower
7 years ago
Daniel Gasienica
a102016ed8
Port `Settings` and `OS` to TypeScript
7 years ago
Daniel Gasienica
c591c3ca55
Use native notifications on all platforms
7 years ago
Daniel Gasienica
4e6a03a91c
Log whether OS supports native notifications
7 years ago
Daniel Gasienica
d5b391757d
Add `Notifications.getStatus`
7 years ago
Scott Nonnenberg
322d307655
Turn on prettier support for markdown files, update all files
7 years ago
Daniel Gasienica
87d374ea78
Remove `@prettier` pragmas
7 years ago
Daniel Gasienica
1dd87ad197
Format all source code using Prettier
7 years ago
Scott Nonnenberg
82e2fe93a5
Show 'You' in Android theme quotes instead of contact name ( #2312 )
...
Show 'You' in Android theme quotes instead of contact name
7 years ago
Scott Nonnenberg
c5935eef5d
Show 'You' in Android theme quotes instead of contact name
7 years ago
Daniel Gasienica
fccbf70d57
Pre-process media for `LightboxGallery`
7 years ago
Daniel Gasienica
110b58230b
Only revoke object URLs we created
7 years ago
Daniel Gasienica
c6599d2e14
Add another permutation of `EmptyState`
7 years ago
Daniel Gasienica
9ca6fd6498
Center lightbox navigation controls
7 years ago
Daniel Gasienica
fa45656e8e
Wire up media gallery empty state
7 years ago
Daniel Gasienica
4d01264c09
Fix layout of media gallery
7 years ago
Daniel Gasienica
78f15b654d
Add `EmptyState` component
7 years ago
Daniel Gasienica
ea49f7a3b6
Implement keyboard navigation for `Lightbox`
7 years ago
Daniel Gasienica
e1b620602d
Display attachments from disk
7 years ago
Daniel Gasienica
407c77395b
Add explicit boolean
7 years ago
Daniel Gasienica
9451dc5e41
Define `AttachmentSchemaVersion3`
7 years ago
Daniel Gasienica
21db2e7182
Use `saveURLAsFile`
7 years ago
Daniel Gasienica
307ab0d3a5
Extract `saveURLAsFile`
7 years ago
Daniel Gasienica
4c0c55082f
Move navigation controls to the bottom
7 years ago
Daniel Gasienica
fb8d4e2421
Implement basic lightbox with gallery support
7 years ago
Daniel Gasienica
43e19f3b06
Prevent default event on icon button clicks
7 years ago
Daniel Gasienica
b3d0438537
Show hand cursor on media grid items
7 years ago
Daniel Gasienica
45d6c7a5a8
Implement video support in lightbox
7 years ago
Daniel Gasienica
ac04f0648a
Load more documents than media
7 years ago
Daniel Gasienica
6ee56b8445
Remove newlines
7 years ago
Daniel Gasienica
b74b761255
Implement click to save for document list
7 years ago
Daniel Gasienica
8ca5a391af
arrayBufferToObjectURL: Ensure `data` is `ArrayBuffer`
7 years ago
Daniel Gasienica
b27fdd1559
Use `pointer` cursor for `DocumentListItem`
7 years ago
Daniel Gasienica
4a5e61eaf4
Implement `Attachment.save`
7 years ago
Daniel Gasienica
f8119be97b
Include videos in media gallery
7 years ago
Daniel Gasienica
37d73accde
Show ‘Documents’ tab
7 years ago
Daniel Gasienica
96c44094e3
Implement `Conversation.fetchFileAttachments`
7 years ago
Scott Nonnenberg
ccf14710a3
styleguide: Make filesize and Signal.Util.GoogleChrome available
7 years ago
Daniel Gasienica
f36f206a01
Use `IndexablePresence` for `hasFileAttachments` and `hasVisualMediaAttachments`
...
Reduces index size, makes it easier to debug using IndexedDB inspector, and
hopefully improves lookup performance.
7 years ago
Daniel Gasienica
b65370c8d7
Prefer `GoogleChrome.is*` over `MIME.is*`
7 years ago
Daniel Gasienica
64c3d604aa
Fix type errors
7 years ago
Daniel Gasienica
cd6912f0dd
🎨 Autoformat code
7 years ago
Daniel Gasienica
823a58f98a
Prevent NPE
7 years ago
Daniel Gasienica
96be0df8c7
Show lightbox controls based on presence of handlers
7 years ago
Daniel Gasienica
59650035ec
Use 🇺🇸 spelling
7 years ago
Daniel Gasienica
feff820cd4
Prefer custom styles over `strong`
7 years ago
Daniel Gasienica
fca8de16c8
Add required `Message.id: string`
7 years ago
Daniel Gasienica
dd7e51e697
🎨 Fix formatting
7 years ago
Daniel Gasienica
74582de2d1
Clarify naming
7 years ago
Daniel Gasienica
6330a8d9f3
Simplify expression
7 years ago
Daniel Gasienica
f99e6306c3
Simplify `withSection`
7 years ago
Daniel Gasienica
d98d08a7e0
Remove obsolete TODO
7 years ago
Daniel Gasienica
e97b078088
Use `componentWillUnmount`
7 years ago
Daniel Gasienica
9abf1f0fcd
Use `dash-case` for CSS class names
7 years ago
Daniel Gasienica
2e121310e4
🎨 Fix lint error
7 years ago
Daniel Gasienica
4d04638358
Document changes for MVP
7 years ago
Daniel Gasienica
c3e04ecf87
Remove use of `LoadingIndicator`
7 years ago
Daniel Gasienica
6d5d0df1c0
🎨 Fix TSLint errors
7 years ago
Daniel Gasienica
8b9516de72
Update test for attachment metadata
7 years ago
Daniel Gasienica
f240269d7b
MVP: Only show images in media gallery
7 years ago
Daniel Gasienica
b4e3749c88
MVP: Only show media tab
...
Until we support showing documents.
7 years ago
Daniel Gasienica
60ed82b728
Show all lightbox controls in style guide
7 years ago
Daniel Gasienica
a7ed21a811
Add `shouldShowSaveAsButton` option
7 years ago
Daniel Gasienica
0d676a65b8
Open media gallery item in lightbox
7 years ago
Daniel Gasienica
a9f7f18721
Add `ItemClickEvent`
7 years ago
Daniel Gasienica
d634a414c3
Make visibility of previous/next buttons opt-in
7 years ago
Daniel Gasienica
142236640e
Click lightbox to close
7 years ago
Daniel Gasienica
ce825fbd66
Rename `save` to `onSave`
7 years ago
Daniel Gasienica
1b9e581e90
Show lightbox image as large as possible
7 years ago
Daniel Gasienica
2cb0b0aeb1
Add arrow controls
7 years ago
Daniel Gasienica
246e0ca87b
Add note about inline styles
7 years ago
Daniel Gasienica
d797ede791
Close lightbox on escape key press
7 years ago
Daniel Gasienica
86da80fd23
Wire up attachment saving
7 years ago
Daniel Gasienica
593976fe21
Extract Backbone Lightbox view module
7 years ago
Daniel Gasienica
2474b42198
Port lightbox icon buttons
7 years ago