@ -1,48 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
sodipodi:docname="ic_contact.svg"
|
||||
inkscape:version="0.91pre3 r13670"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="48px"
|
||||
height="48px"
|
||||
viewBox="0 0 48 48"
|
||||
enable-background="new 0 0 48 48"
|
||||
xml:space="preserve"><metadata
|
||||
id="metadata8"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs6" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="798"
|
||||
inkscape:window-height="480"
|
||||
id="namedview4"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.9166667"
|
||||
inkscape:cx="24"
|
||||
inkscape:cy="24"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" /><path
|
||||
id="path4"
|
||||
d="M38,6H10c-2.21,0-4,1.79-4,4v28c0,2.21,1.79,4,4,4h28c2.21,0,4-1.79,4-4V10C42,7.79,40.21,6,38,6z M24,12 c3.31,0,6,2.69,6,6c0,3.32-2.69,6-6,6s-6-2.68-6-6C18,14.69,20.69,12,24,12z M36,36H12v-2c0-4,8-6.2,12-6.2S36,30,36,34V36z"
|
||||
style="opacity:1;fill:#000000" /></svg>
|
Before Width: | Height: | Size: 1.8 KiB |
@ -39,7 +39,12 @@ dependencies {
|
||||
compile 'org.apache.httpcomponents:httpclient-android:4.3.5'
|
||||
compile 'com.github.chrisbanes.photoview:library:1.2.3'
|
||||
compile 'com.makeramen:roundedimageview:1.5.0'
|
||||
compile 'com.afollestad:material-dialogs:0.6.1.5'
|
||||
compile ('com.afollestad:material-dialogs:0.6.4.7') {
|
||||
exclude module: 'appcompat-v7'
|
||||
exclude module: 'recyclerview-v7'
|
||||
exclude module: 'support-annotations'
|
||||
}
|
||||
|
||||
compile 'com.soundcloud.android:android-crop:0.9.10@aar'
|
||||
compile 'com.android.support:appcompat-v7:21.0.3'
|
||||
compile 'com.android.support:recyclerview-v7:21.0.3'
|
||||
@ -84,7 +89,7 @@ dependencyVerification {
|
||||
'org.apache.httpcomponents:httpclient-android:6f56466a9bd0d42934b90bfbfe9977a8b654c058bf44a12bdc2877c4e1f033f1',
|
||||
'com.github.chrisbanes.photoview:library:8b5344e206f125e7ba9d684008f36c4992d03853c57e5814125f88496126e3cc',
|
||||
'com.makeramen:roundedimageview:7dda2e78c406760e5c356ccce59b0df46b5b171cf18abb891998594405021548',
|
||||
'com.afollestad:material-dialogs:ccb013e6572c86cfcca433855cf0dbfbff9b5e7bb9d1f504b761a6bc6f467b60',
|
||||
'com.afollestad:material-dialogs:6ed57c1c479219f8ae929c310fc171dbfcbcee8326a6dcd50a91959d69eccdf0',
|
||||
'com.soundcloud.android:android-crop:ffd4b973cf6e97f7d64118a0dc088df50e9066fd5634fe6911dd0c0c5d346177',
|
||||
'com.android.support:appcompat-v7:5dbeb5316d0a6027d646ae552804c3baa5e3bd53f7f33db50904d51505c8a0e5',
|
||||
'com.android.support:recyclerview-v7:e525ad3f33c84bb12b73d2dc975b55364a53f0f2d0697e043efba59ba73e22d2',
|
||||
|
@ -1,6 +1,6 @@
|
||||
-keepattributes **
|
||||
|
||||
-keep class !org.spongycastle.crypto.tls.**,!com.doomonafireball.betterpickers.**,!org.w3c.**,!android.support.v7.internal.view.menu.**,!org.spongycastle.asn1.**,!org.spongycastle.crypto.ec.**,!org.spongycastle.x509.**,!org.spongycastle.crypto.agreement.**,!org.spongycastle.crypto.ec.**,!org.spongycastle.math.**,!org.spongycastle.pqc.**,!org.spongycastle.jcajce.provider.asymmetric.**,!org.apache.http.**,** {*;}
|
||||
-keep class !com.afollestad.materialdialogs.**,!com.nineoldandroids.**,!org.spongycastle.crypto.tls.**,!com.doomonafireball.betterpickers.**,!org.w3c.**,!android.support.v7.internal.view.menu.**,!org.spongycastle.asn1.**,!org.spongycastle.crypto.ec.**,!org.spongycastle.x509.**,!org.spongycastle.crypto.agreement.**,!org.spongycastle.crypto.ec.**,!org.spongycastle.math.**,!org.spongycastle.pqc.**,!org.spongycastle.jcajce.provider.asymmetric.**,!org.apache.http.**,** {*;}
|
||||
-dontpreverify
|
||||
-dontoptimize
|
||||
-dontwarn **
|
||||
|
BIN
res/drawable-hdpi/ic_account_box_dark.png
Normal file
After Width: | Height: | Size: 321 B |
Before Width: | Height: | Size: 304 B After Width: | Height: | Size: 304 B |
Before Width: | Height: | Size: 407 B After Width: | Height: | Size: 407 B |
Before Width: | Height: | Size: 394 B After Width: | Height: | Size: 394 B |
Before Width: | Height: | Size: 657 B |
Before Width: | Height: | Size: 666 B |
Before Width: | Height: | Size: 384 B |
Before Width: | Height: | Size: 375 B |
BIN
res/drawable-hdpi/ic_group_grey600_24dp.png
Normal file
After Width: | Height: | Size: 297 B |
BIN
res/drawable-hdpi/ic_image_dark.png
Normal file
After Width: | Height: | Size: 303 B |
Before Width: | Height: | Size: 287 B After Width: | Height: | Size: 287 B |
BIN
res/drawable-hdpi/ic_info_outline_dark.png
Normal file
After Width: | Height: | Size: 569 B |
BIN
res/drawable-hdpi/ic_info_outline_light.png
Normal file
After Width: | Height: | Size: 530 B |
Before Width: | Height: | Size: 1.7 KiB |
BIN
res/drawable-hdpi/ic_movie_creation_dark.png
Normal file
After Width: | Height: | Size: 211 B |
Before Width: | Height: | Size: 204 B After Width: | Height: | Size: 204 B |
BIN
res/drawable-hdpi/ic_volume_up_dark.png
Normal file
After Width: | Height: | Size: 391 B |
Before Width: | Height: | Size: 367 B After Width: | Height: | Size: 367 B |
BIN
res/drawable-hdpi/ic_warning_dark.png
Normal file
After Width: | Height: | Size: 350 B |
BIN
res/drawable-hdpi/ic_warning_light.png
Normal file
After Width: | Height: | Size: 347 B |
BIN
res/drawable-mdpi/ic_account_box_dark.png
Normal file
After Width: | Height: | Size: 253 B |
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 236 B |
Before Width: | Height: | Size: 321 B After Width: | Height: | Size: 321 B |
Before Width: | Height: | Size: 301 B After Width: | Height: | Size: 301 B |
Before Width: | Height: | Size: 464 B |
Before Width: | Height: | Size: 486 B |
Before Width: | Height: | Size: 257 B |
Before Width: | Height: | Size: 254 B |
BIN
res/drawable-mdpi/ic_group_grey600_24dp.png
Normal file
After Width: | Height: | Size: 211 B |
BIN
res/drawable-mdpi/ic_image_dark.png
Normal file
After Width: | Height: | Size: 225 B |
Before Width: | Height: | Size: 219 B After Width: | Height: | Size: 219 B |
BIN
res/drawable-mdpi/ic_info_outline_dark.png
Normal file
After Width: | Height: | Size: 384 B |
BIN
res/drawable-mdpi/ic_info_outline_light.png
Normal file
After Width: | Height: | Size: 362 B |
Before Width: | Height: | Size: 1.1 KiB |
BIN
res/drawable-mdpi/ic_movie_creation_dark.png
Normal file
After Width: | Height: | Size: 272 B |
Before Width: | Height: | Size: 255 B After Width: | Height: | Size: 255 B |
BIN
res/drawable-mdpi/ic_volume_up_dark.png
Normal file
After Width: | Height: | Size: 336 B |
Before Width: | Height: | Size: 295 B After Width: | Height: | Size: 295 B |
BIN
res/drawable-mdpi/ic_warning_dark.png
Normal file
After Width: | Height: | Size: 298 B |
BIN
res/drawable-mdpi/ic_warning_light.png
Normal file
After Width: | Height: | Size: 290 B |
BIN
res/drawable-xhdpi/ic_account_box_dark.png
Normal file
After Width: | Height: | Size: 410 B |
Before Width: | Height: | Size: 379 B After Width: | Height: | Size: 379 B |
Before Width: | Height: | Size: 588 B After Width: | Height: | Size: 588 B |
Before Width: | Height: | Size: 569 B After Width: | Height: | Size: 569 B |
Before Width: | Height: | Size: 918 B |
Before Width: | Height: | Size: 963 B |
Before Width: | Height: | Size: 446 B |
Before Width: | Height: | Size: 442 B |
BIN
res/drawable-xhdpi/ic_group_grey600_24dp.png
Normal file
After Width: | Height: | Size: 364 B |
BIN
res/drawable-xhdpi/ic_image_dark.png
Normal file
After Width: | Height: | Size: 374 B |
Before Width: | Height: | Size: 363 B After Width: | Height: | Size: 363 B |
BIN
res/drawable-xhdpi/ic_info_outline_dark.png
Normal file
After Width: | Height: | Size: 750 B |
BIN
res/drawable-xhdpi/ic_info_outline_light.png
Normal file
After Width: | Height: | Size: 691 B |
Before Width: | Height: | Size: 2.5 KiB |
BIN
res/drawable-xhdpi/ic_movie_creation_dark.png
Normal file
After Width: | Height: | Size: 452 B |
Before Width: | Height: | Size: 387 B After Width: | Height: | Size: 387 B |
BIN
res/drawable-xhdpi/ic_volume_up_dark.png
Normal file
After Width: | Height: | Size: 583 B |
Before Width: | Height: | Size: 538 B After Width: | Height: | Size: 538 B |
BIN
res/drawable-xhdpi/ic_warning_dark.png
Normal file
After Width: | Height: | Size: 532 B |
BIN
res/drawable-xhdpi/ic_warning_light.png
Normal file
After Width: | Height: | Size: 504 B |
BIN
res/drawable-xxhdpi/ic_account_box_dark.png
Normal file
After Width: | Height: | Size: 585 B |
Before Width: | Height: | Size: 540 B After Width: | Height: | Size: 540 B |
Before Width: | Height: | Size: 813 B After Width: | Height: | Size: 813 B |
Before Width: | Height: | Size: 837 B After Width: | Height: | Size: 837 B |
Before Width: | Height: | Size: 745 B |
Before Width: | Height: | Size: 950 B |
Before Width: | Height: | Size: 622 B |
Before Width: | Height: | Size: 619 B |
BIN
res/drawable-xxhdpi/ic_group_grey600_24dp.png
Normal file
After Width: | Height: | Size: 474 B |
BIN
res/drawable-xxhdpi/ic_image_dark.png
Normal file
After Width: | Height: | Size: 526 B |
Before Width: | Height: | Size: 494 B After Width: | Height: | Size: 494 B |
BIN
res/drawable-xxhdpi/ic_info_outline_dark.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
res/drawable-xxhdpi/ic_info_outline_light.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 753 B |
BIN
res/drawable-xxhdpi/ic_movie_creation_dark.png
Normal file
After Width: | Height: | Size: 360 B |
Before Width: | Height: | Size: 346 B After Width: | Height: | Size: 346 B |
BIN
res/drawable-xxhdpi/ic_volume_up_dark.png
Normal file
After Width: | Height: | Size: 797 B |
Before Width: | Height: | Size: 720 B After Width: | Height: | Size: 720 B |
BIN
res/drawable-xxhdpi/ic_warning_dark.png
Normal file
After Width: | Height: | Size: 573 B |
BIN
res/drawable-xxhdpi/ic_warning_light.png
Normal file
After Width: | Height: | Size: 563 B |
@ -18,7 +18,6 @@
|
||||
<TextView android:id="@+id/text1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="fill_parent"
|
||||
android:textColor="@color/black"
|
||||
android:gravity="center_vertical"
|
||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
||||
android:layout_gravity="center_horizontal|center_vertical" />
|
||||
|
@ -14,8 +14,8 @@
|
||||
android:padding="5dp"
|
||||
tools:visibility="visible"
|
||||
android:text="@string/message_details_header__issues_need_your_attention"
|
||||
android:drawableLeft="@drawable/ic_dialog_info_light"
|
||||
android:drawableStart="@drawable/ic_dialog_info_light"
|
||||
android:drawableLeft="@drawable/ic_info_outline_light"
|
||||
android:drawableStart="@drawable/ic_info_outline_light"
|
||||
android:gravity="center_vertical" />
|
||||
|
||||
<TableLayout android:id="@+id/metadata_container"
|
||||
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<item type="drawable" name="ic_dialog_info_light">@drawable/ic_dialog_info_holo_light</item>
|
||||
<item type="drawable" name="ic_dialog_info_dark">@drawable/ic_dialog_info_holo_dark</item>
|
||||
<item type="drawable" name="ic_dialog_alert_light">@drawable/ic_dialog_alert_holo_light</item>
|
||||
<item type="drawable" name="ic_dialog_alert_dark">@drawable/ic_dialog_alert_holo_dark</item>
|
||||
</resources>
|
@ -33,6 +33,11 @@
|
||||
<attr name="conversation_transport_popup_background" format="reference"/>
|
||||
<attr name="conversation_emoji_toggle" format="reference"/>
|
||||
<attr name="conversation_keyboard_toggle" format="reference"/>
|
||||
<attr name="conversation_attach_file" format="reference"/>
|
||||
<attr name="conversation_attach_image" format="reference"/>
|
||||
<attr name="conversation_attach_video" format="reference"/>
|
||||
<attr name="conversation_attach_sound" format="reference"/>
|
||||
<attr name="conversation_attach_contact_info" format="reference"/>
|
||||
|
||||
<attr name="conversation_item_background" format="reference"/>
|
||||
<attr name="conversation_item_received_background" format="reference" />
|
||||
@ -107,4 +112,5 @@
|
||||
<attr name="custom_pref_toggle" format="string"/>
|
||||
</declare-styleable>
|
||||
|
||||
<attr name="group_members_dialog_icon" format="reference"/>
|
||||
</resources>
|
||||
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<item type="drawable" name="ic_dialog_info_light">@android:drawable/ic_dialog_info</item>
|
||||
<item type="drawable" name="ic_dialog_alert_light">@android:drawable/ic_dialog_alert</item>
|
||||
<item type="drawable" name="ic_dialog_info_dark">@android:drawable/ic_dialog_info</item>
|
||||
<item type="drawable" name="ic_dialog_alert_dark">@android:drawable/ic_dialog_alert</item>
|
||||
</resources>
|
@ -96,7 +96,7 @@
|
||||
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Sorry, the selected audio exceeds message size restrictions (%1$skB).</string>
|
||||
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Recipient is not a valid SMS or email address!</string>
|
||||
<string name="ConversationActivity_message_is_empty_exclamation">Message is empty!</string>
|
||||
<string name="ConversationActivity_group_conversation_recipients">Group conversation recipients</string>
|
||||
<string name="ConversationActivity_group_members">Group members</string>
|
||||
<string name="ConversationActivity_group_conversation">Group conversation</string>
|
||||
<string name="ConversationActivity_unnamed_group">Unnamed group</string>
|
||||
<string name="ConversationActivity_d_recipients_in_group">%d members</string>
|
||||
|
@ -50,6 +50,11 @@
|
||||
<item name="conversation_transport_popup_background">@color/white</item>
|
||||
<item name="conversation_emoji_toggle">@drawable/ic_emoji_dark</item>
|
||||
<item name="conversation_keyboard_toggle">@drawable/ic_ime_dark</item>
|
||||
<item name="conversation_attach_file">@drawable/ic_attach_file_light</item>
|
||||
<item name="conversation_attach_image">@drawable/ic_image_light</item>
|
||||
<item name="conversation_attach_video">@drawable/ic_movie_creation_light</item>
|
||||
<item name="conversation_attach_sound">@drawable/ic_volume_up_light</item>
|
||||
<item name="conversation_attach_contact_info">@drawable/ic_account_box_light</item>
|
||||
|
||||
<item name="conversation_item_background">@drawable/conversation_item_background</item>
|
||||
<item name="conversation_item_received_background">@color/conversation_item_received_background_light</item>
|
||||
@ -67,8 +72,8 @@
|
||||
<item name="triangle_tick_outgoing_pending_sms">@drawable/triangle_tick_outgoing_pending_sms_light</item>
|
||||
<item name="triangle_tick_outgoing_pending_push">@drawable/triangle_tick_outgoing_pending_push_light</item>
|
||||
|
||||
<item name="dialog_info_icon">@drawable/ic_dialog_info_light</item>
|
||||
<item name="dialog_alert_icon">@drawable/ic_dialog_alert_light</item>
|
||||
<item name="dialog_info_icon">@drawable/ic_info_outline_light</item>
|
||||
<item name="dialog_alert_icon">@drawable/ic_warning_light</item>
|
||||
|
||||
<item name="import_export_item_background_color">@color/import_export_item_background_light</item>
|
||||
<item name="import_export_item_background_shadow_color">@color/import_export_item_background_shadow_light</item>
|
||||
@ -108,6 +113,8 @@
|
||||
<item name="pref_ic_advanced">@drawable/ic_advanced_black</item>
|
||||
|
||||
<item name="app_protect_timeout_picker_color">@style/BetterPickersDialogFragment.Light</item>
|
||||
|
||||
<item name="group_members_dialog_icon">@drawable/ic_group_grey600_24dp</item>
|
||||
</style>
|
||||
|
||||
<style name="TextSecure.DarkTheme" parent="@style/Theme.AppCompat">
|
||||
@ -117,6 +124,7 @@
|
||||
<item name="actionBarPopupTheme">@style/ThemeOverlay.AppCompat.Dark</item>
|
||||
<item name="android:textColor">@color/text_color_dark_theme</item>
|
||||
<item name="android:textColorSecondary">@color/text_color_secondary_dark_theme</item>
|
||||
<item name="md_dark_theme">true</item>
|
||||
<item name="conversation_list_item_background_read">@drawable/conversation_list_item_background_read_dark</item>
|
||||
<item name="conversation_list_item_background_unread">@drawable/conversation_list_item_background_unread_dark</item>
|
||||
<item name="conversation_list_item_background_selected">@drawable/list_selected_holo_dark</item>
|
||||
@ -156,8 +164,8 @@
|
||||
<item name="triangle_tick_outgoing_pending_sms">@drawable/triangle_tick_outgoing_pending_sms_dark</item>
|
||||
<item name="triangle_tick_outgoing_pending_push">@drawable/triangle_tick_outgoing_pending_push_dark</item>
|
||||
|
||||
<item name="dialog_info_icon">@drawable/ic_dialog_info_dark</item>
|
||||
<item name="dialog_alert_icon">@drawable/ic_dialog_alert_dark</item>
|
||||
<item name="dialog_info_icon">@drawable/ic_info_outline_dark</item>
|
||||
<item name="dialog_alert_icon">@drawable/ic_warning_dark</item>
|
||||
|
||||
<item name="import_export_item_background_color">@color/import_export_item_background_dark</item>
|
||||
<item name="import_export_item_background_shadow_color">@color/import_export_item_background_shadow_dark</item>
|
||||
@ -179,6 +187,11 @@
|
||||
<item name="conversation_transport_popup_background">@color/black</item>
|
||||
<item name="conversation_emoji_toggle">@drawable/ic_emoji_light</item>
|
||||
<item name="conversation_keyboard_toggle">@drawable/ic_ime_light</item>
|
||||
<item name="conversation_attach_file">@drawable/ic_attach_file_dark</item>
|
||||
<item name="conversation_attach_image">@drawable/ic_image_dark</item>
|
||||
<item name="conversation_attach_video">@drawable/ic_movie_creation_dark</item>
|
||||
<item name="conversation_attach_sound">@drawable/ic_volume_up_dark</item>
|
||||
<item name="conversation_attach_contact_info">@drawable/ic_account_box_dark</item>
|
||||
|
||||
<item name="menu_new_conversation_icon">@drawable/ic_add_white_24dp</item>
|
||||
<item name="menu_group_icon">@drawable/ic_group_white_24dp</item>
|
||||
@ -211,6 +224,8 @@
|
||||
<item name="pref_ic_advanced">@drawable/ic_advanced_gray</item>
|
||||
|
||||
<item name="app_protect_timeout_picker_color">@style/BetterPickersDialogFragment</item>
|
||||
|
||||
<item name="group_members_dialog_icon">@drawable/ic_group_white_24dp</item>
|
||||
</style>
|
||||
|
||||
<style name="TextSecure.Light.Dialog"
|
||||
|
@ -16,7 +16,6 @@
|
||||
*/
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.ActivityNotFoundException;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
@ -34,7 +33,6 @@ import android.text.InputType;
|
||||
import android.text.TextUtils;
|
||||
import android.text.TextWatcher;
|
||||
import android.util.Log;
|
||||
import android.view.ContextThemeWrapper;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
@ -49,6 +47,7 @@ import android.view.inputmethod.InputMethodManager;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
import com.google.protobuf.ByteString;
|
||||
|
||||
import org.thoughtcrime.securesms.TransportOptions.OnTransportChangedListener;
|
||||
@ -97,7 +96,6 @@ import org.thoughtcrime.securesms.util.DynamicTheme;
|
||||
import org.thoughtcrime.securesms.util.Emoji;
|
||||
import org.thoughtcrime.securesms.util.GroupUtil;
|
||||
import org.thoughtcrime.securesms.util.MemoryCleaner;
|
||||
import org.thoughtcrime.securesms.util.ResUtil;
|
||||
import org.thoughtcrime.securesms.util.TextSecurePreferences;
|
||||
import org.thoughtcrime.securesms.util.Util;
|
||||
import org.whispersystems.libaxolotl.InvalidMessageException;
|
||||
@ -359,9 +357,9 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
}
|
||||
|
||||
private void handleAbortSecureSession() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(this);
|
||||
builder.setTitle(R.string.ConversationActivity_abort_secure_session_confirmation);
|
||||
builder.setIcon(ResUtil.getDrawable(this, R.attr.dialog_alert_icon));
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setCancelable(true);
|
||||
builder.setMessage(R.string.ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question);
|
||||
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
|
||||
@ -406,9 +404,9 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
return;
|
||||
}
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(this);
|
||||
builder.setTitle(getString(R.string.ConversationActivity_leave_group));
|
||||
builder.setIcon(ResUtil.getDrawable(this, R.attr.dialog_info_icon));
|
||||
builder.setIconAttribute(R.attr.dialog_info_icon);
|
||||
builder.setCancelable(true);
|
||||
builder.setMessage(getString(R.string.ConversationActivity_are_you_sure_you_want_to_leave_this_group));
|
||||
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
|
||||
@ -499,9 +497,9 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
}
|
||||
|
||||
private void handleDeleteThread() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(this);
|
||||
builder.setTitle(R.string.ConversationActivity_delete_thread_confirmation);
|
||||
builder.setIcon(ResUtil.getDrawable(this, R.attr.dialog_alert_icon));
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setCancelable(true);
|
||||
builder.setMessage(R.string.ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question);
|
||||
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
|
||||
@ -529,8 +527,8 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
|
||||
private void handleAddAttachment() {
|
||||
if (this.isMmsEnabled || DirectoryHelper.isPushDestination(this, getRecipients())) {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(this, R.style.TextSecure_Light_Dialog));
|
||||
builder.setIcon(R.drawable.ic_attach_file);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(this);
|
||||
builder.setIconAttribute(R.attr.conversation_attach_file);
|
||||
builder.setTitle(R.string.ConversationActivity_add_attachment);
|
||||
builder.setAdapter(attachmentAdapter, new AttachmentTypeListener());
|
||||
builder.show();
|
||||
@ -853,8 +851,8 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
numberItems[i] = contactData.numbers.get(i).type + ": " + contactData.numbers.get(i).number;
|
||||
}
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
builder.setIcon(R.drawable.ic_contact_picture);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(this);
|
||||
builder.setIconAttribute(R.attr.conversation_attach_contact_info);
|
||||
builder.setTitle(R.string.ConversationActivity_select_contact_info);
|
||||
|
||||
builder.setItems(numberItems, new DialogInterface.OnClickListener() {
|
||||
@ -1100,6 +1098,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
addAttachment(attachmentAdapter.buttonToCommand(which));
|
||||
dialog.dismiss();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
@ -26,6 +25,8 @@ import android.widget.AdapterView;
|
||||
import android.widget.ListView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
|
||||
import org.thoughtcrime.securesms.crypto.MasterSecret;
|
||||
import org.thoughtcrime.securesms.database.DatabaseFactory;
|
||||
import org.thoughtcrime.securesms.database.MmsSmsDatabase;
|
||||
@ -36,11 +37,9 @@ import org.thoughtcrime.securesms.mms.Slide;
|
||||
import org.thoughtcrime.securesms.recipients.RecipientFactory;
|
||||
import org.thoughtcrime.securesms.recipients.Recipients;
|
||||
import org.thoughtcrime.securesms.sms.MessageSender;
|
||||
import org.thoughtcrime.securesms.util.Dialogs;
|
||||
import org.thoughtcrime.securesms.util.DirectoryHelper;
|
||||
import org.thoughtcrime.securesms.util.FutureTaskListener;
|
||||
import org.thoughtcrime.securesms.util.ProgressDialogAsyncTask;
|
||||
import org.thoughtcrime.securesms.util.ResUtil;
|
||||
import org.thoughtcrime.securesms.util.SaveAttachmentTask;
|
||||
import org.thoughtcrime.securesms.util.SaveAttachmentTask.Attachment;
|
||||
|
||||
@ -191,9 +190,9 @@ public class ConversationFragment extends ListFragment
|
||||
}
|
||||
|
||||
private void handleDeleteMessages(final List<MessageRecord> messageRecords) {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getActivity());
|
||||
builder.setTitle(R.string.ConversationFragment_confirm_message_delete);
|
||||
builder.setIcon(ResUtil.getDrawable(getActivity(), R.attr.dialog_alert_icon));
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setCancelable(true);
|
||||
builder.setMessage(R.string.ConversationFragment_are_you_sure_you_want_to_permanently_delete_all_selected_messages);
|
||||
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
|
||||
|
@ -16,7 +16,6 @@
|
||||
*/
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.ActivityNotFoundException;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
@ -24,8 +23,6 @@ import android.content.Intent;
|
||||
import android.content.res.TypedArray;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Build.VERSION;
|
||||
import android.os.Build.VERSION_CODES;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.provider.ContactsContract;
|
||||
@ -42,6 +39,8 @@ import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
|
||||
import org.thoughtcrime.securesms.ConversationFragment.SelectionClickListener;
|
||||
import org.thoughtcrime.securesms.components.ForegroundImageView;
|
||||
import org.thoughtcrime.securesms.contacts.ContactPhotoFactory;
|
||||
@ -463,9 +462,9 @@ public class ConversationItem extends LinearLayout {
|
||||
|
||||
context.startActivity(intent);
|
||||
} else {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(context);
|
||||
builder.setTitle(R.string.ConversationItem_view_secure_media_question);
|
||||
builder.setIcon(ResUtil.getDrawable(context, R.attr.dialog_alert_icon));
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setCancelable(true);
|
||||
builder.setMessage(R.string.ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning);
|
||||
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
|
||||
@ -546,7 +545,7 @@ public class ConversationItem extends LinearLayout {
|
||||
|
||||
message = R.string.ConversationItem_click_to_approve_unencrypted_dialog_message;
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(context);
|
||||
builder.setTitle(title);
|
||||
|
||||
if (message > -1) builder.setMessage(message);
|
||||
|
@ -17,7 +17,6 @@
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
@ -41,6 +40,7 @@ import android.view.ViewGroup;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.ListView;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
import com.melnykov.fab.FloatingActionButton;
|
||||
|
||||
import org.thoughtcrime.securesms.components.DefaultSmsReminder;
|
||||
@ -53,7 +53,6 @@ import org.thoughtcrime.securesms.database.DatabaseFactory;
|
||||
import org.thoughtcrime.securesms.database.loaders.ConversationListLoader;
|
||||
import org.thoughtcrime.securesms.notifications.MessageNotifier;
|
||||
import org.thoughtcrime.securesms.recipients.Recipients;
|
||||
import org.thoughtcrime.securesms.util.ResUtil;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
@ -196,8 +195,8 @@ public class ConversationListFragment extends ListFragment
|
||||
}
|
||||
|
||||
private void handleDeleteAllSelected() {
|
||||
AlertDialog.Builder alert = new AlertDialog.Builder(getActivity());
|
||||
alert.setIcon(ResUtil.getDrawable(getActivity(), R.attr.dialog_alert_icon));
|
||||
AlertDialogWrapper.Builder alert = new AlertDialogWrapper.Builder(getActivity());
|
||||
alert.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
alert.setTitle(R.string.ConversationListFragment_delete_threads_question);
|
||||
alert.setMessage(R.string.ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads);
|
||||
alert.setCancelable(true);
|
||||
|
@ -1,6 +1,5 @@
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
@ -14,11 +13,11 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
|
||||
import org.thoughtcrime.securesms.crypto.MasterSecret;
|
||||
import org.thoughtcrime.securesms.database.NoExternalStorageException;
|
||||
import org.thoughtcrime.securesms.database.PlaintextBackupExporter;
|
||||
import org.thoughtcrime.securesms.util.Dialogs;
|
||||
import org.thoughtcrime.securesms.util.ResUtil;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
@ -74,8 +73,8 @@ public class ExportFragment extends Fragment {
|
||||
// }
|
||||
|
||||
private void handleExportPlaintextBackup() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setIcon(ResUtil.getDrawable(getActivity(), R.attr.dialog_alert_icon));
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getActivity());
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setTitle(getActivity().getString(R.string.ExportFragment_export_plaintext_to_sd_card));
|
||||
builder.setMessage(getActivity().getString(R.string.ExportFragment_warning_this_will_export_the_plaintext_contents));
|
||||
builder.setPositiveButton(getActivity().getString(R.string.ExportFragment_export), new Dialog.OnClickListener() {
|
||||
|
@ -1,11 +1,12 @@
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.os.AsyncTask;
|
||||
import android.util.Log;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
|
||||
import org.thoughtcrime.securesms.database.DatabaseFactory;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.thoughtcrime.securesms.recipients.Recipients;
|
||||
@ -64,9 +65,9 @@ public class GroupMembersDialog extends AsyncTask<Void, Void, Recipients> {
|
||||
}
|
||||
}
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
||||
builder.setTitle(R.string.ConversationActivity_group_conversation_recipients);
|
||||
builder.setIcon(R.drawable.ic_menu_groups_holo_dark);
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(context);
|
||||
builder.setTitle(R.string.ConversationActivity_group_members);
|
||||
builder.setIconAttribute(R.attr.group_members_dialog_icon);
|
||||
builder.setCancelable(true);
|
||||
builder.setItems(recipientStrings.toArray(new String[]{}), null);
|
||||
builder.setPositiveButton(android.R.string.ok, null);
|
||||
|
@ -14,6 +14,8 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
|
||||
import org.thoughtcrime.securesms.crypto.MasterSecret;
|
||||
import org.thoughtcrime.securesms.database.DatabaseFactory;
|
||||
import org.thoughtcrime.securesms.database.EncryptedBackupExporter;
|
||||
@ -21,8 +23,6 @@ import org.thoughtcrime.securesms.database.NoExternalStorageException;
|
||||
import org.thoughtcrime.securesms.database.PlaintextBackupImporter;
|
||||
import org.thoughtcrime.securesms.service.ApplicationMigrationService;
|
||||
import org.thoughtcrime.securesms.service.KeyCachingService;
|
||||
import org.thoughtcrime.securesms.util.Dialogs;
|
||||
import org.thoughtcrime.securesms.util.ResUtil;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
@ -82,8 +82,8 @@ public class ImportFragment extends Fragment {
|
||||
}
|
||||
|
||||
private void handleImportSms() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setIcon(ResUtil.getDrawable(getActivity(), R.attr.dialog_info_icon));
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getActivity());
|
||||
builder.setIconAttribute(R.attr.dialog_info_icon);
|
||||
builder.setTitle(getActivity().getString(R.string.ImportFragment_import_system_sms_database));
|
||||
builder.setMessage(getActivity().getString(R.string.ImportFragment_this_will_import_messages_from_the_system));
|
||||
builder.setPositiveButton(getActivity().getString(R.string.ImportFragment_import), new AlertDialog.OnClickListener() {
|
||||
@ -108,8 +108,8 @@ public class ImportFragment extends Fragment {
|
||||
}
|
||||
|
||||
private void handleImportEncryptedBackup() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setIcon(ResUtil.getDrawable(getActivity(), R.attr.dialog_alert_icon));
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getActivity());
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setTitle(getActivity().getString(R.string.ImportFragment_restore_encrypted_backup));
|
||||
builder.setMessage(getActivity().getString(R.string.ImportFragment_restoring_an_encrypted_backup_will_completely_replace_your_existing_keys));
|
||||
builder.setPositiveButton(getActivity().getString(R.string.ImportFragment_restore), new AlertDialog.OnClickListener() {
|
||||
@ -123,8 +123,8 @@ public class ImportFragment extends Fragment {
|
||||
}
|
||||
|
||||
private void handleImportPlaintextBackup() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setIcon(ResUtil.getDrawable(getActivity(), R.attr.dialog_alert_icon));
|
||||
AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getActivity());
|
||||
builder.setIconAttribute(R.attr.dialog_alert_icon);
|
||||
builder.setTitle(getActivity().getString(R.string.ImportFragment_import_plaintext_backup));
|
||||
builder.setMessage(getActivity().getString(R.string.ImportFragment_this_will_import_messages_from_a_plaintext_backup));
|
||||
builder.setPositiveButton(getActivity().getString(R.string.ImportFragment_import), new AlertDialog.OnClickListener() {
|
||||
|
@ -1,11 +1,9 @@
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.ActionBarActivity;
|
||||
import android.telephony.TelephonyManager;
|
||||
import android.text.Editable;
|
||||
import android.text.TextUtils;
|
||||
@ -19,6 +17,7 @@ import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.AlertDialogWrapper;
|
||||
import com.google.android.gms.common.ConnectionResult;
|
||||
import com.google.android.gms.common.GooglePlayServicesUtil;
|
||||
import com.google.i18n.phonenumbers.AsYouTypeFormatter;
|
||||
@ -196,9 +195,10 @@ public class RegistrationActivity extends BaseActionBarActivity {
|
||||
return;
|
||||
}
|
||||
|
||||
AlertDialog.Builder dialog = new AlertDialog.Builder(self);
|
||||
AlertDialogWrapper.Builder dialog = new AlertDialogWrapper.Builder(self);
|
||||
dialog.setTitle(PhoneNumberFormatter.getInternationalFormatFromE164(e164number));
|
||||
dialog.setMessage(R.string.RegistrationActivity_we_will_now_verify_that_the_following_number_is_associated_with_your_device_s);
|
||||
dialog.setMessage(String.format(getString(R.string.RegistrationActivity_we_will_now_verify_that_the_following_number_is_associated_with_your_device_s),
|
||||
PhoneNumberFormatter.getInternationalFormatFromE164(e164number)));
|
||||
dialog.setPositiveButton(getString(R.string.RegistrationActivity_continue),
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
|
@ -18,7 +18,7 @@ public class ExpiredBuildReminder extends Reminder {
|
||||
private static final String TAG = ExpiredBuildReminder.class.getSimpleName();
|
||||
|
||||
public ExpiredBuildReminder() {
|
||||
super(R.drawable.ic_dialog_alert_holo_dark,
|
||||
super(R.drawable.ic_warning_dark,
|
||||
R.string.reminder_header_expired_build,
|
||||
R.string.reminder_header_expired_build_details);
|
||||
}
|
||||
|
@ -26,6 +26,7 @@ import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.thoughtcrime.securesms.R;
|
||||
import org.thoughtcrime.securesms.util.ResUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -70,10 +71,10 @@ public class AttachmentTypeSelectorAdapter extends ArrayAdapter<AttachmentTypeSe
|
||||
|
||||
private static List<IconListItem> getItemList(Context context) {
|
||||
List<IconListItem> data = new ArrayList<>(4);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_picture), R.drawable.ic_image, ADD_IMAGE);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_video), R.drawable.ic_movie_creation, ADD_VIDEO);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_audio), R.drawable.ic_volume_up, ADD_SOUND);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_contact), R.drawable.ic_contact, ADD_CONTACT_INFO);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_picture), ResUtil.getDrawableRes(context, R.attr.conversation_attach_image), ADD_IMAGE);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_video), ResUtil.getDrawableRes(context, R.attr.conversation_attach_video), ADD_VIDEO);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_audio), ResUtil.getDrawableRes(context, R.attr.conversation_attach_sound), ADD_SOUND);
|
||||
addItem(data, context.getString(R.string.AttachmentTypeSelectorAdapter_contact), ResUtil.getDrawableRes(context, R.attr.conversation_attach_contact_info), ADD_CONTACT_INFO);
|
||||
|
||||
return data;
|
||||
}
|
||||
|