Supervised user whitelists: Cleanup
[chromium-blink-merge.git] / android_webview / apk / java / proguard.flags
blobb19519fd2c71e244d110614b06b1d802fa5915b6
1 # Most of the flags in this file are duplicated to refer to both the pre- and
2 # post-jarjar remapping versions of the class names. This enables the same
3 # config file to be used whether jarjar is enabled or not.
6 # Keep the factory and its public members; it's the main entry point used by the
7 # framework.
8 -keep class com.android.webview.chromium.WebViewChromiumFactoryProvider {
9     public *;
12 # Keep the native methods bound to plat_support.
13 -keepclasseswithmembers class com.android.webview.chromium.** {
14   native <methods>;
17 # Keep everything related to the org.chromium JNI interface.
18 -keepclasseswithmembers class com.android.org.chromium.** {
19   @**.AccessedByNative <fields>;
21 -keepclasseswithmembers class com.android.org.chromium.** {
22   @**.CalledByNative <methods>;
24 -keepclasseswithmembers class com.android.org.chromium.** {
25   @**.CalledByNativeUnchecked <methods>;
27 -keepclasseswithmembers class com.android.org.chromium.** {
28   native <methods>;
31 # Keep methods which get bound to JS interfaces via reflection.
32 -keepclasseswithmembers class com.android.org.chromium.** {
33   @**.JavascriptInterface <methods>;
36 # Silence notes caused by use of @VisibleForTesting inside guava. This doesn't
37 # happen when using jarjar because @VisibleForTesting gets renamed as well.
38 -dontnote com.google.common.annotations.VisibleForTesting
40 # MediaPlayerBridge uses reflection to access internal metadata.
41 -dontnote com.android.org.chromium.media.MediaPlayerBridge
43 # AndroidKeyStore uses reflection to access internal OpenSSL state.
44 -dontnote com.android.org.chromium.net.AndroidKeyStore
46 # TraceEvent uses reflection to access internal trace info.
47 -dontnote com.android.org.chromium.content.common.TraceEvent
49 # ProxyChangeListener$ProxyReceiver uses reflection to access internal
50 # android.net.ProxyProperties.
51 -dontnote com.android.org.chromium.net.ProxyChangeListener$ProxyReceiver
53 # com.android.org.chromium.content.app.Linker dynamically casts to $TestRunner
54 # when running tests. We don't run these tests in WebView.
55 -dontnote com.android.org.chromium.content.app.Linker$TestRunner
57 # We need to keep these explicitly as they are parameters to methods which
58 # are entry points via @calledByNative.
59 -keep class com.android.org.chromium.ui.autofill.AutofillSuggestion
60 -keep class com.android.org.chromium.content.browser.ContentVideoViewClient
61 -keep class com.android.org.chromium.ui.ColorSuggestion
62 -keep class com.android.org.chromium.content.browser.input.DateTimeSuggestion
63 -keep class com.android.org.chromium.content.browser.ContentViewCore$JavaScriptCallback
64 -keep class com.android.org.chromium.content_public.browser.NavigationController
66 # Keep these classes as they are parameters to methods that are native entry points.
67 -keep class com.android.org.chromium.android_webview.AwBrowserContext
68 -keep class com.android.org.chromium.base.library_loader.Linker$LibInfo
70 # Keep this class and members as accessed via reflection
71 -keep class com.android.webview.chromium.Drp {
72   public *;
75 # Keep finalizer stuff from google-common used via reflection
76 -keepclassmembers class com.android.org.chromium.com.google.common.** {
77   *** finalizeReferent();
79 -keepclassmembers class com.android.org.chromium.com.google.common.** {
80   *** startFinalizer(java.lang.Class,java.lang.Object);
83 # Keep support framework support for SmartClip.
84 -keep class com.android.webview.chromium.WebViewChromium {
85   public void extractSmartClipData(int,int,int,int);
86   public void setSmartClipResultHandler(android.os.Handler);
89 # We need to explicitly keep classes and constructors referenced only in
90 # layout resources.
91 -keep class com.android.org.chromium.ui.ColorPickerAdvanced {
92   <init>(...);
95 -keep class com.android.org.chromium.ui.ColorPickerSimple {
96   <init>(...);
99 -keep class com.android.org.chromium.ui.ColorPickerMoreButton {
100   <init>(...);