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

Commit 732514cd authored by Stanley Wang's avatar Stanley Wang
Browse files

Fix the search result "Google Account" doesn't work.

- The "Google Account" item will launch the
  AccountDetailDashboardFragment.
  To launch the account detail page, we need the intent extras, account,
  account label and account type.
- Currently, SI doesn't support to index the intent extras, so we launch
  AccountDashboardFragment instead of AccountDetailDashboardFragment.

Fixes: 153626405
Test: manual test the search result and run Settings robotest
Change-Id: I081bd447c3f8422fb8859146b1ed4d7fcbc06810
parent 1b240b64
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -125,5 +125,9 @@ public class DashboardFragmentRegistry {
        for (Map.Entry<String, String> parentToKey : PARENT_TO_CATEGORY_KEY_MAP.entrySet()) {
            CATEGORY_KEY_TO_PARENT_MAP.put(parentToKey.getValue(), parentToKey.getKey());
        }

        // For injection index, redirect CATEGORY_ACCOUNT_DETAIL to AccountDashboardFragment.
        CATEGORY_KEY_TO_PARENT_MAP.put(CategoryKey.CATEGORY_ACCOUNT_DETAIL,
                AccountDashboardFragment.class.getName());
    }
}
+11 −0
Original line number Diff line number Diff line
@@ -18,6 +18,9 @@ package com.android.settings.dashboard;

import static com.google.common.truth.Truth.assertThat;

import com.android.settings.accounts.AccountDashboardFragment;
import com.android.settingslib.drawer.CategoryKey;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
@@ -29,4 +32,12 @@ public class DashboardFragmentRegistryTest {
        assertThat(DashboardFragmentRegistry.CATEGORY_KEY_TO_PARENT_MAP.size())
                .isEqualTo(DashboardFragmentRegistry.PARENT_TO_CATEGORY_KEY_MAP.size());
    }

    @Test
    public void accountDetailCategoryShouldRedirectToAccountDashboardFragment() {
        final String fragment = DashboardFragmentRegistry.CATEGORY_KEY_TO_PARENT_MAP.get(
                CategoryKey.CATEGORY_ACCOUNT_DETAIL);

        assertThat(fragment).isEqualTo(AccountDashboardFragment.class.getName());
    }
}