Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ff42a071 authored by Danny Baumann's avatar Danny Baumann Committed by Bruno Martins
Browse files

Re-add call statistics.

Change-Id: I9f2b6e912ca69a5aa7a1790bed06304ee953e752
parent 8f7c0845
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -80,6 +80,7 @@ RES_DIRS := \
	$(BASE_DIR)/dialer/calllog/ui/res \
	$(BASE_DIR)/dialer/calllogutils/res \
	$(BASE_DIR)/dialer/callrecord/res \
	$(BASE_DIR)/dialer/callstats/res \
	$(BASE_DIR)/dialer/common/res \
	$(BASE_DIR)/dialer/contactactions/res \
	$(BASE_DIR)/dialer/contactsfragment/res \
@@ -142,6 +143,7 @@ DIALER_MANIFEST_FILES += \
	$(BASE_DIR)/dialer/calllog/ui/AndroidManifest.xml \
	$(BASE_DIR)/dialer/calllogutils/AndroidManifest.xml \
	$(BASE_DIR)/dialer/callrecord/AndroidManifest.xml \
	$(BASE_DIR)/dialer/callstats/AndroidManifest.xml \
	$(BASE_DIR)/dialer/common/AndroidManifest.xml \
	$(BASE_DIR)/dialer/contactactions/AndroidManifest.xml \
	$(BASE_DIR)/dialer/contactsfragment/AndroidManifest.xml \
+27 −6
Original line number Diff line number Diff line
@@ -34,6 +34,8 @@ import com.android.dialer.app.DialtactsActivity;
import com.android.dialer.app.R;
import com.android.dialer.app.calllog.ClearCallLogDialog.Listener;
import com.android.dialer.calldetails.CallDetailsActivity;
import com.android.dialer.callstats.CallStatsFragment;
import com.android.dialer.callstats.DoubleDatePickerDialog;
import com.android.dialer.database.CallLogQueryHandler;
import com.android.dialer.enrichedcall.EnrichedCallComponent;
import com.android.dialer.logging.Logger;
@@ -45,16 +47,18 @@ import com.android.dialer.util.TransactionSafeActivity;
import com.android.dialer.util.ViewUtil;

/** Activity for viewing call history. */
public class CallLogActivity extends TransactionSafeActivity
    implements ViewPager.OnPageChangeListener, Listener {
public class CallLogActivity extends TransactionSafeActivity implements
    ViewPager.OnPageChangeListener, DoubleDatePickerDialog.OnDateSetListener, Listener {

  private static final int TAB_INDEX_ALL = 0;
  private static final int TAB_INDEX_MISSED = 1;
  private static final int TAB_INDEX_COUNT = 2;
  private static final int TAB_INDEX_STATS = 2;
  private static final int TAB_INDEX_COUNT = 3;
  private ViewPager mViewPager;
  private ViewPagerTabs mViewPagerTabs;
  private ViewPagerAdapter mViewPagerAdapter;
  private CallLogFragment mAllCallsFragment;
  private CallStatsFragment mStatsFragment;
  private String[] mTabTitles;
  private boolean mIsResumed;

@@ -83,6 +87,7 @@ public class CallLogActivity extends TransactionSafeActivity
    mTabTitles = new String[TAB_INDEX_COUNT];
    mTabTitles[0] = getString(R.string.call_log_all_title);
    mTabTitles[1] = getString(R.string.call_log_missed_title);
    mTabTitles[2] = getString(R.string.call_log_stats_title);

    mViewPager = (ViewPager) findViewById(R.id.call_log_pager);

@@ -172,6 +177,15 @@ public class CallLogActivity extends TransactionSafeActivity
    mViewPagerTabs.onPageScrollStateChanged(state);
  }

  @Override
  public void onDateSet(long from, long to) {
    switch (mViewPager.getCurrentItem()) {
      case TAB_INDEX_STATS:
        mStatsFragment.onDateSet(from, to);
        break;
    }
  }

  private void sendScreenViewForChildFragment() {
    Logger.get(this).logScreenView(ScreenEvent.Type.CALL_LOG_FILTER, this);
  }
@@ -218,6 +232,8 @@ public class CallLogActivity extends TransactionSafeActivity
              CallLogQueryHandler.CALL_TYPE_ALL, true /* isCallLogActivity */);
        case TAB_INDEX_MISSED:
          return new CallLogFragment(Calls.MISSED_TYPE, true /* isCallLogActivity */);
        case TAB_INDEX_STATS:
          return new CallStatsFragment();
        default:
          throw new IllegalStateException("No fragment at position " + position);
      }
@@ -225,9 +241,14 @@ public class CallLogActivity extends TransactionSafeActivity

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
      final CallLogFragment fragment = (CallLogFragment) super.instantiateItem(container, position);
      if (position == TAB_INDEX_ALL) {
          mAllCallsFragment = fragment;
      final Object fragment = super.instantiateItem(container, position);
      switch (getRtlPosition(position)) {
        case TAB_INDEX_ALL:
          mAllCallsFragment = (CallLogFragment) fragment;
          break;
        case TAB_INDEX_STATS:
          mStatsFragment = (CallStatsFragment) fragment;
          break;
      }
      return fragment;
    }
+2 −2
Original line number Diff line number Diff line
@@ -34,7 +34,8 @@ public class ExpirableCacheHeadlessFragment extends Fragment {
  private static final String FRAGMENT_TAG = "ExpirableCacheHeadlessFragment";
  private static final int CONTACT_INFO_CACHE_SIZE = 100;

  private ExpirableCache<NumberWithCountryIso, ContactInfo> retainedCache;
  private ExpirableCache<NumberWithCountryIso, ContactInfo> retainedCache =
      ExpirableCache.create(CONTACT_INFO_CACHE_SIZE);

  @NonNull
  public static ExpirableCacheHeadlessFragment attach(@NonNull AppCompatActivity parentActivity) {
@@ -57,7 +58,6 @@ public class ExpirableCacheHeadlessFragment extends Fragment {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    retainedCache = ExpirableCache.create(CONTACT_INFO_CACHE_SIZE);
    setRetainInstance(true);
  }

+26 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2013-2014 The CyanogenMod Project
     Copyright (C) 2018 The LineageOS Project

     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.
-->
<resources>
    <declare-styleable name="LinearColorBar">
        <attr name="redColor" format="color" />
        <attr name="greenColor" format="color" />
        <attr name="blueColor" format="color" />
        <attr name="orangeColor" format="color" />
        <attr name="backgroundColor" format="color" />
    </declare-styleable>
</resources>
+2 −0
Original line number Diff line number Diff line
@@ -41,4 +41,6 @@

    <string name="call_via">Call via</string>
    <string name="call_via_dialog_title">Call via\u2026</string>

    <string name="call_log_stats_title">Statistics</string>
</resources>
Loading