diff options
Diffstat (limited to 'src/com/android/browser/AutoFillSettingsFragment.java')
-rw-r--r-- | src/com/android/browser/AutoFillSettingsFragment.java | 86 |
1 files changed, 13 insertions, 73 deletions
diff --git a/src/com/android/browser/AutoFillSettingsFragment.java b/src/com/android/browser/AutoFillSettingsFragment.java index b650ede..e41ca56 100644 --- a/src/com/android/browser/AutoFillSettingsFragment.java +++ b/src/com/android/browser/AutoFillSettingsFragment.java @@ -17,26 +17,20 @@ package com.android.browser; import android.app.Fragment; -import android.database.Cursor; -import android.database.sqlite.SQLiteDatabase; -import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.ViewGroup; import android.view.View.OnClickListener; import android.view.LayoutInflater; +import android.webkit.WebSettings.AutoFillProfile; import android.widget.Button; import android.widget.EditText; -import android.widget.Toast; public class AutoFillSettingsFragment extends Fragment { private static final String LOGTAG = "AutoFillSettingsFragment"; - // TODO: This will become dynamic once we support more than one profile. - private int mProfileId = 1; - public AutoFillSettingsFragment() { } @@ -59,13 +53,21 @@ public class AutoFillSettingsFragment extends Fragment { R.id.autofill_profile_editor_name_edit); EditText email = (EditText)v.findViewById( R.id.autofill_profile_editor_email_address_edit); - new SaveProfileToDbTask().execute(fullName.getText().toString(), - email.getText().toString()); + BrowserSettings.getInstance().setAutoFillProfile(getActivity(), + new AutoFillProfile( + fullName.getText().toString(), + email.getText().toString())); } }); - // Load the profile and populate the text views in the background - new LoadProfileFromDbTask().execute(mProfileId); + // Populate the text boxes with any pre existing AutoFill data. + EditText fullName = (EditText)v.findViewById( + R.id.autofill_profile_editor_name_edit); + EditText email = (EditText)v.findViewById( + R.id.autofill_profile_editor_email_address_edit); + AutoFillProfile activeProfile = BrowserSettings.getInstance().getAutoFillProfile(); + fullName.setText(activeProfile.getFullName()); + email.setText(activeProfile.getEmailAddress()); return v; } @@ -77,66 +79,4 @@ public class AutoFillSettingsFragment extends Fragment { db.close(); super.onPause(); } - - private class SaveProfileToDbTask extends AsyncTask<String, Void, Void> { - protected Void doInBackground(String... values) { - AutoFillProfileDatabase db = - AutoFillProfileDatabase.getInstance(getActivity()); - db.addOrUpdateProfile(mProfileId, values[0], values[1]); - return null; - } - - protected void onPostExecute(Void result) { - Toast.makeText(getActivity(), "Saved profile", Toast.LENGTH_SHORT).show(); - } - } - - private static class LoadedProfileData { - private String mFullName; - private String mEmailAddress; - - public LoadedProfileData(String fullName, String emailAddress) { - mFullName = fullName; - mEmailAddress = emailAddress; - } - - public String getFullName() { return mFullName; } - public String getEmailAddress() { return mEmailAddress; } - } - - private class LoadProfileFromDbTask extends AsyncTask<Integer, Void, LoadedProfileData> { - protected LoadedProfileData doInBackground(Integer... id) { - AutoFillProfileDatabase db = AutoFillProfileDatabase.getInstance(getActivity()); - Cursor c = db.getProfile(id[0]); - c.moveToFirst(); - - LoadedProfileData profileData = null; - - if (c.getCount() > 0) { - String fullName = c.getString(c.getColumnIndex( - AutoFillProfileDatabase.Profiles.FULL_NAME)); - String email = c.getString(c.getColumnIndex( - AutoFillProfileDatabase.Profiles.EMAIL_ADDRESS)); - profileData = new LoadedProfileData(fullName, email); - } - c.close(); - return profileData; - } - - protected void onPostExecute(LoadedProfileData data) { - if (data == null) { - return; - } - - View v = getView(); - if (v != null) { - EditText fullName = (EditText)v.findViewById( - R.id.autofill_profile_editor_name_edit); - EditText email = (EditText)v.findViewById( - R.id.autofill_profile_editor_email_address_edit); - fullName.setText(data.getFullName()); - email.setText(data.getEmailAddress()); - } - } - } } |