Merge "Make ResolverActivity respect selector intent when making filters" into nyc-dev

am: 651e09f

* commit '651e09fdc1b4c26dc7661e1ab127276656ece041':
  Make ResolverActivity respect selector intent when making filters

Change-Id: I4bf1b16e6afb07c7c9bd0172539efa32dc14724e
This commit is contained in:
Henrik Engström
2016-04-13 21:46:07 +00:00
committed by android-build-merger

View File

@@ -668,12 +668,19 @@ public class ResolverActivity extends Activity {
&& mAdapter.mOrigResolveList != null) {
// Build a reasonable intent filter, based on what matched.
IntentFilter filter = new IntentFilter();
String action = intent.getAction();
Intent filterIntent;
if (intent.getSelector() != null) {
filterIntent = intent.getSelector();
} else {
filterIntent = intent;
}
String action = filterIntent.getAction();
if (action != null) {
filter.addAction(action);
}
Set<String> categories = intent.getCategories();
Set<String> categories = filterIntent.getCategories();
if (categories != null) {
for (String cat : categories) {
filter.addCategory(cat);
@@ -682,9 +689,9 @@ public class ResolverActivity extends Activity {
filter.addCategory(Intent.CATEGORY_DEFAULT);
int cat = ri.match & IntentFilter.MATCH_CATEGORY_MASK;
Uri data = intent.getData();
Uri data = filterIntent.getData();
if (cat == IntentFilter.MATCH_CATEGORY_TYPE) {
String mimeType = intent.resolveType(this);
String mimeType = filterIntent.resolveType(this);
if (mimeType != null) {
try {
filter.addDataType(mimeType);