Compare commits

...

105 Commits

Author SHA1 Message Date
Moxie Marlinspike
e4e8511b4c Bump version to 3.5.2
// FREEBIE
2015-11-24 12:08:13 -08:00
Moxie Marlinspike
13328ca0d0 Fix strange conversation draw behavior in GB
// FREEBIE
2015-11-24 11:47:50 -08:00
Moxie Marlinspike
6a188248a7 Bump version to 3.5.1
// FREEBIE
2015-11-23 12:03:14 -08:00
Moxie Marlinspike
5e493c90f8 Fix broken strings
// FREEBIE
2015-11-23 12:03:00 -08:00
Moxie Marlinspike
8e735cd66f Update language translations
// FREEBIE
2015-11-23 11:49:57 -08:00
Moxie Marlinspike
885fc88aad Disable voice messages until iOS gets their act together
// FREEBIE
2015-11-23 11:47:54 -08:00
Jake McGinty
69ee4cbc71 select *all* threads
fixes #4565
// FREEBIE
2015-11-23 11:43:54 -08:00
Moxie Marlinspike
2790128e9c Disable mic/camera on inactive group thread
Fixes #4653
Fixes #3334
// FREEBIE
2015-11-23 11:42:02 -08:00
Moxie Marlinspike
a4f7b78fd0 Make InputPanel fully responsible for emoji toggle
Fixes #4638
// FREEBIE
2015-11-23 11:42:02 -08:00
Moxie Marlinspike
fc5777e904 Manually encode voice messages to AAC with ADTS headers
Should resolve issues with platforms that don't support AMR (!).

Fixes #4640
Fixes #4652
Fixes #4647
// FREEBIE
2015-11-23 11:42:02 -08:00
Jake McGinty
a0beb7f0e0 scroll *all* the way
fixes #4664
closes #4695
// FREEBIE
2015-11-23 11:38:33 -08:00
Jake McGinty
d58f4d1232 don't allow fast scrolling until data is available
fixes #4666
closes #4693
// FREEBIE
2015-11-23 11:36:13 -08:00
Jake McGinty
473e470883 fix header/footer item ID issue
fixes #4667
Closes #4685
// FREEBIE
2015-11-22 17:30:36 -08:00
agrajaghh
4dce79334d fix crash in RecipientPreferenceActivity
fixes #4674
closes #4679

// FREEBIE
2015-11-22 22:14:02 +01:00
Moxie Marlinspike
e914496216 Remove identity menu option from conversation list
// FREEBIE
2015-11-22 09:32:02 -08:00
Moxie Marlinspike
9b3457f0b2 Don't choke so hard on random QR codes
Fixes #4642
// FREEBIE
2015-11-22 09:28:36 -08:00
Moxie Marlinspike
d21fe517e4 Bump version to 3.5.0
// FREEBIE
2015-11-20 11:26:36 -08:00
Moxie Marlinspike
8290970d50 Updated translations
// FREEBIE
2015-11-20 10:53:38 -08:00
Jake McGinty
2e8841c1d6 make RecyclerView unique IDs per thread
Closes #4619
// FREEBIE
2015-11-20 10:48:25 -08:00
Moxie Marlinspike
dc1b420fef Voice Note -> Voice Message
Fixes #4628
// FREEBIE
2015-11-20 10:25:08 -08:00
Moxie Marlinspike
e41f34729e Fix for voice message race conditions
Fixes #4625
// FREEBIE
2015-11-20 10:22:36 -08:00
Jake McGinty
4fe6256967 run Camera.startPreview() off main thread
Closes #4620
// FREEBIE
2015-11-20 08:15:24 -08:00
Geonu Kang
d9467ef3c5 Extract "Devices" preference category title to string resource
Fixes #4621
// FREEBIE
2015-11-20 13:50:31 +09:00
Geonu Kang
d5bf1b6137 Fix "Repeat new passphrase" spelling
Fixes #4617
// FREEBIE
2015-11-20 11:06:41 +09:00
Moxie Marlinspike
bfe4ad6c34 Voice notes
Closes #4610
Closes #3563
// FREEBIE
2015-11-19 17:37:48 -08:00
Jake McGinty
4e8e8978f4 update camera preview strategy
// FREEBIE
2015-11-19 17:34:02 -08:00
Moxie Marlinspike
7817c7697e Fix for audio attachment server NPE
Fixes #4615
// FREEBIE
2015-11-19 15:59:24 -08:00
brumsel
06f2908d78 Don't show images without data under "all images"
This affects images
- that have yet to be downloaded (using media download controls)
- that are currently being downloaded
- that failed to download

