Correctly display cropped profile image

Fixes #7191
This commit is contained in:
Moxie Marlinspike 2017-11-14 10:40:15 -08:00
parent 21ddc1dbba
commit ad9a995ffa
2 changed files with 12 additions and 7 deletions

View File

@ -1,5 +1,6 @@
/** /*
* Copyright (C) 2011 Whisper Systems * Copyright (C) 2011 Whisper Systems
* Copyright (C) 2013-2017 Open Whisper Systems
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -58,6 +59,7 @@ import org.thoughtcrime.securesms.util.TextSecurePreferences;
public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarActivity public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarActivity
implements SharedPreferences.OnSharedPreferenceChangeListener implements SharedPreferences.OnSharedPreferenceChangeListener
{ {
@SuppressWarnings("unused")
private static final String TAG = ApplicationPreferencesActivity.class.getSimpleName(); private static final String TAG = ApplicationPreferencesActivity.class.getSimpleName();
private static final String PREFERENCE_CATEGORY_PROFILE = "preference_category_profile"; private static final String PREFERENCE_CATEGORY_PROFILE = "preference_category_profile";
@ -80,6 +82,7 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarA
@Override @Override
protected void onCreate(Bundle icicle, @NonNull MasterSecret masterSecret) { protected void onCreate(Bundle icicle, @NonNull MasterSecret masterSecret) {
//noinspection ConstantConditions
this.getSupportActionBar().setDisplayHomeAsUpEnabled(true); this.getSupportActionBar().setDisplayHomeAsUpEnabled(true);
if (icicle == null) { if (icicle == null) {
@ -119,11 +122,9 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarA
@Override @Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (key.equals(TextSecurePreferences.THEME_PREF)) { if (key.equals(TextSecurePreferences.THEME_PREF)) {
if (VERSION.SDK_INT >= 11) recreate(); recreate();
else dynamicTheme.onResume(this);
} else if (key.equals(TextSecurePreferences.LANGUAGE_PREF)) { } else if (key.equals(TextSecurePreferences.LANGUAGE_PREF)) {
if (VERSION.SDK_INT >= 11) recreate(); recreate();
else dynamicLanguage.onResume(this);
Intent intent = new Intent(this, KeyCachingService.class); Intent intent = new Intent(this, KeyCachingService.class);
intent.setAction(KeyCachingService.LOCALE_CHANGE_EVENT); intent.setAction(KeyCachingService.LOCALE_CHANGE_EVENT);
@ -155,7 +156,7 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarA
this.findPreference(PREFERENCE_CATEGORY_ADVANCED) this.findPreference(PREFERENCE_CATEGORY_ADVANCED)
.setOnPreferenceClickListener(new CategoryClickListener(masterSecret, PREFERENCE_CATEGORY_ADVANCED)); .setOnPreferenceClickListener(new CategoryClickListener(masterSecret, PREFERENCE_CATEGORY_ADVANCED));
if (VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP && VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { if (VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
tintIcons(getActivity()); tintIcons(getActivity());
} }
} }
@ -168,6 +169,7 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarA
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
//noinspection ConstantConditions
((ApplicationPreferencesActivity) getActivity()).getSupportActionBar().setTitle(R.string.text_secure_normal__menu_settings); ((ApplicationPreferencesActivity) getActivity()).getSupportActionBar().setTitle(R.string.text_secure_normal__menu_settings);
setCategorySummaries(); setCategorySummaries();
setCategoryVisibility(); setCategoryVisibility();
@ -231,7 +233,7 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarA
private MasterSecret masterSecret; private MasterSecret masterSecret;
private String category; private String category;
public CategoryClickListener(MasterSecret masterSecret, String category) { CategoryClickListener(MasterSecret masterSecret, String category) {
this.masterSecret = masterSecret; this.masterSecret = masterSecret;
this.category = category; this.category = category;
} }

View File

@ -27,6 +27,7 @@ import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.dd.CircularProgressButton; import com.dd.CircularProgressButton;
import com.soundcloud.android.crop.Crop; import com.soundcloud.android.crop.Crop;
@ -178,6 +179,8 @@ public class CreateProfileActivity extends BaseActionBarActivity implements Inje
avatarBytes = result; avatarBytes = result;
GlideApp.with(CreateProfileActivity.this) GlideApp.with(CreateProfileActivity.this)
.load(avatarBytes) .load(avatarBytes)
.skipMemoryCache(true)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.circleCrop() .circleCrop()
.into(avatar); .into(avatar);
} else { } else {