summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/emergency/EmergencyTabActivity.java7
-rw-r--r--src/com/android/emergency/edit/EditInfoActivity.java11
-rw-r--r--src/com/android/emergency/preferences/ContactPreference.java16
-rw-r--r--src/com/android/emergency/view/ViewInfoActivity.java4
4 files changed, 27 insertions, 11 deletions
diff --git a/src/com/android/emergency/EmergencyTabActivity.java b/src/com/android/emergency/EmergencyTabActivity.java
index 88aaf3e..8ce2e2c 100644
--- a/src/com/android/emergency/EmergencyTabActivity.java
+++ b/src/com/android/emergency/EmergencyTabActivity.java
@@ -125,11 +125,16 @@ public abstract class EmergencyTabActivity extends Activity {
return mFragments.size();
}
+ /** Return the adapter. */
+ protected ViewPagerAdapter getTabsAdapter() {
+ return mTabsAdapter;
+ }
+
/** Returns the fragments to show in the tabs. */
protected abstract ArrayList<Pair<String, Fragment>> setUpFragments();
/** The adapter used to handle the two fragments. */
- private class ViewPagerAdapter extends FragmentStatePagerAdapter {
+ protected class ViewPagerAdapter extends FragmentStatePagerAdapter {
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
}
diff --git a/src/com/android/emergency/edit/EditInfoActivity.java b/src/com/android/emergency/edit/EditInfoActivity.java
index c2ac029..66e3480 100644
--- a/src/com/android/emergency/edit/EditInfoActivity.java
+++ b/src/com/android/emergency/edit/EditInfoActivity.java
@@ -143,13 +143,10 @@ public class EditInfoActivity extends EmergencyTabActivity {
sharedPreferences.edit().remove(PreferenceKeys.KEY_EMERGENCY_CONTACTS).commit();
// Refresh the UI.
- ArrayList<Pair<String, Fragment>> fragments = getFragments();
- EditEmergencyInfoFragment editEmergencyInfoFragment =
- (EditEmergencyInfoFragment) fragments.get(0).second;
- editEmergencyInfoFragment.reloadFromPreference();
- EditEmergencyContactsFragment editEmergencyContactsFragment =
- (EditEmergencyContactsFragment) fragments.get(1).second;
- editEmergencyContactsFragment.reloadFromPreference();
+ ViewPagerAdapter adapter = getTabsAdapter();
+ if (adapter != null){
+ adapter.notifyDataSetChanged();
+ }
}
/**
diff --git a/src/com/android/emergency/preferences/ContactPreference.java b/src/com/android/emergency/preferences/ContactPreference.java
index d4549eb..7262a36 100644
--- a/src/com/android/emergency/preferences/ContactPreference.java
+++ b/src/com/android/emergency/preferences/ContactPreference.java
@@ -16,9 +16,12 @@
package com.android.emergency.preferences;
import android.app.AlertDialog;
+import android.content.ComponentName;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
@@ -38,6 +41,8 @@ import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settingslib.drawable.CircleFramedDrawable;
+import java.util.List;
+
/**
* A {@link Preference} to display or call a contact using the specified URI string.
@@ -176,6 +181,15 @@ public class ContactPreference extends Preference {
public void callContact() {
Intent callIntent =
new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + mContact.getPhoneNumber()));
+ PackageManager packageManager = getContext().getPackageManager();
+ List<ResolveInfo> infos =
+ packageManager.queryIntentActivities(callIntent, PackageManager.MATCH_SYSTEM_ONLY);
+ if (infos == null || infos.isEmpty()) {
+ return;
+ }
+ callIntent.setComponent(new ComponentName(infos.get(0).activityInfo.packageName,
+ infos.get(0).activityInfo.name));
+
MetricsLogger.action(getContext(), MetricsEvent.ACTION_CALL_EMERGENCY_CONTACT);
getContext().startActivity(callIntent);
}
@@ -258,4 +272,4 @@ public class ContactPreference extends Preference {
}
};
}
-} \ No newline at end of file
+}
diff --git a/src/com/android/emergency/view/ViewInfoActivity.java b/src/com/android/emergency/view/ViewInfoActivity.java
index 639c283..6d7c156 100644
--- a/src/com/android/emergency/view/ViewInfoActivity.java
+++ b/src/com/android/emergency/view/ViewInfoActivity.java
@@ -88,7 +88,7 @@ public class ViewInfoActivity extends EmergencyTabActivity {
// Show a TextView with "No information provided" if there are no fragments.
if (getNumberFragments() == 0) {
mViewFlipper.setDisplayedChild(
- mViewFlipper.indexOfChild(findViewById(R.id.no_info_text_view)));
+ mViewFlipper.indexOfChild(findViewById(R.id.no_info)));
} else {
mViewFlipper.setDisplayedChild(mViewFlipper.indexOfChild(findViewById(R.id.tabs)));
}
@@ -135,4 +135,4 @@ public class ViewInfoActivity extends EmergencyTabActivity {
}
return fragments;
}
-} \ No newline at end of file
+}