29d040d
add the newly created color entries to the bubble Drawable
Click to expand commit body
Now editing the color from the theme affects the bubbles directly. Monochrome versions left to do still. Also added the Theme entries so the theme applies to the bubbles
67d1d88
forgot to commit the new bubble Shape Drawables
Maxime V
created
24a1746
link all message bubbles from all themes to the same XML drawable
Maxime V
created
a0418e0
use the new msg bubble XML instead of the 9patch PNGs
Maxime V
created
a29c7c7
modify scram mechanisms to use guava hashing
Daniel Gultsch
created
de3a352
Enable library desugaring to use Java8 features on older Android
Stephen Paul Weber
created
e31ae3e
Terrible gross hack for starting group text
Click to expand commit body
This is the first feature to hardcode cheogram.com let's hope we can remove it
someday.
XEP-0033 does not have good fallback behaviour, and group text doesn't map well
to MUC. We could still do a MUC mapping, or think of a better fallback
behaviour, or something else, but for now analysis paralysis means we stick to
the gross +1...,+1...,+1...@cheogram.com -- but that's not a protocol, it's not
something we can detect or design around or expect anyone else to ever do. So
just check for cheogram.com because that's the only place we ever expect to see
this dirty hack.
If starting a new private group and every selected member is @cheogram.com, then
ask if we should make a group text instead.
Downloads are stored at a filename that is the CID computed from a SHA256 hash
of their contents. Where necessary (such as to stream a large file down) they
are stored at the name based on the message UUID temporarily and then renamed.
Uploads, when they must be copied into our storage, are stored in the same way.
This results in de-duplicated storage, so sending the same file back and forth
many times even in different conversations results in only one copy being
stored.
Since Android does not play nice with symlinks, but we want to be able to look
up media by multiple possible hashes, the CIDs for SHA1, SHA256, and SHA512 are
all stored in a new database table whenever a file is downloaded or uploaded,
even if the file is never copied into our storage at all (so then the db table
contains a path to, say, the image in the camera folder).
When bits-of-binary cid transfer is attempted, first check if we have that
content locally already and just use it if we already have it instead of
requesting it again.
Stephen Paul Weber
created
0e638aa
Fix NPE when mPager gets cleared out before callback fires