Commit Graph

35 Commits

Author SHA1 Message Date
Michelle Linington
5a645228b0 Fix issue where avatars flicker sporadically
Our AvatarBuilder caches were cleared in their entirety any time a
profile changes. If a profile update raced with a avatar fetch in
ConversationAvatarView, they'd blink briefly while the cached items were
removed.

This change ensures that we're only clearing out avatars that are
associated with an updated profile.
2021-11-22 17:01:07 -08:00
Michelle Linington
fdc1c66533 Add tap targets to badge in conversation settings
Also reorders the conversation settings page
2021-11-18 16:01:51 -08:00
Nora Trapp
355fd82e07 Add remote config for donor badges 2021-11-17 16:22:19 -08:00
Michelle Linington
1b82ffa6d7 Hook up badge configuration in subscription view
- Adjusts delegate interface to be useful in both cases
- Subscription view controller will now save updated badge settings

Also, a bonus change to disable badges on avatars
2021-11-16 17:44:23 -08:00
Michelle Linington
46b688dd35 Further updates to avatar badges:
- Design speced out explicit offsets for 24pt and 112pt avatars
- We won't show badges in call views

Also fixes a couple bugs:
- Incorrect interpolation of interstitial badge sizes
- We should badge conversation headers and typing indicators
2021-11-15 12:39:41 -08:00
Michelle Linington
f2c2c77c8b Fixes a bug around async avatar model updates
A few people reported this issue during the badges bug bash. Avatars
would show stale avatars in incorrect places.

This was due to async model updates being kicked off shortly before a
call to `reset()` the view. Resetting would only clear the image data
and data source but wouldn't do anything to cancel async updates that
were in-progress.

The fix is to tweak the implementation of reset() to go through existing
paths that account for this by incrementing the model generation. This
ensures that the async update will be dropped when it resolves and sees
that the model generation was incremented underneath it.
2021-11-15 12:38:04 -08:00
Michelle Linington
f723cedb89 Badges avatars with custom diameters
- We now lerp the badge sprite to the closest design spec available
- Also enables badges on internal builds
2021-11-11 20:18:30 -08:00
Michelle Linington
0b9c6727a6 Fixes various small bugs
- Clear out avatar cache on local profile changes too
- ConversationAvatarView properly handles local profile updates
- Fix some tiny UI bugs in group calls
2021-11-10 21:27:17 -08:00
Nora Trapp
be5a487c52 Update toast styling 2021-11-10 11:50:53 -08:00
Michelle Linington
cc4f5fe9d4 PR Feedback:
- Consistent use of ConversationStyle
- LocalUserDisplayMode is now a required initializer argument

Also a small bug fix around avatar file path URLs
2021-11-09 14:25:55 -08:00
Michelle Linington
905b7f6507 PR Feedback
- Rename the conversation avatar size class enum cases
- Add explanatory comment for explicit type declaration
2021-11-09 14:25:55 -08:00
Michelle Linington
e62bee59b5 Re-add badge to reactor cell
Also re-lints with swiftlint 0.45.0
2021-11-09 14:25:55 -08:00
Michelle Linington
d48d60c8e5 Minor cleanup 2021-11-09 14:25:55 -08:00
Michelle Linington
59645cd456 Simplify reconfigure API 2021-11-09 14:25:55 -08:00
Michelle Linington
6105ee5a20 Better naming of size classes
Also fixes bug with EmojiReactorCell layout
2021-11-09 14:25:55 -08:00
Michelle Linington
f14f0ed90c Badged group avatars in ConversationView 2021-11-09 14:25:55 -08:00
Michelle Linington
dea35199b2 Clean up ConversationAvatarView data sources
Creates a special data source enum for ConversationAvatarView data
providers. Before, ContactCell and ConversationAvatarView used the data
source, neither applying to each perfectly
2021-11-09 14:25:55 -08:00
Michelle Linington
43cfad4f38 Show badges in ContactViewCell 2021-11-09 14:25:55 -08:00
Michelle Linington
f459857799 ConversationAvatarView2 -> ConversationAvatarView 2021-11-09 14:25:55 -08:00
Michelle Linington
9f53832e14 Remove usage of ConversationAvatarView 2021-11-09 14:25:55 -08:00
Michelle Linington
bd51ca690a Replace AvatarImageView2 with ConversationAvatarView2
Adoption of ConversationAvatarView2 in many key locations. This isn't
exhaustive, but it's mostly there.

Some work left to be done around ConversationAvatarView2 data source
tweaks.
2021-11-09 14:25:55 -08:00
Michelle Linington
9123bbd0b4 Partial progress on badged avatars 2021-11-09 14:25:55 -08:00
Michelle Linington
ae2ca49e72 Optimistic fix for reeneterant layout in MentionPicker
I personally haven't been able to reproduce this issue. This might end
up fixing this issue, but if not we might need to rethink our
MentionPicker layout.
2021-10-28 17:58:18 -07:00
Matthew Chen
c494fb2a44 Don't cache contacts on contacts manager. 2021-10-22 19:09:44 -03:00
Matthew Chen
7ff069d8f0 Don't cache signal accounts on contacts manager. 2021-10-22 19:09:28 -03:00
Matthew Chen
eec119025f Don't cache signal accounts on contacts manager. 2021-10-22 19:09:28 -03:00
Matthew Chen
5d780d1589 Apply script to normalize includes and imports. 2021-10-21 09:21:10 -03:00
Matthew Chen
7d0485661d Move window manager to Signal target. 2021-10-19 17:59:13 -03:00
Matthew Chen
57f8212495 Add SignalUI framework target. 2021-10-19 09:39:53 -03:00
Matthew Chen
25f015d8bc Add SignalUI framework target. 2021-10-19 09:39:53 -03:00
Matthew Chen
21a8175795 Add SignalUI framework target. 2021-10-19 09:39:53 -03:00
Matthew Chen
fbde0356f7 Add SignalUI framework target. 2021-10-19 09:39:53 -03:00
Matthew Chen
c753b06632 Revert "Add SignalUI framework target."
This reverts commit aa47dbec4d5af31b569da9db5b824f84fba63661.
2021-10-19 09:39:53 -03:00
Matthew Chen
2bbf06bca6 Add SignalUI framework target. 2021-10-19 09:39:53 -03:00
Matthew Chen
c416609108 Add SignalUI framework target. 2021-10-19 09:39:53 -03:00