closes #4507
2015-11-19 13:21:23 -08:00
Jake McGinty
61386e9ca9 more useful contact select headers
Closes #4608
// FREEBIE
2015-11-19 11:56:40 -08:00
Jake McGinty
4314a4b42b add stable IDs to conversations
fixes #2856
Closes #4607
// FREEBIE
2015-11-19 11:46:56 -08:00
Moxie Marlinspike
945636ac5c Don't show reminder view on quick reply
Fixes #4524
// FREEBIE
2015-11-19 11:43:17 -08:00
Moxie Marlinspike
ba4ebed59b Fix checksum
Fixes #4605
// FREEBIE
2015-11-19 11:35:38 -08:00
Moxie Marlinspike
7c0bf0c871 Device provisioning
Closes #4553
// FREEBIE
2015-11-19 11:30:39 -08:00
Jake McGinty
02c37e815c enable media forwarding
fixes #1362
closes #4589
// FREEBIE
2015-11-19 11:27:13 -08:00
agrajaghh
6a99c6c4ac Fix "Silent" summary for ringtone preference
fixes #3962
Closes #4441

//FREEBIE
2015-11-19 11:13:24 -08:00
agrajaghh
a65ade5366 add action buttons to the call notification
fixes #4160
Closes #4490
2015-11-19 11:12:15 -08:00
agrajaghh
332c722f1d fix Code style Guidelines link in contributing.md
fixes #4596
closes #4598

//FREEBIE
2015-11-19 11:08:41 -08:00
Jake McGinty
7aeb4c96ee fix crash on null Android contact name
fixes #4592
Closes #4594
// FREEBIE
2015-11-19 11:07:39 -08:00
Jake McGinty
cd085faecd move instrumentation test to unit tests
Closes #4593
// FREEBIE
2015-11-19 11:06:34 -08:00
Geonu Kang
1323b49c57 Use separate menu title strings for insecure/secure calls
Fixes #4579
Closes #4580
// FREEBIE
2015-11-19 11:02:29 -08:00
Max Muth
9915fa347f Update donation image in readme
fixes #4542

//FREEBIE
2015-11-19 11:00:50 -08:00
Jake McGinty
bcd08956bd clear drafts immediately upon sending or new intent
fixes #3843
closes #3850
Closes #4571

// FREEBIE
2015-11-19 10:59:10 -08:00
Jake McGinty
25da3525fa use material labels for passphrase text
closes #3374
Closes #4570
// FREEBIE
2015-11-19 10:57:49 -08:00
McLoo
245c0adeea add dark theme to PassphraseChangeActivity
also adding DynamicLanguage to fix ActionBar language changes
2015-11-19 10:57:46 -08:00
Jake McGinty
0d06e78d25 fix quick attachment open animation
Closes #4569
// FREEBIE
2015-11-19 10:57:02 -08:00
Jake McGinty
2ce2a0d5c3 add refresh in overflow to NewConversationActivity
fixes #4470
closes #4564
// FREEBIE
2015-11-19 10:47:42 -08:00
Ben Bodenmiller
040f8c81bf remove travis ci file since travis is not used
Closes #4543
// FREEBIE
2015-11-19 10:43:43 -08:00
heyimgay
ce1c6e2372 signalize attachment filename
Closes #4541
2015-11-19 10:42:49 -08:00
Christian Ascheberg
1d8aef1669 Plural group join message
Closes #4535
Fixes #4521
// FREEBIE
2015-11-19 10:40:57 -08:00
Geonu Kang
cca38ddf3f Improve Delete Thread, Reset Secure Session confirmation dialogs
Fixes #4512
Closes #4513
// FREEBIE
2015-11-19 10:35:45 -08:00
agrajaghh
ce617fb7cb hide irrelevant preferences in RecipientPreferenceActivity
fixes #4505
Closes #4509
//FREEBIE
2015-11-19 10:31:11 -08:00
Jake McGinty
43ebf829ca remove unmaintained espresso tests
we hardly knew ye
closes #4559
// FREEBIE
2015-11-19 10:30:26 -08:00
Jake McGinty
487f8cbb38 fix broken unit tests
fixes #4534
// FREEBIE
2015-11-19 10:30:26 -08:00
Jake McGinty
36426a74c1 correct all colorControl* AppCompat attributes
solves problem described in #4494
// FREEBIE
2015-11-19 10:30:26 -08:00
heyimgay
04f9187c14 activated state of switches match textsecure color
fixes #3881
2015-11-19 10:30:26 -08:00
Sam Lanning
8efe6e7286 Make long pressing the attach button open the transport popup
// FREEBIE
2015-11-19 10:30:26 -08:00
Moxie Marlinspike
745faa12a7 Fix for outgoing group update display
Fixes #4444
// FREEBIE
2015-11-19 10:30:26 -08:00
Dustin Lim
0cd4cc67af save fragment state when changing theme/langugage
closes #2782
// FREEBIE
2015-11-19 10:30:26 -08:00
agrajaghh
9201d50f05 let the quick camera remember front/back mode
fixes #4438
closes #4440

