Compare commits
98 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aaf3f70ce5 | ||
|
|
5fd5b1e1ed | ||
|
|
56a3c99289 | ||
|
|
b5b564cfe1 | ||
|
|
0b7b37bf00 | ||
|
|
5b08be8d01 | ||
|
|
8d4f3803df | ||
|
|
56117237b6 | ||
|
|
796940bda5 | ||
|
|
00a18f58a7 | ||
|
|
0ef56fb86d | ||
|
|
381c8820b1 | ||
|
|
a930ec5404 | ||
|
|
e808ae0ddc | ||
|
|
750e25388f | ||
|
|
5757962f95 | ||
|
|
c15d8ebd2e | ||
|
|
09c57f3f44 | ||
|
|
be0ca330f5 | ||
|
|
2941ac0e2c | ||
|
|
d6a061d50f | ||
|
|
59f2446a2b | ||
|
|
60ab71099f | ||
|
|
3f6cdd4133 | ||
|
|
72b9c37ec8 | ||
|
|
5704fad7cc | ||
|
|
849c346a21 | ||
|
|
328a3ff20e | ||
|
|
24bcea393f | ||
|
|
aade4c7af3 | ||
|
|
58406d6b37 | ||
|
|
004a87eba9 | ||
|
|
3fa11d9931 | ||
|
|
cad8ff766a | ||
|
|
5b6f49c993 | ||
|
|
3e798a9863 | ||
|
|
4371708fc4 | ||
|
|
d4887e11be | ||
|
|
d0e852f19f | ||
|
|
8d82033855 | ||
|
|
434ce4f9c9 | ||
|
|
8fd0ea39aa | ||
|
|
08be47c03e | ||
|
|
13bd3c773c | ||
|
|
751fa21f60 | ||
|
|
339d352d6e | ||
|
|
79cb6166d5 | ||
|
|
11a93fabe5 | ||
|
|
05eba8c2f0 | ||
|
|
ac66c41aee | ||
|
|
c70904d7f7 | ||
|
|
bd280ec895 | ||
|
|
02c781eb25 | ||
|
|
50794ba49d | ||
|
|
a086a2471c | ||
|
|
4271732b10 | ||
|
|
79313c8093 | ||
|
|
f80909738d | ||
|
|
15b131d8c2 | ||
|
|
40108d5276 | ||
|
|
ea4def7ea1 | ||
|
|
285bd3de0e | ||
|
|
35bcd30b24 | ||
|
|
3453aadcfd | ||
|
|
758b306527 | ||
|
|
7a0765c1c2 | ||
|
|
f6a5f117b8 | ||
|
|
46def68776 | ||
|
|
f714f5b572 | ||
|
|
a64dba8a7e | ||
|
|
cb3f9a6805 | ||
|
|
c342f0d7e4 | ||
|
|
34b80f91ee | ||
|
|
c258b4c7aa | ||
|
|
474922493f | ||
|
|
a5971da2ad | ||
|
|
8fe5f35b13 | ||
|
|
d70f0f1216 | ||
|
|
a1f46b3aae | ||
|
|
2ce16297ff | ||
|
|
9dc003a753 | ||
|
|
2f568c6400 | ||
|
|
23a2a5e5f3 | ||
|
|
91785e5590 | ||
|
|
5111fe2e95 | ||
|
|
15c6f18750 | ||
|
|
d2f44f6584 | ||
|
|
25e099a309 | ||
|
|
5fd9874ab6 | ||
|
|
4ffb1ea95e | ||
|
|
38d0b5caa8 | ||
|
|
93b82843a7 | ||
|
|
ae97495c47 | ||
|
|
4a3faf9086 | ||
|
|
09e52834a6 | ||
|
|
84fa2d1a34 | ||
|
|
7342d839bc | ||
|
|
450128ed63 |
@@ -2,8 +2,8 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="org.thoughtcrime.securesms"
|
||||
android:versionCode="159"
|
||||
android:versionName="3.0.2">
|
||||
android:versionCode="164"
|
||||
android:versionName="3.3.1">
|
||||
|
||||
<uses-sdk tools:overrideLibrary="com.amulyakhare.textdrawable,com.astuetz.pagerslidingtabstrip,pl.tajchert.waitingdots,com.h6ah4i.android.multiselectlistpreferencecompat"/>
|
||||
|
||||
@@ -18,6 +18,9 @@
|
||||
<uses-feature android:name="android.hardware.location.gps" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.microphone" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.wifi" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.portrait" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.telephony" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
|
||||
|
||||
<uses-permission android:name="org.thoughtcrime.securesms.ACCESS_SECRETS"/>
|
||||
<uses-permission android:name="android.permission.READ_PROFILE"/>
|
||||
@@ -112,6 +115,16 @@
|
||||
<activity android:name=".ImportExportActivity"
|
||||
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
|
||||
|
||||
<activity android:name=".InviteActivity"
|
||||
android:theme="@style/TextSecure.HighlightTheme"
|
||||
android:windowSoftInputMode="stateHidden"
|
||||
android:parentActivityName=".ConversationListActivity"
|
||||
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.thoughtcrime.securesms.ConversationListActivity" />
|
||||
</activity>
|
||||
|
||||
<activity android:name=".PromptMmsActivity"
|
||||
android:label="Configure MMS Settings"
|
||||
android:windowSoftInputMode="stateUnchanged"
|
||||
|
||||
20
README.md
@@ -1,8 +1,8 @@
|
||||
# TextSecure [](https://travis-ci.org/WhisperSystems/TextSecure)
|
||||
# Signal Android
|
||||
|
||||
TextSecure is a messaging app for simple private communication with friends.
|
||||
Signal is a messaging app for simple private communication with friends.
|
||||
|
||||
TextSecure uses your phone's data connection (WiFi/3G/4G) to communicate securely, optionally supports plain SMS/MMS to function as a unified messenger, and can also encrypt the stored messages on your phone.
|
||||
Signal uses your phone's data connection (WiFi/3G/4G) to communicate securely, optionally supports plain SMS/MMS to function as a unified messenger, and can also encrypt the stored messages on your phone.
|
||||
|
||||
Currently available on the Play store.
|
||||
|
||||
@@ -11,29 +11,29 @@ Currently available on the Play store.
|
||||
## Contributing Bug reports
|
||||
We use GitHub for bug tracking. Please search the existing issues for your bug and create a new one if the issue is not yet tracked!
|
||||
|
||||
https://github.com/WhisperSystems/TextSecure/issues
|
||||
https://github.com/WhisperSystems/Signal-Android/issues
|
||||
|
||||
## Joining the Beta
|
||||
Want to live life on the bleeding edge and help out with testing?
|
||||
|
||||
You can subscribe to TextSecure Beta releases here:
|
||||
You can subscribe to Signal Android Beta releases here:
|
||||
https://play.google.com/apps/testing/org.thoughtcrime.securesms
|
||||
|
||||
If you're interested in a life of peace and tranquility, stick with the standard releases.
|
||||
|
||||
## Contributing Translations
|
||||
Interested in helping to translate TextSecure? Contribute here:
|
||||
Interested in helping to translate Signal? Contribute here:
|
||||
|
||||
https://www.transifex.com/projects/p/textsecure-official/
|
||||
|
||||
## Contributing Code
|
||||
Instructions on how to setup your development environment and build TextSecure can be found in [BUILDING.md](https://github.com/WhisperSystems/TextSecure/blob/master/BUILDING.md).
|
||||
Instructions on how to setup your development environment and build Signal can be found in [BUILDING.md](https://github.com/WhisperSystems/Signal-Android/blob/master/BUILDING.md).
|
||||
|
||||
If you're new to the TextSecure codebase, we recommend going through our issues and picking out a simple bug to fix (check the "easy" label in our issues) in order to get yourself familiar.
|
||||
If you're new to the Signal codebase, we recommend going through our issues and picking out a simple bug to fix (check the "easy" label in our issues) in order to get yourself familiar.
|
||||
|
||||
For larger changes and feature ideas, we ask that you propose it on the mailing list for a high-level discussion before implementation.
|
||||
|
||||
This repository is set up with [BitHub](https://whispersystems.org/blog/bithub/), so you can make money for committing to TextSecure. The current BitHub price for an accepted pull request is:
|
||||
This repository is set up with [BitHub](https://whispersystems.org/blog/bithub/), so you can make money for committing to Signal. The current BitHub price for an accepted pull request is:
|
||||
|
||||
[](https://whispersystems.org/blog/bithub/)
|
||||
|
||||
@@ -59,7 +59,7 @@ http://support.whispersystems.org/
|
||||
## Documentation
|
||||
Looking for documentation? Check out the wiki!
|
||||
|
||||
https://github.com/WhisperSystems/TextSecure/wiki
|
||||
https://github.com/WhisperSystems/Signal-Android/wiki
|
||||
|
||||
# Legal things
|
||||
## Cryptography Notice
|
||||
|
||||
10
build.gradle
@@ -29,8 +29,8 @@ repositories {
|
||||
maven { // textdrawable
|
||||
url 'https://dl.bintray.com/amulyakhare/maven'
|
||||
}
|
||||
maven { // cwac-camera
|
||||
url 'https://repo.commonsware.com.s3.amazonaws.com'
|
||||
maven { // material-dialogs
|
||||
url "https://jitpack.io"
|
||||
}
|
||||
jcenter()
|
||||
mavenLocal()
|
||||
@@ -72,7 +72,6 @@ dependencies {
|
||||
exclude group: 'com.android.support', module: 'support-v4'
|
||||
}
|
||||
compile 'com.madgag.spongycastle:prov:1.51.0.0'
|
||||
compile 'com.commonsware.cwac:camera:0.6.12'
|
||||
provided 'com.squareup.dagger:dagger-compiler:1.2.2'
|
||||
|
||||
compile 'org.whispersystems:jobmanager:1.0.2'
|
||||
@@ -80,7 +79,6 @@ dependencies {
|
||||
compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
|
||||
compile 'org.whispersystems:textsecure-android:1.8.1'
|
||||
compile 'com.h6ah4i.android.compat:mulsellistprefcompat:1.0.0'
|
||||
compile 'me.relex:circleindicator:1.0.0@aar'
|
||||
|
||||
testCompile 'junit:junit:4.12'
|
||||
testCompile 'org.assertj:assertj-core:1.7.1'
|
||||
@@ -114,7 +112,7 @@ dependencyVerification {
|
||||
'com.makeramen:roundedimageview:1f5a1865796b308c6cdd114acc6e78408b110f0a62fc63553278fbeacd489cd1',
|
||||
'com.pnikosis:materialish-progress:d71d80e00717a096784482aee21001a9d299fec3833e4ebd87739ed36cf77c54',
|
||||
'de.greenrobot:eventbus:61d743a748156a372024d083de763b9e91ac2dcb3f6a1cbc74995c7ddab6e968',
|
||||
'com.afollestad:material-dialogs:c17205f0d300baa307599c428a5473a6659684c94a5f68ae3c2b84b5e4741172',
|
||||
'com.afollestad:material-dialogs:624dffff240533ca69414464f416c81c88c5c29689bb169093b9a333104f2471',
|
||||
'pl.tajchert:waitingdots:2835d49e0787dbcb606c5a60021ced66578503b1e9fddcd7a5ef0cd5f095ba2c',
|
||||
'com.soundcloud.android:android-crop:ffd4b973cf6e97f7d64118a0dc088df50e9066fd5634fe6911dd0c0c5d346177',
|
||||
'com.android.support:appcompat-v7:9a2355537c2f01cf0b95523605c18606b8d824017e6e94a05c77b0cfc8f21c96',
|
||||
@@ -126,13 +124,11 @@ dependencyVerification {
|
||||
'com.squareup.dagger:dagger:789aca24537022e49f91fc6444078d9de8f1dd99e1bfb090f18491b186967883',
|
||||
'com.doomonafireball.betterpickers:library:132ecd685c95a99e7377c4e27bfadbb2d7ed0bea995944060cd62d4369fdaf3d',
|
||||
'com.madgag.spongycastle:prov:b8c3fec3a59aac1aa04ccf4dad7179351e54ef7672f53f508151b614c131398a',
|
||||
'com.commonsware.cwac:camera:dcc93ddbb2f0393114fa1f31a13fe9e6edfcf5dbe96b22bc4b66c7b15e179054',
|
||||
'org.whispersystems:jobmanager:506f679fc2fcf7bb6d10f00f41d6f6ea0abf75c70dc95b913398661ad538a181',
|
||||
'org.whispersystems:libpastelog:550d33c565380d90f4c671e7b8ed5f3a6da55a9fda468373177106b2eb5220b2',
|
||||
'com.amulyakhare:com.amulyakhare.textdrawable:54c92b5fba38cfd316a07e5a30528068f45ce8515a6890f1297df4c401af5dcb',
|
||||
'org.whispersystems:textsecure-android:66ef91b93a08f0a290ef14c5e66af21113cd4b2c814c231855011ba4763f41cc',
|
||||
'com.h6ah4i.android.compat:mulsellistprefcompat:47167c5cb796de1a854788e9ff318358e36c8fb88123baaa6e38fb78511dfabe',
|
||||
'me.relex:circleindicator:996766d3dad51401331515e742948f2a10982d17c626edd976a246b9bf046aac',
|
||||
'com.nineoldandroids:library:68025a14e3e7673d6ad2f95e4b46d78d7d068343aa99256b686fe59de1b3163a',
|
||||
'javax.inject:javax.inject:91c77044a50c481636c32d916fd89c9118a72195390452c81065080f957de7ff',
|
||||
'com.madgag.spongycastle:core:8d6240b974b0aca4d3da9c7dd44d42339d8a374358aca5fc98e50a995764511f',
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
# Enable to be able to use ALOG* with #include "cutils/log.h"
|
||||
#log_c_includes += system/core/include
|
||||
#log_shared_libraries := liblog
|
||||
|
||||
# These makefiles are here instead of being Android.mk files in the
|
||||
# respective crypto, ssl, and apps directories so
|
||||
# that import_openssl.sh import won't remove them.
|
||||
include $(LOCAL_PATH)/build-config-64.mk
|
||||
include $(LOCAL_PATH)/build-config-32.mk
|
||||
include $(LOCAL_PATH)/Crypto.mk
|
||||
include $(LOCAL_PATH)/Ssl.mk
|
||||
include $(LOCAL_PATH)/Apps.mk
|
||||
@@ -50,9 +50,15 @@ CallAudioManager::~CallAudioManager() {
|
||||
__android_log_print(ANDROID_LOG_WARN, TAG, "Shutting down...");
|
||||
|
||||
microphoneReader.stop();
|
||||
|
||||
__android_log_print(ANDROID_LOG_WARN, TAG, "Stopping audio player...");
|
||||
audioPlayer.stop();
|
||||
|
||||
__android_log_print(ANDROID_LOG_WARN, TAG, "Stopping jitter buffer...");
|
||||
webRtcJitterBuffer.stop();
|
||||
|
||||
__android_log_print(ANDROID_LOG_WARN, TAG, "Freeing resources...");
|
||||
|
||||
if (sockAddr != NULL) {
|
||||
free(sockAddr);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "WebRtcJitterBuffer.h"
|
||||
//#include <time.h>
|
||||
|
||||
#define TAG "WebRtcJitterBuffer"
|
||||
|
||||
@@ -26,8 +27,8 @@ int WebRtcJitterBuffer::init() {
|
||||
return -1;
|
||||
}
|
||||
|
||||
pthread_t thread;
|
||||
pthread_create(&thread, NULL, &WebRtcJitterBuffer::collectStats, this);
|
||||
// pthread_t thread;
|
||||
// pthread_create(&thread, NULL, &WebRtcJitterBuffer::collectStats, this);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -96,6 +97,22 @@ void WebRtcJitterBuffer::collectStats() {
|
||||
stats.accelerate_rate,
|
||||
stats.clockdrift_ppm,
|
||||
stats.added_zero_samples);
|
||||
|
||||
// struct timespec timeToWait;
|
||||
// struct timeval now;
|
||||
// gettimeofday(&now, NULL);
|
||||
//
|
||||
// timeToWait.tv_sec = now.tv_sec;
|
||||
// timeToWait.tv_nsec = now.tv_usec * 1000;
|
||||
// timeToWait.tv_sec += 30;
|
||||
//
|
||||
// pthread_mutex_lock(&lock);
|
||||
//
|
||||
// if (running) {
|
||||
// pthread_cond_timedwait(&condition, &lock, &timeToWait);
|
||||
// }
|
||||
//
|
||||
// pthread_mutex_unlock(&lock);
|
||||
sleep(30);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,4 +2,7 @@
|
||||
-keepattributes SourceFile,LineNumberTable
|
||||
-keep class org.whispersystems.** { *; }
|
||||
-keep class org.thoughtcrime.securesms.** { *; }
|
||||
-keepclassmembers class ** {
|
||||
public void onEvent*(**);
|
||||
}
|
||||
|
||||
|
||||
7
res/anim/slide_from_bottom.xml
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<set xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||
<translate
|
||||
android:duration="350"
|
||||
android:fromYDelta="100%"
|
||||
android:toYDelta="0%" />
|
||||
</set>
|
||||
7
res/anim/slide_to_bottom.xml
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<set xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||
<translate
|
||||
android:duration="350"
|
||||
android:fromYDelta="0%"
|
||||
android:toYDelta="100%" />
|
||||
</set>
|
||||
BIN
res/drawable-hdpi/ic_camera_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1009 B |
BIN
res/drawable-hdpi/ic_close_white_24dp.png
Normal file
|
After Width: | Height: | Size: 294 B |
BIN
res/drawable-hdpi/ic_download_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
res/drawable-hdpi/ic_favorite_grey600_24dp.png
Normal file
|
After Width: | Height: | Size: 483 B |
BIN
res/drawable-hdpi/ic_headset_white_36dp.png
Normal file
|
After Width: | Height: | Size: 683 B |
BIN
res/drawable-hdpi/ic_image_white_36dp.png
Normal file
|
After Width: | Height: | Size: 474 B |
BIN
res/drawable-hdpi/ic_keyboard_arrow_down_white_36dp.png
Normal file
|
After Width: | Height: | Size: 344 B |
BIN
res/drawable-hdpi/ic_local_movies_white_36dp.png
Normal file
|
After Width: | Height: | Size: 259 B |
BIN
res/drawable-hdpi/ic_message_black_18dp.png
Normal file
|
After Width: | Height: | Size: 354 B |
BIN
res/drawable-hdpi/ic_pause_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 831 B |
BIN
res/drawable-hdpi/ic_person_white_36dp.png
Normal file
|
After Width: | Height: | Size: 460 B |
BIN
res/drawable-hdpi/ic_play_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 786 B |
BIN
res/drawable-hdpi/ic_share_black_18dp.png
Normal file
|
After Width: | Height: | Size: 398 B |
BIN
res/drawable-hdpi/love_heart.png
Normal file
|
After Width: | Height: | Size: 7.6 KiB |
BIN
res/drawable-mdpi/ic_camera_white_36dp.png
Normal file
|
After Width: | Height: | Size: 705 B |
BIN
res/drawable-mdpi/ic_close_white_24dp.png
Normal file
|
After Width: | Height: | Size: 242 B |
BIN
res/drawable-mdpi/ic_download_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
res/drawable-mdpi/ic_favorite_grey600_24dp.png
Normal file
|
After Width: | Height: | Size: 344 B |
BIN
res/drawable-mdpi/ic_headset_white_36dp.png
Normal file
|
After Width: | Height: | Size: 457 B |
BIN
res/drawable-mdpi/ic_image_white_36dp.png
Normal file
|
After Width: | Height: | Size: 351 B |
BIN
res/drawable-mdpi/ic_keyboard_arrow_down_white_36dp.png
Normal file
|
After Width: | Height: | Size: 284 B |
BIN
res/drawable-mdpi/ic_local_movies_white_36dp.png
Normal file
|
After Width: | Height: | Size: 215 B |
BIN
res/drawable-mdpi/ic_message_black_18dp.png
Normal file
|
After Width: | Height: | Size: 217 B |
BIN
res/drawable-mdpi/ic_pause_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 524 B |
BIN
res/drawable-mdpi/ic_person_white_36dp.png
Normal file
|
After Width: | Height: | Size: 360 B |
BIN
res/drawable-mdpi/ic_play_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 559 B |
BIN
res/drawable-mdpi/ic_share_black_18dp.png
Normal file
|
After Width: | Height: | Size: 267 B |
BIN
res/drawable-mdpi/love_heart.png
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
BIN
res/drawable-xhdpi/ic_camera_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
res/drawable-xhdpi/ic_close_white_24dp.png
Normal file
|
After Width: | Height: | Size: 337 B |
BIN
res/drawable-xhdpi/ic_download_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
res/drawable-xhdpi/ic_favorite_grey600_24dp.png
Normal file
|
After Width: | Height: | Size: 575 B |
BIN
res/drawable-xhdpi/ic_headset_white_36dp.png
Normal file
|
After Width: | Height: | Size: 797 B |
BIN
res/drawable-xhdpi/ic_image_white_36dp.png
Normal file
|
After Width: | Height: | Size: 614 B |
BIN
res/drawable-xhdpi/ic_keyboard_arrow_down_white_36dp.png
Normal file
|
After Width: | Height: | Size: 411 B |
BIN
res/drawable-xhdpi/ic_local_movies_white_36dp.png
Normal file
|
After Width: | Height: | Size: 231 B |
BIN
res/drawable-xhdpi/ic_message_black_18dp.png
Normal file
|
After Width: | Height: | Size: 320 B |
BIN
res/drawable-xhdpi/ic_pause_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 959 B |
BIN
res/drawable-xhdpi/ic_person_white_36dp.png
Normal file
|
After Width: | Height: | Size: 548 B |
BIN
res/drawable-xhdpi/ic_play_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
res/drawable-xhdpi/ic_share_black_18dp.png
Normal file
|
After Width: | Height: | Size: 531 B |
BIN
res/drawable-xhdpi/love_heart.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
res/drawable-xxhdpi/ic_camera_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
res/drawable-xxhdpi/ic_close_white_24dp.png
Normal file
|
After Width: | Height: | Size: 579 B |
BIN
res/drawable-xxhdpi/ic_download_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 5.4 KiB |
BIN
res/drawable-xxhdpi/ic_favorite_grey600_24dp.png
Normal file
|
After Width: | Height: | Size: 834 B |
BIN
res/drawable-xxhdpi/ic_headset_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
res/drawable-xxhdpi/ic_image_white_36dp.png
Normal file
|
After Width: | Height: | Size: 938 B |
BIN
res/drawable-xxhdpi/ic_keyboard_arrow_down_white_36dp.png
Normal file
|
After Width: | Height: | Size: 545 B |
BIN
res/drawable-xxhdpi/ic_local_movies_white_36dp.png
Normal file
|
After Width: | Height: | Size: 334 B |
BIN
res/drawable-xxhdpi/ic_message_black_18dp.png
Normal file
|
After Width: | Height: | Size: 506 B |
BIN
res/drawable-xxhdpi/ic_pause_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
res/drawable-xxhdpi/ic_person_white_36dp.png
Normal file
|
After Width: | Height: | Size: 974 B |
BIN
res/drawable-xxhdpi/ic_play_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
res/drawable-xxhdpi/ic_share_black_18dp.png
Normal file
|
After Width: | Height: | Size: 833 B |
BIN
res/drawable-xxhdpi/love_heart.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
res/drawable-xxxhdpi/ic_camera_white_36dp.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
res/drawable-xxxhdpi/ic_close_white_24dp.png
Normal file
|
After Width: | Height: | Size: 420 B |
BIN
res/drawable-xxxhdpi/ic_download_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
res/drawable-xxxhdpi/ic_favorite_grey600_24dp.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
res/drawable-xxxhdpi/ic_headset_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
res/drawable-xxxhdpi/ic_image_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
res/drawable-xxxhdpi/ic_keyboard_arrow_down_white_36dp.png
Normal file
|
After Width: | Height: | Size: 717 B |
BIN
res/drawable-xxxhdpi/ic_local_movies_white_36dp.png
Normal file
|
After Width: | Height: | Size: 374 B |
BIN
res/drawable-xxxhdpi/ic_message_black_18dp.png
Normal file
|
After Width: | Height: | Size: 249 B |
BIN
res/drawable-xxxhdpi/ic_pause_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
res/drawable-xxxhdpi/ic_person_white_36dp.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
res/drawable-xxxhdpi/ic_play_circle_fill_white_48dp.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
res/drawable-xxxhdpi/ic_share_black_18dp.png
Normal file
|
After Width: | Height: | Size: 670 B |
BIN
res/drawable-xxxhdpi/love_heart.png
Normal file
|
After Width: | Height: | Size: 9.6 KiB |
5
res/drawable/light_touch_highlight_background.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_pressed="true" android:drawable="@color/light_button_highlight" />
|
||||
<item android:drawable="@color/light_button" />
|
||||
</selector>
|
||||
183
res/layout/attachment_type_selector.xml
Normal file
@@ -0,0 +1,183 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attachment_type_selector_background"
|
||||
android:elevation="4dp"
|
||||
android:padding="16dp">
|
||||
|
||||
<LinearLayout android:orientation="horizontal"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:weightSum="4">
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
<org.thoughtcrime.securesms.components.CircleColorImageView
|
||||
android:id="@+id/gallery_button"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:src="@drawable/ic_image_white_36dp"
|
||||
android:scaleType="center"
|
||||
android:elevation="4dp"
|
||||
app:circleColor="@color/purple_400"/>
|
||||
|
||||
<TextView android:layout_marginTop="10dp"
|
||||
style="@style/AttachmentTypeLabel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/attachment_type_selector__image"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:layout_weight="1"
|
||||
android:orientation="vertical">
|
||||
|
||||
<org.thoughtcrime.securesms.components.CircleColorImageView
|
||||
android:id="@+id/audio_button"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:src="@drawable/ic_headset_white_36dp"
|
||||
android:scaleType="center"
|
||||
android:elevation="4dp"
|
||||
app:circleColor="@color/orange_400"/>
|
||||
|
||||
<TextView android:layout_marginTop="10dp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/AttachmentTypeLabel"
|
||||
android:text="@string/attachment_type_selector__audio"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:layout_weight="1"
|
||||
android:orientation="vertical">
|
||||
|
||||
<org.thoughtcrime.securesms.components.CircleColorImageView
|
||||
android:id="@+id/video_button"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:src="@drawable/ic_local_movies_white_36dp"
|
||||
android:scaleType="center"
|
||||
android:elevation="4dp"
|
||||
|
||||
app:circleColor="@color/red_400"/>
|
||||
|
||||
<TextView android:layout_marginTop="10dp"
|
||||
style="@style/AttachmentTypeLabel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/attachment_type_selector__video"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
android:layout_weight="1">
|
||||
|
||||
<org.thoughtcrime.securesms.components.CircleColorImageView
|
||||
android:id="@+id/contact_button"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:src="@drawable/ic_person_white_36dp"
|
||||
android:scaleType="center"
|
||||
android:elevation="4dp"
|
||||
app:circleColor="@color/blue_400"/>
|
||||
|
||||
<TextView android:layout_marginTop="10dp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/AttachmentTypeLabel"
|
||||
android:text="@string/attachment_type_selector__contact"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout android:orientation="horizontal"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:weightSum="4">
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
<org.thoughtcrime.securesms.components.CircleColorImageView
|
||||
android:id="@+id/camera_button"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:src="@drawable/ic_camera_white_36dp"
|
||||
android:scaleType="center"
|
||||
android:elevation="4dp"
|
||||
app:circleColor="@color/green_400"/>
|
||||
|
||||
<TextView android:layout_marginTop="10dp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/AttachmentTypeLabel"
|
||||
android:text="@string/attachment_type_selector__camera"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
<org.thoughtcrime.securesms.components.CircleColorImageView
|
||||
android:id="@+id/close_button"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:src="@drawable/ic_keyboard_arrow_down_white_36dp"
|
||||
android:scaleType="center"
|
||||
android:elevation="4dp"
|
||||
app:circleColor="@color/gray50"/>
|
||||
|
||||
<TextView android:layout_marginTop="10dp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/AttachmentTypeLabel"
|
||||
android:text=" "/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
90
res/layout/audio_view.xml
Normal file
@@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<LinearLayout android:id="@+id/audio_widget_container"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<LinearLayout android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<org.thoughtcrime.securesms.components.AnimatingToggle
|
||||
android:id="@+id/control_toggle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center">
|
||||
|
||||
<com.pnikosis.materialishprogress.ProgressWheel
|
||||
android:id="@+id/download_progress"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
android:visibility="gone"
|
||||
android:layout_gravity="center"
|
||||
app:matProg_barColor="@color/white"
|
||||
app:matProg_linearProgress="true"
|
||||
app:matProg_spinSpeed="0.333"
|
||||
tools:visibility="visible"/>
|
||||
|
||||
<ImageView android:id="@+id/play"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_play_circle_fill_white_48dp"
|
||||
android:contentDescription="Play"/>
|
||||
|
||||
<ImageView android:id="@+id/pause"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_pause_circle_fill_white_48dp"
|
||||
android:contentDescription="Pause"/>
|
||||
|
||||
<ImageView android:id="@+id/download"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_download_circle_fill_white_48dp"
|
||||
android:contentDescription="Download"/>
|
||||
|
||||
</org.thoughtcrime.securesms.components.AnimatingToggle>
|
||||
|
||||
<SeekBar android:id="@+id/seek"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<TextView android:id="@+id/timestamp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="76dip"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?conversation_item_sent_text_secondary_color"
|
||||
android:textSize="@dimen/conversation_item_date_text_size"
|
||||
android:fontFamily="sans-serif-light"
|
||||
android:autoLink="none"
|
||||
android:visibility="gone"
|
||||
tools:text="00:15"
|
||||
tools:visibility="visible"
|
||||
/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</merge>
|
||||
76
res/layout/contact_filter_toolbar.xml
Normal file
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ImageView android:id="@+id/action_icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_search_white_24dp" />
|
||||
|
||||
<LinearLayout android:id="@+id/toggle_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText android:id="@+id/search_view"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="0px"
|
||||
android:layout_weight="1"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:hint="@string/contact_selection_activity__enter_name_or_number"
|
||||
android:inputType="textPersonName"
|
||||
style="@style/TextSecure.TitleTextStyle"
|
||||
android:background="@android:color/transparent"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"/>
|
||||
|
||||
<org.thoughtcrime.securesms.components.AnimatingToggle
|
||||
android:id="@+id/button_toggle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center">
|
||||
|
||||
<ImageView android:id="@+id/search_dialpad"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_dialpad_white_24dp" />
|
||||
|
||||
<ImageView android:id="@+id/search_keyboard"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_keyboard_white_24dp" />
|
||||
|
||||
<ImageView android:id="@+id/search_clear"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_clear_white_24dp" />
|
||||
|
||||
</org.thoughtcrime.securesms.components.AnimatingToggle>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</merge>
|
||||
@@ -5,94 +5,17 @@
|
||||
android:orientation="vertical"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<android.support.v7.widget.Toolbar
|
||||
<org.thoughtcrime.securesms.components.ContactFilterToolbar
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_height="?attr/actionBarSize"
|
||||
android:layout_width="match_parent"
|
||||
android:minHeight="?attr/actionBarSize"
|
||||
android:background="?attr/colorPrimary"
|
||||
android:theme="@style/TextSecure.LightActionBar">
|
||||
android:theme="@style/TextSecure.LightActionBar" />
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ImageView android:id="@+id/action_icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_search_white_24dp" />
|
||||
|
||||
<LinearLayout android:id="@+id/toggle_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText android:id="@+id/search_view"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="0px"
|
||||
android:layout_weight="1"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:hint="@string/contact_selection_activity__enter_name_or_number"
|
||||
android:inputType="textPersonName"
|
||||
style="@style/TextSecure.TitleTextStyle"
|
||||
android:background="@android:color/transparent"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"/>
|
||||
|
||||
<org.thoughtcrime.securesms.components.AnimatingToggle
|
||||
android:id="@+id/button_toggle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center">
|
||||
|
||||
<ImageView android:id="@+id/search_dialpad"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_dialpad_white_24dp" />
|
||||
|
||||
<ImageView android:id="@+id/search_keyboard"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_keyboard_white_24dp" />
|
||||
|
||||
<ImageView android:id="@+id/search_clear"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
android:background="@drawable/circle_touch_highlight_background"
|
||||
android:src="@drawable/ic_clear_white_24dp" />
|
||||
|
||||
</org.thoughtcrime.securesms.components.AnimatingToggle>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</android.support.v7.widget.Toolbar>
|
||||
|
||||
<fragment
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:id="@+id/contact_selection_list_fragment"
|
||||
android:name="org.thoughtcrime.securesms.ContactSelectionListFragment">
|
||||
</fragment>
|
||||
<fragment android:id="@+id/contact_selection_list_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:name="org.thoughtcrime.securesms.ContactSelectionListFragment" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -1,20 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="32sp"
|
||||
android:paddingLeft="10dp"
|
||||
android:paddingRight="25dp">
|
||||
|
||||
<TextView android:id="@+id/text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:singleLine="true"
|
||||
android:ellipsize="marquee"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:textSize="15sp"
|
||||
android:textColor="?contact_selection_header_text"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</RelativeLayout>
|
||||
<TextView android:layout_width="match_parent"
|
||||
android:layout_height="32sp"
|
||||
android:singleLine="true"
|
||||
android:ellipsize="marquee"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:textSize="15sp"
|
||||
android:paddingLeft="10dp"
|
||||
android:paddingRight="25dp"
|
||||
android:textStyle="bold"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android" />
|
||||
|
||||
@@ -35,16 +35,14 @@
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:fontFamily="sans-serif-light" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/label"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingLeft="10dip"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?contact_selection_label_text"
|
||||
android:fontFamily="sans-serif-light"/>
|
||||
<TextView android:id="@+id/label"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingLeft="10dip"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:fontFamily="sans-serif-light"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -20,6 +20,11 @@
|
||||
android:paddingTop="?attr/actionBarSize"
|
||||
android:gravity="bottom">
|
||||
|
||||
<org.thoughtcrime.securesms.components.reminder.ReminderView
|
||||
android:id="@+id/reminder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<FrameLayout android:id="@+id/fragment_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
@@ -32,13 +37,32 @@
|
||||
android:background="?android:windowBackground"
|
||||
android:visibility="gone">
|
||||
|
||||
<org.thoughtcrime.securesms.components.ThumbnailView
|
||||
android:id="@+id/attachment_thumbnail"
|
||||
android:layout_width="230dp"
|
||||
android:layout_height="150dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:contentDescription="@string/conversation_activity__attachment_thumbnail"
|
||||
app:backgroundColorHint="?conversation_background" />
|
||||
<org.thoughtcrime.securesms.components.RemovableMediaView
|
||||
android:id="@+id/removable_media_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center">
|
||||
|
||||
<org.thoughtcrime.securesms.components.ThumbnailView
|
||||
android:id="@+id/attachment_thumbnail"
|
||||
android:layout_width="230dp"
|
||||
android:layout_height="150dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:visibility="gone"
|
||||
android:contentDescription="@string/conversation_activity__attachment_thumbnail"
|
||||
app:backgroundColorHint="?conversation_background" />
|
||||
|
||||
<org.thoughtcrime.securesms.components.AudioView
|
||||
android:id="@+id/attachment_audio"
|
||||
android:layout_width="210dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:background="@color/white"
|
||||
android:paddingTop="15dp"
|
||||
android:paddingBottom="15dp"
|
||||
app:tintColor="@color/grey_500"/>
|
||||
|
||||
</org.thoughtcrime.securesms.components.RemovableMediaView>
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<org.thoughtcrime.securesms.ConversationItem android:id="@+id/conversation_item"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingRight="10dip"
|
||||
android:orientation="vertical"
|
||||
android:background="@drawable/conversation_item_background"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
<org.thoughtcrime.securesms.ConversationItem
|
||||
android:id="@+id/conversation_item"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingRight="10dip"
|
||||
android:orientation="vertical"
|
||||
android:background="@drawable/conversation_item_background"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<TextView android:id="@+id/group_message_status"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -53,7 +55,15 @@
|
||||
android:contentDescription="@string/conversation_item__mms_image_description"
|
||||
android:visibility="gone"
|
||||
tools:src="@drawable/ic_video_light"
|
||||
tools:visibility="visible" />
|
||||
tools:visibility="gone" />
|
||||
|
||||
<org.thoughtcrime.securesms.components.AudioView
|
||||
android:id="@+id/audio_view"
|
||||
android:layout_width="210dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
app:tintColor="@color/white"
|
||||
tools:visibility="visible"/>
|
||||
|
||||
<org.thoughtcrime.securesms.components.emoji.EmojiTextView
|
||||
android:id="@+id/conversation_item_body"
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<org.thoughtcrime.securesms.ConversationItem
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/conversation_item"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:background="@drawable/conversation_item_background">
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/conversation_item"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:background="@drawable/conversation_item_background">
|
||||
|
||||
<RelativeLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -67,6 +68,13 @@
|
||||
tools:src="@drawable/ic_video_light"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<org.thoughtcrime.securesms.components.AudioView
|
||||
android:id="@+id/audio_view"
|
||||
android:layout_width="210dp"
|
||||
android:layout_height="wrap_content"
|
||||
app:tintColor="@color/grey_500"
|
||||
android:visibility="gone"/>
|
||||
|
||||
<org.thoughtcrime.securesms.components.emoji.EmojiTextView
|
||||
android:id="@+id/conversation_item_body"
|
||||
android:autoLink="all"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<org.thoughtcrime.securesms.components.ReminderView
|
||||
<org.thoughtcrime.securesms.components.reminder.ReminderView
|
||||
android:id="@+id/reminder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
@@ -22,66 +22,81 @@
|
||||
android:layout_marginRight="10dp"
|
||||
android:layout_marginLeft="10dp" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="4dip"
|
||||
android:layout_marginLeft="4dip"
|
||||
android:layout_marginRight="8dip"
|
||||
android:layout_marginBottom="4dip"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_toRightOf="@id/contact_photo_image"
|
||||
android:orientation="vertical">
|
||||
<RelativeLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="4dip"
|
||||
android:layout_marginRight="8dip"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_toRightOf="@id/contact_photo_image"
|
||||
android:weightSum="1"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:weightSum="1"
|
||||
android:gravity="bottom">
|
||||
|
||||
<org.thoughtcrime.securesms.components.FromTextView
|
||||
android:id="@+id/from"
|
||||
android:layout_weight="1"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||
android:textColor="?attr/conversation_list_item_contact_color"
|
||||
android:singleLine="true"
|
||||
tools:text="Jules Bonnot"
|
||||
android:ellipsize="end"
|
||||
android:drawablePadding="5dp"/>
|
||||
|
||||
<ImageView android:id="@+id/error"
|
||||
android:layout_marginLeft="3dip"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_width="20sp"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/ic_action_warning_red"
|
||||
android:contentDescription="@string/conversation_list_item_view__error_alert" />
|
||||
|
||||
<TextView android:id="@+id/date"
|
||||
android:layout_marginLeft="3dip"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?attr/conversation_list_item_date_color"
|
||||
android:fontFamily="sans-serif-light"
|
||||
tools:text="30 mins"
|
||||
android:singleLine="true"
|
||||
android:layout_gravity="top" />
|
||||
</LinearLayout>
|
||||
|
||||
<org.thoughtcrime.securesms.components.emoji.EmojiTextView
|
||||
android:id="@+id/subject"
|
||||
<org.thoughtcrime.securesms.components.FromTextView
|
||||
android:id="@+id/from"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?attr/conversation_list_item_subject_color"
|
||||
android:fontFamily="sans-serif-light"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_toLeftOf="@+id/thumbnail"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||
android:textColor="?attr/conversation_list_item_contact_color"
|
||||
android:singleLine="true"
|
||||
tools:text="Wheels arrive at 3pm flat."
|
||||
android:ellipsize="end" />
|
||||
tools:text="Jules Bonnot"
|
||||
android:ellipsize="end"
|
||||
android:drawablePadding="5dp"/>
|
||||
|
||||
</LinearLayout>
|
||||
<ImageView android:id="@+id/error"
|
||||
android:layout_height="20dp"
|
||||
android:layout_width="20dp"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_below="@id/from"
|
||||
android:paddingBottom="3dp"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible"
|
||||
android:src="@drawable/ic_action_warning_red"
|
||||
android:contentDescription="@string/conversation_list_item_view__error_alert" />
|
||||
|
||||
<org.thoughtcrime.securesms.components.emoji.EmojiTextView
|
||||
android:id="@+id/subject"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/from"
|
||||
android:layout_toRightOf="@id/error"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?attr/conversation_list_item_subject_color"
|
||||
android:fontFamily="sans-serif-light"
|
||||
android:singleLine="true"
|
||||
tools:text="Wheels arrive at 3pm flat. This is a somewhat longer message."
|
||||
android:ellipsize="end" />
|
||||
|
||||
<org.thoughtcrime.securesms.components.ThumbnailView
|
||||
android:id="@+id/thumbnail"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginRight="5dip"
|
||||
android:layout_marginLeft="5dip"
|
||||
android:layout_toLeftOf="@+id/date"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_marginTop="5dip"
|
||||
android:contentDescription="@string/conversation_activity__attachment_thumbnail"
|
||||
app:backgroundColorHint="?conversation_background"
|
||||
android:visibility="gone"
|
||||
tools:src="@drawable/ic_video_light"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<TextView android:id="@id/date"
|
||||
android:layout_marginLeft="3dip"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_above="@id/subject"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?attr/conversation_list_item_date_color"
|
||||
android:fontFamily="sans-serif-light"
|
||||
tools:text="30 mins"
|
||||
android:singleLine="true"/>
|
||||
|
||||
</RelativeLayout>
|
||||
</org.thoughtcrime.securesms.ConversationListItem>
|
||||
|
||||
@@ -19,15 +19,6 @@
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_centerHorizontal="true" />
|
||||
|
||||
<me.relex.circleindicator.CircleIndicator
|
||||
android:id="@+id/indicator"
|
||||
android:layout_gravity="bottom|center_horizontal"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_marginBottom="25dp"
|
||||
android:clickable="false"
|
||||
android:focusable="false"
|
||||
android:layout_height="40dp" />
|
||||
|
||||
<com.melnykov.fab.FloatingActionButton
|
||||
android:id="@+id/fab"
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
118
res/layout/invite_activity.xml
Normal file
@@ -0,0 +1,118 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<ScrollView android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:fillViewport="true"
|
||||
android:clickable="false">
|
||||
|
||||
<LinearLayout android:layout_gravity="center"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:padding="10dp"
|
||||
android:background="@color/signal_primary">
|
||||
|
||||
<ImageView android:id="@+id/heart"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:contentDescription="@string/InviteActivity_heart_content_description"
|
||||
android:src="@drawable/love_heart" />
|
||||
|
||||
<TextView android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="20sp"
|
||||
android:text="@string/InviteActivity_friends_dont_let_friends_text_unencrypted"
|
||||
android:gravity="center_horizontal"
|
||||
android:layout_marginBottom="30dp"
|
||||
android:layout_marginTop="18dp"
|
||||
android:fontFamily="sans-serif-light"
|
||||
android:paddingLeft="10dp"/>
|
||||
|
||||
<EditText android:id="@+id/invite_text"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minLines="2"
|
||||
tools:text="Let's switch to Signal: http://sgnl.link/asdfdfsa"
|
||||
android:background="@drawable/sent_bubble"
|
||||
android:padding="10dp"
|
||||
android:gravity="top"
|
||||
android:inputType="textShortMessage|textMultiLine"
|
||||
android:textColor="#ff333333"/>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<Button android:id="@+id/share_button"
|
||||
android:drawablePadding="10dp"
|
||||
android:drawableLeft="@drawable/ic_share_black_18dp"
|
||||
android:text="@string/InviteActivity_share"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
tools:ignore="ButtonStyle" />
|
||||
|
||||
<Button android:id="@+id/sms_button"
|
||||
android:drawableLeft="@drawable/ic_message_black_18dp"
|
||||
android:drawablePadding="10dp"
|
||||
android:text="@string/InviteActivity_send_sms"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
tools:ignore="ButtonStyle" />
|
||||
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
<LinearLayout android:id="@+id/sms_send_frame"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical"
|
||||
android:visibility="gone">
|
||||
|
||||
<org.thoughtcrime.securesms.components.ContactFilterToolbar
|
||||
android:id="@+id/contact_filter"
|
||||
android:layout_height="?attr/actionBarSize"
|
||||
android:layout_width="match_parent"
|
||||
android:minHeight="?attr/actionBarSize"
|
||||
android:background="?attr/colorPrimary"
|
||||
android:theme="@style/TextSecure.LightActionBar" />
|
||||
|
||||
<fragment android:id="@+id/contact_selection_list_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1"
|
||||
android:name="org.thoughtcrime.securesms.ContactSelectionListFragment"
|
||||
tools:layout="@layout/contact_selection_list_fragment"/>
|
||||
|
||||
<LinearLayout android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="right"
|
||||
android:padding="10dp"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<Button android:id="@+id/cancel_sms_button"
|
||||
style="@style/Widget.AppCompat.Button.Borderless"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/InviteActivity_cancel" />
|
||||
|
||||
<Button android:id="@+id/send_sms_button"
|
||||
style="@style/Widget.AppCompat.Button.Borderless"
|
||||
android:textColor="@color/signal_primary"
|
||||
android:enabled="false"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
tools:text="Send to 0 friends"/>
|
||||
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
9
res/layout/load_more_header.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Button xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:background="?conversation_item_bubble_background"
|
||||
android:textColor="?conversation_item_sent_text_primary_color"
|
||||
android:text="@string/load_more_header__see_full_conversation" />
|
||||
|
||||
@@ -3,4 +3,6 @@
|
||||
android:id="@+id/remove_image_button"
|
||||
android:layout_width="@dimen/media_bubble_remove_button_size"
|
||||
android:layout_height="@dimen/media_bubble_remove_button_size"
|
||||
android:src="@drawable/conversation_attachment_close_circle" />
|
||||
android:layout_gravity="top|right"
|
||||
android:src="@drawable/conversation_attachment_close_circle"
|
||||
android:visibility="gone"/>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<org.thoughtcrime.securesms.components.camera.QuickCamera
|
||||
<org.thoughtcrime.securesms.components.camera.CameraView
|
||||
android:id="@+id/quick_camera"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:background="#00000000"
|
||||
android:src="@drawable/quick_camera_front"
|
||||
android:src="@drawable/quick_camera_rear"
|
||||
android:padding="20dp"
|
||||
android:visibility="invisible"
|
||||
tools:visibility="visible" />
|
||||
|
||||