diff --git a/generate_bubbles.sh b/generate_bubbles.sh
new file mode 100755
index 0000000000..eee32febde
--- /dev/null
+++ b/generate_bubbles.sh
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+set -e
+
+my_dir="$(dirname "$(realpath "$0")")"
+pushd "$my_dir" > /dev/null
+
+res_dir="vector/src/main/res/"
+god_bubble="vector/src/main/res/drawable/msg_godbubble.xml"
+
+# Multiline sed -i
+function mised() {
+ local expression="$1"
+ local file="$2"
+ local tmpfile="$file.tmp"
+ cp "$file" "$tmpfile"
+ cat "$tmpfile" \
+ | tr "\n" "\r" \
+ | sed "$expression" \
+ | tr "\r" "\n" \
+ > "$file"
+ rm "$tmpfile"
+}
+
+function create_msg_bubble() {
+ local is_outgoing="$1"
+ local is_rtl="$2"
+ local is_notice="$3"
+ local has_tail="$4"
+
+ # Out file name
+ local out_bubble="$res_dir/drawable"
+ if ((is_rtl)); then
+ local out_bubble="$out_bubble-ldrtl"
+ fi
+ local out_bubble="$out_bubble/msg_bubble"
+ if ((is_notice)); then
+ local out_bubble="${out_bubble}_notice"
+ else
+ local out_bubble="${out_bubble}_text"
+ fi
+ if ((is_outgoing)); then
+ local out_bubble="${out_bubble}_outgoing"
+ else
+ local out_bubble="${out_bubble}_incoming"
+ fi
+ if !((has_tail)); then
+ local out_bubble="${out_bubble}_notail"
+ fi
+ local out_bubble="${out_bubble}.xml"
+
+ # Copy
+ cp "$god_bubble" "$out_bubble"
+ echo "$out_bubble"
+
+ # Modify direction
+ if [ "$is_rtl" != "$is_outgoing" ]; then
+ sed -i 's|left|loft|g;s|Left|Loft|g;s|right|left|g;s|Right|Left|g;s|loft|right|g;s|Loft|Right|g' "$out_bubble"
+ mised 's|.*||' "$out_bubble"
+ else
+ mised 's|.*||' "$out_bubble"
+ fi
+ # Remove tail
+ if ((has_tail)); then
+ mised 's|.*||' "$out_bubble"
+ else
+ mised 's|.*\(\)|\1|' "$out_bubble"
+ mised 's|.*||' "$out_bubble"
+ mised 's|.*\(\)|\1|' "$out_bubble"
+ fi
+ # Modify fill
+ if !((is_notice)); then
+ sed -i 's|sc_notice_bg|sc_message_bg|g' "$out_bubble"
+ mised 's|.*\(\)|\1|' "$out_bubble"
+ mised 's|.*||' "$out_bubble"
+ fi
+ # Modify color
+ if ((is_outgoing)); then
+ sed -i 's|_incoming|_outgoing|g' "$out_bubble"
+ fi
+ # Remove unneeded size, which only exists to make it look nicer in drawable preview
+ sed -i 's|||g' "$out_bubble"
+}
+
+for is_outgoing in 0 1; do
+ for is_rtl in 0 1; do
+ for is_notice in 0 1; do
+ for has_tail in 0 1; do
+ create_msg_bubble "$is_outgoing" "$is_rtl" "$is_notice" "$has_tail"
+ done
+ done
+ done
+done
+
+
+popd > /dev/null
diff --git a/library/ui-styles/src/main/res/values/attrs_sc.xml b/library/ui-styles/src/main/res/values/attrs_sc.xml
index a33bea8210..b6f45e4c17 100644
--- a/library/ui-styles/src/main/res/values/attrs_sc.xml
+++ b/library/ui-styles/src/main/res/values/attrs_sc.xml
@@ -5,6 +5,8 @@
+
+
diff --git a/library/ui-styles/src/main/res/values/theme_dark.xml b/library/ui-styles/src/main/res/values/theme_dark.xml
index 4e8abb4560..625d2e098e 100644
--- a/library/ui-styles/src/main/res/values/theme_dark.xml
+++ b/library/ui-styles/src/main/res/values/theme_dark.xml
@@ -122,6 +122,8 @@
- #FF465561
- #ff343b47
+ - @android:color/transparent
+ - @android:color/transparent
- @color/vctr_unread_room_badge_dark
- @color/timestamp_overlay_fg
- @color/timestamp_overlay_bg
diff --git a/library/ui-styles/src/main/res/values/theme_light.xml b/library/ui-styles/src/main/res/values/theme_light.xml
index cf9da4de8f..4a8e53df16 100644
--- a/library/ui-styles/src/main/res/values/theme_light.xml
+++ b/library/ui-styles/src/main/res/values/theme_light.xml
@@ -122,6 +122,8 @@
- #FFEEEEEE
- #FFDDDDDD
+ - @android:color/transparent
+ - @android:color/transparent
- @color/vctr_unread_room_badge_light
- @color/timestamp_overlay_fg
- @color/timestamp_overlay_bg
diff --git a/library/ui-styles/src/main/res/values/theme_sc.xml b/library/ui-styles/src/main/res/values/theme_sc.xml
index 4e7fd1d3cc..7808401550 100644
--- a/library/ui-styles/src/main/res/values/theme_sc.xml
+++ b/library/ui-styles/src/main/res/values/theme_sc.xml
@@ -87,6 +87,8 @@
- @color/accent_sc
- @color/background_floating_sc
- @color/background_sc
+ - @android:color/transparent
+ - @android:color/transparent
- @color/background_floating_sc
- @color/accent_sc_pale
- @color/accent_sc_alpha25
diff --git a/library/ui-styles/src/main/res/values/theme_sc_light.xml b/library/ui-styles/src/main/res/values/theme_sc_light.xml
index 51d30f3c69..571acdf0e5 100644
--- a/library/ui-styles/src/main/res/values/theme_sc_light.xml
+++ b/library/ui-styles/src/main/res/values/theme_sc_light.xml
@@ -87,6 +87,8 @@
- @color/accent_sc
- @color/background_sc_light_secondary
- @color/accent_sc_noalpha12
+ - @android:color/transparent
+ - @android:color/transparent
- #737373
- @color/accent_sc_pale
- #ffe0e0e0
diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt
index 3e3448b718..17a9ddd45f 100644
--- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt
+++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/item/AbsMessageItem.kt
@@ -456,18 +456,36 @@ abstract class AbsMessageItem : AbsBaseMessageItem
val longPadding: Int
val shortPadding: Int
if (BubbleThemeUtils.drawsActualBubbles(bubbleStyle)) {
- if (attributes.informationData.showInformation) {
- bubbleView.setBackgroundResource(if (reverseBubble) R.drawable.msg_bubble_outgoing else R.drawable.msg_bubble_incoming)
- } else {
- bubbleView.setBackgroundResource(if (reverseBubble) R.drawable.msg_bubble2_outgoing else R.drawable.msg_bubble2_incoming)
+ val bubbleRes = if (attributes.isNotice) { // notice
+ if (attributes.informationData.showInformation) { // tail
+ if (reverseBubble) { // outgoing
+ R.drawable.msg_bubble_notice_outgoing
+ } else { // incoming
+ R.drawable.msg_bubble_notice_incoming
+ }
+ } else { // notail
+ if (reverseBubble) { // outgoing
+ R.drawable.msg_bubble_notice_outgoing_notail
+ } else { // incoming
+ R.drawable.msg_bubble_notice_incoming_notail
+ }
+ }
+ } else { // text
+ if (attributes.informationData.showInformation) { // tail
+ if (reverseBubble) { // outgoing
+ R.drawable.msg_bubble_text_outgoing
+ } else { // incoming
+ R.drawable.msg_bubble_text_incoming
+ }
+ } else { // notail
+ if (reverseBubble) { // outgoing
+ R.drawable.msg_bubble_text_outgoing_notail
+ } else { // incoming
+ R.drawable.msg_bubble_text_incoming_notail
+ }
+ }
}
- val tintColor = ColorStateList(
- arrayOf(intArrayOf(0)),
- intArrayOf(ThemeUtils.getColor(bubbleView.context,
- if (attributes.informationData.sentByMe) R.attr.sc_message_bg_outgoing else R.attr.sc_message_bg_incoming)
- )
- )
- bubbleView.backgroundTintList = tintColor
+ bubbleView.setBackgroundResource(bubbleRes)
longPadding = 20
shortPadding = 8
} else {
diff --git a/vector/src/main/res/drawable-hdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-hdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 4589a20d0f..0000000000
Binary files a/vector/src/main/res/drawable-hdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-hdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-hdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index c48085e86e..0000000000
Binary files a/vector/src/main/res/drawable-hdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-hdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-hdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 7fed0a806a..0000000000
Binary files a/vector/src/main/res/drawable-hdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-hdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-hdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 8e7ccc0cc8..0000000000
Binary files a/vector/src/main/res/drawable-hdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index c48085e86e..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 4589a20d0f..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 8e7ccc0cc8..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 7fed0a806a..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-hdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 8f41899dd7..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 2facc9c962..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 5ca9b14d64..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 4e7e464037..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-mdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 2d68b0a442..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 4b1d0e1813..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 52cb936a8e..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 0661fdba78..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xhdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 5377682b4e..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index d1464832b1..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 5d8fc747ee..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 009c721919..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxhdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 4625577958..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 6b2cc24dc5..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 8378db5767..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index f0d0d9ee5c..0000000000
Binary files a/vector/src/main/res/drawable-ldrtl-xxxhdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_incoming.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_incoming.xml
new file mode 100644
index 0000000000..4d8c3978e7
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_incoming.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_incoming_notail.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_incoming_notail.xml
new file mode 100644
index 0000000000..53711e56ae
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_incoming_notail.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_outgoing.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_outgoing.xml
new file mode 100644
index 0000000000..a907b1afd2
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_outgoing.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_outgoing_notail.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_outgoing_notail.xml
new file mode 100644
index 0000000000..856154ff7b
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_notice_outgoing_notail.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_text_incoming.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_incoming.xml
new file mode 100644
index 0000000000..24c473c806
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_incoming.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_text_incoming_notail.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_incoming_notail.xml
new file mode 100644
index 0000000000..a5096f0e25
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_incoming_notail.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_text_outgoing.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_outgoing.xml
new file mode 100644
index 0000000000..18becd117a
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_outgoing.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-ldrtl/msg_bubble_text_outgoing_notail.xml b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_outgoing_notail.xml
new file mode 100644
index 0000000000..d92728b2f0
--- /dev/null
+++ b/vector/src/main/res/drawable-ldrtl/msg_bubble_text_outgoing_notail.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable-mdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-mdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 2facc9c962..0000000000
Binary files a/vector/src/main/res/drawable-mdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-mdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-mdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 8f41899dd7..0000000000
Binary files a/vector/src/main/res/drawable-mdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-mdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-mdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 4e7e464037..0000000000
Binary files a/vector/src/main/res/drawable-mdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-mdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-mdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 5ca9b14d64..0000000000
Binary files a/vector/src/main/res/drawable-mdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xhdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-xhdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 4b1d0e1813..0000000000
Binary files a/vector/src/main/res/drawable-xhdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xhdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-xhdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 2d68b0a442..0000000000
Binary files a/vector/src/main/res/drawable-xhdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xhdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-xhdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 0661fdba78..0000000000
Binary files a/vector/src/main/res/drawable-xhdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xhdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-xhdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 52cb936a8e..0000000000
Binary files a/vector/src/main/res/drawable-xhdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxhdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-xxhdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index d1464832b1..0000000000
Binary files a/vector/src/main/res/drawable-xxhdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxhdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-xxhdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 5377682b4e..0000000000
Binary files a/vector/src/main/res/drawable-xxhdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxhdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-xxhdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index ab693b3e7c..0000000000
Binary files a/vector/src/main/res/drawable-xxhdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxhdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-xxhdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index 5b2a2fffc0..0000000000
Binary files a/vector/src/main/res/drawable-xxhdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxxhdpi/msg_bubble2_incoming.9.png b/vector/src/main/res/drawable-xxxhdpi/msg_bubble2_incoming.9.png
deleted file mode 100644
index 6b2cc24dc5..0000000000
Binary files a/vector/src/main/res/drawable-xxxhdpi/msg_bubble2_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxxhdpi/msg_bubble2_outgoing.9.png b/vector/src/main/res/drawable-xxxhdpi/msg_bubble2_outgoing.9.png
deleted file mode 100644
index 4625577958..0000000000
Binary files a/vector/src/main/res/drawable-xxxhdpi/msg_bubble2_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxxhdpi/msg_bubble_incoming.9.png b/vector/src/main/res/drawable-xxxhdpi/msg_bubble_incoming.9.png
deleted file mode 100644
index 34130fc6d1..0000000000
Binary files a/vector/src/main/res/drawable-xxxhdpi/msg_bubble_incoming.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable-xxxhdpi/msg_bubble_outgoing.9.png b/vector/src/main/res/drawable-xxxhdpi/msg_bubble_outgoing.9.png
deleted file mode 100644
index cfd5734f10..0000000000
Binary files a/vector/src/main/res/drawable-xxxhdpi/msg_bubble_outgoing.9.png and /dev/null differ
diff --git a/vector/src/main/res/drawable/msg_bubble_notice_incoming.xml b/vector/src/main/res/drawable/msg_bubble_notice_incoming.xml
new file mode 100644
index 0000000000..9d5e739537
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_notice_incoming.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_notice_incoming_notail.xml b/vector/src/main/res/drawable/msg_bubble_notice_incoming_notail.xml
new file mode 100644
index 0000000000..04a58c7f89
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_notice_incoming_notail.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_notice_outgoing.xml b/vector/src/main/res/drawable/msg_bubble_notice_outgoing.xml
new file mode 100644
index 0000000000..ade72e6fe3
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_notice_outgoing.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_notice_outgoing_notail.xml b/vector/src/main/res/drawable/msg_bubble_notice_outgoing_notail.xml
new file mode 100644
index 0000000000..b19ed434cd
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_notice_outgoing_notail.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_text_incoming.xml b/vector/src/main/res/drawable/msg_bubble_text_incoming.xml
new file mode 100644
index 0000000000..0540f1e864
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_text_incoming.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_text_incoming_notail.xml b/vector/src/main/res/drawable/msg_bubble_text_incoming_notail.xml
new file mode 100644
index 0000000000..c375a13423
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_text_incoming_notail.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_text_outgoing.xml b/vector/src/main/res/drawable/msg_bubble_text_outgoing.xml
new file mode 100644
index 0000000000..0ebcfa6d2d
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_text_outgoing.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_bubble_text_outgoing_notail.xml b/vector/src/main/res/drawable/msg_bubble_text_outgoing_notail.xml
new file mode 100644
index 0000000000..04c5fe4544
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_bubble_text_outgoing_notail.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/drawable/msg_godbubble.xml b/vector/src/main/res/drawable/msg_godbubble.xml
new file mode 100644
index 0000000000..cdfb115d17
--- /dev/null
+++ b/vector/src/main/res/drawable/msg_godbubble.xml
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
diff --git a/vector/src/main/res/values/dimens_sc.xml b/vector/src/main/res/values/dimens_sc.xml
index f4e9df2f7e..d4194cf700 100644
--- a/vector/src/main/res/values/dimens_sc.xml
+++ b/vector/src/main/res/values/dimens_sc.xml
@@ -9,4 +9,9 @@
56dp
+ 3dp
+ 3dp
+ 12dp
+ 3dp
+