/*
* Copyright (C) 2013 Chris Lacy Licensed under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with the
* License. You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law
* or agreed to in writing, software distributed under the License is
* distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the specific language
* governing permissions and limitations under the License.
*/
package com.tweetlanes.android.core.view;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.content.res.Resources;
import android.net.Uri;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceActivity;
import android.preference.PreferenceCategory;
import android.preference.PreferenceManager;
import android.text.method.LinkMovementMethod;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import com.crittercism.app.Crittercism;
import com.inscription.ChangeLogDialog;
import com.tweetlanes.android.core.App;
import com.tweetlanes.android.core.AppSettings;
import com.tweetlanes.android.core.Constant;
import com.tweetlanes.android.core.Constant.LaneType;
import com.tweetlanes.android.core.ConsumerKeyConstants;
import com.tweetlanes.android.core.Notifier;
import com.tweetlanes.android.core.R;
import com.tweetlanes.android.core.model.AccountDescriptor;
import com.tweetlanes.android.core.model.LaneDescriptor;
import com.tweetlanes.android.core.util.LazyImageLoader;
import org.socialnetlib.android.SocialNetConstant;
import java.util.ArrayList;
public class SettingsActivity extends PreferenceActivity implements
OnSharedPreferenceChangeListener {
public static final String KEY_THEME_PREFERENCE = "theme_preference";
public static final String KEY_CUSTOMIZE_LANES_PREFERENCE = "customizelanes_preference";
public static final String KEY_REMOVE_ACCOUNT_PREFERENCE = "removeaccount_preference";
public static final String KEY_SHOW_TABLET_MARGIN_PREFERENCE = "showtabletmargin_preference";
public static final String KEY_DISPLAY_TIME_PREFERENCE = "displaytime_preference";
public static final String KEY_DISPLAY_NAME_PREFERENCE = "displayname_preference";
public static final String KEY_STATUS_SIZE_PREFERENCE = "statussize_preference";
public static final String KEY_PROFILE_IMAGE_SIZE_PREFERENCE = "profileimagesize_preference";
public static final String KEY_MEDIA_IMAGE_SIZE_PREFERENCE = "mediaimagesize_preference";
public static final String KEY_VOLSCROLL_PREFERENCE = "volscroll_preference";
public static final String KEY_DOWNLOADIMAGES_PREFERENCE = "downloadimages_preference";
public static final String KEY_SHOW_TWEET_SOURCE_PREFERENCE = "showtweetsource_preference";
public static final String KEY_CACHE_SIZE_PREFERENCE = "cachesize_preference";
public static final String KEY_QUOTE_TYPE_PREFERENCE = "quotetype_preference";
private static final String KEY_CREDITS_PREFERENCE = "preference_credits";
private static final String KEY_SOURCE_CODE_PREFERENCE = "preference_source";
private static final String KEY_DONATE_PREFERENCE = "preference_donate";
private static final String KEY_VERSION_PREFERENCE = "version_preference";
public static final String KEY_RINGTONE_PREFERENCE = "ringtone_preference";
public static final String KEY_NOTIFICATION_TIME_PREFERENCE = "notificationtime_preference";
public static final String KEY_NOTIFICATION_TYPE_PREFERENCE = "notificationtype_preference";
public static final String KEY_NOTIFICATION_VIBRATION = "notificationvibration_preference";
public static final String KEY_AUTO_REFRESH_PREFERENCE = "autorefresh_preference";
public static final String KEY_DISPLAY_URL_PREFERENCE = "displayurl_preference";
private ListPreference mThemePreference;
private CheckBoxPreference mShowTabletMarginPreference;
private ListPreference mStatusSizePreference;
private ListPreference mDisplayTimePreference;
private ListPreference mDisplayNamePreference;
private ListPreference mProfileImageSizePreference;
private ListPreference mMediaImageSizePreference;
private ListPreference mCacheSizePreference;
private CheckBoxPreference mDownloadImagesPreference;
private CheckBoxPreference mShowTweetSourcePreference;
private ListPreference mQuoteTypePreference;
private CheckBoxPreference mVolScrollPreference;
private CheckBoxPreference mAutoRefreshPreference;
private CheckBoxPreference mDisplayUrlPreference;
private Preference mCreditsPreference;
private Preference mSourceCodePreference;
private Preference mDonatePreference;
private Preference mVersionPreference;
private ListPreference mNotificationTimePreference;
private ListPreference mNotificationTypePreference;
private AlertDialog mRemoveAccountDialog;
/*
*
*/
App getApp() {
return (App) getApplication();
}
/*
* (non-Javadoc)
*
* @see android.preference.PreferenceActivity#onCreate(android.os.Bundle)
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
if (Constant.ENABLE_CRASH_TRACKING) {
Crittercism.initialize(getApplicationContext(),
ConsumerKeyConstants.CRITTERCISM_APP_ID);
}
setTheme(AppSettings.get().getCurrentThemeStyle());
super.onCreate(savedInstanceState);
getActionBar().setDisplayHomeAsUpEnabled(true);
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.preferences);
PreferenceCategory category = (PreferenceCategory) findPreference("category_display");
mThemePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_THEME_PREFERENCE);
mShowTabletMarginPreference = (CheckBoxPreference) getPreferenceScreen()
.findPreference(KEY_SHOW_TABLET_MARGIN_PREFERENCE);
final Resources res = getResources();
float value = res.getDimension(R.dimen.lane_content_width);
if (value == 0F) {
category.removePreference(mShowTabletMarginPreference);
mShowTabletMarginPreference = null;
}
mDisplayTimePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_DISPLAY_TIME_PREFERENCE);
mDisplayNamePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_DISPLAY_NAME_PREFERENCE);
mStatusSizePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_STATUS_SIZE_PREFERENCE);
mProfileImageSizePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_PROFILE_IMAGE_SIZE_PREFERENCE);
mMediaImageSizePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_MEDIA_IMAGE_SIZE_PREFERENCE);
mCacheSizePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_CACHE_SIZE_PREFERENCE);
mDownloadImagesPreference = (CheckBoxPreference) getPreferenceScreen()
.findPreference(KEY_DOWNLOADIMAGES_PREFERENCE);
Preference customizeLanesPreference = getPreferenceScreen()
.findPreference(KEY_CUSTOMIZE_LANES_PREFERENCE);
customizeLanesPreference
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
ArrayList<LaneDescriptor> laneDefinitions = getApp()
.getCurrentAccount().getAllLaneDefinitions();
LaneCustomizationAdapter adapter = new LaneCustomizationAdapter(SettingsActivity.this, laneDefinitions);
ListView listView = new ListView(SettingsActivity.this);
listView.setAdapter(adapter);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
SettingsActivity.this);
alertDialogBuilder
.setTitle(R.string.alert_customize_lanes_title)
.setView(listView)
.setCancelable(false)
.setPositiveButton(R.string.done,
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface dialog,
int id) {
AppSettings
.get()
.refresh(
KEY_CUSTOMIZE_LANES_PREFERENCE);
}
});
alertDialogBuilder.create().show();
return true;
}
});
Preference removeAccountPreference = getPreferenceScreen()
.findPreference(KEY_REMOVE_ACCOUNT_PREFERENCE);
removeAccountPreference
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
final ArrayList<AccountDescriptor> accountDescriptors = getApp().getAccounts();
AccountRemovalAdapter adapter = new AccountRemovalAdapter(SettingsActivity.this, accountDescriptors);
ListView listView = new ListView(SettingsActivity.this);
listView.setAdapter(adapter);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
SettingsActivity.this);
alertDialogBuilder
.setTitle(R.string.alert_remove_account_title)
.setView(listView)
.setCancelable(false)
.setPositiveButton(R.string.done,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
AppSettings.get().refresh(
KEY_REMOVE_ACCOUNT_PREFERENCE);
}
});
mRemoveAccountDialog = alertDialogBuilder.create();
mRemoveAccountDialog.show();
return true;
}
});
mShowTweetSourcePreference = (CheckBoxPreference) getPreferenceScreen()
.findPreference(KEY_SHOW_TWEET_SOURCE_PREFERENCE);
mVolScrollPreference = (CheckBoxPreference) getPreferenceScreen()
.findPreference(KEY_VOLSCROLL_PREFERENCE);
mAutoRefreshPreference = (CheckBoxPreference) getPreferenceScreen()
.findPreference(KEY_AUTO_REFRESH_PREFERENCE);
mDisplayUrlPreference = (CheckBoxPreference) getPreferenceScreen()
.findPreference(KEY_DISPLAY_URL_PREFERENCE);
mQuoteTypePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_QUOTE_TYPE_PREFERENCE);
mCreditsPreference = getPreferenceScreen().findPreference(
KEY_CREDITS_PREFERENCE);
mSourceCodePreference = getPreferenceScreen().findPreference(
KEY_SOURCE_CODE_PREFERENCE);
mDonatePreference = getPreferenceScreen().findPreference(
KEY_DONATE_PREFERENCE);
mVersionPreference = getPreferenceScreen().findPreference(
KEY_VERSION_PREFERENCE);
mNotificationTimePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_NOTIFICATION_TIME_PREFERENCE);
mNotificationTypePreference = (ListPreference) getPreferenceScreen()
.findPreference(KEY_NOTIFICATION_TYPE_PREFERENCE);
}
/*
* (non-Javadoc)
*
* @see android.app.Activity#onResume()
*/
@Override
protected void onResume() {
super.onResume();
SharedPreferences sharedPreferences = PreferenceManager
.getDefaultSharedPreferences(this);
if (mThemePreference.getEntry() == null) {
mThemePreference.setValueIndex(0);
}
mThemePreference.setSummary(mThemePreference.getEntry());
if (mShowTabletMarginPreference != null) {
boolean showTabletMargin = sharedPreferences.getBoolean(
KEY_SHOW_TABLET_MARGIN_PREFERENCE,
AppSettings.DEFAULT_SHOW_TABLET_MARGIN);
mShowTabletMarginPreference.setChecked(showTabletMargin);
}
if (mDisplayTimePreference.getEntry() == null) {
mDisplayTimePreference.setValueIndex(0);
}
mDisplayTimePreference.setSummary(mDisplayTimePreference.getEntry());
if (mDisplayNamePreference.getEntry() == null) {
mDisplayNamePreference.setValueIndex(0);
}
mDisplayNamePreference.setSummary(mDisplayNamePreference.getEntry());
if (mStatusSizePreference.getEntry() == null) {
mStatusSizePreference.setValueIndex(2);
}
mStatusSizePreference.setSummary(mStatusSizePreference.getEntry());
if (mProfileImageSizePreference.getEntry() == null) {
mProfileImageSizePreference.setValueIndex(1);
}
mProfileImageSizePreference.setSummary(mProfileImageSizePreference
.getEntry());
if (mMediaImageSizePreference.getEntry() == null) {
mMediaImageSizePreference.setValueIndex(1);
}
mMediaImageSizePreference.setSummary(mMediaImageSizePreference
.getEntry());
if (mCacheSizePreference.getEntry() == null) {
mCacheSizePreference.setValueIndex(1);
}
mCacheSizePreference.setSummary(mCacheSizePreference
.getEntry());
boolean showTweetSource = sharedPreferences.getBoolean(
KEY_SHOW_TWEET_SOURCE_PREFERENCE,
AppSettings.DEFAULT_SHOW_TWEET_SOURCE);
mShowTweetSourcePreference.setChecked(showTweetSource);
boolean downloadImages = sharedPreferences.getBoolean(
KEY_DOWNLOADIMAGES_PREFERENCE,
AppSettings.DEFAULT_DOWNLOAD_IMAGES);
mDownloadImagesPreference.setChecked(downloadImages);
boolean volScroll = sharedPreferences.getBoolean(
KEY_VOLSCROLL_PREFERENCE, AppSettings.DEFAULT_VOLSCROLL);
mVolScrollPreference.setChecked(volScroll);
boolean autoRefresh = sharedPreferences.getBoolean(
KEY_AUTO_REFRESH_PREFERENCE, AppSettings.DEFAULT_AUTO_REFRESH);
mAutoRefreshPreference.setChecked(autoRefresh);
boolean displayUrl = sharedPreferences.getBoolean(
KEY_DISPLAY_URL_PREFERENCE, AppSettings.DEFAULT_DISPLAY_URL);
mDisplayUrlPreference.setChecked(displayUrl);
if (mQuoteTypePreference.getEntry() == null) {
mQuoteTypePreference.setValueIndex(0);
}
mQuoteTypePreference.setSummary(mQuoteTypePreference.getEntry());
mSourceCodePreference
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
Intent browserIntent = new Intent(
Intent.ACTION_VIEW,
Uri.parse("https://github.com/chrislacy/TweetLanes"));
startActivity(browserIntent);
return true;
}
});
mDonatePreference
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW,
Uri.parse("http://www.tweetlanes.com/donate"));
startActivity(browserIntent);
return true;
}
});
mCreditsPreference
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@SuppressLint("SetJavaScriptEnabled")
@Override
public boolean onPreferenceClick(Preference preference) {
final View layout = View.inflate(SettingsActivity.this,
R.layout.credits, null);
TextView ossTextView = (TextView) layout
.findViewById(R.id.credits_oss_items);
ossTextView.setMovementMethod(LinkMovementMethod
.getInstance());
TextView artTextView = (TextView) layout
.findViewById(R.id.credits_art_items);
artTextView.setMovementMethod(LinkMovementMethod
.getInstance());
TextView lacyNetworksTextView = (TextView) layout
.findViewById(R.id.credit_lacy_networks);
lacyNetworksTextView.setMovementMethod(LinkMovementMethod
.getInstance());
TextView fammyNetworksTextView = (TextView) layout
.findViewById(R.id.credit_fammy_networks);
fammyNetworksTextView.setMovementMethod(LinkMovementMethod
.getInstance());
TextView duffyNetworksTextView = (TextView) layout
.findViewById(R.id.credit_duffy_networks);
duffyNetworksTextView.setMovementMethod(LinkMovementMethod
.getInstance());
TextView blythmeisterNetworksTextView = (TextView) layout
.findViewById(R.id.credit_blythmeister_networks);
blythmeisterNetworksTextView.setMovementMethod(LinkMovementMethod
.getInstance());
AlertDialog.Builder builder = new AlertDialog.Builder(
SettingsActivity.this);
builder.setIcon(0);
builder.setNegativeButton(R.string.ok, null);
builder.setView(layout);
builder.setTitle(R.string.settings_credits_title);
AlertDialog alertDialog = builder.create();
alertDialog.show();
return true;
}
});
mVersionPreference
.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@SuppressLint("SetJavaScriptEnabled")
@Override
public boolean onPreferenceClick(Preference preference) {
ChangeLogDialog _ChangelogDialog = new ChangeLogDialog(SettingsActivity.this);
_ChangelogDialog.show();
return true;
}
});
mVersionPreference.setSummary(App.getAppVersionName());
if (mNotificationTimePreference.getEntry() == null) {
mNotificationTimePreference.setValueIndex(1);
}
mNotificationTimePreference.setSummary(mNotificationTimePreference.getEntry());
if (mNotificationTypePreference.getEntry() == null) {
mNotificationTypePreference.setValueIndex(0);
}
mNotificationTypePreference.setSummary(mNotificationTypePreference.getEntry());
getPreferenceScreen().getSharedPreferences()
.registerOnSharedPreferenceChangeListener(this);
}
/*
* (non-Javadoc)
*
* @see android.app.Activity#onPause()
*/
@Override
protected void onPause() {
super.onPause();
getPreferenceScreen().getSharedPreferences()
.unregisterOnSharedPreferenceChangeListener(this);
}
/*
* (non-Javadoc)
*
* @see android.content.SharedPreferences.OnSharedPreferenceChangeListener#
* onSharedPreferenceChanged(android.content.SharedPreferences,
* java.lang.String)
*/
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
Preference pref = findPreference(key);
AppSettings.get().refresh(key);
if (pref instanceof ListPreference) {
ListPreference listPref = (ListPreference) pref;
pref.setSummary(listPref.getEntry());
if (listPref == mThemePreference) {
// Restart the activity
finish();
getIntent().addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
overridePendingTransition(0, 0);
startActivity(getIntent());
} else if (listPref == mNotificationTimePreference) {
//Stop and start notifications (with new time)
Notifier.setNotificationAlarm(this);
}
}
}
/*
* (non-Javadoc)
*
* @see android.app.Activity#onOptionsItemSelected(android.view.MenuItem)
*/
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (super.onOptionsItemSelected(item)) {
return true;
}
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
default:
return false;
}
}
/*
*
*/
public class LaneCustomizationAdapter extends ArrayAdapter<LaneDescriptor> {
private final Context mContext;
private final ArrayList<LaneDescriptor> mLaneDefinitions;
public LaneCustomizationAdapter(Context context,
ArrayList<LaneDescriptor> laneDefinitions) {
super(context, R.layout.lane_customization_item, laneDefinitions);
mContext = context;
mLaneDefinitions = laneDefinitions;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final LaneDescriptor lane = mLaneDefinitions.get(position);
LayoutInflater inflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.lane_customization_item,
parent, false);
final CheckBox checkbox = (CheckBox) view
.findViewById(R.id.checkbox);
if (lane.getLaneType() == LaneType.USER_HOME_TIMELINE) {
checkbox.setChecked(true);
checkbox.setEnabled(false);
} else {
checkbox.setChecked(lane.getDisplay());
checkbox.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
lane.setDisplay(checkbox.isChecked());
getApp().getCurrentAccount()
.setDisplayedLaneDefinitionsDirty(true);
}
});
}
TextView textView = (TextView) view.findViewById(R.id.laneTitle);
textView.setText(lane.getLaneTitle());
if (lane.getLaneType() != LaneType.USER_HOME_TIMELINE) {
OnClickListener onClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
checkbox.setChecked(!checkbox.isChecked());
lane.setDisplay(checkbox.isChecked());
getApp().getCurrentAccount()
.setDisplayedLaneDefinitionsDirty(true);
}
};
textView.setOnClickListener(onClickListener);
view.setOnClickListener(onClickListener);
}
return view;
}
}
public class AccountRemovalAdapter extends ArrayAdapter<AccountDescriptor> {
private final Context mContext;
private final ArrayList<AccountDescriptor> mAccountDescriptors;
public AccountRemovalAdapter(Context context,
ArrayList<AccountDescriptor> accountDescriptors) {
super(context, R.layout.account_row, accountDescriptors);
mContext = context;
mAccountDescriptors = accountDescriptors;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
AccountHolder holder;
final AccountDescriptor account = mAccountDescriptors.get(position);
if (row == null) {
LayoutInflater inflater = ((Activity) mContext).getLayoutInflater();
row = inflater.inflate(R.layout.account_row, parent, false);
holder = new AccountHolder();
holder.AvatarImage = (ImageView) row.findViewById(R.id.accountAvatar);
holder.ServiceImage = (ImageView) row.findViewById(R.id.serviceImage);
holder.ScreenName = (TextView) row.findViewById(R.id.accountScreenName);
holder.Filler = (TextView) row.findViewById(R.id.filler);
row.setTag(holder);
} else {
holder = (AccountHolder) row.getTag();
}
if (account == null) {
return row;
}
holder.ScreenName.setText("@" + account.getScreenName(), TextView.BufferType.NORMAL);
if (AppSettings.get().getCurrentThemeStyle() == R.style.Theme_TweetLanes_Light_DarkActionBar) {
holder.ScreenName.setTextColor(getResources().getColor(R.color.black));
}
setProfileImage(account.getProfileImageUrl(), account.getSocialNetType(), holder.AvatarImage, holder.ServiceImage);
holder.Filler.setVisibility(View.GONE);
OnClickListener onClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
if (getApp().getCurrentAccount().getAccountKey().equals(account.getAccountKey())) {
Toast.makeText(SettingsActivity.this, R.string.alert_remove_account_active, Toast.LENGTH_LONG).show();
AppSettings.get().refresh(KEY_REMOVE_ACCOUNT_PREFERENCE);
} else {
new AlertDialog.Builder(getContext())
.setTitle(R.string.alert_remove_account_title)
.setMessage(R.string.alert_remove_account_sure)
.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
getApp().removeAccount(account.getAccountKey());
getApp().setAccountDescriptorsDirty(true);
AppSettings.get().refresh(KEY_REMOVE_ACCOUNT_PREFERENCE);
mRemoveAccountDialog.dismiss();
}
})
.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
AppSettings.get().refresh(KEY_REMOVE_ACCOUNT_PREFERENCE);
}
})
.show();
}
}
};
row.setOnClickListener(onClickListener);
return row;
}
}
public class AccountHolder {
public ImageView AvatarImage;
public ImageView ServiceImage;
public TextView ScreenName;
public TextView Filler;
}
private void setProfileImage(String profileImageUrl, SocialNetConstant.Type serviceType, ImageView avatar, ImageView service) {
if (profileImageUrl != null) {
service.setVisibility(View.VISIBLE);
service.setImageResource(serviceType == SocialNetConstant.Type.Twitter ? R.drawable.twitter_logo_small : R.drawable.adn_logo_small);
LazyImageLoader profileImageLoader = getApp().getProfileImageLoader();
if (profileImageLoader != null) {
profileImageLoader.displayImage(profileImageUrl, avatar);
}
} else {
int resource;
if (AppSettings.get().getCurrentThemeStyle() == R.style.Theme_TweetLanes_Light_DarkActionBar) {
resource = R.drawable.ic_action_user_add_dark;
} else {
resource = AppSettings.get().getCurrentThemeStyle() ==
R.style.Theme_TweetLanes_Light ?
R.drawable.ic_action_user_add :
R.drawable.ic_action_user_add_dark;
}
avatar.setImageResource(resource);
service.setVisibility(View.GONE);
}
}
}