Merge "Fix sometimes deep link does not show in 2-pane" into sc-v2-dev
This commit is contained in:
@@ -24,7 +24,6 @@ import android.content.ComponentName;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.provider.Settings;
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.FeatureFlagUtils;
|
import android.util.FeatureFlagUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
@@ -40,6 +39,7 @@ import androidx.fragment.app.FragmentTransaction;
|
|||||||
import androidx.window.embedding.SplitController;
|
import androidx.window.embedding.SplitController;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.Settings;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.accounts.AvatarViewMixin;
|
import com.android.settings.accounts.AvatarViewMixin;
|
||||||
import com.android.settings.core.CategoryMixin;
|
import com.android.settings.core.CategoryMixin;
|
||||||
@@ -180,12 +180,12 @@ public class SettingsHomepageActivity extends FragmentActivity implements
|
|||||||
|
|
||||||
final Intent intent = getIntent();
|
final Intent intent = getIntent();
|
||||||
if (intent == null || !TextUtils.equals(intent.getAction(),
|
if (intent == null || !TextUtils.equals(intent.getAction(),
|
||||||
Settings.ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK)) {
|
android.provider.Settings.ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final String intentUriString = intent.getStringExtra(
|
final String intentUriString = intent.getStringExtra(
|
||||||
Settings.EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI);
|
android.provider.Settings.EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI);
|
||||||
if (TextUtils.isEmpty(intentUriString)) {
|
if (TextUtils.isEmpty(intentUriString)) {
|
||||||
Log.e(TAG, "No EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI to deep link");
|
Log.e(TAG, "No EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI to deep link");
|
||||||
finish();
|
finish();
|
||||||
@@ -215,12 +215,17 @@ public class SettingsHomepageActivity extends FragmentActivity implements
|
|||||||
|
|
||||||
targetIntent.putExtra(EXTRA_IS_FROM_SETTINGS_HOMEPAGE, true);
|
targetIntent.putExtra(EXTRA_IS_FROM_SETTINGS_HOMEPAGE, true);
|
||||||
|
|
||||||
// Set 2-pane pair rule for the external deep link page.
|
// Set 2-pane pair rule for the deep link page.
|
||||||
ActivityEmbeddingRulesController.registerTwoPanePairRule(this,
|
ActivityEmbeddingRulesController.registerTwoPanePairRule(this,
|
||||||
new ComponentName(Utils.SETTINGS_PACKAGE_NAME, ALIAS_DEEP_LINK),
|
new ComponentName(Utils.SETTINGS_PACKAGE_NAME, ALIAS_DEEP_LINK),
|
||||||
targetComponentName,
|
targetComponentName,
|
||||||
true /* finishPrimaryWithSecondary */,
|
true /* finishPrimaryWithSecondary */,
|
||||||
true /* finishSecondaryWithPrimary */);
|
true /* finishSecondaryWithPrimary */);
|
||||||
|
ActivityEmbeddingRulesController.registerTwoPanePairRule(this,
|
||||||
|
new ComponentName(Settings.class.getPackageName(), Settings.class.getName()),
|
||||||
|
targetComponentName,
|
||||||
|
true /* finishPrimaryWithSecondary */,
|
||||||
|
true /* finishSecondaryWithPrimary */);
|
||||||
startActivity(targetIntent);
|
startActivity(targetIntent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user