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

Commit 8dd6200b authored by Yorke Lee's avatar Yorke Lee
Browse files

Extract ShowAllContactsFragment and add it to its own activity

Bug: 10244050
Change-Id: I9c815aecc3fe9f0db239129749fb5be3c73f51be
parent 15ef3e1d
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@
             dialpad screen. -->
        <activity android:name=".DialtactsActivity"
            android:label="@string/launcherDialer"
            android:theme="@style/NewDialtactsTheme"
            android:theme="@style/DialtactsTheme"
            android:uiOptions="splitActionBarWhenNarrow"
            android:launchMode="singleTask"
            android:clearTaskOnLaunch="true"
@@ -119,7 +119,7 @@

        <activity android:name="com.android.dialer.calllog.CallLogActivity"
            android:label="@string/call_log_activity_title"
            android:theme="@style/NewDialtactsTheme"
            android:theme="@style/DialtactsTheme"
            android:screenOrientation="portrait"
            android:icon="@mipmap/ic_launcher_phone">
            <intent-filter>
@@ -130,6 +130,12 @@
            </intent-filter>
        </activity>

        <activity android:name="com.android.dialer.list.AllContactsActivity"
            android:label="@string/show_all_contacts_title"
            android:theme="@style/DialtactsTheme"
            android:screenOrientation="portrait">
        </activity>

        <activity android:name="com.android.dialer.CallDetailActivity"
                  android:label="@string/callDetailTitle"
                  android:theme="@style/CallDetailActivityTheme"
+26 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2013 The Android Open Source 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.
-->

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginTop="?android:attr/actionBarSize"
    android:id="@+id/all_contacts_frame">
    <fragment android:name="com.android.dialer.list.AllContactsFragment"
              android:id="@+id/all_contacts_fragment"
              android:layout_width="match_parent"
              android:layout_height="match_parent" />
</FrameLayout>
+2 −3
Original line number Diff line number Diff line
@@ -19,8 +19,7 @@
    android:id="@+id/pinned_header_list_layout"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginTop="?android:attr/actionBarSize">
    android:layout_height="match_parent">

    <!-- Shown only when an Account filter is set.
         - paddingTop should be here to show "shade" effect correctly. -->
@@ -35,7 +34,7 @@
        android:layout_weight="1" >
        <view
            class="com.android.contacts.common.list.PinnedHeaderListView"
            style="@style/NewDialtactsTheme"
            style="@style/DialtactsTheme"
            android:id="@android:id/list"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
+0 −50
Original line number Diff line number Diff line
@@ -16,56 +16,6 @@
  -->
<resources>
    <style name="DialtactsTheme"
           parent="android:Theme.Holo">
        <item name="android:textColorSecondary">@color/dialtacts_secondary_text_color</item>
        <item name="android:windowActionBarOverlay">true</item>
        <item name="android:actionBarStyle">@style/DialtactsActionBarStyle</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowBackground">@drawable/background_dial_holo_dark</item>
        <item name="android:listViewStyle">@style/ListViewStyle</item>
        <item name="activated_background">@drawable/list_item_activated_background</item>
        <item name="section_header_background">@drawable/list_title_holo</item>
        <item name="list_section_header_height">32dip</item>
        <item name="list_item_divider">?android:attr/listDivider</item>
        <item name="list_item_padding_top">0dip</item>
        <item name="list_item_padding_right">0dip</item>
        <item name="list_item_padding_bottom">0dip</item>
        <item name="list_item_padding_left">0dip</item>
        <item name="list_item_gap_between_image_and_text">8dip</item>
        <item name="list_item_gap_between_label_and_data">5dip</item>
        <item name="list_item_presence_icon_margin">4dip</item>
        <item name="list_item_presence_icon_size">16dip</item>
        <item name="list_item_photo_size">@dimen/contact_browser_list_item_photo_size</item>
        <item name="list_item_profile_photo_size">70dip</item>
        <item name="list_item_prefix_highlight_color">@color/people_app_theme_color</item>
        <item name="list_item_header_text_indent">8dip</item>
        <item name="list_item_header_text_color">@color/people_app_theme_color</item>
        <item name="list_item_header_text_size">14sp</item>
        <item name="list_item_header_height">24dip</item>
        <item name="list_item_header_underline_height">1dip</item>
        <item name="list_item_header_underline_color">@color/people_app_theme_color</item>
        <item name="list_item_data_width_weight">5</item>
        <item name="list_item_label_width_weight">3</item>
        <item name="contact_browser_list_padding_left">16dip</item>
        <item name="contact_browser_list_padding_right">0dip</item>
        <item name="contact_browser_background">@android:color/transparent</item>
        <item name="list_item_text_indent">@dimen/contact_browser_list_item_text_indent</item>
        <!-- CallLog -->
        <item name="call_log_primary_text_color">#FFFFFF</item>
        <item name="call_log_primary_background_color">#000000</item>
        <item name="call_log_secondary_text_color">#888888</item>
        <item name="call_log_secondary_background_color">#333333</item>
        <item name="call_log_header_color">#33b5e5</item>
        <!-- VoicemailStatus -->
        <item name="call_log_voicemail_status_height">48dip</item>
        <item name="call_log_voicemail_status_background_color">#262626</item>
        <item name="call_log_voicemail_status_text_color">#888888</item>
        <item name="call_log_voicemail_status_action_text_color">#33b5e5</item>
            <!-- Favorites -->
        <item name="favorites_padding_bottom">?android:attr/actionBarSize</item>
    </style>

    <style name="NewDialtactsTheme"
           parent="android:Theme.Holo.Light">
        <item name="android:textColorPrimary">@color/dialtacts_primary_text_color</item>
        <item name="android:textColorSecondary">@color/dialtacts_secondary_text_color</item>