//FREEBIE
2015-11-19 10:30:26 -08:00
Jake McGinty
f82a7fee49 re-commit refactored CameraView
closes #4529
Confirmed fixed front-camera bug in Galaxy Nexus.

// FREEBIE
2015-11-19 10:30:26 -08:00
Sam Lanning
66578a2c76 Change notification privacy setting wording
"Neither" -> "No name or message"

fixes #3903
closes #3966

// FREEBIE
2015-11-19 10:30:26 -08:00
agrajaghh
c4339813e6 migrate to AppCompatDialog
closes #3222
2015-11-19 10:30:26 -08:00
Carlin
927aac2c4a Add button to toggle passphrase visibility
closes #3776
// FREEBIE
2015-11-19 10:30:26 -08:00
Heartsucker
5a29c61dac Correctly sets subtitle on conversation batch select mode during first selection
fixes #3565
closes #3628
2015-11-19 10:30:26 -08:00
Calvin Hu
149ac9f417 when camera preview is open, the preview toggle button will close the preview
closes #3574
2015-11-19 10:30:26 -08:00
McLoo
6c20a4c08b Change 'Title' to 'Group name' in group update message
closes #3424
//FREEBIE
2015-11-19 10:30:26 -08:00
Moxie Marlinspike
8fc690d8e0 Update to libtextsecure 1.8.3
Fixes #4549

// FREEBIE
2015-11-19 10:30:26 -08:00
Jake McGinty
dd0a952c83 avoid older android 9patch transparency bugs
// FREEBIE
2015-11-19 10:30:26 -08:00
Moxie Marlinspike
ff123943cb Fully differentiate Signal vs non-Signal contacts
// FREEBIE
2015-11-19 10:30:25 -08:00
Moxie Marlinspike
493bd9be6b Update link to transifex
// FREEBIE
2015-11-18 08:36:17 -08:00
Moxie Marlinspike
028a1ab2b0 Bump version to 3.4.2
// FREEBIE
2015-11-16 11:57:02 -08:00
Moxie Marlinspike
058bcf1f4a More shortcode fixes for Germany
// FREEBIE
2015-11-16 11:35:11 -08:00
Jake McGinty
ae379cd3dd fix external gif sharing
fixes #4539
Closes #4556
// FREEBIE
2015-11-16 11:28:03 -08:00
Jake McGinty
f3a4634d30 fix keyboard/focus regressions
I don't know how it was working the first time.

fixes #4527
Closes #4555
// FREEBIE
2015-11-16 11:27:05 -08:00
Moxie Marlinspike
de3106344a Bump version to 3.4.1
// FREEBIE
2015-11-14 15:43:39 -08:00
Moxie Marlinspike
fecc5e63e8 Update language translations
// FREEBIE
2015-11-14 15:22:30 -08:00
Moxie Marlinspike
69f5aacd25 Consider everything <= len(4) a short code, except short countries
// FREEBIE
2015-11-14 15:17:05 -08:00
Moxie Marlinspike
2a753c7795 Uhh, switch from valid to possible short codes?
Fixes #4478
// FREEBIE
2015-11-13 17:07:43 -08:00
Moxie Marlinspike
c17e24250d Bump version to 3.4.0
// FREEBIE
2015-11-13 11:56:21 -08:00
Moxie Marlinspike
cb60e08da2 Update language translations
// FREEBIE
2015-11-13 11:42:19 -08:00
Moxie Marlinspike
21f04605c6 Don't E164 shortcodes
Fixes #4478
// FREEBIE
2015-11-13 11:23:37 -08:00
Jake McGinty
0c75e652eb bring back the ripple when clicking on preview
Closes #4506
// FREEBIE
2015-11-12 15:20:17 -08:00
Jake McGinty
d3000f384f adhere to android plural standards
// FREEBIE

