* Go to chat list view after registration
* sync system contacts during registration
* Use explicit local credentials for storage service operations during registration
* fix tests
* Quick hack to get through double pin confirmation
* Finishing touches
* lint
* fix build
* reload phone number discoverability after storage service sync
* fix tests again
* Take chat auth on account and contact record initializers
* Change around branches for clarity in OWSUserProfile
* pr comments
* Split ChatServiceAuth into the same and AuthedAccount
* fix tests
* merge woes
* Update checkmark icons (for selection rows only)
* Use selected/unselected checkmarks on my story privacy settings
* Initially show no setting on my stories privacy. Require setting to select My Story in recipient picker
* Clear my story privacy settings from debug ui
* design request: keep the all connections view button if unselected
* Same size for story privacy rows with and without detail text
* make shouldCancelNavigationBack a var
* rename OWSNavigationView->OWSNavigationChildController
* forward delegate calls to OWSNavigationController
* apply theme and style to OWSNavigationBar consistently
fix themeing on gif picker controller
* Use topPinned navbar position. Size the blur effect view using the background view
* Use fade animation when hiding the navigation bar
* fix issues with reduced transparency setting
* pr feedback
* Remove the useless shouldUseTheme
* Remove the useless shouldBottomViewReserveSpaceForKeyboard
* Add ViewControllerLifecycle
* Use more sensible constraints for keyboard layouts
* Consistent theme updates. themeDidChange is what you subclass, applyTheme is each class' internal application of theme changes, if needed
* Add app lifecycle hooks
* pr feedback
* pass through touches on the keyboard layout view(s)
* fix lint
* Un-index deleted private story threads. Omit disabled private story threads from search results
* Fix bad debug assert on empty picker search results
* remove extra didRemove FTS check
* Shuffle code around, adding UnsentTextAttachment
* Replace usages of TextAttachment with UnsentTextAttachment where applicable, creating an actual TextAttachment (and associated OWSlinkPreview image TSAttachment, if applicable) only per-recipient
* Only upload one text story link preview image attachment and propagate it to the individual TSAttachments created for each destination
* update comments so I don't lose my mind the next time I read this code
* Dedupe text stories sent to the same person via multiple private threads
* fix non-compiling tests
* pr feedback
* apply theme to cells when conversation picker theme changes
* Retain selection UI when reloading conversation picker cells
* Prioritize newly created story threads for conversation picker sort ordering
* Index private story threads for searching
* Add story search results to conversation picker and fix issues with reloading with stuff pre-selected
* PR feedback 1: efficient thread migration
* PR feedback 2: don't allow expansion of story search results
Change license to AGPL
This commit:
- Updates the `LICENSE` file
- Start every file with something like:
// Copyright YEAR_FIRST_PUBLISHED Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
---
First, I removed existing license headers with this Ruby 3.1.2 script:
require 'set'
EXTENSIONS_TO_CHECK = Set['.h', '.hpp', '.cpp', '.m', '.mm', '.pch', '.swift']
same = 0
different = 0
all_files = `git ls-files`.lines.map { |line| line.strip }
all_files.each do |relative_path|
if relative_path == 'Pods'
next
end
unless EXTENSIONS_TO_CHECK.include? File.extname(relative_path)
next
end
path = File.expand_path(relative_path)
contents = File.read(path)
new_contents = contents.sub(/\/\/\n\/\/ Copyright .*\n\/\/\n\n/, '')
if contents == new_contents
same += 1
else
different += 1
end
File.write(path, new_contents)
end
puts "updated #{different} file(s), left #{same} untouched"
I'm sure this script could be improved, but it worked well enough.
Then, I created `Scripts/lint/lint-license-headers` and ran it to auto-
fix a lot of files. This changed the mode of some files, but I think
that's actually desirable. For example,
`SignalServiceKit/src/Util/AppContext.m` previously had a mode of
`0755/-rwxr-xr-x`, and it's now `0644/-rw-r--r--`.
Then I fixed some stragglers and updated the precommit script.
See [a similar change in the Desktop app][0].
[0]: 8bfaf598af
* Support scale aspect fill in MediaMessageView
* show image/video previews on conversation picker when in stories only send flow
* show text story previews in conversation picker
* fix media preview border color
* update rotation for RTL
* PR feedback
* Hide story video duration tooltip when changing selection
* update story row swipe action title font
* Update tab bar icons
* Fix ghost safe area shown when cancelling an interactive dismiss of a chat view
* Use forced dark theme background color for cell selection in story info sheet
* Exclude hidden story contexts from conversation picker
* remove unused asset
* pr feedback
* Disable view once media in stories send flow
* Remove stories from picker if sending a view once media
* dont show view once button if sending to stories from sharesheet
* Add StoryContextAssociatedData and db migrations
* Remove hideStory from ThreadAssociatedData
* Remove lastViewedStoryTimestamp and lastReceivedStoryTimestamp from TSThread
* drop deprecated columns in db migration
* add indexes
* dump schema.sql
* Update unviewed stories SQL query
* fix thread fetching for incoming story messages
* reload story tab badge when StoryContextAssociatedData changes
* Add test for TSGroupModel backwards-compatible deserialization
* move db migration
* Only use StoryContextAssociatedData for story badge count
* update StoryContextAssociatedData lastReceivedTime when a story message is deleted
* catch group threads for outgoing story messages too
* clean up sql query
* Only update lastReceievedStoryTimestamp for remote deletions
* add latestUnexpiredTimestamp to StoryContextAssociatedData
* Add first send story privacy field to AccountRecord proto
* Store hasSetMyStoriesPrivacyKey on StoryManager
* sync hasSetMyStoriesPrivacy state
* Reuse MyStorySettingsViewController in a sheet view controller
* Show my story privacy settings from conversation picker if unset when selecting my story destination
* reload my story row to change subtitle
* pr feedback
* initial approach commit, needs cleanup
* Keep >30s videos for non-story recipients, but split for stories
* Some cleanup
* fix too many chats toast offset
* show tooltip in the send flow
* pr feedback