/**
* galaxy inc.
* meetup client for android
*/
package com.galaxy.meetup.client.android.ui.activity.setting;
import java.util.Map;
import android.app.Dialog;
import android.content.BroadcastReceiver;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.content.IntentFilter;
import android.database.sqlite.SQLiteException;
import android.net.ConnectivityManager;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.support.v4.content.AsyncTaskLoader;
import android.text.TextUtils;
import android.util.Log;
import android.widget.Switch;
import android.widget.Toast;
import com.galaxy.meetup.client.android.InstantUpload;
import com.galaxy.meetup.client.android.R;
import com.galaxy.meetup.client.android.analytics.EsAnalytics;
import com.galaxy.meetup.client.android.analytics.OzActions;
import com.galaxy.meetup.client.android.analytics.OzViews;
import com.galaxy.meetup.client.android.content.EsAccount;
import com.galaxy.meetup.client.android.content.EsAccountsData;
import com.galaxy.meetup.client.android.iu.InstantUploadFacade;
import com.galaxy.meetup.client.util.AccountsUtil;
/**
*
* @author sihai
*
*/
public class InstantUploadSettingsActivity extends BaseSettingsActivity implements OnClickListener {
private static final Uri BUY_QUTOA_URI = Uri.parse("https://www.google.com/settings/storage/");
private static final Uri LEARN_MORE_URI = Uri.parse("https://support.google.com/plus/?p=full_size_upload");
private static final String PROJECTION_PICASA_SETTINGS[] = {
"auto_upload_enabled", "sync_on_wifi_only", "sync_on_roaming", "sync_on_battery", "video_upload_wifi_only", "upload_full_resolution", "quota_limit", "quota_used"
};
private static String sBuyQuotaKey;
private static String sConnectionPhotoKey;
private static String sConnectionVideoKey;
private static String sInstantUploadKey;
private static String sLearnMoreKey;
private static IntentFilter sMatchFilter;
private static String sOnBatteryKey;
private static String sRoamingUploadKey;
private static String sSyncNowKey;
private static String sUploadSizeKey;
private static boolean sWifiOnly;
private boolean mIsReceiverRegistered;
private boolean mIsUploading;
private boolean mMasterSyncEnabled;
private boolean mPhotoSyncEnabled;
private int mQuotaLimit;
private int mQuotaUsed;
private AsyncTaskLoader mSettingsLoader;
private final BroadcastReceiver mUploadsProgressReceiver = new BroadcastReceiver() {
public final void onReceive(Context context, Intent intent)
{
if(intent != null && "iu.upload_all_progress".equals(intent.getAction()))
{
final int progress = intent.getIntExtra("upload_all_progress", -1);
final int total = intent.getIntExtra("upload_all_count", -1);
final int state = intent.getIntExtra("upload_all_state", -1);
mHandler.post(new Runnable() {
public final void run()
{
InstantUploadSettingsActivity instantuploadsettingsactivity = InstantUploadSettingsActivity.this;
boolean flag;
String s;
String s1;
if(total != progress)
flag = true;
else
flag = false;
instantuploadsettingsactivity.mIsUploading = flag;
if(!mIsUploading)
{
s = getString(R.string.photo_sync_preference_title);
s1 = getString(R.string.photo_sync_preference_summary);
Toast.makeText(instantuploadsettingsactivity, R.string.photo_upload_finished, 0).show();
unregisterReceiver(mUploadsProgressReceiver);
} else
{
s = getString(R.string.photo_sync_preference_cancel_title);
if(state == 0 || state == 1)
{
int i = R.string.photo_upload_now_inprogress_summary;
Object aobj[] = new Object[2];
aobj[0] = Integer.valueOf(progress);
aobj[1] = Integer.valueOf(total);
s1 = instantuploadsettingsactivity.getString(i, aobj);
} else
{
String s2 = InstantUploadSettingsActivity.access$200(instantuploadsettingsactivity, state);
s1 = getString(R.string.photo_upload_now_paused_summary, new Object[] {
s2
});
}
}
Preference preference = findPreference(InstantUploadSettingsActivity.sSyncNowKey);
preference.setTitle(s);
preference.setSummary(s1);
}
});
}
}
};
public InstantUploadSettingsActivity()
{
mQuotaLimit = -1;
mQuotaUsed = -1;
}
private void recordUserAction(OzActions ozactions)
{
EsAccount esaccount = getAccount();
if(esaccount != null)
EsAnalytics.recordActionEvent(this, esaccount, ozactions, OzViews.getViewForLogging(this));
}
private void updateEnabledStates(boolean flag)
{
boolean flag1 = true;
boolean flag2 = InstantUploadFacade.isOutOfQuota(mQuotaLimit, mQuotaUsed);
Preference preference = findPreference(sConnectionPhotoKey);
boolean flag3;
Preference preference1;
boolean flag4;
Preference preference2;
boolean flag5;
Preference preference3;
boolean flag6;
Preference preference4;
boolean flag7;
Preference preference5;
boolean flag8;
Preference preference6;
if(!flag || !sWifiOnly)
flag3 = flag1;
else
flag3 = false;
preference.setShouldDisableView(flag3);
preference1 = findPreference(sConnectionPhotoKey);
if(flag && !sWifiOnly)
flag4 = flag1;
else
flag4 = false;
preference1.setEnabled(flag4);
preference2 = findPreference(sConnectionVideoKey);
if(!flag || !sWifiOnly)
flag5 = flag1;
else
flag5 = false;
preference2.setShouldDisableView(flag5);
preference3 = findPreference(sConnectionVideoKey);
if(flag && !sWifiOnly)
flag6 = flag1;
else
flag6 = false;
preference3.setEnabled(flag6);
preference4 = findPreference(sUploadSizeKey);
if(flag && !flag2)
flag7 = flag1;
else
flag7 = false;
preference4.setEnabled(flag7);
findPreference(sBuyQuotaKey).setEnabled(flag);
findPreference(sLearnMoreKey).setEnabled(flag1);
preference5 = findPreference(sRoamingUploadKey);
if(!flag || !sWifiOnly)
flag8 = flag1;
else
flag8 = false;
preference5.setShouldDisableView(flag8);
preference6 = findPreference(sRoamingUploadKey);
if(!flag || sWifiOnly)
flag1 = false;
preference6.setEnabled(flag1);
findPreference(sOnBatteryKey).setEnabled(flag);
findPreference(sSyncNowKey).setEnabled(flag);
}
public void onClick(DialogInterface dialoginterface, int i) {
if(-1 == i) {
mIsUploading = true;
recordUserAction(OzActions.CS_SETTINGS_SYNC_ALL);
Preference preference = findPreference(sSyncNowKey);
preference.setTitle(R.string.photo_sync_preference_cancel_title);
preference.setSummary(R.string.photo_upload_starting_summary);
AsyncTask asynctask = new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
Uri uri = InstantUploadFacade.UPLOAD_ALL_URI;
ContentValues contentvalues = new ContentValues();
contentvalues.put("account", getAccount().getName());
getContentResolver().insert(uri, contentvalues);
return null;
}
};
registerReceiver(mUploadsProgressReceiver, sMatchFilter);
asynctask.execute(new Void[] {
null
});
}
dismissDialog(0);
}
public void onCreate(Bundle bundle)
{
super.onCreate(bundle);
if(sInstantUploadKey == null)
{
sInstantUploadKey = getString(R.string.photo_instant_upload_preference_key);
sRoamingUploadKey = getString(R.string.photo_roaming_upload_preference_key);
sOnBatteryKey = getString(R.string.photo_on_battery_preference_key);
sConnectionPhotoKey = getString(R.string.photo_connection_preference_key);
sConnectionVideoKey = getString(R.string.video_connection_preference_key);
sSyncNowKey = getString(R.string.photo_sync_preference_key);
sUploadSizeKey = getString(R.string.photo_upload_size_preference_key);
sBuyQuotaKey = getString(R.string.photo_buy_quota_preference_key);
sLearnMoreKey = getString(R.string.photo_learn_more_preference_key);
IntentFilter intentfilter = new IntentFilter();
sMatchFilter = intentfilter;
intentfilter.addAction("iu.upload_all_progress");
android.net.NetworkInfo networkinfo = ((ConnectivityManager)getSystemService("connectivity")).getNetworkInfo(0);
boolean flag = false;
if(networkinfo == null)
flag = true;
sWifiOnly = flag;
}
addPreferencesFromResource(R.xml.photo_preferences);
PhotoPreferenceChangeListener photopreferencechangelistener = new PhotoPreferenceChangeListener();
Preference preference = findPreference(sInstantUploadKey);
preference.setOnPreferenceChangeListener(photopreferencechangelistener);
hookMasterSwitch(null, (CheckBoxPreference)preference);
findPreference(sConnectionPhotoKey).setOnPreferenceChangeListener(photopreferencechangelistener);
findPreference(sConnectionVideoKey).setOnPreferenceChangeListener(photopreferencechangelistener);
findPreference(sRoamingUploadKey).setOnPreferenceChangeListener(photopreferencechangelistener);
findPreference(sOnBatteryKey).setOnPreferenceChangeListener(photopreferencechangelistener);
findPreference(sUploadSizeKey).setOnPreferenceChangeListener(photopreferencechangelistener);
findPreference(sBuyQuotaKey).setOnPreferenceClickListener(new android.preference.Preference.OnPreferenceClickListener() {
public final boolean onPreferenceClick(Preference preference1)
{
Intent intent = new Intent("android.intent.action.VIEW");
intent.setData(InstantUploadSettingsActivity.BUY_QUTOA_URI);
startActivity(intent);
return true;
}
});
findPreference(sLearnMoreKey).setOnPreferenceClickListener(new android.preference.Preference.OnPreferenceClickListener() {
public final boolean onPreferenceClick(Preference preference1)
{
Intent intent = new Intent("android.intent.action.VIEW");
intent.setData(InstantUploadSettingsActivity.LEARN_MORE_URI);
startActivity(intent);
return true;
}
});
findPreference(sSyncNowKey).setOnPreferenceClickListener(new android.preference.Preference.OnPreferenceClickListener() {
public final boolean onPreferenceClick(Preference preference1)
{
if(!mIsUploading)
{
showDialog(0);
} else
{
mIsUploading = false;
unregisterReceiver(mUploadsProgressReceiver);
getContentResolver().delete(InstantUploadSettingsActivity.access$600(InstantUploadSettingsActivity.this), null, null);
preference1.setTitle(getString(R.string.photo_sync_preference_title));
preference1.setSummary(getString(R.string.photo_sync_preference_summary));
}
return true;
}
});
updateEnabledStates(((CheckBoxPreference)preference).isChecked());
}
public Dialog onCreateDialog(int i, Bundle bundle)
{
android.app.AlertDialog alertdialog;
if(i == 0)
{
android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(this);
builder.setMessage(R.string.photo_upload_confirmation);
builder.setPositiveButton(R.string.yes, this);
builder.setNegativeButton(R.string.no, this);
alertdialog = builder.create();
} else
{
alertdialog = null;
}
return alertdialog;
}
protected void onDestroy()
{
super.onDestroy();
if(mSettingsLoader != null)
mSettingsLoader.reset();
}
public void onPause()
{
super.onPause();
if(mSettingsLoader != null)
mSettingsLoader.stopLoading();
unregisterReceiver(mUploadsProgressReceiver);
}
public void onResume()
{
super.onResume();
mPhotoSyncEnabled = ContentResolver.getSyncAutomatically(AccountsUtil.newAccount(getAccount().getName()), "iu.EsGoogleIuProvider");
mMasterSyncEnabled = ContentResolver.getMasterSyncAutomatically();
if(mMasterSyncEnabled && mPhotoSyncEnabled)
{
if(mSettingsLoader == null)
mSettingsLoader = new SystemSettingLoader(this);
mSettingsLoader.startLoading();
} else
{
finish();
}
}
public Intent registerReceiver(BroadcastReceiver broadcastreceiver, IntentFilter intentfilter)
{
boolean flag = mIsReceiverRegistered;
Intent intent = null;
if(!flag)
{
intent = super.registerReceiver(broadcastreceiver, intentfilter);
mIsReceiverRegistered = true;
}
return intent;
}
public void unregisterReceiver(BroadcastReceiver broadcastreceiver)
{
if(mIsReceiverRegistered)
{
super.unregisterReceiver(broadcastreceiver);
mIsReceiverRegistered = false;
}
}
//============================================================================================================
//
//============================================================================================================
static void access$2200(InstantUploadSettingsActivity instantuploadsettingsactivity, Map map)
{
if(!(map != null && instantuploadsettingsactivity.mMasterSyncEnabled && instantuploadsettingsactivity.mPhotoSyncEnabled)) {
return;
}
int i1;
String s4;
String s6;
String s7;
CheckBoxPreference checkboxpreference = (CheckBoxPreference)instantuploadsettingsactivity.findPreference(sInstantUploadKey);
Integer integer = (Integer)map.get("auto_upload_enabled");
boolean flag;
boolean flag2;
boolean flag3;
int i;
String s;
int j;
int k;
String s1;
int l;
boolean flag4;
CheckBoxPreference checkboxpreference1;
CheckBoxPreference checkboxpreference2;
ListPreference listpreference;
ListPreference listpreference1;
String s2;
String s3;
EsListPreference eslistpreference;
String s9;
boolean flag5;
if(integer.intValue() == 1)
flag = true;
else
flag = false;
if(checkboxpreference == null)
{
Switch switch1 = instantuploadsettingsactivity.getMasterSwitch();
if(integer.intValue() == 1)
flag5 = true;
else
flag5 = false;
switch1.setChecked(flag5);
} else
{
boolean flag1;
if(integer.intValue() == 1)
flag1 = true;
else
flag1 = false;
checkboxpreference.setChecked(flag1);
}
checkboxpreference1 = (CheckBoxPreference)instantuploadsettingsactivity.findPreference(sRoamingUploadKey);
if(((Integer)map.get("sync_on_roaming")).intValue() == 1)
flag2 = true;
else
flag2 = false;
checkboxpreference1.setChecked(flag2);
checkboxpreference2 = (CheckBoxPreference)instantuploadsettingsactivity.findPreference(sOnBatteryKey);
if(((Integer)map.get("sync_on_battery")).intValue() != 1)
flag3 = true;
else
flag3 = false;
checkboxpreference2.setChecked(flag3);
listpreference = (ListPreference)instantuploadsettingsactivity.findPreference(sConnectionPhotoKey);
if(sWifiOnly)
i = 1;
else
i = ((Integer)map.get("sync_on_wifi_only")).intValue();
if(Integer.valueOf(i).intValue() == 1)
{
s = "WIFI_ONLY";
j = R.string.photo_connection_preference_summary_wifi;
} else
{
s = "WIFI_OR_MOBILE";
j = R.string.photo_connection_preference_summary_mobile;
}
listpreference.setSummary(j);
listpreference.setValue(s);
listpreference1 = (ListPreference)instantuploadsettingsactivity.findPreference(sConnectionVideoKey);
if(sWifiOnly)
k = 1;
else
k = ((Integer)map.get("video_upload_wifi_only")).intValue();
if(Integer.valueOf(k).intValue() == 1)
{
s1 = "WIFI_ONLY";
l = R.string.video_connection_preference_summary_wifi;
} else
{
s1 = "WIFI_OR_MOBILE";
l = R.string.video_connection_preference_summary_mobile;
}
listpreference1.setSummary(l);
listpreference1.setValue(s1);
i1 = ((Integer)map.get("upload_full_resolution")).intValue();
instantuploadsettingsactivity.mQuotaLimit = ((Integer)map.get("quota_limit")).intValue();
instantuploadsettingsactivity.mQuotaUsed = ((Integer)map.get("quota_used")).intValue();
if(instantuploadsettingsactivity.mQuotaLimit != -1 && instantuploadsettingsactivity.mQuotaUsed != -1)
flag4 = true;
else
flag4 = false;
s2 = InstantUpload.getSizeText(instantuploadsettingsactivity, instantuploadsettingsactivity.mQuotaLimit);
s3 = InstantUpload.getSizeText(instantuploadsettingsactivity, instantuploadsettingsactivity.mQuotaLimit - instantuploadsettingsactivity.mQuotaUsed);
if(flag4)
s4 = instantuploadsettingsactivity.getString(R.string.photo_upload_size_quota_available, new Object[] {
s3, s2
});
else
s4 = instantuploadsettingsactivity.getString(R.string.photo_upload_size_quota_unknown);
if(InstantUploadFacade.isOutOfQuota(instantuploadsettingsactivity.mQuotaLimit, instantuploadsettingsactivity.mQuotaUsed)) {
s9 = instantuploadsettingsactivity.getString(R.string.photo_upload_size_preference_summary_overquota);
s6 = s1;
s7 = s9;
} else {
if(i1 == 1)
{
String s8 = instantuploadsettingsactivity.getString(R.string.photo_upload_size_preference_summary_full, new Object[] {
s4
});
s6 = "FULL";
s7 = s8;
} else
{
String s5 = instantuploadsettingsactivity.getString(R.string.photo_upload_size_preference_summary_standard);
s6 = "STANDARD";
s7 = s5;
}
}
eslistpreference = (EsListPreference)instantuploadsettingsactivity.findPreference(sUploadSizeKey);
eslistpreference.setSummary(s7);
eslistpreference.setValue(s6);
eslistpreference.setEntrySummaryArgument(s4);
instantuploadsettingsactivity.updateEnabledStates(flag);
}
static String access$200(InstantUploadSettingsActivity instantuploadsettingsactivity, int i) {
String s = null;
switch(i) {
case 0:
case 1:
s = null;
break;
case 2:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_no_wifi);
break;
case 3:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_roaming);
break;
case 4:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_no_power);
break;
case 8:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_no_background_data);
break;
case 9:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_quota);
break;
case 5:
case 10:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_user_auth);
break;
case 11:
case 12:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_no_sdcard);
break;
case 6:
case 7:
default:
s = instantuploadsettingsactivity.getString(R.string.photo_upload_now_status_unknown);
break;
}
return s;
}
static Uri access$600(InstantUploadSettingsActivity instantuploadsettingsactivity)
{
EsAccount esaccount = instantuploadsettingsactivity.getAccount();
android.net.Uri.Builder builder = InstantUploadFacade.UPLOAD_ALL_URI.buildUpon();
builder.appendQueryParameter("account", esaccount.getName());
return builder.build();
}
final class PhotoPreferenceChangeListener implements android.preference.Preference.OnPreferenceChangeListener {
public final boolean onPreferenceChange(final Preference preference, final Object obj)
{
final EsAccount account = getAccount();
String s = preference.getKey();
if(TextUtils.equals(InstantUploadSettingsActivity.sInstantUploadKey, s)) {
final Boolean boolean5 = (Boolean)obj;
updateEnabledStates(boolean5.booleanValue());
OzActions ozactions1;
if(boolean5.booleanValue())
ozactions1 = OzActions.CS_SETTINGS_OPTED_IN;
else
ozactions1 = OzActions.CS_SETTINGS_OPTED_OUT;
InstantUploadSettingsActivity.this.recordUserAction(ozactions1);
(new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
EsAccountsData.saveInstantUploadEnabled(InstantUploadSettingsActivity.this, account, boolean5.booleanValue());
InstantUpload.enableInstantUpload(InstantUploadSettingsActivity.this, account, boolean5.booleanValue());
return null;
}
}).execute((Object[])null);
} else if(TextUtils.equals(InstantUploadSettingsActivity.sRoamingUploadKey, s)) {
final Boolean boolean4 = (Boolean)obj;
OzActions ozactions;
if(boolean4.booleanValue())
ozactions = OzActions.CS_SETTINGS_ROAMING_ENABLED;
else
ozactions = OzActions.CS_SETTINGS_ROAMING_DISABLED;
recordUserAction(ozactions);
(new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
InstantUpload.setRoamingUploadSetting(InstantUploadSettingsActivity.this, boolean4.booleanValue());
return null;
}
}).execute((Object[])null);
} else if(TextUtils.equals(InstantUploadSettingsActivity.sOnBatteryKey, s)) {
final Boolean boolValue = (Boolean)obj;
(new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
InstantUploadSettingsActivity instantuploadsettingsactivity = InstantUploadSettingsActivity.this;
boolean flag;
if(!boolValue.booleanValue())
flag = true;
else
flag = false;
InstantUpload.setOnBatterySetting(instantuploadsettingsactivity, flag);
return null;
}
}).execute((Object[])null);
} else if(TextUtils.equals(InstantUploadSettingsActivity.sConnectionPhotoKey, s)) {
String s6 = (String)obj;
Boolean boolean3;
if(TextUtils.equals(s6, "WIFI_ONLY"))
{
recordUserAction(OzActions.CS_SETTINGS_UPLOAD_VIA_PHOTOS_AND_VIDEOS_VIA_WIFI_ONLY);
preference.setSummary(R.string.photo_connection_preference_summary_wifi);
boolean3 = Boolean.valueOf(true);
} else
if(TextUtils.equals(s6, "WIFI_OR_MOBILE"))
{
recordUserAction(OzActions.CS_SETTINGS_UPLOAD_VIA_PHOTOS_AND_VIDEOS_VIA_MOBILE);
preference.setSummary(R.string.photo_connection_preference_summary_mobile);
boolean3 = Boolean.valueOf(false);
} else
{
boolean3 = null;
}
if(boolean3 != null) {
final Boolean wifiOnly = boolean3;
(new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
EsAccountsData.saveInstantUploadPhotoWifiOnly(InstantUploadSettingsActivity.this, account, wifiOnly.booleanValue());
InstantUpload.setPhotoWiFiOnlySetting(InstantUploadSettingsActivity.this, wifiOnly.booleanValue());
return null;
}
}).execute((Object[])null);
}
} else if(TextUtils.equals(InstantUploadSettingsActivity.sConnectionVideoKey, s)) {
String s5 = (String)obj;
Boolean boolean2;
if(TextUtils.equals(s5, "WIFI_ONLY"))
{
recordUserAction(OzActions.CS_SETTINGS_UPLOAD_VIA_VIDEOS_VIA_WIFI_ONLY);
preference.setSummary(R.string.video_connection_preference_summary_wifi);
boolean2 = Boolean.valueOf(true);
} else
if(TextUtils.equals(s5, "WIFI_OR_MOBILE"))
{
recordUserAction(OzActions.CS_SETTINGS_UPLOAD_VIA_VIDEOS_VIA_MOBILE);
preference.setSummary(R.string.video_connection_preference_summary_mobile);
boolean2 = Boolean.valueOf(false);
} else
{
boolean2 = null;
}
if(boolean2 != null) {
final Boolean wifiOnly = boolean2;
(new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
EsAccountsData.saveInstantUploadVideoWifiOnly(InstantUploadSettingsActivity.this, account, wifiOnly.booleanValue());
InstantUpload.setVideoWiFiOnlySetting(InstantUploadSettingsActivity.this, wifiOnly.booleanValue());
return null;
}
}).execute((Object[])null);
}
} else if(TextUtils.equals(InstantUploadSettingsActivity.sUploadSizeKey, s)) {
String s1 = (String)obj;
boolean flag;
String s2;
String s3;
String s4;
Boolean boolean1;
if(mQuotaLimit != -1 && mQuotaUsed != -1)
flag = true;
else
flag = false;
s2 = InstantUpload.getSizeText(InstantUploadSettingsActivity.this, mQuotaLimit);
s3 = InstantUpload.getSizeText(InstantUploadSettingsActivity.this, mQuotaLimit - mQuotaUsed);
if(flag)
s4 = getString(R.string.photo_upload_size_quota_available, new Object[] {
s3, s2
});
else
s4 = getString(R.string.photo_upload_size_quota_unknown);
if(TextUtils.equals(s1, "FULL"))
{
recordUserAction(OzActions.ENABLE_FULL_SIZE_PHOTO_UPLOAD);
preference.setSummary(getString(R.string.photo_upload_size_preference_summary_full, new Object[] {
s4
}));
boolean1 = Boolean.valueOf(true);
} else
{
recordUserAction(OzActions.ENABLE_STANDARD_SIZE_PHOTO_UPLOAD);
preference.setSummary(R.string.photo_upload_size_preference_summary_standard);
boolean1 = Boolean.valueOf(false);
}
final Boolean fullResolution = boolean1;
(new AsyncTask() {
protected final Object doInBackground(Object aobj[])
{
InstantUpload.setFullResolutionSetting(InstantUploadSettingsActivity.this, fullResolution.booleanValue());
return null;
}
}).execute((Object[])null);
}
return true;
}
}
static final class SystemSettingLoader extends AsyncTaskLoader {
private final InstantUploadSettingsActivity mActivity;
private boolean mLoaderException;
private final android.support.v4.content.Loader.ForceLoadContentObserver mObserver = new android.support.v4.content.Loader.ForceLoadContentObserver();
private boolean mObserverRegistered;
public SystemSettingLoader(InstantUploadSettingsActivity instantuploadsettingsactivity)
{
super(instantuploadsettingsactivity);
mActivity = instantuploadsettingsactivity;
}
private Map esLoadInBackground()
{
// TODO
return null;
}
public Map loadInBackground() {
if(mLoaderException)
return null;
try {
return esLoadInBackground();
} catch(SQLiteException sqliteexception) {
Log.w("EsAsyncTaskLoader", "loadInBackground failed", sqliteexception);
mLoaderException = true;
return null;
}
}
public final void deliverResult(Object obj)
{
Map map = (Map)obj;
if(!mLoaderException && isStarted())
{
super.deliverResult(map);
InstantUploadSettingsActivity.access$2200(mActivity, map);
}
}
protected final void onAbandon()
{
if(mObserverRegistered)
{
getContext().getContentResolver().unregisterContentObserver(mObserver);
mObserverRegistered = false;
}
}
protected final void onReset()
{
onAbandon();
}
protected final void onStartLoading()
{
if(!mObserverRegistered)
{
getContext().getContentResolver().registerContentObserver(InstantUploadFacade.SETTINGS_URI, true, mObserver);
mObserverRegistered = true;
}
forceLoad();
}
}
}