Closes #4503
2015-11-12 15:20:17 -08:00
Jake McGinty
76b0183e0f move db query off main thread, fix group self-add
fixes #4168
Closes #4502
// FREEBIE
2015-11-12 15:20:17 -08:00
Jake McGinty
e51e5cdfd4 fail faster in FileNotFoundException case
Fixes #3053
Closes #4499
// FREEBIE
2015-11-12 15:20:17 -08:00
Jake McGinty
5b1e5b18f9 reset contact selection after batch invite
fixes #4452
Closes #4498
// FREEBIE
2015-11-12 15:20:16 -08:00
Moxie Marlinspike
fb9ba8cb8d Tint audio controls to be visible in dark theme
Fixes #4353
Closes #4466
// FREEBIE
2015-11-12 15:20:16 -08:00
Moxie Marlinspike
b136fed6f7 Update contact DB on incoming messages
When we receive a Signal message from a previously unregistered
user, reflect that in the contact DB.

Fixes #3949
Closes #4492
// FREEBIE
2015-11-12 15:20:16 -08:00
Jake McGinty
fb8d6cb538 contact selection reeemix
1) RecyclerView-based, with better long scroller
   and more material-inspired look.
2) Add badge for Signal users to contact selection
   list.

// FREEBIE
2015-11-12 15:20:16 -08:00
Moxie Marlinspike
7bec5efe1a Add 'Signal Call' option to contact card
Fixes #4392
Closes #4465
// FREEBIE
2015-11-12 15:20:16 -08:00
agrajaghh
5c59c3f423 make invite strings plural
fixes #4388
Closes #4389

// FREEBIE
2015-11-12 15:20:16 -08:00
Sebastian Morr
181c7dfd85 Add the option to mute notifications for one year.
Fixes #4448.
Closes #4454
2015-11-12 15:20:16 -08:00
Jake McGinty
d05097a6fd Refactor group logic (no visual changes)
Closes #4480
// FREEBIE
2015-11-12 15:20:16 -08:00
Moxie Marlinspike
75483299dc Upgrade libtextsecure 1.8.2
// FREEBIE
2015-11-12 15:20:16 -08:00
brumsel
5333647794 Always play "sonar" on call initialization
If "sonar" was the last sound played on the last call, it wasn't
 being played on the next calling attempt.

Closes #4473
2015-11-12 15:20:16 -08:00
RiseT
e1f9519235 Replace 'my' with 'your'
See
https://www.google.com/design/spec/style/writing.html#writing-language

// FREEBIE
2015-11-12 15:20:16 -08:00
RiseT
7f0b0803bc Change 'SD card' to 'storage' & cosmetic corrections
Fixes #3920
2015-11-12 15:20:16 -08:00
Moxie Marlinspike
c867316e6a Bump version to 3.3.2
// FREEBIE
2015-11-11 08:33:28 -08:00
Jake McGinty
b0137c08cb go back to old CameraView
Fixes #4415
Closes #4484
// FREEBIE
2015-11-10 15:48:50 -08:00
Simeon J Morgan
534421eb57 Update build instructions with new URLs.
Expand Android Studio steps.

Closes #4462
2015-11-10 14:14:25 -08:00
Moxie Marlinspike
b97363e407 Reintroduce telephony requirement
Fixes #4457
// FREEBIE
2015-11-09 09:58:24 -08:00
Moxie Marlinspike
aaf3f70ce5 Bump version to 3.3.1
// FREEBIE
2015-11-06 16:59:50 -08:00
Jake McGinty
5fd5b1e1ed Fix "twitchy fingers" bug in CameraView
better diagnostic information, too.

Fixes #4422
Closes #4427
// FREEBIE
2015-11-06 15:00:29 -08:00
Moxie Marlinspike
56a3c99289 Resolve service deadlock issue
Fixes #4409
// FREEBIE
2015-11-06 11:57:22 -08:00
Moxie Marlinspike
b5b564cfe1 Make sure the number we add canonicalizes to the number we know.
Fixes #4406
// FREEBIE
2015-11-06 10:50:47 -08:00
301 changed files with 9449 additions and 5965 deletions

View File

@@ -1,7 +0,0 @@
language: android
android:
components:
- platform-tools
- build-tools-19.1.0
- android-19
- extra-android-m2repository

View File

@@ -3,7 +3,7 @@ host = https://www.transifex.com
lang_map = fr_CA:fr-rCA,pt_BR:pt-rBR,pt_PT:pt,zh_CN:zh-rCN,zh_HK:zh-rHK,zh_TW:zh-rTW,da_DK:da-rDK,de_DE:de,tr_TR:tr,fr_FR:fr,es_ES:es,hu_HU:hu,sv_SE:sv-rSE,bg_BG:bg,el_GR:el,kn_IN:kn-rIN,cs_CZ:cs,sr:sr,he:iw,id:in
[textsecure-official.master]
[signal-android.master]
file_filter = res/values-<lang>/strings.xml
source_file = res/values/strings.xml
source_lang = en

View File

