Previously, when a download was aborted (e.g. due to a bad internet
connection), a partly downloaded file was remaining in cache, which
would then be delivered upon later requests.
This can lead e.g. to chats where images aren't loading.
To avoid this, first download files to a temporary file that is not the
final cache file, and only rename/move it on finish.
Note that if you already have broken downloads, you still need to clear
cache once to get rid of them after this commit, but it should not
occur anymore afterwards.
Change-Id: Ic4fb58853f04f8239c639814031e9ef00c091995
Scenario: the last read event in a chat is a membership change. After
that, at least two new membership changes were added, followed by normal
messages. Due to the membership changes being collapsed by default, in
this scenario the read marker would not show, since in the loop, we
would overwrite the appendReadMarker with the value for the last eventId
of the merged item, instead of showing it if any of the items matched.
Change-Id: I791627df6776ebf791310eb082b648701936d565
Based on whether a chat is
- DM
- Room
- Public room
allow to select whether to color usernames
- Uniformly (as previously done in SC themes)
- Based on Matrix ID (as previously seen in Element themes)
- Based on the user's power level in that room (new!)
The setting concerning rooms that are neither DM nor public is also used
for deciding whether to use mxid-based avatar coloring or uniform
coloring.
Change-Id: Ic68a24f4818a193f776a3b14232f887cd229929a
Scenario: Scroll to a message in dual side bubble layout that:
- Is an image, i.e. has a time footer overlay
- Was sent by the user
- Was sent in a group chat, i.e. other messages show sender display
names
This scenario could lead to the non-bubble name view not being cleared
nor hidden correctly.
Change-Id: I033d3070612d219dea9f2181c5029e17460c3ee6
Thread: main, Exception: java.lang.IllegalArgumentException: Configurations cannot be different if used to open the same file. The most likely cause is that equals() and hashCode() are not overridden in the migration class: org.matrix.android.sdk.internal.database.RealmSessionStoreMigration
A bit weird, I did not figure out was was the original problem.
Editiing the line, for instance adding any char fixes the issue, so I decided to put all on one line.
Sometimes, the chat list would jump without the user scrolling:
- During intial loading of a room content, i.e. when it is expected
that the list stays scrolled to bottom
- During loading of messages after jumping to a linked message
With this commit, the target event is repeatedly scrolled to upon list
changes until the users scroll themselves, to avoid above scenarios.
Change-Id: Iabbe76832e7e68686431b0baed9356c88eb50901
A bit weird, I did not figure out was was the original problem.
Editiing the line, for instance adding any char fixes the issue, so I decided to put all on one line.