Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(202)

Unified Diff: components/arc/intent_helper/local_activity_resolver.h

Issue 2078683002: Add handler and mojo interface to accept android intent filters. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add code accidentally removed. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/arc/intent_helper/local_activity_resolver.h
diff --git a/components/arc/intent_helper/local_activity_resolver.h b/components/arc/intent_helper/local_activity_resolver.h
index 0b5fcdd9d37abdb45d26539d4e586c0362ad207a..ec076253ae1c9a4d478fbc449663791cf5517555 100644
--- a/components/arc/intent_helper/local_activity_resolver.h
+++ b/components/arc/intent_helper/local_activity_resolver.h
@@ -6,19 +6,34 @@
#define COMPONENTS_ARC_INTENT_HELPER_LOCAL_ACTIVITY_HELPER_H_
#include "base/macros.h"
+#include "base/memory/ref_counted.h"
+#include "components/arc/common/intent_helper.mojom.h"
+#include "mojo/public/cpp/bindings/binding.h"
class GURL;
namespace arc {
-class LocalActivityResolver {
+class LocalActivityResolver : public base::RefCounted<LocalActivityResolver> {
public:
- LocalActivityResolver() = default;
- ~LocalActivityResolver() = default;
+ LocalActivityResolver();
bool ShouldChromeHandleUrl(const GURL& url);
+ void UpdateIntentFilters(mojo::Array<mojom::IntentFilterPtr> intent_filters);
private:
+ friend class base::RefCounted<LocalActivityResolver>;
+ ~LocalActivityResolver();
+
+ bool IsRelevantIntentFilter(const mojom::IntentFilterPtr& intent_filter);
+ bool FilterHasViewAction(const mojom::IntentFilterPtr& intent_filter);
+ bool FilterCategoryIsBrowsable(const mojom::IntentFilterPtr& intent_filter);
+ bool FilterHandlesWebSchemes(const mojom::IntentFilterPtr& intent_filter);
+
+ // List of intent filters from Android. Used to determine if Chrome should
+ // handle a URL without handing off to Android.
+ mojo::Array<mojom::IntentFilterPtr> intent_filters_;
+
DISALLOW_COPY_AND_ASSIGN(LocalActivityResolver);
};
« no previous file with comments | « components/arc/intent_helper/arc_intent_helper_bridge.cc ('k') | components/arc/intent_helper/local_activity_resolver.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698