@@ -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="163"
android:versionName="3.3.0">
android:versionCode="172"
android:versionName="3.5.2">
<uses-sdk tools:overrideLibrary="com.amulyakhare.textdrawable,com.astuetz.pagerslidingtabstrip,pl.tajchert.waitingdots,com.h6ah4i.android.multiselectlistpreferencecompat"/>
@@ -19,7 +19,6 @@
<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"/>
@@ -132,12 +131,6 @@
<activity android:name=".DeviceProvisioningActivity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="tsdevice"/>
</intent-filter>
</activity>
<activity android:name=".preferences.MmsPreferencesActivity"
@@ -234,6 +227,7 @@
<activity android:name=".NewConversationActivity"
android:theme="@style/TextSecure.LightNoActionBar"
android:windowSoftInputMode="stateAlwaysVisible"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".PushContactSelectionActivity"
@@ -266,7 +260,7 @@
<activity android:name=".RegistrationProgressActivity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".DeviceListActivity"
<activity android:name=".DeviceActivity"
android:label="@string/AndroidManifest_manage_linked_devices"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
@@ -297,7 +291,7 @@
android:finishOnTaskLaunch="true" />
<activity android:name=".PlayServicesProblemActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:theme="@style/TextSecure.DialogActivity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".SmsSendtoActivity">
@@ -318,6 +312,19 @@
</intent-filter>
</activity>
<activity android:name="org.thoughtcrime.redphone.RedPhoneShare"
android:theme="@style/NoAnimation.Theme.BlackScreen"
android:launchMode="singleTask"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/vnd.org.thoughtcrime.securesms.call" />
</intent-filter>
</activity>
<activity android:name=".RecipientPreferenceActivity"
android:theme="@style/TextSecure.LightNoActionBar"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>

View File