+10 −44
Original line number Diff line number Diff line
@@ -71,9 +71,9 @@ import com.android.dialer.calllog.CallLogActivity;
import com.android.dialer.dialpad.DialpadFragment;
import com.android.dialer.dialpad.SmartDialNameMatcher;
import com.android.dialer.interactions.PhoneNumberInteraction;
import com.android.dialer.list.AllContactsActivity;
import com.android.dialer.list.PhoneFavoriteFragment;
import com.android.dialer.list.OnListFragmentScrolledListener;
import com.android.dialer.list.ShowAllContactsFragment;
import com.android.dialer.list.SmartDialSearchFragment;
import com.android.internal.telephony.ITelephony;

@@ -89,7 +89,8 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
        DialpadFragment.OnDialpadQueryChangedListener, PopupMenu.OnMenuItemClickListener,
        OnListFragmentScrolledListener,
        PhoneFavoriteFragment.OnPhoneFavoriteFragmentStartedListener,
        DialpadFragment.OnDialpadFragmentStartedListener {
        DialpadFragment.OnDialpadFragmentStartedListener,
        PhoneFavoriteFragment.OnShowAllContactsListener {
    private static final String TAG = "DialtactsActivity";

    public static final boolean DEBUG = false;
@@ -141,8 +142,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
     */
    private SmartDialSearchFragment mSmartDialSearchFragment;

    private ShowAllContactsFragment mShowAllContactsFragment;

    private View mMenuButton;
    private View mCallHistoryButton;
    private View mDialpadButton;
@@ -257,16 +256,12 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
            mRegularSearchFragment = new SearchFragment();
            mSmartDialSearchFragment = new SmartDialSearchFragment();
            mDialpadFragment = new DialpadFragment();
            mShowAllContactsFragment = new ShowAllContactsFragment();
            mShowAllContactsFragment.setOnPhoneNumberPickerActionListener(
                    mPhoneNumberPickerActionListener);

            // TODO krelease: load fragments on demand instead of creating all of them at run time
            final FragmentTransaction ft = getFragmentManager().beginTransaction();
            ft.add(R.id.dialtacts_frame, mPhoneFavoriteFragment, TAG_FAVORITES_FRAGMENT);
            ft.add(R.id.dialtacts_frame, mRegularSearchFragment, TAG_REGULAR_SEARCH_FRAGMENT);
            ft.add(R.id.dialtacts_frame, mSmartDialSearchFragment, TAG_SMARTDIAL_SEARCH_FRAGMENT);
            ft.add(R.id.dialtacts_frame, mShowAllContactsFragment, TAG_SHOW_ALL_CONTACTS_FRAGMENT);
            ft.add(R.id.dialtacts_container, mDialpadFragment, TAG_DIALPAD_FRAGMENT);
            ft.commit();
        }
@@ -298,11 +293,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
        mSmartDialSearchFragment.setOnPhoneNumberPickerActionListener(
                mPhoneNumberPickerActionListener);

        mShowAllContactsFragment = (ShowAllContactsFragment) fm.findFragmentByTag(
                TAG_SHOW_ALL_CONTACTS_FRAGMENT);
        mShowAllContactsFragment.setOnPhoneNumberPickerActionListener(
                mPhoneNumberPickerActionListener);

        if (mFirstLaunch) {
            displayFragment(getIntent());
        }
@@ -312,8 +302,7 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
    @Override
    public void onAttachFragment(Fragment fragment) {
        if (fragment instanceof DialpadFragment || fragment instanceof SearchFragment
                || fragment instanceof SmartDialSearchFragment
                || fragment instanceof ShowAllContactsFragment) {
                || fragment instanceof SmartDialSearchFragment) {
            final FragmentTransaction transaction = getFragmentManager().beginTransaction();
            transaction.hide(fragment);
            transaction.commit();
@@ -322,16 +311,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
        // based on the state of the dialer when it was last paused
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            // Respond to the action bar's Up/Home button
            case android.R.id.home:
                hideAllContactsFragment();
        }
        return super.onOptionsItemSelected(item);
    }

    @Override
    public boolean onMenuItemClick(MenuItem item) {
        switch (item.getItemId()) {
@@ -439,23 +418,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
        ft.commit();
    }

    public void showAllContactsFragment() {
        final FragmentTransaction ft = getFragmentManager().beginTransaction();
        ft.hide(mPhoneFavoriteFragment);
        ft.show(mShowAllContactsFragment);
        // TODO{klp} Add animation
        ft.commit();
        hideSearchBar(false);
    }

    private void hideAllContactsFragment() {
        final FragmentTransaction ft = getFragmentManager().beginTransaction();
        ft.hide(mShowAllContactsFragment);
        ft.show(mPhoneFavoriteFragment);
        ft.commit();
        showSearchBar();
    }

    private void prepareSearchView() {
        mSearchViewContainer = findViewById(R.id.search_view_container);
        mSearchViewCloseButton = findViewById(R.id.search_close_button);
@@ -801,8 +763,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
            hideDialpadFragment(true);
        } else if (mInSearchUi) {
            mSearchView.setText(null);
        } else if (mShowAllContactsFragment.isVisible()) {
            hideAllContactsFragment();
        } else if (isTaskRoot()) {
            // Instead of stopping, simply push this to the back of the stack.
            // This is only done when running at the top of the stack;
@@ -846,4 +806,10 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
                Context.TELEPHONY_SERVICE);
        return tm.getCallState() != TelephonyManager.CALL_STATE_IDLE;
    }

    @Override
    public void onShowAllContacts() {
        final Intent intent = new Intent(this, AllContactsActivity.class);
        startActivity(intent);
    }
}
Loading