summaryrefslogtreecommitdiff
path: root/src/com/android/dialer/calllog/CallLogActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/dialer/calllog/CallLogActivity.java')
-rw-r--r--src/com/android/dialer/calllog/CallLogActivity.java37
1 files changed, 14 insertions, 23 deletions
diff --git a/src/com/android/dialer/calllog/CallLogActivity.java b/src/com/android/dialer/calllog/CallLogActivity.java
index 97e601630..243eda9b1 100644
--- a/src/com/android/dialer/calllog/CallLogActivity.java
+++ b/src/com/android/dialer/calllog/CallLogActivity.java
@@ -15,7 +15,6 @@
*/
package com.android.dialer.calllog;
-import android.app.ActionBar;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
@@ -27,6 +26,7 @@ import android.provider.CallLog;
import android.provider.CallLog.Calls;
import android.support.v13.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
+import android.support.v7.app.ActionBar;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -39,11 +39,12 @@ import com.android.contacts.common.util.PermissionsUtil;
import com.android.contacts.commonbind.analytics.AnalyticsUtil;
import com.android.dialer.DialtactsActivity;
import com.android.dialer.R;
+import com.android.dialer.TransactionSafeActivity;
+import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.ScreenEvent;
import com.android.dialer.util.DialerUtils;
-import com.android.dialer.voicemail.VoicemailStatusHelper;
-import com.android.dialer.voicemail.VoicemailStatusHelperImpl;
-public class CallLogActivity extends Activity implements ViewPager.OnPageChangeListener {
+public class CallLogActivity extends TransactionSafeActivity implements ViewPager.OnPageChangeListener {
private ViewPager mViewPager;
private ViewPagerTabs mViewPagerTabs;
private ViewPagerAdapter mViewPagerAdapter;
@@ -73,9 +74,10 @@ public class CallLogActivity extends Activity implements ViewPager.OnPageChangeL
public Fragment getItem(int position) {
switch (getRtlPosition(position)) {
case TAB_INDEX_ALL:
- return new CallLogFragment(CallLogQueryHandler.CALL_TYPE_ALL);
+ return new CallLogFragment(
+ CallLogQueryHandler.CALL_TYPE_ALL, true /* isCallLogActivity */);
case TAB_INDEX_MISSED:
- return new CallLogFragment(Calls.MISSED_TYPE);
+ return new CallLogFragment(Calls.MISSED_TYPE, true /* isCallLogActivity */);
}
throw new IllegalStateException("No fragment at position " + position);
}
@@ -121,7 +123,7 @@ public class CallLogActivity extends Activity implements ViewPager.OnPageChangeL
setContentView(R.layout.call_log_activity);
getWindow().setBackgroundDrawable(null);
- final ActionBar actionBar = getActionBar();
+ final ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowHomeEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowTitleEnabled(true);
@@ -186,6 +188,10 @@ public class CallLogActivity extends Activity implements ViewPager.OnPageChangeL
@Override
public boolean onOptionsItemSelected(MenuItem item) {
+ if (!isSafeToCommitTransactions()) {
+ return true;
+ }
+
switch (item.getItemId()) {
case android.R.id.home:
final Intent intent = new Intent(this, DialtactsActivity.class);
@@ -218,22 +224,7 @@ public class CallLogActivity extends Activity implements ViewPager.OnPageChangeL
}
private void sendScreenViewForChildFragment(int position) {
- AnalyticsUtil.sendScreenView(CallLogFragment.class.getSimpleName(), this,
- getFragmentTagForPosition(position));
- }
-
- /**
- * Returns the fragment located at the given position in the {@link ViewPagerAdapter}. May
- * be null if the position is invalid.
- */
- private String getFragmentTagForPosition(int position) {
- switch (position) {
- case TAB_INDEX_ALL:
- return "All";
- case TAB_INDEX_MISSED:
- return "Missed";
- }
- return null;
+ Logger.logScreenView(ScreenEvent.CALL_LOG_FILTER, this);
}
private int getRtlPosition(int position) {