@@ -1,22 +1,22 @@
Building TextSecure
=====================
Building Signal
===============
Basics
------
TextSecure uses [Gradle](http://gradle.org) to build the project and to maintain
Signal uses [Gradle](http://gradle.org) to build the project and to maintain
dependencies.
Building TextSecure
-------------------
Building Signal
---------------
The following steps should help you (re)build TextSecure from the command line.
The following steps should help you (re)build Signal from the command line.
1. Checkout the source somewhere on your filesystem with
1. Checkout the Signal-Android project source with the command:
git clone https://github.com/WhisperSystems/TextSecure.git
git clone https://github.com/WhisperSystems/Signal-Android.git
2. Make sure you have the [Android SDK](https://developer.android.com/sdk/index.html) installed somewhere on your system.
2. Make sure you have the [Android SDK](https://developer.android.com/sdk/index.html) installed.
3. Ensure that the following packages are installed from the Android SDK manager:
* Android SDK Build Tools
* SDK Platform
@@ -38,8 +38,8 @@ Source assets tend to be large binary blobs, which are best stored outside of gi
Sample command for generating our audio placeholder image:
```bash
pngs_from_svg.py ic_audio.svg /path/to/TextSecure/res/ 150 --color #000 --opacity 0.54 --suffix _light
pngs_from_svg.py ic_audio.svg /path/to/TextSecure/res/ 150 --color #fff --opacity 1.00 --suffix _light
pngs_from_svg.py ic_audio.svg /path/to/Signal/res/ 150 --color #000 --opacity 0.54 --suffix _light
pngs_from_svg.py ic_audio.svg /path/to/Signal/res/ 150 --color #fff --opacity 1.00 --suffix _light
```
Setting up a development environment
@@ -48,13 +48,14 @@ Setting up a development environment
[Android Studio](https://developer.android.com/sdk/installing/studio.html) is the recommended development environment.
1. Install Android Studio.
2. Make sure the "Android Support Repository" is installed in the Android Studio SDK.
3. Make sure the latest "Android SDK build-tools" is installed in the Android Studio SDK.
4. Create a new Android Studio project. from the Quickstart pannel (use File > Close Project to see it), choose "Checkout from Version Control" then "git".
5. Paste the URL for the TextSecure project when prompted (https://github.com/WhisperSystems/TextSecure.git).
6. Android studio should detect the presence of a project file and ask you whether to open it. Click "yes".
7. Default config options should be good enough.
8. Project initialisation and build should proceed.
2. Open Android Studio. On a new installation, the Quickstart panel will appear. If you have open projects, close them using "File > Close Project" to see the Quickstart panel.
3. From the Quickstart panel, choose "Configure" then "SDK Manager".
4. In the SDK Tools tab of the SDK Manager, make sure that the "Android Support Repository" is installed, and that the latest "Android SDK build-tools" are installed. Click "OK" to return to the Quickstart panel.
5. From the Quickstart panel, choose "Checkout from Version Control" then "git".
6. Paste the URL for the Signal-Android project when prompted (https://github.com/WhisperSystems/Signal-Android.git).
7. Android studio should detect the presence of a project file and ask you whether to open it. Click "yes".
9. Default config options should be good enough.
9. Project initialisation and build should proceed.
Contributing code
-----------------
@@ -67,3 +68,4 @@ Mailing list
Development discussion happens on the whispersystems mailing list.
[To join](https://lists.riseup.net/www/info/whispersystems)
Send emails to whispersystems@lists.riseup.net

View File

@@ -24,7 +24,7 @@ If you're interested in a life of peace and tranquility, stick with the standard
## Contributing Translations
Interested in helping to translate Signal? Contribute here:
https://www.transifex.com/projects/p/textsecure-official/
https://www.transifex.com/projects/p/signal-android/
## Contributing Code
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).
@@ -45,7 +45,7 @@ whispersystems@lists.riseup.net
https://lists.riseup.net/www/info/whispersystems
## Contributing Funds
[![Donate](https://www.coinbase.com/assets/buttons/donation_large-5e1b50d6490970e32b80023f3070b1d77afc621b9e64ac996596a67a4671967b.png)](https://www.coinbase.com/checkouts/51dac699e660a4d773216b5ad94d6a0b)
[![Donate](https://cloud.githubusercontent.com/assets/3121306/11278543/d46e03d0-8eeb-11e5-9691-0da1bf643192.png)](https://www.coinbase.com/checkouts/51dac699e660a4d773216b5ad94d6a0b)
You can add funds to BitHub to directly help further development efforts.

View File

@@ -29,9 +29,6 @@ repositories {
maven { // textdrawable
url 'https://dl.bintray.com/amulyakhare/maven'
}
maven { // material-dialogs
url "https://jitpack.io"
}
jcenter()
mavenLocal()
}
@@ -48,16 +45,12 @@ dependencies {
compile 'com.makeramen:roundedimageview:2.1.0'
compile 'com.pnikosis:materialish-progress:1.5'
compile 'de.greenrobot:eventbus:2.4.0'
compile ('com.afollestad:material-dialogs:0.7.3.1') {
exclude module: 'appcompat-v7'
exclude module: 'recyclerview-v7'
exclude module: 'support-annotations'
}
compile 'pl.tajchert:waitingdots:0.1.0'
compile 'com.soundcloud.android:android-crop:0.9.10@aar'
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.android.support:recyclerview-v7:21.0.3'
compile 'com.android.support:appcompat-v7:22.2.1'
compile 'com.android.support:recyclerview-v7:22.2.1'
compile 'com.android.support:design:22.2.1'
compile 'com.android.support:cardview-v7:22.2.1'
compile 'com.melnykov:floatingactionbutton:1.3.0'
compile 'com.google.zxing:android-integration:3.1.0'
compile ('com.android.support:support-v4-preferencefragment:1.0.0@aar'){
@@ -77,8 +70,9 @@ dependencies {
compile 'org.whispersystems:jobmanager:1.0.2'
compile 'org.whispersystems:libpastelog:1.0.6'
compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
compile 'org.whispersystems:textsecure-android:1.8.1'
compile 'org.whispersystems:textsecure-android:1.8.3'
compile 'com.h6ah4i.android.compat:mulsellistprefcompat:1.0.0'
compile 'com.google.zxing:core:3.2.1'
testCompile 'junit:junit:4.12'
testCompile 'org.assertj:assertj-core:1.7.1'
@@ -112,11 +106,12 @@ dependencyVerification {
'com.makeramen:roundedimageview:1f5a1865796b308c6cdd114acc6e78408b110f0a62fc63553278fbeacd489cd1',
'com.pnikosis:materialish-progress:d71d80e00717a096784482aee21001a9d299fec3833e4ebd87739ed36cf77c54',
'de.greenrobot:eventbus:61d743a748156a372024d083de763b9e91ac2dcb3f6a1cbc74995c7ddab6e968',
'com.afollestad:material-dialogs:624dffff240533ca69414464f416c81c88c5c29689bb169093b9a333104f2471',
'pl.tajchert:waitingdots:2835d49e0787dbcb606c5a60021ced66578503b1e9fddcd7a5ef0cd5f095ba2c',
'com.soundcloud.android:android-crop:ffd4b973cf6e97f7d64118a0dc088df50e9066fd5634fe6911dd0c0c5d346177',
'com.android.support:appcompat-v7:9a2355537c2f01cf0b95523605c18606b8d824017e6e94a05c77b0cfc8f21c96',
'com.android.support:recyclerview-v7:e525ad3f33c84bb12b73d2dc975b55364a53f0f2d0697e043efba59ba73e22d2',
'com.android.support:appcompat-v7:4b5ccba8c4557ef04f99aa0a80f8aa7d50f05f926a709010a54afd5c878d3618',
'com.android.support:recyclerview-v7:b0f530a5b14334d56ce0de85527ffe93ac419bc928e2884287ce1dddfedfb505',
'com.android.support:design:58be3ca6a73789615f7ece0937d2f683b98b594bb90aa10565fa760fb10b07ee',
'com.android.support:cardview-v7:2c2354761a4e20ba451ae903ab808f15c9acc8343b1e74001869c2d0a672c1fc',
'com.melnykov:floatingactionbutton:15d58d4fac0f7a288d0e5301bbaf501a146f5b3f5921277811bf99bd3b397263',
'com.google.zxing:android-integration:89e56aadf1164bd71e57949163c53abf90af368b51669c0d4a47a163335f95c4',
'com.android.support:support-v4-preferencefragment:5470f5872514a6226fa1fc6f4e000991f38805691c534cf0bd2778911fc773ad',
@@ -127,14 +122,16 @@ dependencyVerification {
'org.whispersystems:jobmanager:506f679fc2fcf7bb6d10f00f41d6f6ea0abf75c70dc95b913398661ad538a181',
'org.whispersystems:libpastelog:550d33c565380d90f4c671e7b8ed5f3a6da55a9fda468373177106b2eb5220b2',
'com.amulyakhare:com.amulyakhare.textdrawable:54c92b5fba38cfd316a07e5a30528068f45ce8515a6890f1297df4c401af5dcb',
'org.whispersystems:textsecure-android:66ef91b93a08f0a290ef14c5e66af21113cd4b2c814c231855011ba4763f41cc',
'org.whispersystems:textsecure-android:aec5fc59952d9f5482491091091687816f46be1144342a0244f48fd55d6ab393',
'com.h6ah4i.android.compat:mulsellistprefcompat:47167c5cb796de1a854788e9ff318358e36c8fb88123baaa6e38fb78511dfabe',
'com.google.zxing:core:b4d82452e7a6bf6ec2698904b332431717ed8f9a850224f295aec89de80f2259',
'com.android.support:support-annotations:104f353b53d5dd8d64b2f77eece4b37f6b961de9732eb6b706395e91033ec70a',
'com.nineoldandroids:library:68025a14e3e7673d6ad2f95e4b46d78d7d068343aa99256b686fe59de1b3163a',
'javax.inject:javax.inject:91c77044a50c481636c32d916fd89c9118a72195390452c81065080f957de7ff',
'com.madgag.spongycastle:core:8d6240b974b0aca4d3da9c7dd44d42339d8a374358aca5fc98e50a995764511f',
'org.whispersystems:textsecure-java:728a549830266cc1472054f400391cd946b25ea03ad76ac4839dd1cab626a247',
'org.whispersystems:textsecure-java:b407ca6d1430204dfabf38e27db22d5177409072a9668238bd1877de7676ad3f',
'org.whispersystems:axolotl-android:40d3db5004a84749a73f68d2f0d01b2ae35a73c54df96d8c6c6723b96efb6fc0',
'com.googlecode.libphonenumber:libphonenumber:eba17eae81dd622ea89a00a3a8c025b2f25d342e0d9644c5b62e16f15687c3ab',
'com.googlecode.libphonenumber:libphonenumber:9625de9d2270e9a280ff4e6d9ef3106573fb4828773fd32c9b7614f4e17d2811',
'com.google.protobuf:protobuf-java:e0c1c64575c005601725e7c6a02cebf9e1285e888f756b2a1d73ffa8d725cc74',
'com.squareup.okhttp:okhttp:89b7f63e2e5b6c410266abc14f50fe52ea8d2d8a57260829e499b1cd9f0e61af',
'com.fasterxml.jackson.core:jackson-databind:835097bcdd11f5bc8a08378c70d4c8054dfa4b911691cc2752063c75534d198d',
@@ -144,8 +141,7 @@ dependencyVerification {
'com.fasterxml.jackson.core:jackson-annotations:0ca408c24202a7626ec8b861e99d85eca5e38b73311dd6dd12e3e9deecc3fe94',
'com.fasterxml.jackson.core:jackson-core:cbf4604784b4de226262845447a1ad3bb38a6728cebe86562e2c5afada8be2c0',
'org.whispersystems:curve25519-java:9ccef8f5aba05d9942336f023c589d6278b4f9135bdc34a7bade1f4e7ad65fa3',
'com.android.support:support-v4:1e2e4d35ac7fd30db5ce3bc177b92e4d5af86acef2ef93e9221599d733346f56',
'com.android.support:support-annotations:7bc07519aa613b186001160403bcfd68260fa82c61cc7e83adeedc9b862b94ae',
'com.android.support:support-v4:c62f0d025dafa86f423f48df9185b0d89496adbc5f6a9be5a7c394d84cf91423',
]
}

View File

@@ -28,4 +28,4 @@ Truths which we believe to be self-evident:
1. **There is no such thing as time.** Protocol ideas that require synchronized
clocks are doomed to failure.
Before you submit a pull request, please check if your code follows the [Code style Guidelines](https://github.com/WhisperSystems/RedPhone/wiki/Code-style-Guidelines).
Before you submit a pull request, please check if your code follows the [Code style Guidelines](https://github.com/WhisperSystems/Signal-Android/wiki/Code-Style-Guidelines).

View File

@@ -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);
}

View File

@@ -15,7 +15,7 @@ class CallAudioManager {
private:
volatile int running;
volatile int finished;
int finished;
SLObjectItf engineObject;
SLEngineItf engineEngine;
AudioCodec audioCodec;

View File

@@ -1,5 +1,5 @@
#include "WebRtcJitterBuffer.h"
#include <time.h>
//#include <time.h>
#define TAG "WebRtcJitterBuffer"
@@ -15,9 +15,7 @@ int WebRtcJitterBuffer::init() {
webrtc::NetEq::Config config;
config.sample_rate_hz = 8000;
pthread_mutex_lock(&lock);
neteq = webrtc::NetEq::Create(config);
pthread_mutex_unlock(&lock);
if (neteq == NULL) {
__android_log_print(ANDROID_LOG_WARN, TAG, "Failed to construct NetEq!");
@@ -29,7 +27,8 @@ int WebRtcJitterBuffer::init() {
return -1;
}
// pthread_create(&stats, NULL, &WebRtcJitterBuffer::collectStats, this);
// pthread_t thread;
// pthread_create(&thread, NULL, &WebRtcJitterBuffer::collectStats, this);
return 0;
}
@@ -67,21 +66,13 @@ int WebRtcJitterBuffer::getAudio(short *rawData, int maxRawData) {
}
void WebRtcJitterBuffer::stop() {
// pthread_mutex_lock(&lock);
running = 0;
// pthread_cond_signal(&condition);
// pthread_mutex_unlock(&lock);
// pthread_join(stats, NULL);
}
void WebRtcJitterBuffer::collectStats() {
while (running) {
webrtc::NetEqNetworkStatistics stats;
pthread_mutex_lock(&lock);
neteq->NetworkStatistics(&stats);
pthread_mutex_unlock(&lock);
__android_log_print(ANDROID_LOG_WARN, "WebRtcJitterBuffer",
"Jitter Stats:\n{\n" \
@@ -107,21 +98,22 @@ void WebRtcJitterBuffer::collectStats() {
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);
// 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);
}
}

View File

@@ -18,10 +18,6 @@ private:
webrtc::NetEq *neteq;
WebRtcCodec webRtcCodec;
pthread_t stats;
pthread_mutex_t lock;
pthread_cond_t condition;
public:
WebRtcJitterBuffer(AudioCodec &codec);
~WebRtcJitterBuffer();

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 425 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 525 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 774 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 767 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 875 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 560 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 472 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 444 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 430 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 625 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 557 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 350 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 900 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 387 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 356 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 346 B

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:topLeftRadius="44dp"
android:topRightRadius="44dp"
android:bottomLeftRadius="44dp"
android:bottomRightRadius="0dp"/>
<solid android:color="#FF0288D1" />
<size android:height="88dp" android:width="88dp" />
</shape>

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 557 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 727 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 601 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 557 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1013 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 612 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 458 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 706 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 652 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 581 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 397 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 739 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 767 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 863 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 650 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1019 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 919 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 846 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 739 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 996 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 502 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 964 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1013 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:topLeftRadius="44dp"
android:topRightRadius="44dp"
android:bottomLeftRadius="0dp"
android:bottomRightRadius="44dp"/>
<solid android:color="#FF0288D1" />
<size android:height="88dp" android:width="88dp" />
</shape>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true">
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:radius="2dp"/>
<solid android:color="#FF0288D1"/>
<size android:height="32dp" android:width="4dp"/>
</shape>
</item>
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:radius="2dp"/>
<solid android:color="#FF737373"/>
<size android:height="32dp" android:width="4dp"/>
</shape>
</item>
</selector>

Some files were not shown because too many files have changed in this diff Show More