Dynamically load a CCT module from another package.

* Uses AIDL interfaces to work across class loaders
* Adds a bottom bar in CCT if the module is loaded

Bug: 843161
Change-Id: I8eaaaebf78cfb875f61deebca8df3e98a4f8c0dc
Reviewed-on: https://chromium-review.googlesource.com/1085060
Commit-Queue: Michael van Ouwerkerk <[email protected]>
Reviewed-by: Ted Choc <[email protected]>
Reviewed-by: Bernhard Bauer <[email protected]>
Cr-Commit-Position: refs/heads/master@{#568438}
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index d27116ab..171a128 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -2008,6 +2008,10 @@
     "Enables downloading pages in the background in case page is not yet "
     "loaded in current tab.";
 
+const char kCCTModuleName[] = "Chrome Custom Tabs Module";
+const char kCCTModuleDescription[] =
+    "Enables a dynamically loaded module in Chrome Custom Tabs, on Android.";
+
 const char kChromeDuplexName[] = "Chrome Duplex";
 const char kChromeDuplexDescription[] =
     "Enables Chrome Duplex, split toolbar Chrome Home, on Android.";