Merge "Move vectordrawable to the new proper directory structure" into androidx-master-dev
diff --git a/appcompat/appcompat/api/1.2.0-alpha01.txt b/appcompat/appcompat/api/1.2.0-alpha01.txt
index 330bca1..a19c8b1 100644
--- a/appcompat/appcompat/api/1.2.0-alpha01.txt
+++ b/appcompat/appcompat/api/1.2.0-alpha01.txt
@@ -253,8 +253,7 @@
public abstract class AppCompatDelegate {
method public abstract void addContentView(android.view.View!, android.view.ViewGroup.LayoutParams!);
method public abstract boolean applyDayNight();
- method @Deprecated public void attachBaseContext(android.content.Context!);
- method @CallSuper public android.content.Context attachBaseContext2(android.content.Context);
+ method public void attachBaseContext(android.content.Context!);
method public static androidx.appcompat.app.AppCompatDelegate create(android.app.Activity, androidx.appcompat.app.AppCompatCallback?);
method public static androidx.appcompat.app.AppCompatDelegate create(android.app.Dialog, androidx.appcompat.app.AppCompatCallback?);
method public static androidx.appcompat.app.AppCompatDelegate create(android.content.Context, android.view.Window, androidx.appcompat.app.AppCompatCallback?);
diff --git a/appcompat/appcompat/api/public_plus_experimental_1.2.0-alpha01.txt b/appcompat/appcompat/api/public_plus_experimental_1.2.0-alpha01.txt
index 330bca1..a19c8b1 100644
--- a/appcompat/appcompat/api/public_plus_experimental_1.2.0-alpha01.txt
+++ b/appcompat/appcompat/api/public_plus_experimental_1.2.0-alpha01.txt
@@ -253,8 +253,7 @@
public abstract class AppCompatDelegate {
method public abstract void addContentView(android.view.View!, android.view.ViewGroup.LayoutParams!);
method public abstract boolean applyDayNight();
- method @Deprecated public void attachBaseContext(android.content.Context!);
- method @CallSuper public android.content.Context attachBaseContext2(android.content.Context);
+ method public void attachBaseContext(android.content.Context!);
method public static androidx.appcompat.app.AppCompatDelegate create(android.app.Activity, androidx.appcompat.app.AppCompatCallback?);
method public static androidx.appcompat.app.AppCompatDelegate create(android.app.Dialog, androidx.appcompat.app.AppCompatCallback?);
method public static androidx.appcompat.app.AppCompatDelegate create(android.content.Context, android.view.Window, androidx.appcompat.app.AppCompatCallback?);
diff --git a/arch/core-runtime/api/restricted_2.0.0.txt b/arch/core-runtime/api/restricted_2.0.0.txt
index b61078d..e95b096 100644
--- a/arch/core-runtime/api/restricted_2.0.0.txt
+++ b/arch/core-runtime/api/restricted_2.0.0.txt
@@ -1,30 +1,13 @@
// Signature format: 3.0
package androidx.arch.core.executor {
- @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class ArchTaskExecutor extends androidx.arch.core.executor.TaskExecutor {
- method public void executeOnDiskIO(Runnable!);
- method public static java.util.concurrent.Executor getIOThreadExecutor();
- method public static androidx.arch.core.executor.ArchTaskExecutor getInstance();
- method public static java.util.concurrent.Executor getMainThreadExecutor();
- method public boolean isMainThread();
- method public void postToMainThread(Runnable!);
- method public void setDelegate(androidx.arch.core.executor.TaskExecutor?);
- }
-
- @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class DefaultTaskExecutor extends androidx.arch.core.executor.TaskExecutor {
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class DefaultTaskExecutor {
ctor public DefaultTaskExecutor();
method public void executeOnDiskIO(Runnable!);
+ method public void executeOnMainThread(Runnable);
method public boolean isMainThread();
method public void postToMainThread(Runnable!);
}
- @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class TaskExecutor {
- ctor public TaskExecutor();
- method public abstract void executeOnDiskIO(Runnable);
- method public void executeOnMainThread(Runnable);
- method public abstract boolean isMainThread();
- method public abstract void postToMainThread(Runnable);
- }
-
}
diff --git a/biometric/api/restricted_1.0.0-alpha04.txt b/biometric/api/restricted_1.0.0-alpha04.txt
index c0fb51c..f517f0f 100644
--- a/biometric/api/restricted_1.0.0-alpha04.txt
+++ b/biometric/api/restricted_1.0.0-alpha04.txt
@@ -1,13 +1,23 @@
// Signature format: 3.0
package androidx.biometric {
-
-
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -46,7 +56,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
}
diff --git a/biometric/api/restricted_1.0.0-beta01.txt b/biometric/api/restricted_1.0.0-beta01.txt
index cf9f995..b17b443 100644
--- a/biometric/api/restricted_1.0.0-beta01.txt
+++ b/biometric/api/restricted_1.0.0-beta01.txt
@@ -1,8 +1,6 @@
// Signature format: 3.0
package androidx.biometric {
-
-
public class BiometricManager {
method public int canAuthenticate();
method public static androidx.biometric.BiometricManager from(android.content.Context);
@@ -12,12 +10,25 @@
field public static final int BIOMETRIC_SUCCESS = 0; // 0x0
}
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
ctor public BiometricPrompt(androidx.fragment.app.Fragment, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -60,9 +71,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
-
-
}
diff --git a/biometric/api/restricted_1.0.0-beta02.txt b/biometric/api/restricted_1.0.0-beta02.txt
index cf9f995..b17b443 100644
--- a/biometric/api/restricted_1.0.0-beta02.txt
+++ b/biometric/api/restricted_1.0.0-beta02.txt
@@ -1,8 +1,6 @@
// Signature format: 3.0
package androidx.biometric {
-
-
public class BiometricManager {
method public int canAuthenticate();
method public static androidx.biometric.BiometricManager from(android.content.Context);
@@ -12,12 +10,25 @@
field public static final int BIOMETRIC_SUCCESS = 0; // 0x0
}
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
ctor public BiometricPrompt(androidx.fragment.app.Fragment, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -60,9 +71,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
-
-
}
diff --git a/biometric/api/restricted_1.0.0-rc01.txt b/biometric/api/restricted_1.0.0-rc01.txt
index cf9f995..b17b443 100644
--- a/biometric/api/restricted_1.0.0-rc01.txt
+++ b/biometric/api/restricted_1.0.0-rc01.txt
@@ -1,8 +1,6 @@
// Signature format: 3.0
package androidx.biometric {
-
-
public class BiometricManager {
method public int canAuthenticate();
method public static androidx.biometric.BiometricManager from(android.content.Context);
@@ -12,12 +10,25 @@
field public static final int BIOMETRIC_SUCCESS = 0; // 0x0
}
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
ctor public BiometricPrompt(androidx.fragment.app.Fragment, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -60,9 +71,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
-
-
}
diff --git a/biometric/api/restricted_1.0.0-rc02.txt b/biometric/api/restricted_1.0.0-rc02.txt
index cf9f995..b17b443 100644
--- a/biometric/api/restricted_1.0.0-rc02.txt
+++ b/biometric/api/restricted_1.0.0-rc02.txt
@@ -1,8 +1,6 @@
// Signature format: 3.0
package androidx.biometric {
-
-
public class BiometricManager {
method public int canAuthenticate();
method public static androidx.biometric.BiometricManager from(android.content.Context);
@@ -12,12 +10,25 @@
field public static final int BIOMETRIC_SUCCESS = 0; // 0x0
}
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
ctor public BiometricPrompt(androidx.fragment.app.Fragment, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -60,9 +71,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
-
-
}
diff --git a/biometric/api/restricted_1.1.0-alpha01.txt b/biometric/api/restricted_1.1.0-alpha01.txt
index 7af17fe..b17b443 100644
--- a/biometric/api/restricted_1.1.0-alpha01.txt
+++ b/biometric/api/restricted_1.1.0-alpha01.txt
@@ -1,8 +1,6 @@
// Signature format: 3.0
package androidx.biometric {
-
-
public class BiometricManager {
method public int canAuthenticate();
method public static androidx.biometric.BiometricManager from(android.content.Context);
@@ -12,12 +10,25 @@
field public static final int BIOMETRIC_SUCCESS = 0; // 0x0
}
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
ctor public BiometricPrompt(androidx.fragment.app.Fragment, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -60,8 +71,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
-
}
diff --git a/biometric/api/restricted_current.txt b/biometric/api/restricted_current.txt
index 7af17fe..b17b443 100644
--- a/biometric/api/restricted_current.txt
+++ b/biometric/api/restricted_current.txt
@@ -1,8 +1,6 @@
// Signature format: 3.0
package androidx.biometric {
-
-
public class BiometricManager {
method public int canAuthenticate();
method public static androidx.biometric.BiometricManager from(android.content.Context);
@@ -12,12 +10,25 @@
field public static final int BIOMETRIC_SUCCESS = 0; // 0x0
}
- public class BiometricPrompt implements androidx.biometric.BiometricConstants {
+ public class BiometricPrompt {
ctor public BiometricPrompt(androidx.fragment.app.FragmentActivity, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
ctor public BiometricPrompt(androidx.fragment.app.Fragment, java.util.concurrent.Executor, androidx.biometric.BiometricPrompt.AuthenticationCallback);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo, androidx.biometric.BiometricPrompt.CryptoObject);
method public void authenticate(androidx.biometric.BiometricPrompt.PromptInfo);
method public void cancelAuthentication();
+ field public static final int ERROR_CANCELED = 5; // 0x5
+ field public static final int ERROR_HW_NOT_PRESENT = 12; // 0xc
+ field public static final int ERROR_HW_UNAVAILABLE = 1; // 0x1
+ field public static final int ERROR_LOCKOUT = 7; // 0x7
+ field public static final int ERROR_LOCKOUT_PERMANENT = 9; // 0x9
+ field public static final int ERROR_NEGATIVE_BUTTON = 13; // 0xd
+ field public static final int ERROR_NO_BIOMETRICS = 11; // 0xb
+ field public static final int ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe
+ field public static final int ERROR_NO_SPACE = 4; // 0x4
+ field public static final int ERROR_TIMEOUT = 3; // 0x3
+ field public static final int ERROR_UNABLE_TO_PROCESS = 2; // 0x2
+ field public static final int ERROR_USER_CANCELED = 10; // 0xa
+ field public static final int ERROR_VENDOR = 8; // 0x8
}
public abstract static class BiometricPrompt.AuthenticationCallback {
@@ -60,8 +71,5 @@
method public androidx.biometric.BiometricPrompt.PromptInfo.Builder setTitle(CharSequence);
}
-
-
-
}
diff --git a/browser/api/restricted_1.2.0-alpha08.txt b/browser/api/restricted_1.2.0-alpha08.txt
index 5635cab..fdafb39 100644
--- a/browser/api/restricted_1.2.0-alpha08.txt
+++ b/browser/api/restricted_1.2.0-alpha08.txt
@@ -60,7 +60,6 @@
method @Deprecated public androidx.browser.browseractions.BrowserActionsIntent.Builder! setUrlType(@androidx.browser.browseractions.BrowserActionsIntent.BrowserActionsUrlType int);
}
-
}
package androidx.browser.customtabs {
@@ -107,7 +106,7 @@
}
public final class CustomTabsIntent {
- method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, @androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
+ method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, int);
method public static int getMaxToolbarItems();
method public void launchUrl(android.content.Context!, android.net.Uri!);
method public static android.content.Intent! setAlwaysUseBrowserUI(android.content.Intent!);
@@ -158,8 +157,8 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent, boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setCloseButtonIcon(android.graphics.Bitmap);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int, androidx.browser.customtabs.CustomTabColorSchemeParams);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(int);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(int, androidx.browser.customtabs.CustomTabColorSchemeParams);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setExitAnimations(android.content.Context, @AnimRes int, @AnimRes int);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setInstantAppsEnabled(boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setNavigationBarColor(@ColorInt int);
@@ -171,7 +170,6 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setToolbarColor(@ColorInt int);
}
-
public abstract class CustomTabsService extends android.app.Service {
ctor public CustomTabsService();
method protected boolean cleanUpSession(androidx.browser.customtabs.CustomTabsSessionToken!);
@@ -180,7 +178,7 @@
method protected abstract boolean newSession(androidx.browser.customtabs.CustomTabsSessionToken!);
method public android.os.IBinder! onBind(android.content.Intent!);
method @androidx.browser.customtabs.CustomTabsService.Result protected abstract int postMessage(androidx.browser.customtabs.CustomTabsSessionToken!, String!, android.os.Bundle!);
- method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, int, android.os.Bundle?);
method protected abstract boolean requestPostMessageChannel(androidx.browser.customtabs.CustomTabsSessionToken!, android.net.Uri!);
method protected abstract boolean updateVisuals(androidx.browser.customtabs.CustomTabsSessionToken!, android.os.Bundle!);
method protected abstract boolean validateRelationship(androidx.browser.customtabs.CustomTabsSessionToken!, @androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri!, android.os.Bundle!);
@@ -200,7 +198,6 @@
field public static final String TRUSTED_WEB_ACTIVITY_CATEGORY = "androidx.browser.trusted.category.TrustedWebActivities";
}
-
@IntDef({androidx.browser.customtabs.CustomTabsService.RELATION_USE_AS_ORIGIN, androidx.browser.customtabs.CustomTabsService.RELATION_HANDLE_ALL_URLS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CustomTabsService.Relation {
}
@@ -217,7 +214,7 @@
method @VisibleForTesting public static androidx.browser.customtabs.CustomTabsSession createMockSessionForTesting(android.content.ComponentName);
method public boolean mayLaunchUrl(android.net.Uri, android.os.Bundle?, java.util.List<android.os.Bundle!>?);
method @androidx.browser.customtabs.CustomTabsService.Result public int postMessage(String, android.os.Bundle?);
- method public boolean receiveFile(android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method public boolean receiveFile(android.net.Uri, int, android.os.Bundle?);
method public boolean requestPostMessageChannel(android.net.Uri);
method public boolean setActionButton(android.graphics.Bitmap, String);
method public boolean setSecondaryToolbarViews(android.widget.RemoteViews?, int[]?, android.app.PendingIntent?);
@@ -225,7 +222,6 @@
method public boolean validateRelationship(@androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
}
-
public class CustomTabsSessionToken {
method public static androidx.browser.customtabs.CustomTabsSessionToken createMockSessionTokenForTesting();
method public androidx.browser.customtabs.CustomTabsCallback? getCallback();
@@ -233,13 +229,12 @@
method public boolean isAssociatedWith(androidx.browser.customtabs.CustomTabsSession);
}
-
public class PostMessageService extends android.app.Service {
ctor public PostMessageService();
method public android.os.IBinder! onBind(android.content.Intent!);
}
- public abstract class PostMessageServiceConnection implements androidx.browser.customtabs.PostMessageBackend android.content.ServiceConnection {
+ public abstract class PostMessageServiceConnection implements android.content.ServiceConnection {
ctor public PostMessageServiceConnection(androidx.browser.customtabs.CustomTabsSessionToken!);
method public boolean bindSessionToPostMessageService(android.content.Context!, String!);
method public final boolean notifyMessageChannelReady(android.os.Bundle!);
@@ -262,7 +257,6 @@
package androidx.browser.trusted {
-
public final class TrustedWebActivityIntent {
method public android.content.Intent getIntent();
method public void launchTrustedWebActivity(android.content.Context);
@@ -340,7 +334,7 @@
}
public final class ShareTarget {
- ctor public ShareTarget(String, @androidx.browser.trusted.sharing.ShareTarget.RequestMethod String?, @androidx.browser.trusted.sharing.ShareTarget.EncodingType String?, androidx.browser.trusted.sharing.ShareTarget.Params);
+ ctor public ShareTarget(String, String?, String?, androidx.browser.trusted.sharing.ShareTarget.Params);
method public static androidx.browser.trusted.sharing.ShareTarget? fromBundle(android.os.Bundle);
method public android.os.Bundle toBundle();
field public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data";
@@ -352,12 +346,11 @@
field public static final String METHOD_GET = "GET";
field public static final String METHOD_POST = "POST";
field public final String action;
- field @androidx.browser.trusted.sharing.ShareTarget.EncodingType public final String? encodingType;
- field @androidx.browser.trusted.sharing.ShareTarget.RequestMethod public final String? method;
+ field public final String? encodingType;
+ field public final String? method;
field public final androidx.browser.trusted.sharing.ShareTarget.Params params;
}
-
public static class ShareTarget.FileFormField {
ctor public ShareTarget.FileFormField(String, java.util.List<java.lang.String!>);
field public static final String KEY_ACCEPTED_TYPES = "androidx.browser.trusted.sharing.KEY_ACCEPTED_TYPES";
@@ -376,7 +369,6 @@
field public final String? title;
}
-
}
package androidx.browser.trusted.splashscreens {
diff --git a/browser/api/restricted_1.2.0-alpha09.txt b/browser/api/restricted_1.2.0-alpha09.txt
index 5a07a9a..e8b4ea6 100644
--- a/browser/api/restricted_1.2.0-alpha09.txt
+++ b/browser/api/restricted_1.2.0-alpha09.txt
@@ -60,7 +60,6 @@
method @Deprecated public androidx.browser.browseractions.BrowserActionsIntent.Builder! setUrlType(@androidx.browser.browseractions.BrowserActionsIntent.BrowserActionsUrlType int);
}
-
}
package androidx.browser.customtabs {
@@ -107,7 +106,7 @@
}
public final class CustomTabsIntent {
- method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, @androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
+ method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, int);
method public static int getMaxToolbarItems();
method public void launchUrl(android.content.Context!, android.net.Uri!);
method public static android.content.Intent! setAlwaysUseBrowserUI(android.content.Intent!);
@@ -158,8 +157,8 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent, boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setCloseButtonIcon(android.graphics.Bitmap);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int, androidx.browser.customtabs.CustomTabColorSchemeParams);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(int);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(int, androidx.browser.customtabs.CustomTabColorSchemeParams);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setExitAnimations(android.content.Context, @AnimRes int, @AnimRes int);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setInstantAppsEnabled(boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setNavigationBarColor(@ColorInt int);
@@ -171,7 +170,6 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setToolbarColor(@ColorInt int);
}
-
public abstract class CustomTabsService extends android.app.Service {
ctor public CustomTabsService();
method protected boolean cleanUpSession(androidx.browser.customtabs.CustomTabsSessionToken!);
@@ -180,7 +178,7 @@
method protected abstract boolean newSession(androidx.browser.customtabs.CustomTabsSessionToken!);
method public android.os.IBinder! onBind(android.content.Intent!);
method @androidx.browser.customtabs.CustomTabsService.Result protected abstract int postMessage(androidx.browser.customtabs.CustomTabsSessionToken!, String!, android.os.Bundle!);
- method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, int, android.os.Bundle?);
method protected abstract boolean requestPostMessageChannel(androidx.browser.customtabs.CustomTabsSessionToken!, android.net.Uri!);
method protected abstract boolean updateVisuals(androidx.browser.customtabs.CustomTabsSessionToken!, android.os.Bundle!);
method protected abstract boolean validateRelationship(androidx.browser.customtabs.CustomTabsSessionToken!, @androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri!, android.os.Bundle!);
@@ -201,7 +199,6 @@
field public static final String TRUSTED_WEB_ACTIVITY_CATEGORY = "androidx.browser.trusted.category.TrustedWebActivities";
}
-
@IntDef({androidx.browser.customtabs.CustomTabsService.RELATION_USE_AS_ORIGIN, androidx.browser.customtabs.CustomTabsService.RELATION_HANDLE_ALL_URLS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CustomTabsService.Relation {
}
@@ -218,7 +215,7 @@
method @VisibleForTesting public static androidx.browser.customtabs.CustomTabsSession createMockSessionForTesting(android.content.ComponentName);
method public boolean mayLaunchUrl(android.net.Uri, android.os.Bundle?, java.util.List<android.os.Bundle!>?);
method @androidx.browser.customtabs.CustomTabsService.Result public int postMessage(String, android.os.Bundle?);
- method public boolean receiveFile(android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method public boolean receiveFile(android.net.Uri, int, android.os.Bundle?);
method public boolean requestPostMessageChannel(android.net.Uri);
method public boolean setActionButton(android.graphics.Bitmap, String);
method public boolean setSecondaryToolbarViews(android.widget.RemoteViews?, int[]?, android.app.PendingIntent?);
@@ -226,7 +223,6 @@
method public boolean validateRelationship(@androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
}
-
public class CustomTabsSessionToken {
method public static androidx.browser.customtabs.CustomTabsSessionToken createMockSessionTokenForTesting();
method public androidx.browser.customtabs.CustomTabsCallback? getCallback();
@@ -234,13 +230,12 @@
method public boolean isAssociatedWith(androidx.browser.customtabs.CustomTabsSession);
}
-
public class PostMessageService extends android.app.Service {
ctor public PostMessageService();
method public android.os.IBinder! onBind(android.content.Intent!);
}
- public abstract class PostMessageServiceConnection implements androidx.browser.customtabs.PostMessageBackend android.content.ServiceConnection {
+ public abstract class PostMessageServiceConnection implements android.content.ServiceConnection {
ctor public PostMessageServiceConnection(androidx.browser.customtabs.CustomTabsSessionToken!);
method public boolean bindSessionToPostMessageService(android.content.Context!, String!);
method public final boolean notifyMessageChannelReady(android.os.Bundle!);
@@ -263,7 +258,6 @@
package androidx.browser.trusted {
-
public final class Token {
method public static androidx.browser.trusted.Token? create(String, android.content.pm.PackageManager);
method public static androidx.browser.trusted.Token deserialize(byte[]);
@@ -370,7 +364,7 @@
}
public final class ShareTarget {
- ctor public ShareTarget(String, @androidx.browser.trusted.sharing.ShareTarget.RequestMethod String?, @androidx.browser.trusted.sharing.ShareTarget.EncodingType String?, androidx.browser.trusted.sharing.ShareTarget.Params);
+ ctor public ShareTarget(String, String?, String?, androidx.browser.trusted.sharing.ShareTarget.Params);
method public static androidx.browser.trusted.sharing.ShareTarget? fromBundle(android.os.Bundle);
method public android.os.Bundle toBundle();
field public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data";
@@ -382,12 +376,11 @@
field public static final String METHOD_GET = "GET";
field public static final String METHOD_POST = "POST";
field public final String action;
- field @androidx.browser.trusted.sharing.ShareTarget.EncodingType public final String? encodingType;
- field @androidx.browser.trusted.sharing.ShareTarget.RequestMethod public final String? method;
+ field public final String? encodingType;
+ field public final String? method;
field public final androidx.browser.trusted.sharing.ShareTarget.Params params;
}
-
public static final class ShareTarget.FileFormField {
ctor public ShareTarget.FileFormField(String, java.util.List<java.lang.String!>);
field public static final String KEY_ACCEPTED_TYPES = "androidx.browser.trusted.sharing.KEY_ACCEPTED_TYPES";
@@ -406,7 +399,6 @@
field public final String? title;
}
-
}
package androidx.browser.trusted.splashscreens {
diff --git a/browser/api/restricted_1.2.0-beta01.txt b/browser/api/restricted_1.2.0-beta01.txt
index f865d85..2dda625 100644
--- a/browser/api/restricted_1.2.0-beta01.txt
+++ b/browser/api/restricted_1.2.0-beta01.txt
@@ -60,7 +60,6 @@
method @Deprecated public androidx.browser.browseractions.BrowserActionsIntent.Builder setUrlType(@androidx.browser.browseractions.BrowserActionsIntent.BrowserActionsUrlType int);
}
-
}
package androidx.browser.customtabs {
@@ -107,7 +106,7 @@
}
public final class CustomTabsIntent {
- method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, @androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
+ method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, int);
method public static int getMaxToolbarItems();
method public void launchUrl(android.content.Context, android.net.Uri);
method public static android.content.Intent setAlwaysUseBrowserUI(android.content.Intent?);
@@ -158,8 +157,8 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent, boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setCloseButtonIcon(android.graphics.Bitmap);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int, androidx.browser.customtabs.CustomTabColorSchemeParams);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(int);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(int, androidx.browser.customtabs.CustomTabColorSchemeParams);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setExitAnimations(android.content.Context, @AnimRes int, @AnimRes int);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setInstantAppsEnabled(boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setNavigationBarColor(@ColorInt int);
@@ -171,7 +170,6 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setToolbarColor(@ColorInt int);
}
-
public abstract class CustomTabsService extends android.app.Service {
ctor public CustomTabsService();
method protected boolean cleanUpSession(androidx.browser.customtabs.CustomTabsSessionToken);
@@ -180,7 +178,7 @@
method protected abstract boolean newSession(androidx.browser.customtabs.CustomTabsSessionToken);
method public android.os.IBinder onBind(android.content.Intent?);
method @androidx.browser.customtabs.CustomTabsService.Result protected abstract int postMessage(androidx.browser.customtabs.CustomTabsSessionToken, String, android.os.Bundle?);
- method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, int, android.os.Bundle?);
method protected abstract boolean requestPostMessageChannel(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri);
method protected abstract boolean updateVisuals(androidx.browser.customtabs.CustomTabsSessionToken, android.os.Bundle?);
method protected abstract boolean validateRelationship(androidx.browser.customtabs.CustomTabsSessionToken, @androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
@@ -201,7 +199,6 @@
field public static final String TRUSTED_WEB_ACTIVITY_CATEGORY = "androidx.browser.trusted.category.TrustedWebActivities";
}
-
@IntDef({androidx.browser.customtabs.CustomTabsService.RELATION_USE_AS_ORIGIN, androidx.browser.customtabs.CustomTabsService.RELATION_HANDLE_ALL_URLS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CustomTabsService.Relation {
}
@@ -218,7 +215,7 @@
method @VisibleForTesting public static androidx.browser.customtabs.CustomTabsSession createMockSessionForTesting(android.content.ComponentName);
method public boolean mayLaunchUrl(android.net.Uri, android.os.Bundle?, java.util.List<android.os.Bundle!>?);
method @androidx.browser.customtabs.CustomTabsService.Result public int postMessage(String, android.os.Bundle?);
- method public boolean receiveFile(android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method public boolean receiveFile(android.net.Uri, int, android.os.Bundle?);
method public boolean requestPostMessageChannel(android.net.Uri);
method public boolean setActionButton(android.graphics.Bitmap, String);
method public boolean setSecondaryToolbarViews(android.widget.RemoteViews?, int[]?, android.app.PendingIntent?);
@@ -226,7 +223,6 @@
method public boolean validateRelationship(@androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
}
-
public class CustomTabsSessionToken {
method public static androidx.browser.customtabs.CustomTabsSessionToken createMockSessionTokenForTesting();
method public androidx.browser.customtabs.CustomTabsCallback? getCallback();
@@ -234,13 +230,12 @@
method public boolean isAssociatedWith(androidx.browser.customtabs.CustomTabsSession);
}
-
public class PostMessageService extends android.app.Service {
ctor public PostMessageService();
method public android.os.IBinder onBind(android.content.Intent?);
}
- public abstract class PostMessageServiceConnection implements androidx.browser.customtabs.PostMessageBackend android.content.ServiceConnection {
+ public abstract class PostMessageServiceConnection implements android.content.ServiceConnection {
ctor public PostMessageServiceConnection(androidx.browser.customtabs.CustomTabsSessionToken);
method public boolean bindSessionToPostMessageService(android.content.Context, String);
method public final boolean notifyMessageChannelReady(android.os.Bundle?);
@@ -263,7 +258,6 @@
package androidx.browser.trusted {
-
public final class Token {
method public static androidx.browser.trusted.Token? create(String, android.content.pm.PackageManager);
method public static androidx.browser.trusted.Token deserialize(byte[]);
@@ -370,7 +364,7 @@
}
public final class ShareTarget {
- ctor public ShareTarget(String, @androidx.browser.trusted.sharing.ShareTarget.RequestMethod String?, @androidx.browser.trusted.sharing.ShareTarget.EncodingType String?, androidx.browser.trusted.sharing.ShareTarget.Params);
+ ctor public ShareTarget(String, String?, String?, androidx.browser.trusted.sharing.ShareTarget.Params);
method public static androidx.browser.trusted.sharing.ShareTarget? fromBundle(android.os.Bundle);
method public android.os.Bundle toBundle();
field public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data";
@@ -382,12 +376,11 @@
field public static final String METHOD_GET = "GET";
field public static final String METHOD_POST = "POST";
field public final String action;
- field @androidx.browser.trusted.sharing.ShareTarget.EncodingType public final String? encodingType;
- field @androidx.browser.trusted.sharing.ShareTarget.RequestMethod public final String? method;
+ field public final String? encodingType;
+ field public final String? method;
field public final androidx.browser.trusted.sharing.ShareTarget.Params params;
}
-
public static final class ShareTarget.FileFormField {
ctor public ShareTarget.FileFormField(String, java.util.List<java.lang.String!>);
field public static final String KEY_ACCEPTED_TYPES = "androidx.browser.trusted.sharing.KEY_ACCEPTED_TYPES";
@@ -406,7 +399,6 @@
field public final String? title;
}
-
}
package androidx.browser.trusted.splashscreens {
diff --git a/browser/api/restricted_1.2.0-rc01.txt b/browser/api/restricted_1.2.0-rc01.txt
index f865d85..2dda625 100644
--- a/browser/api/restricted_1.2.0-rc01.txt
+++ b/browser/api/restricted_1.2.0-rc01.txt
@@ -60,7 +60,6 @@
method @Deprecated public androidx.browser.browseractions.BrowserActionsIntent.Builder setUrlType(@androidx.browser.browseractions.BrowserActionsIntent.BrowserActionsUrlType int);
}
-
}
package androidx.browser.customtabs {
@@ -107,7 +106,7 @@
}
public final class CustomTabsIntent {
- method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, @androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
+ method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, int);
method public static int getMaxToolbarItems();
method public void launchUrl(android.content.Context, android.net.Uri);
method public static android.content.Intent setAlwaysUseBrowserUI(android.content.Intent?);
@@ -158,8 +157,8 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent, boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setCloseButtonIcon(android.graphics.Bitmap);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int, androidx.browser.customtabs.CustomTabColorSchemeParams);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(int);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(int, androidx.browser.customtabs.CustomTabColorSchemeParams);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setExitAnimations(android.content.Context, @AnimRes int, @AnimRes int);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setInstantAppsEnabled(boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setNavigationBarColor(@ColorInt int);
@@ -171,7 +170,6 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setToolbarColor(@ColorInt int);
}
-
public abstract class CustomTabsService extends android.app.Service {
ctor public CustomTabsService();
method protected boolean cleanUpSession(androidx.browser.customtabs.CustomTabsSessionToken);
@@ -180,7 +178,7 @@
method protected abstract boolean newSession(androidx.browser.customtabs.CustomTabsSessionToken);
method public android.os.IBinder onBind(android.content.Intent?);
method @androidx.browser.customtabs.CustomTabsService.Result protected abstract int postMessage(androidx.browser.customtabs.CustomTabsSessionToken, String, android.os.Bundle?);
- method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, int, android.os.Bundle?);
method protected abstract boolean requestPostMessageChannel(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri);
method protected abstract boolean updateVisuals(androidx.browser.customtabs.CustomTabsSessionToken, android.os.Bundle?);
method protected abstract boolean validateRelationship(androidx.browser.customtabs.CustomTabsSessionToken, @androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
@@ -201,7 +199,6 @@
field public static final String TRUSTED_WEB_ACTIVITY_CATEGORY = "androidx.browser.trusted.category.TrustedWebActivities";
}
-
@IntDef({androidx.browser.customtabs.CustomTabsService.RELATION_USE_AS_ORIGIN, androidx.browser.customtabs.CustomTabsService.RELATION_HANDLE_ALL_URLS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CustomTabsService.Relation {
}
@@ -218,7 +215,7 @@
method @VisibleForTesting public static androidx.browser.customtabs.CustomTabsSession createMockSessionForTesting(android.content.ComponentName);
method public boolean mayLaunchUrl(android.net.Uri, android.os.Bundle?, java.util.List<android.os.Bundle!>?);
method @androidx.browser.customtabs.CustomTabsService.Result public int postMessage(String, android.os.Bundle?);
- method public boolean receiveFile(android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method public boolean receiveFile(android.net.Uri, int, android.os.Bundle?);
method public boolean requestPostMessageChannel(android.net.Uri);
method public boolean setActionButton(android.graphics.Bitmap, String);
method public boolean setSecondaryToolbarViews(android.widget.RemoteViews?, int[]?, android.app.PendingIntent?);
@@ -226,7 +223,6 @@
method public boolean validateRelationship(@androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
}
-
public class CustomTabsSessionToken {
method public static androidx.browser.customtabs.CustomTabsSessionToken createMockSessionTokenForTesting();
method public androidx.browser.customtabs.CustomTabsCallback? getCallback();
@@ -234,13 +230,12 @@
method public boolean isAssociatedWith(androidx.browser.customtabs.CustomTabsSession);
}
-
public class PostMessageService extends android.app.Service {
ctor public PostMessageService();
method public android.os.IBinder onBind(android.content.Intent?);
}
- public abstract class PostMessageServiceConnection implements androidx.browser.customtabs.PostMessageBackend android.content.ServiceConnection {
+ public abstract class PostMessageServiceConnection implements android.content.ServiceConnection {
ctor public PostMessageServiceConnection(androidx.browser.customtabs.CustomTabsSessionToken);
method public boolean bindSessionToPostMessageService(android.content.Context, String);
method public final boolean notifyMessageChannelReady(android.os.Bundle?);
@@ -263,7 +258,6 @@
package androidx.browser.trusted {
-
public final class Token {
method public static androidx.browser.trusted.Token? create(String, android.content.pm.PackageManager);
method public static androidx.browser.trusted.Token deserialize(byte[]);
@@ -370,7 +364,7 @@
}
public final class ShareTarget {
- ctor public ShareTarget(String, @androidx.browser.trusted.sharing.ShareTarget.RequestMethod String?, @androidx.browser.trusted.sharing.ShareTarget.EncodingType String?, androidx.browser.trusted.sharing.ShareTarget.Params);
+ ctor public ShareTarget(String, String?, String?, androidx.browser.trusted.sharing.ShareTarget.Params);
method public static androidx.browser.trusted.sharing.ShareTarget? fromBundle(android.os.Bundle);
method public android.os.Bundle toBundle();
field public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data";
@@ -382,12 +376,11 @@
field public static final String METHOD_GET = "GET";
field public static final String METHOD_POST = "POST";
field public final String action;
- field @androidx.browser.trusted.sharing.ShareTarget.EncodingType public final String? encodingType;
- field @androidx.browser.trusted.sharing.ShareTarget.RequestMethod public final String? method;
+ field public final String? encodingType;
+ field public final String? method;
field public final androidx.browser.trusted.sharing.ShareTarget.Params params;
}
-
public static final class ShareTarget.FileFormField {
ctor public ShareTarget.FileFormField(String, java.util.List<java.lang.String!>);
field public static final String KEY_ACCEPTED_TYPES = "androidx.browser.trusted.sharing.KEY_ACCEPTED_TYPES";
@@ -406,7 +399,6 @@
field public final String? title;
}
-
}
package androidx.browser.trusted.splashscreens {
diff --git a/browser/api/restricted_1.3.0-alpha01.txt b/browser/api/restricted_1.3.0-alpha01.txt
index f865d85..2dda625 100644
--- a/browser/api/restricted_1.3.0-alpha01.txt
+++ b/browser/api/restricted_1.3.0-alpha01.txt
@@ -60,7 +60,6 @@
method @Deprecated public androidx.browser.browseractions.BrowserActionsIntent.Builder setUrlType(@androidx.browser.browseractions.BrowserActionsIntent.BrowserActionsUrlType int);
}
-
}
package androidx.browser.customtabs {
@@ -107,7 +106,7 @@
}
public final class CustomTabsIntent {
- method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, @androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
+ method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, int);
method public static int getMaxToolbarItems();
method public void launchUrl(android.content.Context, android.net.Uri);
method public static android.content.Intent setAlwaysUseBrowserUI(android.content.Intent?);
@@ -158,8 +157,8 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent, boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setCloseButtonIcon(android.graphics.Bitmap);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int, androidx.browser.customtabs.CustomTabColorSchemeParams);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(int);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(int, androidx.browser.customtabs.CustomTabColorSchemeParams);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setExitAnimations(android.content.Context, @AnimRes int, @AnimRes int);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setInstantAppsEnabled(boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setNavigationBarColor(@ColorInt int);
@@ -171,7 +170,6 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setToolbarColor(@ColorInt int);
}
-
public abstract class CustomTabsService extends android.app.Service {
ctor public CustomTabsService();
method protected boolean cleanUpSession(androidx.browser.customtabs.CustomTabsSessionToken);
@@ -180,7 +178,7 @@
method protected abstract boolean newSession(androidx.browser.customtabs.CustomTabsSessionToken);
method public android.os.IBinder onBind(android.content.Intent?);
method @androidx.browser.customtabs.CustomTabsService.Result protected abstract int postMessage(androidx.browser.customtabs.CustomTabsSessionToken, String, android.os.Bundle?);
- method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, int, android.os.Bundle?);
method protected abstract boolean requestPostMessageChannel(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri);
method protected abstract boolean updateVisuals(androidx.browser.customtabs.CustomTabsSessionToken, android.os.Bundle?);
method protected abstract boolean validateRelationship(androidx.browser.customtabs.CustomTabsSessionToken, @androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
@@ -201,7 +199,6 @@
field public static final String TRUSTED_WEB_ACTIVITY_CATEGORY = "androidx.browser.trusted.category.TrustedWebActivities";
}
-
@IntDef({androidx.browser.customtabs.CustomTabsService.RELATION_USE_AS_ORIGIN, androidx.browser.customtabs.CustomTabsService.RELATION_HANDLE_ALL_URLS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CustomTabsService.Relation {
}
@@ -218,7 +215,7 @@
method @VisibleForTesting public static androidx.browser.customtabs.CustomTabsSession createMockSessionForTesting(android.content.ComponentName);
method public boolean mayLaunchUrl(android.net.Uri, android.os.Bundle?, java.util.List<android.os.Bundle!>?);
method @androidx.browser.customtabs.CustomTabsService.Result public int postMessage(String, android.os.Bundle?);
- method public boolean receiveFile(android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method public boolean receiveFile(android.net.Uri, int, android.os.Bundle?);
method public boolean requestPostMessageChannel(android.net.Uri);
method public boolean setActionButton(android.graphics.Bitmap, String);
method public boolean setSecondaryToolbarViews(android.widget.RemoteViews?, int[]?, android.app.PendingIntent?);
@@ -226,7 +223,6 @@
method public boolean validateRelationship(@androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
}
-
public class CustomTabsSessionToken {
method public static androidx.browser.customtabs.CustomTabsSessionToken createMockSessionTokenForTesting();
method public androidx.browser.customtabs.CustomTabsCallback? getCallback();
@@ -234,13 +230,12 @@
method public boolean isAssociatedWith(androidx.browser.customtabs.CustomTabsSession);
}
-
public class PostMessageService extends android.app.Service {
ctor public PostMessageService();
method public android.os.IBinder onBind(android.content.Intent?);
}
- public abstract class PostMessageServiceConnection implements androidx.browser.customtabs.PostMessageBackend android.content.ServiceConnection {
+ public abstract class PostMessageServiceConnection implements android.content.ServiceConnection {
ctor public PostMessageServiceConnection(androidx.browser.customtabs.CustomTabsSessionToken);
method public boolean bindSessionToPostMessageService(android.content.Context, String);
method public final boolean notifyMessageChannelReady(android.os.Bundle?);
@@ -263,7 +258,6 @@
package androidx.browser.trusted {
-
public final class Token {
method public static androidx.browser.trusted.Token? create(String, android.content.pm.PackageManager);
method public static androidx.browser.trusted.Token deserialize(byte[]);
@@ -370,7 +364,7 @@
}
public final class ShareTarget {
- ctor public ShareTarget(String, @androidx.browser.trusted.sharing.ShareTarget.RequestMethod String?, @androidx.browser.trusted.sharing.ShareTarget.EncodingType String?, androidx.browser.trusted.sharing.ShareTarget.Params);
+ ctor public ShareTarget(String, String?, String?, androidx.browser.trusted.sharing.ShareTarget.Params);
method public static androidx.browser.trusted.sharing.ShareTarget? fromBundle(android.os.Bundle);
method public android.os.Bundle toBundle();
field public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data";
@@ -382,12 +376,11 @@
field public static final String METHOD_GET = "GET";
field public static final String METHOD_POST = "POST";
field public final String action;
- field @androidx.browser.trusted.sharing.ShareTarget.EncodingType public final String? encodingType;
- field @androidx.browser.trusted.sharing.ShareTarget.RequestMethod public final String? method;
+ field public final String? encodingType;
+ field public final String? method;
field public final androidx.browser.trusted.sharing.ShareTarget.Params params;
}
-
public static final class ShareTarget.FileFormField {
ctor public ShareTarget.FileFormField(String, java.util.List<java.lang.String!>);
field public static final String KEY_ACCEPTED_TYPES = "androidx.browser.trusted.sharing.KEY_ACCEPTED_TYPES";
@@ -406,7 +399,6 @@
field public final String? title;
}
-
}
package androidx.browser.trusted.splashscreens {
diff --git a/browser/api/restricted_current.txt b/browser/api/restricted_current.txt
index f865d85..2dda625 100644
--- a/browser/api/restricted_current.txt
+++ b/browser/api/restricted_current.txt
@@ -60,7 +60,6 @@
method @Deprecated public androidx.browser.browseractions.BrowserActionsIntent.Builder setUrlType(@androidx.browser.browseractions.BrowserActionsIntent.BrowserActionsUrlType int);
}
-
}
package androidx.browser.customtabs {
@@ -107,7 +106,7 @@
}
public final class CustomTabsIntent {
- method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, @androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
+ method public static androidx.browser.customtabs.CustomTabColorSchemeParams getColorSchemeParams(android.content.Intent, int);
method public static int getMaxToolbarItems();
method public void launchUrl(android.content.Context, android.net.Uri);
method public static android.content.Intent setAlwaysUseBrowserUI(android.content.Intent?);
@@ -158,8 +157,8 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent, boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setActionButton(android.graphics.Bitmap, String, android.app.PendingIntent);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setCloseButtonIcon(android.graphics.Bitmap);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int);
- method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(@androidx.browser.customtabs.CustomTabsIntent.ColorScheme int, androidx.browser.customtabs.CustomTabColorSchemeParams);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorScheme(int);
+ method public androidx.browser.customtabs.CustomTabsIntent.Builder setColorSchemeParams(int, androidx.browser.customtabs.CustomTabColorSchemeParams);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setExitAnimations(android.content.Context, @AnimRes int, @AnimRes int);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setInstantAppsEnabled(boolean);
method public androidx.browser.customtabs.CustomTabsIntent.Builder setNavigationBarColor(@ColorInt int);
@@ -171,7 +170,6 @@
method public androidx.browser.customtabs.CustomTabsIntent.Builder setToolbarColor(@ColorInt int);
}
-
public abstract class CustomTabsService extends android.app.Service {
ctor public CustomTabsService();
method protected boolean cleanUpSession(androidx.browser.customtabs.CustomTabsSessionToken);
@@ -180,7 +178,7 @@
method protected abstract boolean newSession(androidx.browser.customtabs.CustomTabsSessionToken);
method public android.os.IBinder onBind(android.content.Intent?);
method @androidx.browser.customtabs.CustomTabsService.Result protected abstract int postMessage(androidx.browser.customtabs.CustomTabsSessionToken, String, android.os.Bundle?);
- method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method protected abstract boolean receiveFile(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri, int, android.os.Bundle?);
method protected abstract boolean requestPostMessageChannel(androidx.browser.customtabs.CustomTabsSessionToken, android.net.Uri);
method protected abstract boolean updateVisuals(androidx.browser.customtabs.CustomTabsSessionToken, android.os.Bundle?);
method protected abstract boolean validateRelationship(androidx.browser.customtabs.CustomTabsSessionToken, @androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
@@ -201,7 +199,6 @@
field public static final String TRUSTED_WEB_ACTIVITY_CATEGORY = "androidx.browser.trusted.category.TrustedWebActivities";
}
-
@IntDef({androidx.browser.customtabs.CustomTabsService.RELATION_USE_AS_ORIGIN, androidx.browser.customtabs.CustomTabsService.RELATION_HANDLE_ALL_URLS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CustomTabsService.Relation {
}
@@ -218,7 +215,7 @@
method @VisibleForTesting public static androidx.browser.customtabs.CustomTabsSession createMockSessionForTesting(android.content.ComponentName);
method public boolean mayLaunchUrl(android.net.Uri, android.os.Bundle?, java.util.List<android.os.Bundle!>?);
method @androidx.browser.customtabs.CustomTabsService.Result public int postMessage(String, android.os.Bundle?);
- method public boolean receiveFile(android.net.Uri, @androidx.browser.customtabs.CustomTabsService.FilePurpose int, android.os.Bundle?);
+ method public boolean receiveFile(android.net.Uri, int, android.os.Bundle?);
method public boolean requestPostMessageChannel(android.net.Uri);
method public boolean setActionButton(android.graphics.Bitmap, String);
method public boolean setSecondaryToolbarViews(android.widget.RemoteViews?, int[]?, android.app.PendingIntent?);
@@ -226,7 +223,6 @@
method public boolean validateRelationship(@androidx.browser.customtabs.CustomTabsService.Relation int, android.net.Uri, android.os.Bundle?);
}
-
public class CustomTabsSessionToken {
method public static androidx.browser.customtabs.CustomTabsSessionToken createMockSessionTokenForTesting();
method public androidx.browser.customtabs.CustomTabsCallback? getCallback();
@@ -234,13 +230,12 @@
method public boolean isAssociatedWith(androidx.browser.customtabs.CustomTabsSession);
}
-
public class PostMessageService extends android.app.Service {
ctor public PostMessageService();
method public android.os.IBinder onBind(android.content.Intent?);
}
- public abstract class PostMessageServiceConnection implements androidx.browser.customtabs.PostMessageBackend android.content.ServiceConnection {
+ public abstract class PostMessageServiceConnection implements android.content.ServiceConnection {
ctor public PostMessageServiceConnection(androidx.browser.customtabs.CustomTabsSessionToken);
method public boolean bindSessionToPostMessageService(android.content.Context, String);
method public final boolean notifyMessageChannelReady(android.os.Bundle?);
@@ -263,7 +258,6 @@
package androidx.browser.trusted {
-
public final class Token {
method public static androidx.browser.trusted.Token? create(String, android.content.pm.PackageManager);
method public static androidx.browser.trusted.Token deserialize(byte[]);
@@ -370,7 +364,7 @@
}
public final class ShareTarget {
- ctor public ShareTarget(String, @androidx.browser.trusted.sharing.ShareTarget.RequestMethod String?, @androidx.browser.trusted.sharing.ShareTarget.EncodingType String?, androidx.browser.trusted.sharing.ShareTarget.Params);
+ ctor public ShareTarget(String, String?, String?, androidx.browser.trusted.sharing.ShareTarget.Params);
method public static androidx.browser.trusted.sharing.ShareTarget? fromBundle(android.os.Bundle);
method public android.os.Bundle toBundle();
field public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data";
@@ -382,12 +376,11 @@
field public static final String METHOD_GET = "GET";
field public static final String METHOD_POST = "POST";
field public final String action;
- field @androidx.browser.trusted.sharing.ShareTarget.EncodingType public final String? encodingType;
- field @androidx.browser.trusted.sharing.ShareTarget.RequestMethod public final String? method;
+ field public final String? encodingType;
+ field public final String? method;
field public final androidx.browser.trusted.sharing.ShareTarget.Params params;
}
-
public static final class ShareTarget.FileFormField {
ctor public ShareTarget.FileFormField(String, java.util.List<java.lang.String!>);
field public static final String KEY_ACCEPTED_TYPES = "androidx.browser.trusted.sharing.KEY_ACCEPTED_TYPES";
@@ -406,7 +399,6 @@
field public final String? title;
}
-
}
package androidx.browser.trusted.splashscreens {
diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle
index 81f02c1..1a08e10 100644
--- a/buildSrc/build.gradle
+++ b/buildSrc/build.gradle
@@ -30,11 +30,6 @@
apply from: "out.gradle"
init.chooseOutDir()
-def runningInBuildServer = System.env.DIST_DIR != null
-if (runningInBuildServer) {
- System.setProperty("kotlin.compiler.execution.strategy", "in-process")
-}
-
ext.supportRootFolder = project.projectDir.getParentFile()
apply from: 'repos.gradle'
apply from: "build_dependencies.gradle"
diff --git a/buildSrc/src/main/kotlin/androidx/build/SourceJarTaskHelper.kt b/buildSrc/src/main/kotlin/androidx/build/SourceJarTaskHelper.kt
index f4052b7..303f0ff 100644
--- a/buildSrc/src/main/kotlin/androidx/build/SourceJarTaskHelper.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/SourceJarTaskHelper.kt
@@ -27,8 +27,10 @@
import org.gradle.api.plugins.JavaPluginConvention
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.bundling.Jar
+import org.gradle.kotlin.dsl.extra
import org.gradle.kotlin.dsl.getPlugin
import org.gradle.kotlin.dsl.named
+import org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension
/**
* Sets up a source jar task for an Android library project.
@@ -41,6 +43,26 @@
}
registerSourcesVariant(sourceJar)
}
+ project.afterEvaluate {
+ // we can only tell if a project is multiplatform after it is configured
+ if (it.multiplatformExtension != null && it.extra.has("publish")) {
+ extension.defaultPublishVariant { variant ->
+ val kotlinExt = project.extensions.getByName("kotlin") as KotlinProjectExtension
+ val sourceJar =
+ project.tasks.named("sourceJar${variant.name.capitalize()}", Jar::class.java)
+ // multiplatform projects use different source sets, so we need to modify the task
+ sourceJar.configure { sourceJarTask ->
+ // use a whitelist of source sets, because that is the preferred policy
+ sourceJarTask.from(kotlinExt.sourceSets.getByName("commonMain").kotlin.srcDirs)
+ sourceJarTask.from(kotlinExt.sourceSets.getByName("androidMain").kotlin.srcDirs)
+ }
+ }
+ // Disable the builtin maven-publish for kotlin multiplatform, as it doesn't work
+ // and can't be feasibly modified. It may not be present in MPP samples.
+ project.tasks.findByName("publishKotlinMultiplatformPublicationToMavenRepository")
+ ?.enabled = false
+ }
+ }
}
/**
@@ -92,4 +114,4 @@
if (javaComponent is AdhocComponentWithVariants) {
javaComponent.addVariantsFromConfiguration(gradleVariant) { }
}
-}
\ No newline at end of file
+}
diff --git a/buildSrc/src/main/kotlin/androidx/build/TaskUpToDateValidator.kt b/buildSrc/src/main/kotlin/androidx/build/TaskUpToDateValidator.kt
index 553d833..dbd1480 100644
--- a/buildSrc/src/main/kotlin/androidx/build/TaskUpToDateValidator.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/TaskUpToDateValidator.kt
@@ -46,6 +46,10 @@
"distPublicDokkaDocs",
"dokkaJavaPublicDocs",
"dokkaKotlinPublicDocs",
+ "externalNativeBuildDebug",
+ "externalNativeBuildRelease",
+ "generateJsonModelDebug",
+ "generateJsonModelRelease",
"generateMetadataFileForKotlinMultiplatformPublication",
"generatePomFileForBenchmarkPluginMarkerMavenPublication",
"generatePomFileForKotlinMultiplatformPublication",
diff --git a/buildSrc/src/main/kotlin/androidx/build/checkapi/CheckApi.kt b/buildSrc/src/main/kotlin/androidx/build/checkapi/CheckApi.kt
index 7ddd1e5..431c549 100644
--- a/buildSrc/src/main/kotlin/androidx/build/checkapi/CheckApi.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/checkapi/CheckApi.kt
@@ -97,26 +97,36 @@
* @param version the API version, ex. 25.0.0-SNAPSHOT
* @return the API file of this version
*/
-fun getApiFile(rootDir: File, version: Version): File {
- if (!isValidApiVersion(version)) {
+fun getApiFile(rootDir: File, artifactVersion: Version): File {
+ val apiDir = File(rootDir, "api")
+ val version = getApiFileVersion(artifactVersion)
+ return File(apiDir, "${version.major}.${version.minor}.0${version.extra}.txt")
+}
+
+/**
+ * Sometimes the version of an API file might be not equal to the version of its artifact.
+ * This is because under certain circumstances, APIs are not allowed to change, and in those
+ * cases we may stop versioning the API.
+ * This functions returns the version of API file to use given the version of an artifact
+ */
+fun getApiFileVersion(version: Version): Version {
+ if (!isValidArtifactVersion(version)) {
val suggestedVersion = Version("${version.major}.${version.minor}.${version.patch}-rc01")
throw GradleException("Illegal version $version . It is not allowed to have a nonzero " +
"patch number and be alpha or beta at the same time.\n" +
"Did you mean $suggestedVersion?")
}
-
var extra = ""
if (version.patch == 0 && version.extra != null) {
extra = version.extra
}
- val apiDir = File(rootDir, "api")
- return File(apiDir, "${version.major}.${version.minor}.0$extra.txt")
+ return Version(version.major, version.minor, 0, extra)
}
/**
- * Whether it is allowed to generate an API of the given version
+ * Whether it is allowed for an artifact to have this version
*/
-fun isValidApiVersion(version: Version): Boolean {
+fun isValidArtifactVersion(version: Version): Boolean {
if (version.patch != 0 && (version.isAlpha() || version.isBeta() || version.isDev())) {
return false
}
diff --git a/buildSrc/src/main/kotlin/androidx/build/metalava/CheckApiCompatibilityTask.kt b/buildSrc/src/main/kotlin/androidx/build/metalava/CheckApiCompatibilityTask.kt
index d329caa..8bea829 100644
--- a/buildSrc/src/main/kotlin/androidx/build/metalava/CheckApiCompatibilityTask.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/metalava/CheckApiCompatibilityTask.kt
@@ -90,8 +90,9 @@
args = args + listOf("--baseline", baselineFile.toString())
}
if (checkRestrictedAPIs) {
- args = args + listOf("--show-annotation",
- "androidx.annotation.RestrictTo",
+ args = args + listOf(
+ "--show-annotation", "androidx.annotation.RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP)",
+ "--show-annotation", "androidx.annotation.RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX)",
"--show-unannotated"
)
}
diff --git a/buildSrc/src/main/kotlin/androidx/build/metalava/GenerateApiTask.kt b/buildSrc/src/main/kotlin/androidx/build/metalava/GenerateApiTask.kt
index 9991331..0fc8906 100644
--- a/buildSrc/src/main/kotlin/androidx/build/metalava/GenerateApiTask.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/metalava/GenerateApiTask.kt
@@ -73,7 +73,6 @@
project.generateApi(
inputs,
apiLocation.get(),
- apiLocation.get().publicApiFile.parentFile,
ApiLintMode.CheckBaseline(baselines.get().apiLintFile),
generateRestrictedAPIs,
workerExecutor
diff --git a/buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt b/buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
index 2440471..ea3728d 100644
--- a/buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
@@ -154,19 +154,18 @@
fun Project.generateApi(
files: JavaCompileInputs,
apiLocation: ApiLocation,
- tempDir: File,
apiLintMode: ApiLintMode,
includeRestrictedApis: Boolean,
workerExecutor: WorkerExecutor
) {
generateApi(files.bootClasspath, files.dependencyClasspath, files.sourcePaths.files,
- apiLocation.publicApiFile, tempDir, GenerateApiMode.PublicApi, apiLintMode, workerExecutor)
+ apiLocation.publicApiFile, GenerateApiMode.PublicApi, apiLintMode, workerExecutor)
generateApi(files.bootClasspath, files.dependencyClasspath, files.sourcePaths.files,
- apiLocation.experimentalApiFile, tempDir, GenerateApiMode.ExperimentalApi, apiLintMode,
+ apiLocation.experimentalApiFile, GenerateApiMode.ExperimentalApi, apiLintMode,
workerExecutor)
if (includeRestrictedApis) {
generateApi(files.bootClasspath, files.dependencyClasspath, files.sourcePaths.files,
- apiLocation.restrictedApiFile, tempDir, GenerateApiMode.RestrictedApi, ApiLintMode.Skip,
+ apiLocation.restrictedApiFile, GenerateApiMode.RestrictedApi, ApiLintMode.Skip,
workerExecutor)
}
}
@@ -177,17 +176,10 @@
dependencyClasspath: FileCollection,
sourcePaths: Collection<File>,
outputFile: File,
- tempDir: File,
generateApiMode: GenerateApiMode,
apiLintMode: ApiLintMode,
workerExecutor: WorkerExecutor
) {
- val tempOutputFile = if (generateApiMode is GenerateApiMode.RestrictedApi) {
- File(tempDir, outputFile.name + ".tmp")
- } else {
- outputFile
- }
-
// generate public API txt
val args = mutableListOf(
"--classpath",
@@ -197,7 +189,7 @@
sourcePaths.filter { it.exists() }.joinToString(File.pathSeparator),
"--api",
- tempOutputFile.toString(),
+ outputFile.toString(),
"--format=v3",
"--output-kotlin-nulls=yes"
@@ -210,7 +202,8 @@
is GenerateApiMode.RestrictedApi -> {
// Show restricted APIs despite @hide.
args += listOf(
- "--show-annotation", "androidx.annotation.RestrictTo",
+ "--show-annotation", "androidx.annotation.RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP)",
+ "--show-annotation", "androidx.annotation.RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX)",
"--show-unannotated"
)
args += HIDE_EXPERIMENTAL_ARGS
@@ -247,36 +240,5 @@
}
}
- if (generateApiMode is GenerateApiMode.RestrictedApi) {
- runMetalavaWithArgs(getMetalavaJar(), args, workerExecutor)
- // TODO(119617147): when we no longer need to fix Metalava's output, remove this "await"
- workerExecutor.await()
- removeRestrictToLibraryLines(tempOutputFile, outputFile)
- } else {
- runMetalavaWithArgs(getMetalavaJar(), args, workerExecutor)
- }
-}
-
-// until b/119617147 is done, remove lines containing "@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY)"
-private fun removeRestrictToLibraryLines(inputFile: File, outputFile: File) {
- val outputBuilder = StringBuilder()
- val lines = inputFile.readLines()
- var skipScopeUntil: String? = null
- for (line in lines) {
- val skip = line.contains("@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY)")
- if (skip && line.endsWith("{")) {
- skipScopeUntil = line.commonPrefixWith(" ") + "}"
- }
- if (!skip && skipScopeUntil == null) {
- outputBuilder.append(line)
- outputBuilder.append("\n")
- }
- if (line == skipScopeUntil) {
- skipScopeUntil = null
- }
- }
- if (skipScopeUntil != null) {
- throw GradleException("Skipping until `$skipScopeUntil`, but found EOF")
- }
- outputFile.writeText(outputBuilder.toString())
+ runMetalavaWithArgs(getMetalavaJar(), args, workerExecutor)
}
diff --git a/buildSrc/src/main/kotlin/androidx/build/metalava/RegenerateOldApisTask.kt b/buildSrc/src/main/kotlin/androidx/build/metalava/RegenerateOldApisTask.kt
index b02956c..ac522d5 100644
--- a/buildSrc/src/main/kotlin/androidx/build/metalava/RegenerateOldApisTask.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/metalava/RegenerateOldApisTask.kt
@@ -18,8 +18,9 @@
import androidx.build.SupportConfig
import androidx.build.Version
+import androidx.build.checkapi.getApiFileVersion
import androidx.build.checkapi.getApiLocation
-import androidx.build.checkapi.isValidApiVersion
+import androidx.build.checkapi.isValidArtifactVersion
import androidx.build.java.JavaCompileInputs
import org.gradle.api.DefaultTask
import org.gradle.api.Project
@@ -44,36 +45,37 @@
val projectPrebuiltsDir =
File(internalPrebuiltsDir, groupId.replace(".", "/") + "/" + artifactId)
- val versions = listVersions(projectPrebuiltsDir)
+ val artifactVersions = listVersions(projectPrebuiltsDir)
- for (version in versions) {
- if (version != project.version.toString()) {
- regenerate(project.rootProject, groupId, artifactId, version)
+ var prevApiFileVersion = getApiFileVersion(project.version as Version)
+ for (artifactVersion in artifactVersions.reversed()) {
+ val apiFileVersion = getApiFileVersion(artifactVersion)
+ // If two artifacts correspond to the same API file, don't regenerate the
+ // same api file again
+ if (apiFileVersion != prevApiFileVersion) {
+ regenerate(project.rootProject, groupId, artifactId, artifactVersion)
+ prevApiFileVersion = apiFileVersion
}
}
}
- // Returns the artifact versions that appear to exist in <dir>
- fun listVersions(dir: File): List<String> {
+ // Returns all (valid) artifact versions that appear to exist in <dir>
+ fun listVersions(dir: File): List<Version> {
val pathNames: Array<String> = dir.list() ?: arrayOf()
val files = pathNames.map({ name -> File(dir, name) })
val subdirs = files.filter({ child -> child.isDirectory() })
- val versions = subdirs.map({ child -> child.name })
- return versions.sorted()
+ val versions = subdirs.map({ child -> Version(child.name) })
+ val validVersions = versions.filter({ v -> isValidArtifactVersion(v) })
+ return validVersions.sorted()
}
fun regenerate(
runnerProject: Project,
groupId: String,
artifactId: String,
- versionString: String
+ version: Version
) {
- val mavenId = "$groupId:$artifactId:$versionString"
- val version = Version(versionString)
- if (!isValidApiVersion(version)) {
- runnerProject.logger.info("Skipping illegal version $version from $mavenId")
- return
- }
+ val mavenId = "$groupId:$artifactId:$version"
val inputs: JavaCompileInputs?
try {
inputs = getFiles(runnerProject, mavenId)
@@ -83,12 +85,11 @@
}
val outputApiLocation = project.getApiLocation(version)
- val tempDir = File(project.buildDir, "api")
if (outputApiLocation.publicApiFile.exists()) {
project.logger.lifecycle("Regenerating $mavenId")
val generateRestrictedAPIs = outputApiLocation.restrictedApiFile.exists()
project.generateApi(
- inputs, outputApiLocation, tempDir, ApiLintMode.Skip, generateRestrictedAPIs,
+ inputs, outputApiLocation, ApiLintMode.Skip, generateRestrictedAPIs,
workerExecutor)
}
}
diff --git a/buildSrc/src/main/kotlin/androidx/build/metalava/UpdateBaselineTasks.kt b/buildSrc/src/main/kotlin/androidx/build/metalava/UpdateBaselineTasks.kt
index 77fe582..a5e1b5d 100644
--- a/buildSrc/src/main/kotlin/androidx/build/metalava/UpdateBaselineTasks.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/metalava/UpdateBaselineTasks.kt
@@ -145,9 +145,9 @@
)
if (processRestrictedApis) {
args += listOf(
- "--show-unannotated",
- "--show-annotation",
- "androidx.annotation.RestrictTo"
+ "--show-annotation", "androidx.annotation.RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP)",
+ "--show-annotation", "androidx.annotation.RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX)",
+ "--show-unannotated"
)
}
runWithArgs(args)
diff --git a/car/core/api/restricted_1.0.0-alpha8.txt b/car/core/api/restricted_1.0.0-alpha8.txt
index c63653f..0c03a60 100644
--- a/car/core/api/restricted_1.0.0-alpha8.txt
+++ b/car/core/api/restricted_1.0.0-alpha8.txt
@@ -383,7 +383,7 @@
public final class CheckBoxListItem extends androidx.car.widget.CompoundButtonListItem<androidx.car.widget.CheckBoxListItem.ViewHolder> {
ctor public CheckBoxListItem(android.content.Context);
method public static androidx.car.widget.CheckBoxListItem.ViewHolder createViewHolder(android.view.View);
- method @androidx.car.widget.ListItemAdapter.ListItemType public int getViewType();
+ method public int getViewType();
method public boolean isCompoundButtonPositionEnd();
}
@@ -467,7 +467,7 @@
public class ListItemAdapter extends androidx.recyclerview.widget.RecyclerView.Adapter<androidx.car.widget.ListItem.ViewHolder> implements androidx.car.widget.PagedListView.DividerVisibilityManager androidx.car.widget.PagedListView.ItemCap {
ctor public ListItemAdapter(android.content.Context, androidx.car.widget.ListItemProvider);
- ctor public ListItemAdapter(android.content.Context, androidx.car.widget.ListItemProvider, @androidx.car.widget.ListItemAdapter.ListBackgroundStyle int);
+ ctor public ListItemAdapter(android.content.Context, androidx.car.widget.ListItemProvider, int);
method public android.content.Context getContext();
method public int getItemCount();
method public boolean getShowDivider(@IntRange(from=0) int);
@@ -490,8 +490,6 @@
field @Deprecated public static final int SOLID = 0; // 0x0
}
-
-
public abstract class ListItemProvider<VH extends androidx.car.widget.ListItem.ViewHolder> {
ctor public ListItemProvider();
method public abstract androidx.car.widget.ListItem<VH!> get(int);
@@ -651,7 +649,7 @@
public final class RadioButtonListItem extends androidx.car.widget.CompoundButtonListItem<androidx.car.widget.RadioButtonListItem.ViewHolder> {
ctor public RadioButtonListItem(android.content.Context);
method public static androidx.car.widget.RadioButtonListItem.ViewHolder createViewHolder(android.view.View);
- method @androidx.car.widget.ListItemAdapter.ListItemType public int getViewType();
+ method public int getViewType();
method public boolean isCompoundButtonPositionEnd();
}
@@ -727,7 +725,7 @@
public final class SwitchListItem extends androidx.car.widget.CompoundButtonListItem<androidx.car.widget.SwitchListItem.ViewHolder> {
ctor public SwitchListItem(android.content.Context);
method public static androidx.car.widget.SwitchListItem.ViewHolder createViewHolder(android.view.View);
- method @androidx.car.widget.ListItemAdapter.ListItemType public int getViewType();
+ method public int getViewType();
method public boolean isCompoundButtonPositionEnd();
method @Deprecated public void setShowSwitchDivider(boolean);
method @Deprecated public void setSwitchOnCheckedChangeListener(android.widget.CompoundButton.OnCheckedChangeListener?);
diff --git a/car/core/api/restricted_current.txt b/car/core/api/restricted_current.txt
index c63653f..0c03a60 100644
--- a/car/core/api/restricted_current.txt
+++ b/car/core/api/restricted_current.txt
@@ -383,7 +383,7 @@
public final class CheckBoxListItem extends androidx.car.widget.CompoundButtonListItem<androidx.car.widget.CheckBoxListItem.ViewHolder> {
ctor public CheckBoxListItem(android.content.Context);
method public static androidx.car.widget.CheckBoxListItem.ViewHolder createViewHolder(android.view.View);
- method @androidx.car.widget.ListItemAdapter.ListItemType public int getViewType();
+ method public int getViewType();
method public boolean isCompoundButtonPositionEnd();
}
@@ -467,7 +467,7 @@
public class ListItemAdapter extends androidx.recyclerview.widget.RecyclerView.Adapter<androidx.car.widget.ListItem.ViewHolder> implements androidx.car.widget.PagedListView.DividerVisibilityManager androidx.car.widget.PagedListView.ItemCap {
ctor public ListItemAdapter(android.content.Context, androidx.car.widget.ListItemProvider);
- ctor public ListItemAdapter(android.content.Context, androidx.car.widget.ListItemProvider, @androidx.car.widget.ListItemAdapter.ListBackgroundStyle int);
+ ctor public ListItemAdapter(android.content.Context, androidx.car.widget.ListItemProvider, int);
method public android.content.Context getContext();
method public int getItemCount();
method public boolean getShowDivider(@IntRange(from=0) int);
@@ -490,8 +490,6 @@
field @Deprecated public static final int SOLID = 0; // 0x0
}
-
-
public abstract class ListItemProvider<VH extends androidx.car.widget.ListItem.ViewHolder> {
ctor public ListItemProvider();
method public abstract androidx.car.widget.ListItem<VH!> get(int);
@@ -651,7 +649,7 @@
public final class RadioButtonListItem extends androidx.car.widget.CompoundButtonListItem<androidx.car.widget.RadioButtonListItem.ViewHolder> {
ctor public RadioButtonListItem(android.content.Context);
method public static androidx.car.widget.RadioButtonListItem.ViewHolder createViewHolder(android.view.View);
- method @androidx.car.widget.ListItemAdapter.ListItemType public int getViewType();
+ method public int getViewType();
method public boolean isCompoundButtonPositionEnd();
}
@@ -727,7 +725,7 @@
public final class SwitchListItem extends androidx.car.widget.CompoundButtonListItem<androidx.car.widget.SwitchListItem.ViewHolder> {
ctor public SwitchListItem(android.content.Context);
method public static androidx.car.widget.SwitchListItem.ViewHolder createViewHolder(android.view.View);
- method @androidx.car.widget.ListItemAdapter.ListItemType public int getViewType();
+ method public int getViewType();
method public boolean isCompoundButtonPositionEnd();
method @Deprecated public void setShowSwitchDivider(boolean);
method @Deprecated public void setSwitchOnCheckedChangeListener(android.widget.CompoundButton.OnCheckedChangeListener?);
diff --git a/compose/compose-runtime/build.gradle b/compose/compose-runtime/build.gradle
index fa9d11f..2f0088f 100644
--- a/compose/compose-runtime/build.gradle
+++ b/compose/compose-runtime/build.gradle
@@ -65,24 +65,3 @@
inceptionYear = "2019"
description = "Contains support code for tree composition"
}
-
-//TODO: figure out the trigger for this logic being needed and move it to AndroidX(UI)Plugin
-// or else decide we *should* be making jars and get other people to not break. b/142408067
-afterEvaluate {
- configurations.archives.artifacts.each {
- if (it.file.name.endsWith('jar') && !it.file.name.endsWith('sources.jar')) {
- configurations.archives.artifacts.remove(it)
- }
- }
-}
-
-//TODO: decide whether and how to move this to AndroidX(UI)Plugin
-task sourcesJar(type: Jar) {
- classifier = 'sources'
- from kotlin.sourceSets.commonMain.kotlin
- from kotlin.sourceSets.androidMain.kotlin
-}
-
-artifacts {
- archives sourcesJar
-}
diff --git a/coordinatorlayout/api/restricted_1.1.0-beta01.txt b/coordinatorlayout/api/restricted_1.1.0-beta01.txt
index b8d1ba0..e6e4e26 100644
--- a/coordinatorlayout/api/restricted_1.1.0-beta01.txt
+++ b/coordinatorlayout/api/restricted_1.1.0-beta01.txt
@@ -101,7 +101,5 @@
field public static final android.os.Parcelable.Creator<androidx.coordinatorlayout.widget.CoordinatorLayout.SavedState!>! CREATOR;
}
-
-
}
diff --git a/coordinatorlayout/api/restricted_1.1.0-rc01.txt b/coordinatorlayout/api/restricted_1.1.0-rc01.txt
index b8d1ba0..e6e4e26 100644
--- a/coordinatorlayout/api/restricted_1.1.0-rc01.txt
+++ b/coordinatorlayout/api/restricted_1.1.0-rc01.txt
@@ -101,7 +101,5 @@
field public static final android.os.Parcelable.Creator<androidx.coordinatorlayout.widget.CoordinatorLayout.SavedState!>! CREATOR;
}
-
-
}
diff --git a/coordinatorlayout/api/restricted_1.2.0-alpha01.txt b/coordinatorlayout/api/restricted_1.2.0-alpha01.txt
index b8d1ba0..e6e4e26 100644
--- a/coordinatorlayout/api/restricted_1.2.0-alpha01.txt
+++ b/coordinatorlayout/api/restricted_1.2.0-alpha01.txt
@@ -101,7 +101,5 @@
field public static final android.os.Parcelable.Creator<androidx.coordinatorlayout.widget.CoordinatorLayout.SavedState!>! CREATOR;
}
-
-
}
diff --git a/coordinatorlayout/api/restricted_current.txt b/coordinatorlayout/api/restricted_current.txt
index b8d1ba0..e6e4e26 100644
--- a/coordinatorlayout/api/restricted_current.txt
+++ b/coordinatorlayout/api/restricted_current.txt
@@ -101,7 +101,5 @@
field public static final android.os.Parcelable.Creator<androidx.coordinatorlayout.widget.CoordinatorLayout.SavedState!>! CREATOR;
}
-
-
}
diff --git a/core/core/api/restricted_1.1.0-alpha05.txt b/core/core/api/restricted_1.1.0-alpha05.txt
index 5abde11..7cd3262 100644
--- a/core/core/api/restricted_1.1.0-alpha05.txt
+++ b/core/core/api/restricted_1.1.0-alpha05.txt
@@ -954,12 +954,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1274,7 +1272,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1286,7 +1284,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.1.0-beta01.txt b/core/core/api/restricted_1.1.0-beta01.txt
index 71f8c77..71e92a4 100644
--- a/core/core/api/restricted_1.1.0-beta01.txt
+++ b/core/core/api/restricted_1.1.0-beta01.txt
@@ -961,12 +961,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1281,7 +1279,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1293,7 +1291,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.1.0-rc01.txt b/core/core/api/restricted_1.1.0-rc01.txt
index 01c8881..13ec2cc 100644
--- a/core/core/api/restricted_1.1.0-rc01.txt
+++ b/core/core/api/restricted_1.1.0-rc01.txt
@@ -961,12 +961,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1007,7 +1005,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1282,7 +1279,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1294,7 +1291,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.2.0-alpha02.txt b/core/core/api/restricted_1.2.0-alpha02.txt
index 97b1259..2919e29 100644
--- a/core/core/api/restricted_1.2.0-alpha02.txt
+++ b/core/core/api/restricted_1.2.0-alpha02.txt
@@ -1001,12 +1001,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1047,7 +1045,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1376,7 +1373,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1388,7 +1385,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.2.0-alpha03.txt b/core/core/api/restricted_1.2.0-alpha03.txt
index 0cd8629..265366c 100644
--- a/core/core/api/restricted_1.2.0-alpha03.txt
+++ b/core/core/api/restricted_1.2.0-alpha03.txt
@@ -1002,12 +1002,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1048,7 +1046,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1380,7 +1377,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1392,7 +1389,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.2.0-alpha04.txt b/core/core/api/restricted_1.2.0-alpha04.txt
index 3fd3a18..cee3d02 100644
--- a/core/core/api/restricted_1.2.0-alpha04.txt
+++ b/core/core/api/restricted_1.2.0-alpha04.txt
@@ -1002,12 +1002,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1051,7 +1049,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1383,7 +1380,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1395,7 +1392,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.2.0-beta01.txt b/core/core/api/restricted_1.2.0-beta01.txt
index 9c2617d..7f416dac 100644
--- a/core/core/api/restricted_1.2.0-beta01.txt
+++ b/core/core/api/restricted_1.2.0-beta01.txt
@@ -1007,12 +1007,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1056,7 +1054,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1389,7 +1386,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1401,7 +1398,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.2.0-beta02.txt b/core/core/api/restricted_1.2.0-beta02.txt
index fdc2d53..a4025e1 100644
--- a/core/core/api/restricted_1.2.0-beta02.txt
+++ b/core/core/api/restricted_1.2.0-beta02.txt
@@ -1007,12 +1007,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1056,7 +1054,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1389,7 +1386,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable! loadDrawable(android.content.Context!);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1401,7 +1398,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
diff --git a/core/core/api/restricted_1.3.0-alpha01.ignore b/core/core/api/restricted_1.3.0-alpha01.ignore
new file mode 100644
index 0000000..392c5a0
--- /dev/null
+++ b/core/core/api/restricted_1.3.0-alpha01.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+RemovedClass: androidx.core.util.LogWriter:
+ Removed class androidx.core.util.LogWriter
diff --git a/core/core/api/restricted_1.3.0-alpha01.txt b/core/core/api/restricted_1.3.0-alpha01.txt
index 3413875..9628396 100644
--- a/core/core/api/restricted_1.3.0-alpha01.txt
+++ b/core/core/api/restricted_1.3.0-alpha01.txt
@@ -1013,12 +1013,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1062,7 +1060,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1398,7 +1395,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable? loadDrawable(android.content.Context);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1417,7 +1414,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
@@ -1936,13 +1932,6 @@
method public static void buildShortClassTag(Object!, StringBuilder!);
}
- @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public class LogWriter extends java.io.Writer {
- ctor @Deprecated public LogWriter(String!);
- method @Deprecated public void close();
- method @Deprecated public void flush();
- method @Deprecated public void write(char[]!, int, int);
- }
-
public class ObjectsCompat {
method public static boolean equals(Object?, Object?);
method public static int hash(java.lang.Object!...);
diff --git a/core/core/api/restricted_current.txt b/core/core/api/restricted_current.txt
index 3413875..9628396 100644
--- a/core/core/api/restricted_current.txt
+++ b/core/core/api/restricted_current.txt
@@ -1013,12 +1013,10 @@
}
public final class PermissionInfoCompat {
- method @androidx.core.content.pm.PermissionInfoCompat.Protection public static int getProtection(android.content.pm.PermissionInfo);
- method @androidx.core.content.pm.PermissionInfoCompat.ProtectionFlags public static int getProtectionFlags(android.content.pm.PermissionInfo);
+ method public static int getProtection(android.content.pm.PermissionInfo);
+ method public static int getProtectionFlags(android.content.pm.PermissionInfo);
}
-
-
public class ShortcutInfoCompat {
method public android.content.ComponentName? getActivity();
method public java.util.Set<java.lang.String!>? getCategories();
@@ -1062,7 +1060,6 @@
method @AnyThread public abstract T! removeShortcuts(java.util.List<java.lang.String!>!);
}
-
public class ShortcutManagerCompat {
method public static boolean addDynamicShortcuts(android.content.Context, java.util.List<androidx.core.content.pm.ShortcutInfoCompat!>);
method public static android.content.Intent createShortcutResultIntent(android.content.Context, androidx.core.content.pm.ShortcutInfoCompat);
@@ -1398,7 +1395,7 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.graphics.Bitmap? getBitmap();
method @IdRes public int getResId();
method public String getResPackage();
- method @androidx.core.graphics.drawable.IconCompat.IconType public int getType();
+ method public int getType();
method public android.net.Uri getUri();
method public android.graphics.drawable.Drawable? loadDrawable(android.content.Context);
method public androidx.core.graphics.drawable.IconCompat! setTint(@ColorInt int);
@@ -1417,7 +1414,6 @@
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public int mType;
}
-
public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
method public void draw(android.graphics.Canvas);
method public final android.graphics.Bitmap? getBitmap();
@@ -1936,13 +1932,6 @@
method public static void buildShortClassTag(Object!, StringBuilder!);
}
- @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public class LogWriter extends java.io.Writer {
- ctor @Deprecated public LogWriter(String!);
- method @Deprecated public void close();
- method @Deprecated public void flush();
- method @Deprecated public void write(char[]!, int, int);
- }
-
public class ObjectsCompat {
method public static boolean equals(Object?, Object?);
method public static int hash(java.lang.Object!...);
diff --git a/core/core/src/androidTest/java/androidx/core/graphics/drawable/IconCompatTest.java b/core/core/src/androidTest/java/androidx/core/graphics/drawable/IconCompatTest.java
index 6612ffa..9b09124 100644
--- a/core/core/src/androidTest/java/androidx/core/graphics/drawable/IconCompatTest.java
+++ b/core/core/src/androidTest/java/androidx/core/graphics/drawable/IconCompatTest.java
@@ -172,15 +172,32 @@
}
@Test
- public void testCreateWithContentUriForAdaptiveBitmap() throws IOException {
+ public void testFileIconCompatAdaptiveBitmap() throws IOException {
File file = new File(mContext.getFilesDir(), "testimage.jpg");
+ Bitmap bitmap = Bitmap.createBitmap(200, 200, Bitmap.Config.ARGB_8888);
+ bitmap.eraseColor(Color.GRAY);
try {
- writeSampleImage(file);
+ writeSampleImage(bitmap, file);
assertTrue(file.exists());
final IconCompat compat =
IconCompat.createWithAdaptiveBitmapContentUri(Uri.fromFile(file));
verifyIconCompatValidity(compat);
- verifyAdaptiveIconCompat(compat, Color.argb(255, 4, 5, 10));
+ } finally {
+ file.delete();
+ }
+ }
+
+ @Test
+ public void testCreateWithContentUriForAdaptiveBitmap() throws IOException {
+ File file = new File(mContext.getFilesDir(), "testimage.jpg");
+ Bitmap bitmap = Bitmap.createBitmap(200, 200, Bitmap.Config.ARGB_8888);
+ bitmap.eraseColor(Color.GRAY);
+ try {
+ writeSampleImage(bitmap, file);
+ assertTrue(file.exists());
+ final IconCompat compat =
+ IconCompat.createWithAdaptiveBitmapContentUri(Uri.fromFile(file));
+ verifyAdaptiveIconCompat(compat, Color.GRAY);
} finally {
file.delete();
}
@@ -344,6 +361,13 @@
verifyClippedCircle(result, Color.RED, 100);
}
+ private void writeSampleImage(Bitmap bitmap, File imageFile) throws IOException {
+ try (OutputStream target = new FileOutputStream(imageFile)) {
+ bitmap.compress(Bitmap.CompressFormat.PNG, 0, target);
+ target.flush();
+ }
+ }
+
private void writeSampleImage(File imagefile) throws IOException {
try (InputStream source = mContext.getResources().openRawResource(R.drawable.testimage);
OutputStream target = new FileOutputStream(imagefile)) {
diff --git a/exifinterface/api/restricted_1.0.0.txt b/exifinterface/api/restricted_1.0.0.txt
index 8fd35d4..94bd5c6 100644
--- a/exifinterface/api/restricted_1.0.0.txt
+++ b/exifinterface/api/restricted_1.0.0.txt
@@ -329,6 +329,5 @@
field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
}
-
}
diff --git a/exifinterface/api/restricted_1.1.0-alpha01.txt b/exifinterface/api/restricted_1.1.0-alpha01.txt
index bd41d78..75772d7 100644
--- a/exifinterface/api/restricted_1.1.0-alpha01.txt
+++ b/exifinterface/api/restricted_1.1.0-alpha01.txt
@@ -332,6 +332,5 @@
field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
}
-
}
diff --git a/exifinterface/api/restricted_1.1.0-beta01.txt b/exifinterface/api/restricted_1.1.0-beta01.txt
index ce8a598..87a26c7 100644
--- a/exifinterface/api/restricted_1.1.0-beta01.txt
+++ b/exifinterface/api/restricted_1.1.0-beta01.txt
@@ -336,6 +336,5 @@
field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
}
-
}
diff --git a/exifinterface/api/restricted_1.2.0-alpha01.txt b/exifinterface/api/restricted_1.2.0-alpha01.txt
index 5aacfe0..4bbc2ba 100644
--- a/exifinterface/api/restricted_1.2.0-alpha01.txt
+++ b/exifinterface/api/restricted_1.2.0-alpha01.txt
@@ -6,7 +6,7 @@
ctor public ExifInterface(String) throws java.io.IOException;
ctor public ExifInterface(java.io.FileDescriptor) throws java.io.IOException;
ctor public ExifInterface(java.io.InputStream) throws java.io.IOException;
- ctor public ExifInterface(java.io.InputStream, @androidx.exifinterface.media.ExifInterface.ExifStreamType int) throws java.io.IOException;
+ ctor public ExifInterface(java.io.InputStream, int) throws java.io.IOException;
method public void flipHorizontally();
method public void flipVertically();
method public double getAltitude(double);
@@ -343,7 +343,5 @@
field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
}
-
-
}
diff --git a/exifinterface/api/restricted_1.2.0-beta01.txt b/exifinterface/api/restricted_1.2.0-beta01.txt
index 5aacfe0..4bbc2ba 100644
--- a/exifinterface/api/restricted_1.2.0-beta01.txt
+++ b/exifinterface/api/restricted_1.2.0-beta01.txt
@@ -6,7 +6,7 @@
ctor public ExifInterface(String) throws java.io.IOException;
ctor public ExifInterface(java.io.FileDescriptor) throws java.io.IOException;
ctor public ExifInterface(java.io.InputStream) throws java.io.IOException;
- ctor public ExifInterface(java.io.InputStream, @androidx.exifinterface.media.ExifInterface.ExifStreamType int) throws java.io.IOException;
+ ctor public ExifInterface(java.io.InputStream, int) throws java.io.IOException;
method public void flipHorizontally();
method public void flipVertically();
method public double getAltitude(double);
@@ -343,7 +343,5 @@
field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
}
-
-
}
diff --git a/exifinterface/api/restricted_current.txt b/exifinterface/api/restricted_current.txt
index 5aacfe0..4bbc2ba 100644
--- a/exifinterface/api/restricted_current.txt
+++ b/exifinterface/api/restricted_current.txt
@@ -6,7 +6,7 @@
ctor public ExifInterface(String) throws java.io.IOException;
ctor public ExifInterface(java.io.FileDescriptor) throws java.io.IOException;
ctor public ExifInterface(java.io.InputStream) throws java.io.IOException;
- ctor public ExifInterface(java.io.InputStream, @androidx.exifinterface.media.ExifInterface.ExifStreamType int) throws java.io.IOException;
+ ctor public ExifInterface(java.io.InputStream, int) throws java.io.IOException;
method public void flipHorizontally();
method public void flipVertically();
method public double getAltitude(double);
@@ -343,7 +343,5 @@
field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
}
-
-
}
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-alpha05.txt b/fragment/fragment-testing/api/restricted_1.1.0-alpha05.txt
index 2ad7664..e233be9 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-alpha05.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-alpha05.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-alpha06.txt b/fragment/fragment-testing/api/restricted_1.1.0-alpha06.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-alpha06.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-alpha06.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-alpha07.txt b/fragment/fragment-testing/api/restricted_1.1.0-alpha07.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-alpha07.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-alpha07.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-alpha08.txt b/fragment/fragment-testing/api/restricted_1.1.0-alpha08.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-alpha08.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-alpha08.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-alpha09.txt b/fragment/fragment-testing/api/restricted_1.1.0-alpha09.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-alpha09.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-alpha09.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-beta01.txt b/fragment/fragment-testing/api/restricted_1.1.0-beta01.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-beta01.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-beta01.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.1.0-rc01.txt b/fragment/fragment-testing/api/restricted_1.1.0-rc01.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.1.0-rc01.txt
+++ b/fragment/fragment-testing/api/restricted_1.1.0-rc01.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.2.0-alpha01.txt b/fragment/fragment-testing/api/restricted_1.2.0-alpha01.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.2.0-alpha01.txt
+++ b/fragment/fragment-testing/api/restricted_1.2.0-alpha01.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.2.0-alpha02.txt b/fragment/fragment-testing/api/restricted_1.2.0-alpha02.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.2.0-alpha02.txt
+++ b/fragment/fragment-testing/api/restricted_1.2.0-alpha02.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.2.0-alpha03.txt b/fragment/fragment-testing/api/restricted_1.2.0-alpha03.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.2.0-alpha03.txt
+++ b/fragment/fragment-testing/api/restricted_1.2.0-alpha03.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.2.0-alpha04.txt b/fragment/fragment-testing/api/restricted_1.2.0-alpha04.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.2.0-alpha04.txt
+++ b/fragment/fragment-testing/api/restricted_1.2.0-alpha04.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.2.0-beta01.txt b/fragment/fragment-testing/api/restricted_1.2.0-beta01.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.2.0-beta01.txt
+++ b/fragment/fragment-testing/api/restricted_1.2.0-beta01.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.2.0-rc01.txt b/fragment/fragment-testing/api/restricted_1.2.0-rc01.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.2.0-rc01.txt
+++ b/fragment/fragment-testing/api/restricted_1.2.0-rc01.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_1.3.0-alpha01.txt b/fragment/fragment-testing/api/restricted_1.3.0-alpha01.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_1.3.0-alpha01.txt
+++ b/fragment/fragment-testing/api/restricted_1.3.0-alpha01.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment-testing/api/restricted_current.txt b/fragment/fragment-testing/api/restricted_current.txt
index 7042bb9..873d5c8 100644
--- a/fragment/fragment-testing/api/restricted_current.txt
+++ b/fragment/fragment-testing/api/restricted_current.txt
@@ -15,12 +15,10 @@
method public androidx.fragment.app.testing.FragmentScenario<F!> recreate();
}
-
public static interface FragmentScenario.FragmentAction<F extends androidx.fragment.app.Fragment> {
method public void perform(F);
}
-
public final class FragmentScenarioKt {
ctor public FragmentScenarioKt();
method public static inline <reified F extends androidx.fragment.app.Fragment> androidx.fragment.app.testing.FragmentScenario<F> launchFragment(android.os.Bundle? fragmentArgs = null, @StyleRes int themeResId = R.style.FragmentScenarioEmptyFragmentActivityTheme, androidx.fragment.app.FragmentFactory? factory = null);
diff --git a/fragment/fragment/api/restricted_1.2.0-alpha01.txt b/fragment/fragment/api/restricted_1.2.0-alpha01.txt
index 40508a9..4685ff5 100644
--- a/fragment/fragment/api/restricted_1.2.0-alpha01.txt
+++ b/fragment/fragment/api/restricted_1.2.0-alpha01.txt
@@ -192,7 +192,6 @@
method public abstract boolean onHasView();
}
-
public class FragmentController {
method public void attachHost(androidx.fragment.app.Fragment?);
method public static androidx.fragment.app.FragmentController createController(androidx.fragment.app.FragmentHostCallback<?>);
diff --git a/fragment/fragment/src/androidTest/java/androidx/fragment/app/FragmentStoreTest.kt b/fragment/fragment/src/androidTest/java/androidx/fragment/app/FragmentStoreTest.kt
index 9f84e27..4ce1227 100644
--- a/fragment/fragment/src/androidTest/java/androidx/fragment/app/FragmentStoreTest.kt
+++ b/fragment/fragment/src/androidTest/java/androidx/fragment/app/FragmentStoreTest.kt
@@ -64,7 +64,7 @@
@Test
fun testMakeActiveRetained() {
val nonConfig = FragmentManagerViewModel(true)
- fragmentStore.setNonConfig(nonConfig)
+ fragmentStore.nonConfig = nonConfig
emptyFragment.retainInstance = true
fragmentStore.makeActive(emptyStateManager)
assertThat(fragmentStore.activeFragments)
@@ -117,7 +117,7 @@
@Test
fun testMakeInactiveBurpRetained() {
val nonConfig = FragmentManagerViewModel(true)
- fragmentStore.setNonConfig(nonConfig)
+ fragmentStore.nonConfig = nonConfig
emptyFragment.retainInstance = true
fragmentStore.makeActive(emptyStateManager)
assertThat(fragmentStore.activeFragments)
diff --git a/fragment/fragment/src/androidTest/java/androidx/fragment/app/SaveStateFragmentTest.kt b/fragment/fragment/src/androidTest/java/androidx/fragment/app/SaveStateFragmentTest.kt
index 867ada4..28cad09 100644
--- a/fragment/fragment/src/androidTest/java/androidx/fragment/app/SaveStateFragmentTest.kt
+++ b/fragment/fragment/src/androidTest/java/androidx/fragment/app/SaveStateFragmentTest.kt
@@ -328,6 +328,9 @@
assertWithMessage("Retained Fragment added after saved state should be destroyed")
.that(retainedOnStartFragment.calledOnDestroy)
.isTrue()
+ assertWithMessage("Retained Fragment should be removed from non config")
+ .that(fm2.fragmentStore.nonConfig.retainedFragments)
+ .containsExactly(retainedFragment)
fc2.dispatchActivityCreated()
fc2.noteStateNotSaved()
diff --git a/fragment/fragment/src/main/java/androidx/fragment/app/FragmentManagerViewModel.java b/fragment/fragment/src/main/java/androidx/fragment/app/FragmentManagerViewModel.java
index 2f24e8b..9dd9478 100644
--- a/fragment/fragment/src/main/java/androidx/fragment/app/FragmentManagerViewModel.java
+++ b/fragment/fragment/src/main/java/androidx/fragment/app/FragmentManagerViewModel.java
@@ -131,7 +131,7 @@
@NonNull
Collection<Fragment> getRetainedFragments() {
- return mRetainedFragments.values();
+ return new ArrayList<>(mRetainedFragments.values());
}
boolean shouldDestroy(@NonNull Fragment fragment) {
diff --git a/fragment/fragment/src/main/java/androidx/fragment/app/FragmentStore.java b/fragment/fragment/src/main/java/androidx/fragment/app/FragmentStore.java
index 8699091..1d991fe 100644
--- a/fragment/fragment/src/main/java/androidx/fragment/app/FragmentStore.java
+++ b/fragment/fragment/src/main/java/androidx/fragment/app/FragmentStore.java
@@ -44,6 +44,10 @@
mNonConfig = nonConfig;
}
+ FragmentManagerViewModel getNonConfig() {
+ return mNonConfig;
+ }
+
void resetActiveFragments() {
mActive.clear();
}
@@ -121,6 +125,10 @@
void makeInactive(@NonNull FragmentStateManager newlyInactive) {
Fragment f = newlyInactive.getFragment();
+ if (f.mRetainInstance) {
+ mNonConfig.removeRetainedFragment(f);
+ }
+
// Don't remove yet. That happens in burpActive(). This prevents
// concurrent modification while iterating over mActive
FragmentStateManager removedStateManager = mActive.put(f.mWho, null);
@@ -149,10 +157,6 @@
// even after the Fragment is removed.
f.mTarget = findActiveFragment(f.mTargetWho);
}
-
- if (f.mRetainInstance) {
- mNonConfig.removeRetainedFragment(f);
- }
}
/**
diff --git a/leanback/api/restricted_1.1.0-alpha02.txt b/leanback/api/restricted_1.1.0-alpha02.txt
index c9f9d59..b6c5ae0 100644
--- a/leanback/api/restricted_1.1.0-alpha02.txt
+++ b/leanback/api/restricted_1.1.0-alpha02.txt
@@ -763,7 +763,6 @@
field @Deprecated public static final int BG_NONE = 0; // 0x0
}
-
@Deprecated public class PlaybackFragmentGlueHost extends androidx.leanback.media.PlaybackGlueHost implements androidx.leanback.widget.PlaybackSeekUi {
ctor @Deprecated public PlaybackFragmentGlueHost(androidx.leanback.app.PlaybackFragment!);
method @Deprecated public void fadeOut();
@@ -807,7 +806,6 @@
field public static final int BG_NONE = 0; // 0x0
}
-
public class PlaybackSupportFragmentGlueHost extends androidx.leanback.media.PlaybackGlueHost implements androidx.leanback.widget.PlaybackSeekUi {
ctor public PlaybackSupportFragmentGlueHost(androidx.leanback.app.PlaybackSupportFragment!);
method public void fadeOut();
@@ -1489,7 +1487,6 @@
ctor public SlideNoPropagation(android.content.Context!, android.util.AttributeSet!);
}
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class TransitionHelper {
method public static void addSharedElement(android.app.FragmentTransaction!, android.view.View!, String!);
method public static void addTarget(Object!, android.view.View!);
@@ -1559,7 +1556,6 @@
package androidx.leanback.util {
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class StateMachine {
ctor public StateMachine();
method public void addState(androidx.leanback.util.StateMachine.State!);
@@ -1987,7 +1983,6 @@
method public androidx.leanback.widget.Parallax.IntProperty! getOverviewRowTop();
}
-
public abstract class DiffCallback<Value> {
ctor public DiffCallback();
method public abstract boolean areContentsTheSame(Value, Value);
@@ -3523,7 +3518,6 @@
method public void setNumColumns(int);
}
-
public interface ViewHolderTask {
method public void run(androidx.recyclerview.widget.RecyclerView.ViewHolder!);
}
diff --git a/leanback/api/restricted_1.1.0-alpha03.txt b/leanback/api/restricted_1.1.0-alpha03.txt
index 0a70514..d8b7c2a 100644
--- a/leanback/api/restricted_1.1.0-alpha03.txt
+++ b/leanback/api/restricted_1.1.0-alpha03.txt
@@ -763,7 +763,6 @@
field @Deprecated public static final int BG_NONE = 0; // 0x0
}
-
@Deprecated public class PlaybackFragmentGlueHost extends androidx.leanback.media.PlaybackGlueHost implements androidx.leanback.widget.PlaybackSeekUi {
ctor @Deprecated public PlaybackFragmentGlueHost(androidx.leanback.app.PlaybackFragment!);
method @Deprecated public void fadeOut();
@@ -807,7 +806,6 @@
field public static final int BG_NONE = 0; // 0x0
}
-
public class PlaybackSupportFragmentGlueHost extends androidx.leanback.media.PlaybackGlueHost implements androidx.leanback.widget.PlaybackSeekUi {
ctor public PlaybackSupportFragmentGlueHost(androidx.leanback.app.PlaybackSupportFragment!);
method public void fadeOut();
@@ -1489,7 +1487,6 @@
ctor public SlideNoPropagation(android.content.Context!, android.util.AttributeSet!);
}
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class TransitionHelper {
method public static void addSharedElement(android.app.FragmentTransaction!, android.view.View!, String!);
method public static void addTarget(Object!, android.view.View!);
@@ -1559,7 +1556,6 @@
package androidx.leanback.util {
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class StateMachine {
ctor public StateMachine();
method public void addState(androidx.leanback.util.StateMachine.State!);
@@ -2004,7 +2000,6 @@
method public androidx.leanback.widget.Parallax.IntProperty! getOverviewRowTop();
}
-
public abstract class DiffCallback<Value> {
ctor public DiffCallback();
method public abstract boolean areContentsTheSame(Value, Value);
@@ -3540,7 +3535,6 @@
method public void setNumColumns(int);
}
-
public interface ViewHolderTask {
method public void run(androidx.recyclerview.widget.RecyclerView.ViewHolder!);
}
diff --git a/leanback/api/restricted_current.txt b/leanback/api/restricted_current.txt
index 0a70514..d8b7c2a 100644
--- a/leanback/api/restricted_current.txt
+++ b/leanback/api/restricted_current.txt
@@ -763,7 +763,6 @@
field @Deprecated public static final int BG_NONE = 0; // 0x0
}
-
@Deprecated public class PlaybackFragmentGlueHost extends androidx.leanback.media.PlaybackGlueHost implements androidx.leanback.widget.PlaybackSeekUi {
ctor @Deprecated public PlaybackFragmentGlueHost(androidx.leanback.app.PlaybackFragment!);
method @Deprecated public void fadeOut();
@@ -807,7 +806,6 @@
field public static final int BG_NONE = 0; // 0x0
}
-
public class PlaybackSupportFragmentGlueHost extends androidx.leanback.media.PlaybackGlueHost implements androidx.leanback.widget.PlaybackSeekUi {
ctor public PlaybackSupportFragmentGlueHost(androidx.leanback.app.PlaybackSupportFragment!);
method public void fadeOut();
@@ -1489,7 +1487,6 @@
ctor public SlideNoPropagation(android.content.Context!, android.util.AttributeSet!);
}
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class TransitionHelper {
method public static void addSharedElement(android.app.FragmentTransaction!, android.view.View!, String!);
method public static void addTarget(Object!, android.view.View!);
@@ -1559,7 +1556,6 @@
package androidx.leanback.util {
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class StateMachine {
ctor public StateMachine();
method public void addState(androidx.leanback.util.StateMachine.State!);
@@ -2004,7 +2000,6 @@
method public androidx.leanback.widget.Parallax.IntProperty! getOverviewRowTop();
}
-
public abstract class DiffCallback<Value> {
ctor public DiffCallback();
method public abstract boolean areContentsTheSame(Value, Value);
@@ -3540,7 +3535,6 @@
method public void setNumColumns(int);
}
-
public interface ViewHolderTask {
method public void run(androidx.recyclerview.widget.RecyclerView.ViewHolder!);
}
diff --git a/lifecycle/lifecycle-common/api/restricted_2.0.0.txt b/lifecycle/lifecycle-common/api/restricted_2.0.0.txt
index ae8da88..52fdef1 100644
--- a/lifecycle/lifecycle-common/api/restricted_2.0.0.txt
+++ b/lifecycle/lifecycle-common/api/restricted_2.0.0.txt
@@ -1,7 +1,7 @@
// Signature format: 3.0
package androidx.lifecycle {
- @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class CompositeGeneratedAdaptersObserver implements androidx.lifecycle.GenericLifecycleObserver {
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class CompositeGeneratedAdaptersObserver implements androidx.lifecycle.LifecycleObserver {
method public void onStateChanged(androidx.lifecycle.LifecycleOwner!, androidx.lifecycle.Lifecycle.Event!);
}
@@ -9,7 +9,6 @@
method public void callMethods(androidx.lifecycle.LifecycleOwner!, androidx.lifecycle.Lifecycle.Event!, boolean, androidx.lifecycle.MethodCallsLogger!);
}
-
public abstract class Lifecycle {
ctor public Lifecycle();
method @MainThread public abstract void addObserver(androidx.lifecycle.LifecycleObserver);
@@ -56,7 +55,7 @@
method public abstract androidx.lifecycle.Lifecycle.Event! value();
}
- @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class SingleGeneratedAdapterObserver implements androidx.lifecycle.GenericLifecycleObserver {
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class SingleGeneratedAdapterObserver implements androidx.lifecycle.LifecycleObserver {
method public void onStateChanged(androidx.lifecycle.LifecycleOwner!, androidx.lifecycle.Lifecycle.Event!);
}
diff --git a/media/api/restricted_1.1.0-rc01.txt b/media/api/restricted_1.1.0-rc01.txt
index 8871252..9e0ec31 100644
--- a/media/api/restricted_1.1.0-rc01.txt
+++ b/media/api/restricted_1.1.0-rc01.txt
@@ -426,7 +426,6 @@
field public static final int UNKNOWN_ID = -1; // 0xffffffff
}
-
@IntDef(flag=true, value={android.support.v4.media.session.MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS, android.support.v4.media.session.MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS, android.support.v4.media.session.MediaSessionCompat.FLAG_HANDLES_QUEUE_COMMANDS}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface MediaSessionCompat.SessionFlags {
}
@@ -707,7 +706,6 @@
method public static boolean hasDuplicatedItems(android.os.Bundle!, android.os.Bundle!);
}
-
public abstract class MediaBrowserServiceCompat extends android.app.Service {
ctor public MediaBrowserServiceCompat();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void attachToBaseContext(android.content.Context!);
diff --git a/media/api/restricted_1.2.0-alpha01.txt b/media/api/restricted_1.2.0-alpha01.txt
index 9c1f0db..a799d29 100644
--- a/media/api/restricted_1.2.0-alpha01.txt
+++ b/media/api/restricted_1.2.0-alpha01.txt
@@ -189,7 +189,7 @@
method public boolean isThumbUp();
method public static android.support.v4.media.RatingCompat! newHeartRating(boolean);
method public static android.support.v4.media.RatingCompat! newPercentageRating(float);
- method public static android.support.v4.media.RatingCompat! newStarRating(@android.support.v4.media.RatingCompat.StarStyle int, float);
+ method public static android.support.v4.media.RatingCompat! newStarRating(int, float);
method public static android.support.v4.media.RatingCompat! newThumbRating(boolean);
method public static android.support.v4.media.RatingCompat! newUnratedRating(@android.support.v4.media.RatingCompat.Style int);
method public void writeToParcel(android.os.Parcel!, int);
@@ -203,7 +203,6 @@
field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2
}
-
@IntDef({android.support.v4.media.RatingCompat.RATING_NONE, android.support.v4.media.RatingCompat.RATING_HEART, android.support.v4.media.RatingCompat.RATING_THUMB_UP_DOWN, android.support.v4.media.RatingCompat.RATING_3_STARS, android.support.v4.media.RatingCompat.RATING_4_STARS, android.support.v4.media.RatingCompat.RATING_5_STARS, android.support.v4.media.RatingCompat.RATING_PERCENTAGE}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface RatingCompat.Style {
}
@@ -442,7 +441,7 @@
method public Object! getPlaybackState();
method public long getPosition();
method @android.support.v4.media.session.PlaybackStateCompat.State public int getState();
- method public static int toKeyCode(@android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
+ method public static int toKeyCode(long);
method public void writeToParcel(android.os.Parcel!, int);
field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L
field public static final long ACTION_PAUSE = 2L; // 0x2L
@@ -540,7 +539,6 @@
method public android.support.v4.media.session.PlaybackStateCompat.CustomAction.Builder! setExtras(android.os.Bundle!);
}
-
@IntDef({android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_INVALID, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_NONE, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_ONE, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_ALL, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_GROUP}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PlaybackStateCompat.RepeatMode {
}
@@ -558,7 +556,7 @@
method public int getContentType();
method public int getFlags();
method public int getLegacyStreamType();
- method @androidx.media.AudioAttributesCompat.AttributeUsage public int getUsage();
+ method public int getUsage();
method public int getVolumeControlStream();
method public Object? unwrap();
method public static androidx.media.AudioAttributesCompat? wrap(Object);
@@ -587,21 +585,16 @@
field public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; // 0x3
}
-
-
public static class AudioAttributesCompat.Builder {
ctor public AudioAttributesCompat.Builder();
ctor public AudioAttributesCompat.Builder(androidx.media.AudioAttributesCompat!);
method public androidx.media.AudioAttributesCompat! build();
- method public androidx.media.AudioAttributesCompat.Builder! setContentType(@androidx.media.AudioAttributesCompat.AttributeContentType int);
+ method public androidx.media.AudioAttributesCompat.Builder! setContentType(int);
method public androidx.media.AudioAttributesCompat.Builder! setFlags(int);
method public androidx.media.AudioAttributesCompat.Builder! setLegacyStreamType(int);
- method public androidx.media.AudioAttributesCompat.Builder! setUsage(@androidx.media.AudioAttributesCompat.AttributeUsage int);
+ method public androidx.media.AudioAttributesCompat.Builder! setUsage(int);
}
-
-
-
public class AudioFocusRequestCompat {
method public androidx.media.AudioAttributesCompat getAudioAttributesCompat();
method public android.os.Handler getFocusChangeHandler();
@@ -630,8 +623,6 @@
field public static final int AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK = 3; // 0x3
}
-
-
public abstract class MediaBrowserServiceCompat extends android.app.Service {
ctor public MediaBrowserServiceCompat();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void attachToBaseContext(android.content.Context!);
@@ -733,8 +724,8 @@
public class MediaButtonReceiver extends android.content.BroadcastReceiver {
ctor public MediaButtonReceiver();
- method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, @android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
- method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, android.content.ComponentName!, @android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
+ method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, long);
+ method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, android.content.ComponentName!, long);
method public static android.view.KeyEvent! handleIntent(android.support.v4.media.session.MediaSessionCompat!, android.content.Intent!);
method public void onReceive(android.content.Context!, android.content.Intent!);
}
diff --git a/media/api/restricted_1.2.0-alpha02.txt b/media/api/restricted_1.2.0-alpha02.txt
index 9c1f0db..a799d29 100644
--- a/media/api/restricted_1.2.0-alpha02.txt
+++ b/media/api/restricted_1.2.0-alpha02.txt
@@ -189,7 +189,7 @@
method public boolean isThumbUp();
method public static android.support.v4.media.RatingCompat! newHeartRating(boolean);
method public static android.support.v4.media.RatingCompat! newPercentageRating(float);
- method public static android.support.v4.media.RatingCompat! newStarRating(@android.support.v4.media.RatingCompat.StarStyle int, float);
+ method public static android.support.v4.media.RatingCompat! newStarRating(int, float);
method public static android.support.v4.media.RatingCompat! newThumbRating(boolean);
method public static android.support.v4.media.RatingCompat! newUnratedRating(@android.support.v4.media.RatingCompat.Style int);
method public void writeToParcel(android.os.Parcel!, int);
@@ -203,7 +203,6 @@
field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2
}
-
@IntDef({android.support.v4.media.RatingCompat.RATING_NONE, android.support.v4.media.RatingCompat.RATING_HEART, android.support.v4.media.RatingCompat.RATING_THUMB_UP_DOWN, android.support.v4.media.RatingCompat.RATING_3_STARS, android.support.v4.media.RatingCompat.RATING_4_STARS, android.support.v4.media.RatingCompat.RATING_5_STARS, android.support.v4.media.RatingCompat.RATING_PERCENTAGE}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface RatingCompat.Style {
}
@@ -442,7 +441,7 @@
method public Object! getPlaybackState();
method public long getPosition();
method @android.support.v4.media.session.PlaybackStateCompat.State public int getState();
- method public static int toKeyCode(@android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
+ method public static int toKeyCode(long);
method public void writeToParcel(android.os.Parcel!, int);
field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L
field public static final long ACTION_PAUSE = 2L; // 0x2L
@@ -540,7 +539,6 @@
method public android.support.v4.media.session.PlaybackStateCompat.CustomAction.Builder! setExtras(android.os.Bundle!);
}
-
@IntDef({android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_INVALID, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_NONE, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_ONE, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_ALL, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_GROUP}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PlaybackStateCompat.RepeatMode {
}
@@ -558,7 +556,7 @@
method public int getContentType();
method public int getFlags();
method public int getLegacyStreamType();
- method @androidx.media.AudioAttributesCompat.AttributeUsage public int getUsage();
+ method public int getUsage();
method public int getVolumeControlStream();
method public Object? unwrap();
method public static androidx.media.AudioAttributesCompat? wrap(Object);
@@ -587,21 +585,16 @@
field public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; // 0x3
}
-
-
public static class AudioAttributesCompat.Builder {
ctor public AudioAttributesCompat.Builder();
ctor public AudioAttributesCompat.Builder(androidx.media.AudioAttributesCompat!);
method public androidx.media.AudioAttributesCompat! build();
- method public androidx.media.AudioAttributesCompat.Builder! setContentType(@androidx.media.AudioAttributesCompat.AttributeContentType int);
+ method public androidx.media.AudioAttributesCompat.Builder! setContentType(int);
method public androidx.media.AudioAttributesCompat.Builder! setFlags(int);
method public androidx.media.AudioAttributesCompat.Builder! setLegacyStreamType(int);
- method public androidx.media.AudioAttributesCompat.Builder! setUsage(@androidx.media.AudioAttributesCompat.AttributeUsage int);
+ method public androidx.media.AudioAttributesCompat.Builder! setUsage(int);
}
-
-
-
public class AudioFocusRequestCompat {
method public androidx.media.AudioAttributesCompat getAudioAttributesCompat();
method public android.os.Handler getFocusChangeHandler();
@@ -630,8 +623,6 @@
field public static final int AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK = 3; // 0x3
}
-
-
public abstract class MediaBrowserServiceCompat extends android.app.Service {
ctor public MediaBrowserServiceCompat();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void attachToBaseContext(android.content.Context!);
@@ -733,8 +724,8 @@
public class MediaButtonReceiver extends android.content.BroadcastReceiver {
ctor public MediaButtonReceiver();
- method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, @android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
- method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, android.content.ComponentName!, @android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
+ method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, long);
+ method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, android.content.ComponentName!, long);
method public static android.view.KeyEvent! handleIntent(android.support.v4.media.session.MediaSessionCompat!, android.content.Intent!);
method public void onReceive(android.content.Context!, android.content.Intent!);
}
diff --git a/media/api/restricted_current.txt b/media/api/restricted_current.txt
index 9c1f0db..a799d29 100644
--- a/media/api/restricted_current.txt
+++ b/media/api/restricted_current.txt
@@ -189,7 +189,7 @@
method public boolean isThumbUp();
method public static android.support.v4.media.RatingCompat! newHeartRating(boolean);
method public static android.support.v4.media.RatingCompat! newPercentageRating(float);
- method public static android.support.v4.media.RatingCompat! newStarRating(@android.support.v4.media.RatingCompat.StarStyle int, float);
+ method public static android.support.v4.media.RatingCompat! newStarRating(int, float);
method public static android.support.v4.media.RatingCompat! newThumbRating(boolean);
method public static android.support.v4.media.RatingCompat! newUnratedRating(@android.support.v4.media.RatingCompat.Style int);
method public void writeToParcel(android.os.Parcel!, int);
@@ -203,7 +203,6 @@
field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2
}
-
@IntDef({android.support.v4.media.RatingCompat.RATING_NONE, android.support.v4.media.RatingCompat.RATING_HEART, android.support.v4.media.RatingCompat.RATING_THUMB_UP_DOWN, android.support.v4.media.RatingCompat.RATING_3_STARS, android.support.v4.media.RatingCompat.RATING_4_STARS, android.support.v4.media.RatingCompat.RATING_5_STARS, android.support.v4.media.RatingCompat.RATING_PERCENTAGE}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface RatingCompat.Style {
}
@@ -442,7 +441,7 @@
method public Object! getPlaybackState();
method public long getPosition();
method @android.support.v4.media.session.PlaybackStateCompat.State public int getState();
- method public static int toKeyCode(@android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
+ method public static int toKeyCode(long);
method public void writeToParcel(android.os.Parcel!, int);
field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L
field public static final long ACTION_PAUSE = 2L; // 0x2L
@@ -540,7 +539,6 @@
method public android.support.v4.media.session.PlaybackStateCompat.CustomAction.Builder! setExtras(android.os.Bundle!);
}
-
@IntDef({android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_INVALID, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_NONE, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_ONE, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_ALL, android.support.v4.media.session.PlaybackStateCompat.REPEAT_MODE_GROUP}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PlaybackStateCompat.RepeatMode {
}
@@ -558,7 +556,7 @@
method public int getContentType();
method public int getFlags();
method public int getLegacyStreamType();
- method @androidx.media.AudioAttributesCompat.AttributeUsage public int getUsage();
+ method public int getUsage();
method public int getVolumeControlStream();
method public Object? unwrap();
method public static androidx.media.AudioAttributesCompat? wrap(Object);
@@ -587,21 +585,16 @@
field public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; // 0x3
}
-
-
public static class AudioAttributesCompat.Builder {
ctor public AudioAttributesCompat.Builder();
ctor public AudioAttributesCompat.Builder(androidx.media.AudioAttributesCompat!);
method public androidx.media.AudioAttributesCompat! build();
- method public androidx.media.AudioAttributesCompat.Builder! setContentType(@androidx.media.AudioAttributesCompat.AttributeContentType int);
+ method public androidx.media.AudioAttributesCompat.Builder! setContentType(int);
method public androidx.media.AudioAttributesCompat.Builder! setFlags(int);
method public androidx.media.AudioAttributesCompat.Builder! setLegacyStreamType(int);
- method public androidx.media.AudioAttributesCompat.Builder! setUsage(@androidx.media.AudioAttributesCompat.AttributeUsage int);
+ method public androidx.media.AudioAttributesCompat.Builder! setUsage(int);
}
-
-
-
public class AudioFocusRequestCompat {
method public androidx.media.AudioAttributesCompat getAudioAttributesCompat();
method public android.os.Handler getFocusChangeHandler();
@@ -630,8 +623,6 @@
field public static final int AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK = 3; // 0x3
}
-
-
public abstract class MediaBrowserServiceCompat extends android.app.Service {
ctor public MediaBrowserServiceCompat();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void attachToBaseContext(android.content.Context!);
@@ -733,8 +724,8 @@
public class MediaButtonReceiver extends android.content.BroadcastReceiver {
ctor public MediaButtonReceiver();
- method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, @android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
- method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, android.content.ComponentName!, @android.support.v4.media.session.PlaybackStateCompat.MediaKeyAction long);
+ method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, long);
+ method public static android.app.PendingIntent! buildMediaButtonPendingIntent(android.content.Context!, android.content.ComponentName!, long);
method public static android.view.KeyEvent! handleIntent(android.support.v4.media.session.MediaSessionCompat!, android.content.Intent!);
method public void onReceive(android.content.Context!, android.content.Intent!);
}
diff --git a/media/version-compat-tests/current/client/src/androidTest/java/android/support/mediacompat/client/MediaControllerCompatCallbackTest.java b/media/version-compat-tests/current/client/src/androidTest/java/android/support/mediacompat/client/MediaControllerCompatCallbackTest.java
index d1d7209..ec09a80 100644
--- a/media/version-compat-tests/current/client/src/androidTest/java/android/support/mediacompat/client/MediaControllerCompatCallbackTest.java
+++ b/media/version-compat-tests/current/client/src/androidTest/java/android/support/mediacompat/client/MediaControllerCompatCallbackTest.java
@@ -69,6 +69,7 @@
import android.content.Intent;
import android.graphics.Bitmap;
import android.media.AudioManager;
+import android.media.session.MediaSession;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
@@ -665,6 +666,37 @@
@Test
@SmallTest
+ @SdkSuppress(minSdkVersion = 21)
+ public void testOnSessionReadyCalled_fwkMediaSession() throws Exception {
+ mController = null;
+ final MediaSession session = new MediaSession(getInstrumentation().getTargetContext(),
+ "TestFwkSession");
+ final SessionReadyCallback callback = new SessionReadyCallback();
+ synchronized (callback.mWaitLock) {
+ getInstrumentation().runOnMainSync(new Runnable() {
+ @Override
+ public void run() {
+ try {
+ // No extra binder exists in API 19. (i.e. session is always ready.)
+ // onSessionReady() should be posted by registerCallback().
+ MediaSession.Token fwkToken = session.getSessionToken();
+ mController = new MediaControllerCompat(
+ getInstrumentation().getTargetContext(),
+ MediaSessionCompat.Token.fromToken(fwkToken));
+ mController.registerCallback(callback, new Handler());
+ } catch (Exception e) {
+ fail();
+ }
+ }
+ });
+ callback.mWaitLock.wait(TIME_OUT_MS);
+ assertFalse(mController.isSessionReady());
+ assertFalse(callback.mOnSessionReadyCalled);
+ }
+ }
+
+ @Test
+ @SmallTest
public void testReceivingParcelables() throws Exception {
Bundle arguments = new Bundle();
arguments.putString("event", TEST_SESSION_EVENT);
diff --git a/media2/common/api/restricted_1.1.0-alpha01.txt b/media2/common/api/restricted_1.1.0-alpha01.txt
index e5d7d40..d8ee5c7d 100644
--- a/media2/common/api/restricted_1.1.0-alpha01.txt
+++ b/media2/common/api/restricted_1.1.0-alpha01.txt
@@ -79,15 +79,15 @@
public final class MediaMetadata extends androidx.versionedparcelable.CustomVersionedParcelable {
method public boolean containsKey(String);
- method public android.graphics.Bitmap? getBitmap(@androidx.media2.common.MediaMetadata.BitmapKey String);
+ method public android.graphics.Bitmap? getBitmap(String);
method public android.os.Bundle? getExtras();
- method public float getFloat(@androidx.media2.common.MediaMetadata.FloatKey String);
- method public long getLong(@androidx.media2.common.MediaMetadata.LongKey String);
+ method public float getFloat(String);
+ method public long getLong(String);
method public String? getMediaId();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public Object? getObject(String);
- method public androidx.media2.common.Rating? getRating(@androidx.media2.common.MediaMetadata.RatingKey String);
- method public String? getString(@androidx.media2.common.MediaMetadata.TextKey String);
- method public CharSequence? getText(@androidx.media2.common.MediaMetadata.TextKey String);
+ method public androidx.media2.common.Rating? getRating(String);
+ method public String? getString(String);
+ method public CharSequence? getText(String);
method public java.util.Set<java.lang.String!> keySet();
method public int size();
field public static final long BROWSABLE_TYPE_ALBUMS = 2L; // 0x2L
@@ -136,25 +136,19 @@
field public static final long STATUS_NOT_DOWNLOADED = 0L; // 0x0L
}
-
public static final class MediaMetadata.Builder {
ctor public MediaMetadata.Builder();
ctor public MediaMetadata.Builder(androidx.media2.common.MediaMetadata);
method public androidx.media2.common.MediaMetadata build();
- method public androidx.media2.common.MediaMetadata.Builder putBitmap(@androidx.media2.common.MediaMetadata.BitmapKey String, android.graphics.Bitmap?);
- method public androidx.media2.common.MediaMetadata.Builder putFloat(@androidx.media2.common.MediaMetadata.LongKey String, float);
- method public androidx.media2.common.MediaMetadata.Builder putLong(@androidx.media2.common.MediaMetadata.LongKey String, long);
- method public androidx.media2.common.MediaMetadata.Builder putRating(@androidx.media2.common.MediaMetadata.RatingKey String, androidx.media2.common.Rating?);
- method public androidx.media2.common.MediaMetadata.Builder putString(@androidx.media2.common.MediaMetadata.TextKey String, String?);
- method public androidx.media2.common.MediaMetadata.Builder putText(@androidx.media2.common.MediaMetadata.TextKey String, CharSequence?);
+ method public androidx.media2.common.MediaMetadata.Builder putBitmap(String, android.graphics.Bitmap?);
+ method public androidx.media2.common.MediaMetadata.Builder putFloat(String, float);
+ method public androidx.media2.common.MediaMetadata.Builder putLong(String, long);
+ method public androidx.media2.common.MediaMetadata.Builder putRating(String, androidx.media2.common.Rating?);
+ method public androidx.media2.common.MediaMetadata.Builder putString(String, String?);
+ method public androidx.media2.common.MediaMetadata.Builder putText(String, CharSequence?);
method public androidx.media2.common.MediaMetadata.Builder setExtras(android.os.Bundle?);
}
-
-
-
-
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class MediaParcelUtils {
method public static <T extends androidx.versionedparcelable.VersionedParcelable> T? fromParcelable(androidx.versionedparcelable.ParcelImpl);
method public static <T extends androidx.versionedparcelable.VersionedParcelable> java.util.List<T!> fromParcelableList(java.util.List<androidx.versionedparcelable.ParcelImpl!>);
@@ -267,10 +261,9 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public static com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> createFuture(int);
method public long getCompletionTime();
method public androidx.media2.common.MediaItem? getMediaItem();
- method @androidx.media2.common.SessionPlayer.PlayerResult.ResultCode public int getResultCode();
+ method public int getResultCode();
}
-
@IntDef({androidx.media2.common.SessionPlayer.PLAYER_STATE_IDLE, androidx.media2.common.SessionPlayer.PLAYER_STATE_PAUSED, androidx.media2.common.SessionPlayer.PLAYER_STATE_PLAYING, androidx.media2.common.SessionPlayer.PLAYER_STATE_ERROR}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface SessionPlayer.PlayerState {
}
diff --git a/media2/common/api/restricted_current.txt b/media2/common/api/restricted_current.txt
index e5d7d40..d8ee5c7d 100644
--- a/media2/common/api/restricted_current.txt
+++ b/media2/common/api/restricted_current.txt
@@ -79,15 +79,15 @@
public final class MediaMetadata extends androidx.versionedparcelable.CustomVersionedParcelable {
method public boolean containsKey(String);
- method public android.graphics.Bitmap? getBitmap(@androidx.media2.common.MediaMetadata.BitmapKey String);
+ method public android.graphics.Bitmap? getBitmap(String);
method public android.os.Bundle? getExtras();
- method public float getFloat(@androidx.media2.common.MediaMetadata.FloatKey String);
- method public long getLong(@androidx.media2.common.MediaMetadata.LongKey String);
+ method public float getFloat(String);
+ method public long getLong(String);
method public String? getMediaId();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public Object? getObject(String);
- method public androidx.media2.common.Rating? getRating(@androidx.media2.common.MediaMetadata.RatingKey String);
- method public String? getString(@androidx.media2.common.MediaMetadata.TextKey String);
- method public CharSequence? getText(@androidx.media2.common.MediaMetadata.TextKey String);
+ method public androidx.media2.common.Rating? getRating(String);
+ method public String? getString(String);
+ method public CharSequence? getText(String);
method public java.util.Set<java.lang.String!> keySet();
method public int size();
field public static final long BROWSABLE_TYPE_ALBUMS = 2L; // 0x2L
@@ -136,25 +136,19 @@
field public static final long STATUS_NOT_DOWNLOADED = 0L; // 0x0L
}
-
public static final class MediaMetadata.Builder {
ctor public MediaMetadata.Builder();
ctor public MediaMetadata.Builder(androidx.media2.common.MediaMetadata);
method public androidx.media2.common.MediaMetadata build();
- method public androidx.media2.common.MediaMetadata.Builder putBitmap(@androidx.media2.common.MediaMetadata.BitmapKey String, android.graphics.Bitmap?);
- method public androidx.media2.common.MediaMetadata.Builder putFloat(@androidx.media2.common.MediaMetadata.LongKey String, float);
- method public androidx.media2.common.MediaMetadata.Builder putLong(@androidx.media2.common.MediaMetadata.LongKey String, long);
- method public androidx.media2.common.MediaMetadata.Builder putRating(@androidx.media2.common.MediaMetadata.RatingKey String, androidx.media2.common.Rating?);
- method public androidx.media2.common.MediaMetadata.Builder putString(@androidx.media2.common.MediaMetadata.TextKey String, String?);
- method public androidx.media2.common.MediaMetadata.Builder putText(@androidx.media2.common.MediaMetadata.TextKey String, CharSequence?);
+ method public androidx.media2.common.MediaMetadata.Builder putBitmap(String, android.graphics.Bitmap?);
+ method public androidx.media2.common.MediaMetadata.Builder putFloat(String, float);
+ method public androidx.media2.common.MediaMetadata.Builder putLong(String, long);
+ method public androidx.media2.common.MediaMetadata.Builder putRating(String, androidx.media2.common.Rating?);
+ method public androidx.media2.common.MediaMetadata.Builder putString(String, String?);
+ method public androidx.media2.common.MediaMetadata.Builder putText(String, CharSequence?);
method public androidx.media2.common.MediaMetadata.Builder setExtras(android.os.Bundle?);
}
-
-
-
-
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class MediaParcelUtils {
method public static <T extends androidx.versionedparcelable.VersionedParcelable> T? fromParcelable(androidx.versionedparcelable.ParcelImpl);
method public static <T extends androidx.versionedparcelable.VersionedParcelable> java.util.List<T!> fromParcelableList(java.util.List<androidx.versionedparcelable.ParcelImpl!>);
@@ -267,10 +261,9 @@
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public static com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> createFuture(int);
method public long getCompletionTime();
method public androidx.media2.common.MediaItem? getMediaItem();
- method @androidx.media2.common.SessionPlayer.PlayerResult.ResultCode public int getResultCode();
+ method public int getResultCode();
}
-
@IntDef({androidx.media2.common.SessionPlayer.PLAYER_STATE_IDLE, androidx.media2.common.SessionPlayer.PLAYER_STATE_PAUSED, androidx.media2.common.SessionPlayer.PLAYER_STATE_PLAYING, androidx.media2.common.SessionPlayer.PLAYER_STATE_ERROR}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface SessionPlayer.PlayerState {
}
diff --git a/media2/player/api/restricted_1.1.0-alpha01.txt b/media2/player/api/restricted_1.1.0-alpha01.txt
index 35d65c5..8a75ae5 100644
--- a/media2/player/api/restricted_1.1.0-alpha01.txt
+++ b/media2/player/api/restricted_1.1.0-alpha01.txt
@@ -36,7 +36,7 @@
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> replacePlaylistItem(int, androidx.media2.common.MediaItem);
method public void reset();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> seekTo(long);
- method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> seekTo(long, @androidx.media2.player.MediaPlayer.SeekMode int);
+ method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> seekTo(long, int);
method @Deprecated public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> selectTrack(androidx.media2.player.MediaPlayer.TrackInfo);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> setAudioAttributes(androidx.media.AudioAttributesCompat);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> setAudioSessionId(int);
@@ -73,24 +73,15 @@
field public static final int SEEK_PREVIOUS_SYNC = 0; // 0x0
}
-
-
-
-
-
-
-
-
public abstract static class MediaPlayer.PlayerCallback extends androidx.media2.common.SessionPlayer.PlayerCallback {
ctor public MediaPlayer.PlayerCallback();
- method public void onError(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, @androidx.media2.player.MediaPlayer.MediaError int, int);
- method public void onInfo(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, @androidx.media2.player.MediaPlayer.MediaInfo int, int);
+ method public void onError(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, int, int);
+ method public void onInfo(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, int, int);
method public void onMediaTimeDiscontinuity(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, androidx.media2.player.MediaTimestamp);
method public void onTimedMetaDataAvailable(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, androidx.media2.player.TimedMetaData);
method @Deprecated public void onVideoSizeChanged(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, androidx.media2.player.VideoSize);
}
-
public static final class MediaPlayer.TrackInfo extends androidx.media2.common.SessionPlayer.TrackInfo {
}
@@ -102,7 +93,7 @@
}
public final class PlaybackParams {
- method @androidx.media2.player.PlaybackParams.AudioFallbackMode public Integer? getAudioFallbackMode();
+ method public Integer? getAudioFallbackMode();
method public Float? getPitch();
method public Float? getSpeed();
field public static final int AUDIO_FALLBACK_MODE_DEFAULT = 0; // 0x0
@@ -110,12 +101,11 @@
field public static final int AUDIO_FALLBACK_MODE_MUTE = 1; // 0x1
}
-
public static final class PlaybackParams.Builder {
ctor public PlaybackParams.Builder();
ctor public PlaybackParams.Builder(androidx.media2.player.PlaybackParams);
method public androidx.media2.player.PlaybackParams build();
- method public androidx.media2.player.PlaybackParams.Builder setAudioFallbackMode(@androidx.media2.player.PlaybackParams.AudioFallbackMode int);
+ method public androidx.media2.player.PlaybackParams.Builder setAudioFallbackMode(int);
method public androidx.media2.player.PlaybackParams.Builder setPitch(@FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE, fromInclusive=false) float);
method public androidx.media2.player.PlaybackParams.Builder setSpeed(@FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE, fromInclusive=false) float);
}
diff --git a/media2/player/api/restricted_current.txt b/media2/player/api/restricted_current.txt
index 35d65c5..8a75ae5 100644
--- a/media2/player/api/restricted_current.txt
+++ b/media2/player/api/restricted_current.txt
@@ -36,7 +36,7 @@
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> replacePlaylistItem(int, androidx.media2.common.MediaItem);
method public void reset();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> seekTo(long);
- method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> seekTo(long, @androidx.media2.player.MediaPlayer.SeekMode int);
+ method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> seekTo(long, int);
method @Deprecated public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> selectTrack(androidx.media2.player.MediaPlayer.TrackInfo);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> setAudioAttributes(androidx.media.AudioAttributesCompat);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.common.SessionPlayer.PlayerResult!> setAudioSessionId(int);
@@ -73,24 +73,15 @@
field public static final int SEEK_PREVIOUS_SYNC = 0; // 0x0
}
-
-
-
-
-
-
-
-
public abstract static class MediaPlayer.PlayerCallback extends androidx.media2.common.SessionPlayer.PlayerCallback {
ctor public MediaPlayer.PlayerCallback();
- method public void onError(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, @androidx.media2.player.MediaPlayer.MediaError int, int);
- method public void onInfo(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, @androidx.media2.player.MediaPlayer.MediaInfo int, int);
+ method public void onError(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, int, int);
+ method public void onInfo(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, int, int);
method public void onMediaTimeDiscontinuity(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, androidx.media2.player.MediaTimestamp);
method public void onTimedMetaDataAvailable(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, androidx.media2.player.TimedMetaData);
method @Deprecated public void onVideoSizeChanged(androidx.media2.player.MediaPlayer, androidx.media2.common.MediaItem, androidx.media2.player.VideoSize);
}
-
public static final class MediaPlayer.TrackInfo extends androidx.media2.common.SessionPlayer.TrackInfo {
}
@@ -102,7 +93,7 @@
}
public final class PlaybackParams {
- method @androidx.media2.player.PlaybackParams.AudioFallbackMode public Integer? getAudioFallbackMode();
+ method public Integer? getAudioFallbackMode();
method public Float? getPitch();
method public Float? getSpeed();
field public static final int AUDIO_FALLBACK_MODE_DEFAULT = 0; // 0x0
@@ -110,12 +101,11 @@
field public static final int AUDIO_FALLBACK_MODE_MUTE = 1; // 0x1
}
-
public static final class PlaybackParams.Builder {
ctor public PlaybackParams.Builder();
ctor public PlaybackParams.Builder(androidx.media2.player.PlaybackParams);
method public androidx.media2.player.PlaybackParams build();
- method public androidx.media2.player.PlaybackParams.Builder setAudioFallbackMode(@androidx.media2.player.PlaybackParams.AudioFallbackMode int);
+ method public androidx.media2.player.PlaybackParams.Builder setAudioFallbackMode(int);
method public androidx.media2.player.PlaybackParams.Builder setPitch(@FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE, fromInclusive=false) float);
method public androidx.media2.player.PlaybackParams.Builder setSpeed(@FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE, fromInclusive=false) float);
}
diff --git a/media2/session/api/restricted_1.1.0-alpha01.txt b/media2/session/api/restricted_1.1.0-alpha01.txt
index 4956c96..49010ab 100644
--- a/media2/session/api/restricted_1.1.0-alpha01.txt
+++ b/media2/session/api/restricted_1.1.0-alpha01.txt
@@ -9,14 +9,14 @@
}
public class LibraryResult extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.media2.common.BaseResult {
- ctor public LibraryResult(@androidx.media2.session.LibraryResult.ResultCode int);
- ctor public LibraryResult(@androidx.media2.session.LibraryResult.ResultCode int, androidx.media2.common.MediaItem?, androidx.media2.session.MediaLibraryService.LibraryParams?);
- ctor public LibraryResult(@androidx.media2.session.LibraryResult.ResultCode int, java.util.List<androidx.media2.common.MediaItem!>?, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ ctor public LibraryResult(int);
+ ctor public LibraryResult(int, androidx.media2.common.MediaItem?, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ ctor public LibraryResult(int, java.util.List<androidx.media2.common.MediaItem!>?, androidx.media2.session.MediaLibraryService.LibraryParams?);
method public long getCompletionTime();
method public androidx.media2.session.MediaLibraryService.LibraryParams? getLibraryParams();
method public androidx.media2.common.MediaItem? getMediaItem();
method public java.util.List<androidx.media2.common.MediaItem!>? getMediaItems();
- method @androidx.media2.session.LibraryResult.ResultCode public int getResultCode();
+ method public int getResultCode();
field public static final int RESULT_ERROR_SESSION_AUTHENTICATION_EXPIRED = -102; // 0xffffff9a
field public static final int RESULT_ERROR_SESSION_CONCURRENT_STREAM_LIMIT = -104; // 0xffffff98
field public static final int RESULT_ERROR_SESSION_DISCONNECTED = -100; // 0xffffff9c
@@ -27,7 +27,6 @@
field public static final int RESULT_ERROR_SESSION_SKIP_LIMIT_REACHED = -107; // 0xffffff95
}
-
public class MediaBrowser extends androidx.media2.session.MediaController {
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.LibraryResult!> getChildren(String, @IntRange(from=0) int, @IntRange(from=1) int, androidx.media2.session.MediaLibraryService.LibraryParams?);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.LibraryResult!> getItem(String);
@@ -55,7 +54,7 @@
public class MediaController implements java.lang.AutoCloseable {
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> addPlaylistItem(@IntRange(from=0) int, String);
- method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> adjustVolume(@androidx.media2.session.MediaController.VolumeDirection int, @androidx.media2.session.MediaController.VolumeFlags int);
+ method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> adjustVolume(int, int);
method public void close();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> deselectTrack(androidx.media2.common.SessionPlayer.TrackInfo);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> fastForward();
@@ -99,7 +98,7 @@
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setRepeatMode(@androidx.media2.common.SessionPlayer.RepeatMode int);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setShuffleMode(@androidx.media2.common.SessionPlayer.ShuffleMode int);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setSurface(android.view.Surface?);
- method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setVolumeTo(int, @androidx.media2.session.MediaController.VolumeFlags int);
+ method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setVolumeTo(int, int);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> skipBackward();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> skipForward();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> skipToNextPlaylistItem();
@@ -133,7 +132,7 @@
method public void onPlaylistMetadataChanged(androidx.media2.session.MediaController, androidx.media2.common.MediaMetadata?);
method public void onRepeatModeChanged(androidx.media2.session.MediaController, @androidx.media2.common.SessionPlayer.RepeatMode int);
method public void onSeekCompleted(androidx.media2.session.MediaController, long);
- method @androidx.media2.session.SessionResult.ResultCode public int onSetCustomLayout(androidx.media2.session.MediaController, java.util.List<androidx.media2.session.MediaSession.CommandButton!>);
+ method public int onSetCustomLayout(androidx.media2.session.MediaController, java.util.List<androidx.media2.session.MediaSession.CommandButton!>);
method public void onShuffleModeChanged(androidx.media2.session.MediaController, @androidx.media2.common.SessionPlayer.ShuffleMode int);
method public void onSubtitleData(androidx.media2.session.MediaController, androidx.media2.common.MediaItem, androidx.media2.common.SessionPlayer.TrackInfo, androidx.media2.common.SubtitleData);
method public void onTrackDeselected(androidx.media2.session.MediaController, androidx.media2.common.SessionPlayer.TrackInfo);
@@ -142,7 +141,6 @@
method public void onVideoSizeChanged(androidx.media2.session.MediaController, androidx.media2.common.VideoSize);
}
-
public static final class MediaController.PlaybackInfo implements androidx.versionedparcelable.VersionedParcelable {
method public androidx.media.AudioAttributesCompat? getAudioAttributes();
method public int getControlType();
@@ -153,8 +151,6 @@
field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2
}
-
-
public abstract class MediaLibraryService extends androidx.media2.session.MediaSessionService {
ctor public MediaLibraryService();
method public abstract androidx.media2.session.MediaLibraryService.MediaLibrarySession? onGetSession(androidx.media2.session.MediaSession.ControllerInfo);
@@ -197,9 +193,9 @@
method public androidx.media2.session.LibraryResult onGetItem(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String);
method public androidx.media2.session.LibraryResult onGetLibraryRoot(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.MediaLibraryService.LibraryParams?);
method public androidx.media2.session.LibraryResult onGetSearchResult(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, @IntRange(from=0) int, @IntRange(from=1) int, androidx.media2.session.MediaLibraryService.LibraryParams?);
- method @androidx.media2.session.LibraryResult.ResultCode public int onSearch(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
- method @androidx.media2.session.LibraryResult.ResultCode public int onSubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
- method @androidx.media2.session.LibraryResult.ResultCode public int onUnsubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String);
+ method public int onSearch(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ method public int onSubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ method public int onUnsubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String);
}
public class MediaSession implements java.lang.AutoCloseable {
@@ -250,17 +246,17 @@
public abstract static class MediaSession.SessionCallback {
ctor public MediaSession.SessionCallback();
- method @androidx.media2.session.SessionResult.ResultCode public int onCommandRequest(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand);
+ method public int onCommandRequest(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand);
method public androidx.media2.session.SessionCommandGroup? onConnect(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
method public androidx.media2.common.MediaItem? onCreateMediaItem(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, String);
method public androidx.media2.session.SessionResult onCustomCommand(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand, android.os.Bundle?);
method public void onDisconnected(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onFastForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onFastForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
method public void onPostConnect(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onRewind(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onSetRating(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.common.Rating);
- method @androidx.media2.session.SessionResult.ResultCode public int onSkipBackward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onSkipForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onRewind(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onSetRating(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.common.Rating);
+ method public int onSkipBackward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onSkipForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
}
@RequiresApi(28) public final class MediaSessionManager {
@@ -285,7 +281,6 @@
method public int getNotificationId();
}
-
public final class PercentageRating implements androidx.media2.common.Rating {
ctor public PercentageRating();
ctor public PercentageRating(float);
@@ -298,7 +293,7 @@
method public abstract java.util.concurrent.Future<androidx.media2.common.SessionPlayer.PlayerResult!> adjustVolume(int);
method public abstract int getMaxVolume();
method public abstract int getVolume();
- method @androidx.media2.session.RemoteSessionPlayer.VolumeControlType public abstract int getVolumeControlType();
+ method public abstract int getVolumeControlType();
method public abstract java.util.concurrent.Future<androidx.media2.common.SessionPlayer.PlayerResult!> setVolume(int);
field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2
field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0
@@ -310,11 +305,10 @@
method public void onVolumeChanged(androidx.media2.session.RemoteSessionPlayer, int);
}
-
public final class SessionCommand implements androidx.versionedparcelable.VersionedParcelable {
- ctor public SessionCommand(@androidx.media2.session.SessionCommand.CommandCode int);
+ ctor public SessionCommand(int);
ctor public SessionCommand(String, android.os.Bundle?);
- method @androidx.media2.session.SessionCommand.CommandCode public int getCommandCode();
+ method public int getCommandCode();
method public String? getCustomAction();
method public android.os.Bundle? getCustomExtras();
field public static final int COMMAND_CODE_CUSTOM = 0; // 0x0
@@ -359,31 +353,29 @@
field public static final int COMMAND_VERSION_2 = 2; // 0x2
}
-
-
public final class SessionCommandGroup implements androidx.versionedparcelable.VersionedParcelable {
ctor public SessionCommandGroup();
ctor public SessionCommandGroup(java.util.Collection<androidx.media2.session.SessionCommand!>?);
method public java.util.Set<androidx.media2.session.SessionCommand!> getCommands();
method public boolean hasCommand(androidx.media2.session.SessionCommand);
- method public boolean hasCommand(@androidx.media2.session.SessionCommand.CommandCode int);
+ method public boolean hasCommand(int);
}
public static final class SessionCommandGroup.Builder {
ctor public SessionCommandGroup.Builder();
ctor public SessionCommandGroup.Builder(androidx.media2.session.SessionCommandGroup);
- method public androidx.media2.session.SessionCommandGroup.Builder addAllPredefinedCommands(@androidx.media2.session.SessionCommand.CommandVersion int);
+ method public androidx.media2.session.SessionCommandGroup.Builder addAllPredefinedCommands(int);
method public androidx.media2.session.SessionCommandGroup.Builder addCommand(androidx.media2.session.SessionCommand);
method public androidx.media2.session.SessionCommandGroup build();
method public androidx.media2.session.SessionCommandGroup.Builder removeCommand(androidx.media2.session.SessionCommand);
}
public class SessionResult extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.media2.common.BaseResult {
- ctor public SessionResult(@androidx.media2.session.SessionResult.ResultCode int, android.os.Bundle?);
+ ctor public SessionResult(int, android.os.Bundle?);
method public long getCompletionTime();
method public android.os.Bundle? getCustomCommandResult();
method public androidx.media2.common.MediaItem? getMediaItem();
- method @androidx.media2.session.SessionResult.ResultCode public int getResultCode();
+ method public int getResultCode();
field public static final int RESULT_ERROR_SESSION_AUTHENTICATION_EXPIRED = -102; // 0xffffff9a
field public static final int RESULT_ERROR_SESSION_CONCURRENT_STREAM_LIMIT = -104; // 0xffffff98
field public static final int RESULT_ERROR_SESSION_DISCONNECTED = -100; // 0xffffff9c
@@ -395,21 +387,18 @@
field public static final int RESULT_SUCCESS = 0; // 0x0
}
-
public final class SessionToken implements androidx.versionedparcelable.VersionedParcelable {
ctor public SessionToken(android.content.Context, android.content.ComponentName);
method public android.os.Bundle getExtras();
method public String getPackageName();
method public String? getServiceName();
- method @androidx.media2.session.SessionToken.TokenType public int getType();
+ method public int getType();
method public int getUid();
field public static final int TYPE_LIBRARY_SERVICE = 2; // 0x2
field public static final int TYPE_SESSION = 0; // 0x0
field public static final int TYPE_SESSION_SERVICE = 1; // 0x1
}
-
-
public final class StarRating implements androidx.media2.common.Rating {
ctor public StarRating(@IntRange(from=1) int);
ctor public StarRating(@IntRange(from=1) int, float);
diff --git a/media2/session/api/restricted_current.txt b/media2/session/api/restricted_current.txt
index 4956c96..49010ab 100644
--- a/media2/session/api/restricted_current.txt
+++ b/media2/session/api/restricted_current.txt
@@ -9,14 +9,14 @@
}
public class LibraryResult extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.media2.common.BaseResult {
- ctor public LibraryResult(@androidx.media2.session.LibraryResult.ResultCode int);
- ctor public LibraryResult(@androidx.media2.session.LibraryResult.ResultCode int, androidx.media2.common.MediaItem?, androidx.media2.session.MediaLibraryService.LibraryParams?);
- ctor public LibraryResult(@androidx.media2.session.LibraryResult.ResultCode int, java.util.List<androidx.media2.common.MediaItem!>?, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ ctor public LibraryResult(int);
+ ctor public LibraryResult(int, androidx.media2.common.MediaItem?, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ ctor public LibraryResult(int, java.util.List<androidx.media2.common.MediaItem!>?, androidx.media2.session.MediaLibraryService.LibraryParams?);
method public long getCompletionTime();
method public androidx.media2.session.MediaLibraryService.LibraryParams? getLibraryParams();
method public androidx.media2.common.MediaItem? getMediaItem();
method public java.util.List<androidx.media2.common.MediaItem!>? getMediaItems();
- method @androidx.media2.session.LibraryResult.ResultCode public int getResultCode();
+ method public int getResultCode();
field public static final int RESULT_ERROR_SESSION_AUTHENTICATION_EXPIRED = -102; // 0xffffff9a
field public static final int RESULT_ERROR_SESSION_CONCURRENT_STREAM_LIMIT = -104; // 0xffffff98
field public static final int RESULT_ERROR_SESSION_DISCONNECTED = -100; // 0xffffff9c
@@ -27,7 +27,6 @@
field public static final int RESULT_ERROR_SESSION_SKIP_LIMIT_REACHED = -107; // 0xffffff95
}
-
public class MediaBrowser extends androidx.media2.session.MediaController {
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.LibraryResult!> getChildren(String, @IntRange(from=0) int, @IntRange(from=1) int, androidx.media2.session.MediaLibraryService.LibraryParams?);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.LibraryResult!> getItem(String);
@@ -55,7 +54,7 @@
public class MediaController implements java.lang.AutoCloseable {
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> addPlaylistItem(@IntRange(from=0) int, String);
- method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> adjustVolume(@androidx.media2.session.MediaController.VolumeDirection int, @androidx.media2.session.MediaController.VolumeFlags int);
+ method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> adjustVolume(int, int);
method public void close();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> deselectTrack(androidx.media2.common.SessionPlayer.TrackInfo);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> fastForward();
@@ -99,7 +98,7 @@
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setRepeatMode(@androidx.media2.common.SessionPlayer.RepeatMode int);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setShuffleMode(@androidx.media2.common.SessionPlayer.ShuffleMode int);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setSurface(android.view.Surface?);
- method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setVolumeTo(int, @androidx.media2.session.MediaController.VolumeFlags int);
+ method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> setVolumeTo(int, int);
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> skipBackward();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> skipForward();
method public com.google.common.util.concurrent.ListenableFuture<androidx.media2.session.SessionResult!> skipToNextPlaylistItem();
@@ -133,7 +132,7 @@
method public void onPlaylistMetadataChanged(androidx.media2.session.MediaController, androidx.media2.common.MediaMetadata?);
method public void onRepeatModeChanged(androidx.media2.session.MediaController, @androidx.media2.common.SessionPlayer.RepeatMode int);
method public void onSeekCompleted(androidx.media2.session.MediaController, long);
- method @androidx.media2.session.SessionResult.ResultCode public int onSetCustomLayout(androidx.media2.session.MediaController, java.util.List<androidx.media2.session.MediaSession.CommandButton!>);
+ method public int onSetCustomLayout(androidx.media2.session.MediaController, java.util.List<androidx.media2.session.MediaSession.CommandButton!>);
method public void onShuffleModeChanged(androidx.media2.session.MediaController, @androidx.media2.common.SessionPlayer.ShuffleMode int);
method public void onSubtitleData(androidx.media2.session.MediaController, androidx.media2.common.MediaItem, androidx.media2.common.SessionPlayer.TrackInfo, androidx.media2.common.SubtitleData);
method public void onTrackDeselected(androidx.media2.session.MediaController, androidx.media2.common.SessionPlayer.TrackInfo);
@@ -142,7 +141,6 @@
method public void onVideoSizeChanged(androidx.media2.session.MediaController, androidx.media2.common.VideoSize);
}
-
public static final class MediaController.PlaybackInfo implements androidx.versionedparcelable.VersionedParcelable {
method public androidx.media.AudioAttributesCompat? getAudioAttributes();
method public int getControlType();
@@ -153,8 +151,6 @@
field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2
}
-
-
public abstract class MediaLibraryService extends androidx.media2.session.MediaSessionService {
ctor public MediaLibraryService();
method public abstract androidx.media2.session.MediaLibraryService.MediaLibrarySession? onGetSession(androidx.media2.session.MediaSession.ControllerInfo);
@@ -197,9 +193,9 @@
method public androidx.media2.session.LibraryResult onGetItem(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String);
method public androidx.media2.session.LibraryResult onGetLibraryRoot(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.MediaLibraryService.LibraryParams?);
method public androidx.media2.session.LibraryResult onGetSearchResult(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, @IntRange(from=0) int, @IntRange(from=1) int, androidx.media2.session.MediaLibraryService.LibraryParams?);
- method @androidx.media2.session.LibraryResult.ResultCode public int onSearch(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
- method @androidx.media2.session.LibraryResult.ResultCode public int onSubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
- method @androidx.media2.session.LibraryResult.ResultCode public int onUnsubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String);
+ method public int onSearch(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ method public int onSubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.session.MediaLibraryService.LibraryParams?);
+ method public int onUnsubscribe(androidx.media2.session.MediaLibraryService.MediaLibrarySession, androidx.media2.session.MediaSession.ControllerInfo, String);
}
public class MediaSession implements java.lang.AutoCloseable {
@@ -250,17 +246,17 @@
public abstract static class MediaSession.SessionCallback {
ctor public MediaSession.SessionCallback();
- method @androidx.media2.session.SessionResult.ResultCode public int onCommandRequest(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand);
+ method public int onCommandRequest(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand);
method public androidx.media2.session.SessionCommandGroup? onConnect(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
method public androidx.media2.common.MediaItem? onCreateMediaItem(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, String);
method public androidx.media2.session.SessionResult onCustomCommand(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand, android.os.Bundle?);
method public void onDisconnected(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onFastForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onFastForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
method public void onPostConnect(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onRewind(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onSetRating(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.common.Rating);
- method @androidx.media2.session.SessionResult.ResultCode public int onSkipBackward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
- method @androidx.media2.session.SessionResult.ResultCode public int onSkipForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onRewind(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onSetRating(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo, String, androidx.media2.common.Rating);
+ method public int onSkipBackward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
+ method public int onSkipForward(androidx.media2.session.MediaSession, androidx.media2.session.MediaSession.ControllerInfo);
}
@RequiresApi(28) public final class MediaSessionManager {
@@ -285,7 +281,6 @@
method public int getNotificationId();
}
-
public final class PercentageRating implements androidx.media2.common.Rating {
ctor public PercentageRating();
ctor public PercentageRating(float);
@@ -298,7 +293,7 @@
method public abstract java.util.concurrent.Future<androidx.media2.common.SessionPlayer.PlayerResult!> adjustVolume(int);
method public abstract int getMaxVolume();
method public abstract int getVolume();
- method @androidx.media2.session.RemoteSessionPlayer.VolumeControlType public abstract int getVolumeControlType();
+ method public abstract int getVolumeControlType();
method public abstract java.util.concurrent.Future<androidx.media2.common.SessionPlayer.PlayerResult!> setVolume(int);
field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2
field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0
@@ -310,11 +305,10 @@
method public void onVolumeChanged(androidx.media2.session.RemoteSessionPlayer, int);
}
-
public final class SessionCommand implements androidx.versionedparcelable.VersionedParcelable {
- ctor public SessionCommand(@androidx.media2.session.SessionCommand.CommandCode int);
+ ctor public SessionCommand(int);
ctor public SessionCommand(String, android.os.Bundle?);
- method @androidx.media2.session.SessionCommand.CommandCode public int getCommandCode();
+ method public int getCommandCode();
method public String? getCustomAction();
method public android.os.Bundle? getCustomExtras();
field public static final int COMMAND_CODE_CUSTOM = 0; // 0x0
@@ -359,31 +353,29 @@
field public static final int COMMAND_VERSION_2 = 2; // 0x2
}
-
-
public final class SessionCommandGroup implements androidx.versionedparcelable.VersionedParcelable {
ctor public SessionCommandGroup();
ctor public SessionCommandGroup(java.util.Collection<androidx.media2.session.SessionCommand!>?);
method public java.util.Set<androidx.media2.session.SessionCommand!> getCommands();
method public boolean hasCommand(androidx.media2.session.SessionCommand);
- method public boolean hasCommand(@androidx.media2.session.SessionCommand.CommandCode int);
+ method public boolean hasCommand(int);
}
public static final class SessionCommandGroup.Builder {
ctor public SessionCommandGroup.Builder();
ctor public SessionCommandGroup.Builder(androidx.media2.session.SessionCommandGroup);
- method public androidx.media2.session.SessionCommandGroup.Builder addAllPredefinedCommands(@androidx.media2.session.SessionCommand.CommandVersion int);
+ method public androidx.media2.session.SessionCommandGroup.Builder addAllPredefinedCommands(int);
method public androidx.media2.session.SessionCommandGroup.Builder addCommand(androidx.media2.session.SessionCommand);
method public androidx.media2.session.SessionCommandGroup build();
method public androidx.media2.session.SessionCommandGroup.Builder removeCommand(androidx.media2.session.SessionCommand);
}
public class SessionResult extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.media2.common.BaseResult {
- ctor public SessionResult(@androidx.media2.session.SessionResult.ResultCode int, android.os.Bundle?);
+ ctor public SessionResult(int, android.os.Bundle?);
method public long getCompletionTime();
method public android.os.Bundle? getCustomCommandResult();
method public androidx.media2.common.MediaItem? getMediaItem();
- method @androidx.media2.session.SessionResult.ResultCode public int getResultCode();
+ method public int getResultCode();
field public static final int RESULT_ERROR_SESSION_AUTHENTICATION_EXPIRED = -102; // 0xffffff9a
field public static final int RESULT_ERROR_SESSION_CONCURRENT_STREAM_LIMIT = -104; // 0xffffff98
field public static final int RESULT_ERROR_SESSION_DISCONNECTED = -100; // 0xffffff9c
@@ -395,21 +387,18 @@
field public static final int RESULT_SUCCESS = 0; // 0x0
}
-
public final class SessionToken implements androidx.versionedparcelable.VersionedParcelable {
ctor public SessionToken(android.content.Context, android.content.ComponentName);
method public android.os.Bundle getExtras();
method public String getPackageName();
method public String? getServiceName();
- method @androidx.media2.session.SessionToken.TokenType public int getType();
+ method public int getType();
method public int getUid();
field public static final int TYPE_LIBRARY_SERVICE = 2; // 0x2
field public static final int TYPE_SESSION = 0; // 0x0
field public static final int TYPE_SESSION_SERVICE = 1; // 0x1
}
-
-
public final class StarRating implements androidx.media2.common.Rating {
ctor public StarRating(@IntRange(from=1) int);
ctor public StarRating(@IntRange(from=1) int, float);
diff --git a/media2/session/src/androidTest/java/androidx/media2/session/MediaController_FrameworkMediaSessionTest.java b/media2/session/src/androidTest/java/androidx/media2/session/MediaController_FrameworkMediaSessionTest.java
new file mode 100644
index 0000000..7ce0069
--- /dev/null
+++ b/media2/session/src/androidTest/java/androidx/media2/session/MediaController_FrameworkMediaSessionTest.java
@@ -0,0 +1,114 @@
+/*
+ * Copyright 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.media2.session;
+
+import static org.junit.Assert.assertTrue;
+
+import android.media.session.PlaybackState;
+import android.os.Build;
+import android.support.v4.media.session.MediaSessionCompat;
+
+import androidx.annotation.NonNull;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+import androidx.test.filters.LargeTest;
+import androidx.test.filters.SdkSuppress;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+
+/**
+ * Tests {@link MediaController} with framework MediaSession.
+ */
+@SdkSuppress(minSdkVersion = Build.VERSION_CODES.LOLLIPOP)
+@RunWith(AndroidJUnit4.class)
+@LargeTest
+public class MediaController_FrameworkMediaSessionTest extends MediaSessionTestBase {
+ private static final String TAG = "MediaController_FrameworkMediaSessionTest";
+
+ private android.media.session.MediaSession mFwkSession;
+
+ @Before
+ @Override
+ public void setUp() throws Exception {
+ super.setUp();
+ mFwkSession = new android.media.session.MediaSession(mContext, TAG);
+ mFwkSession.setActive(true);
+ mFwkSession.setFlags(android.media.session.MediaSession.FLAG_HANDLES_MEDIA_BUTTONS
+ | android.media.session.MediaSession.FLAG_HANDLES_MEDIA_BUTTONS);
+ mFwkSession.setCallback(new android.media.session.MediaSession.Callback() {});
+ }
+
+ @After
+ @Override
+ public void cleanUp() throws Exception {
+ super.cleanUp();
+ mFwkSession.release();
+ }
+
+ @Test
+ public void testConnect() throws Exception {
+ CountDownLatch connectedLatch = new CountDownLatch(1);
+ MediaController.ControllerCallback callback = new MediaController.ControllerCallback() {
+ @Override
+ public void onConnected(@NonNull MediaController controller,
+ @NonNull SessionCommandGroup allowedCommands) {
+ connectedLatch.countDown();
+ }
+ };
+ try (MediaController controller = new MediaController.Builder(mContext)
+ .setSessionCompatToken(
+ MediaSessionCompat.Token.fromToken(mFwkSession.getSessionToken()))
+ .setControllerCallback(sHandlerExecutor, callback)
+ .build()) {
+ assertTrue(connectedLatch.await(TIMEOUT_MS, TimeUnit.MILLISECONDS));
+ }
+ }
+
+ @Test
+ public void testPlayerStateChanged() throws Exception {
+ CountDownLatch connectedLatch = new CountDownLatch(1);
+ CountDownLatch playerStateChangedLatch = new CountDownLatch(1);
+ MediaController.ControllerCallback callback = new MediaController.ControllerCallback() {
+ @Override
+ public void onConnected(@NonNull MediaController controller,
+ @NonNull SessionCommandGroup allowedCommands) {
+ connectedLatch.countDown();
+ }
+
+ @Override
+ public void onPlayerStateChanged(@NonNull MediaController controller, int state) {
+ playerStateChangedLatch.countDown();
+ }
+ };
+ try (MediaController controller = new MediaController.Builder(mContext)
+ .setSessionCompatToken(
+ MediaSessionCompat.Token.fromToken(mFwkSession.getSessionToken()))
+ .setControllerCallback(sHandlerExecutor, callback)
+ .build()) {
+ assertTrue(connectedLatch.await(TIMEOUT_MS, TimeUnit.MILLISECONDS));
+ mFwkSession.setPlaybackState(new PlaybackState.Builder()
+ .setState(PlaybackState.STATE_PLAYING, 0, 1.0f)
+ .build());
+ assertTrue(playerStateChangedLatch.await(TIMEOUT_MS, TimeUnit.MILLISECONDS));
+ }
+ }
+}
diff --git a/media2/session/src/main/java/androidx/media2/session/MediaControllerImplLegacy.java b/media2/session/src/main/java/androidx/media2/session/MediaControllerImplLegacy.java
index 365267c..ad3e9d1 100644
--- a/media2/session/src/main/java/androidx/media2/session/MediaControllerImplLegacy.java
+++ b/media2/session/src/main/java/androidx/media2/session/MediaControllerImplLegacy.java
@@ -106,7 +106,7 @@
MediaBrowserCompat mBrowserCompat;
@GuardedBy("mLock")
@SuppressWarnings("WeakerAccess") /* synthetic access */
- boolean mIsReleased;
+ boolean mClosed;
@GuardedBy("mLock")
@SuppressWarnings("WeakerAccess") /* synthetic access */
List<MediaItem> mPlaylist;
@@ -153,7 +153,8 @@
@SuppressWarnings("WeakerAccess") /* synthetic access */
MediaControllerCompat mControllerCompat;
@GuardedBy("mLock")
- private ControllerCompatCallback mControllerCompatCallback;
+ @SuppressWarnings("WeakerAccess") /* synthetic access */
+ ControllerCompatCallback mControllerCompatCallback;
@GuardedBy("mLock")
@SuppressWarnings("WeakerAccess") /* synthetic access */
PlaybackStateCompat mPlaybackStateCompat;
@@ -161,10 +162,9 @@
@SuppressWarnings("WeakerAccess") /* synthetic access */
MediaMetadataCompat mMediaMetadataCompat;
- // Assignment should be used with the lock hold, but should be used without a lock to prevent
- // potential deadlock.
@GuardedBy("mLock")
- private volatile boolean mConnected;
+ @SuppressWarnings("WeakerAccess") /* synthetic access */
+ boolean mConnected;
MediaControllerImplLegacy(@NonNull Context context, @NonNull MediaController instance,
@NonNull SessionToken token) {
@@ -188,10 +188,10 @@
@Override
public void close() {
if (DEBUG) {
- Log.d(TAG, "release from " + mToken);
+ Log.d(TAG, "close from " + mToken);
}
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed) {
// Prevent re-enterance from the ControllerCallback.onDisconnected()
return;
}
@@ -203,7 +203,7 @@
mHandlerThread.quit();
}
- mIsReleased = true;
+ mClosed = true;
if (mBrowserCompat != null) {
mBrowserCompat.disconnect();
@@ -870,7 +870,7 @@
final List<CommandButton> customLayout;
synchronized (mLock) {
- if (mIsReleased || mConnected) {
+ if (mClosed || mConnected) {
return;
}
mPlaybackStateCompat = mControllerCompat.getPlaybackState();
@@ -930,6 +930,8 @@
mControllerCompatCallback = new ControllerCompatCallback();
mControllerCompat.registerCallback(mControllerCompatCallback, mHandler);
}
+ // MediaControllerCompat is available to use immediately after it's created.
+ onConnectedNotLocked();
}
private void connectToService() {
@@ -1038,7 +1040,26 @@
@Override
public void onSessionReady() {
- onConnectedNotLocked();
+ boolean connected;
+ synchronized (mLock) {
+ connected = mConnected;
+ }
+ if (connected) {
+ PlaybackStateCompat state;
+ int shuffleMode;
+ int repeatMode;
+ boolean isCaptioningEnabled;
+ synchronized (mLock) {
+ state = mControllerCompat.getPlaybackState();
+ shuffleMode = mControllerCompat.getShuffleMode();
+ repeatMode = mControllerCompat.getRepeatMode();
+ isCaptioningEnabled = mControllerCompat.isCaptioningEnabled();
+ }
+ onPlaybackStateChanged(state);
+ onShuffleModeChanged(shuffleMode);
+ onRepeatModeChanged(repeatMode);
+ onCaptioningEnabledChanged(isCaptioningEnabled);
+ }
}
@Override
@@ -1049,7 +1070,7 @@
@Override
public void onSessionEvent(final String event, final Bundle extras) {
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
}
@@ -1072,7 +1093,7 @@
final SessionCommandGroup prevAllowedCommands;
final SessionCommandGroup currentAllowedCommands;
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
prevItem = mCurrentMediaItem;
@@ -1208,7 +1229,7 @@
final MediaItem prevItem;
final MediaItem currentItem;
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
prevItem = mCurrentMediaItem;
@@ -1230,7 +1251,7 @@
final List<MediaItem> playlist;
final MediaMetadata playlistMetadata;
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
mQueue = MediaUtils.removeNullElements(queue);
@@ -1258,7 +1279,7 @@
public void onQueueTitleChanged(CharSequence title) {
final MediaMetadata playlistMetadata;
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
mPlaylistMetadata = MediaUtils.convertToMediaMetadata(title);
@@ -1275,7 +1296,7 @@
@Override
public void onExtrasChanged(final Bundle extras) {
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
}
@@ -1291,7 +1312,7 @@
@Override
public void onAudioInfoChanged(final MediaControllerCompat.PlaybackInfo info) {
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
}
@@ -1306,7 +1327,7 @@
@Override
public void onCaptioningEnabledChanged(final boolean enabled) {
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
}
@@ -1324,7 +1345,7 @@
@Override
public void onRepeatModeChanged(@PlaybackStateCompat.RepeatMode final int repeatMode) {
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
mRepeatMode = repeatMode;
@@ -1340,7 +1361,7 @@
@Override
public void onShuffleModeChanged(@PlaybackStateCompat.ShuffleMode final int shuffleMode) {
synchronized (mLock) {
- if (mIsReleased) {
+ if (mClosed || !mConnected) {
return;
}
mShuffleMode = shuffleMode;
diff --git a/navigation/navigation-runtime/api/restricted_2.3.0-alpha01.txt b/navigation/navigation-runtime/api/restricted_2.3.0-alpha01.txt
index 9b6cbf4..4f49e23 100644
--- a/navigation/navigation-runtime/api/restricted_2.3.0-alpha01.txt
+++ b/navigation/navigation-runtime/api/restricted_2.3.0-alpha01.txt
@@ -51,6 +51,7 @@
ctor public NavController(android.content.Context);
method public void addOnDestinationChangedListener(androidx.navigation.NavController.OnDestinationChangedListener);
method public androidx.navigation.NavDeepLinkBuilder createDeepLink();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public java.util.Deque<androidx.navigation.NavBackStackEntry!> getBackStack();
method public androidx.navigation.NavBackStackEntry getBackStackEntry(@IdRes int);
method public androidx.navigation.NavDestination? getCurrentDestination();
method public androidx.navigation.NavGraph getGraph();
@@ -78,6 +79,7 @@
method @CallSuper public void setGraph(@NavigationRes int, android.os.Bundle?);
method @CallSuper public void setGraph(androidx.navigation.NavGraph);
method @CallSuper public void setGraph(androidx.navigation.NavGraph, android.os.Bundle?);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void setNavigatorProvider(androidx.navigation.NavigatorProvider);
field public static final String KEY_DEEP_LINK_INTENT = "android-support-nav:controller:deepLinkIntent";
}
diff --git a/navigation/navigation-runtime/api/restricted_current.txt b/navigation/navigation-runtime/api/restricted_current.txt
index 9b6cbf4..4f49e23 100644
--- a/navigation/navigation-runtime/api/restricted_current.txt
+++ b/navigation/navigation-runtime/api/restricted_current.txt
@@ -51,6 +51,7 @@
ctor public NavController(android.content.Context);
method public void addOnDestinationChangedListener(androidx.navigation.NavController.OnDestinationChangedListener);
method public androidx.navigation.NavDeepLinkBuilder createDeepLink();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public java.util.Deque<androidx.navigation.NavBackStackEntry!> getBackStack();
method public androidx.navigation.NavBackStackEntry getBackStackEntry(@IdRes int);
method public androidx.navigation.NavDestination? getCurrentDestination();
method public androidx.navigation.NavGraph getGraph();
@@ -78,6 +79,7 @@
method @CallSuper public void setGraph(@NavigationRes int, android.os.Bundle?);
method @CallSuper public void setGraph(androidx.navigation.NavGraph);
method @CallSuper public void setGraph(androidx.navigation.NavGraph, android.os.Bundle?);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void setNavigatorProvider(androidx.navigation.NavigatorProvider);
field public static final String KEY_DEEP_LINK_INTENT = "android-support-nav:controller:deepLinkIntent";
}
diff --git a/navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.java b/navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.java
index 8a5ba6a..221ba97 100644
--- a/navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.java
+++ b/navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.java
@@ -32,6 +32,7 @@
import androidx.annotation.NavigationRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.annotation.RestrictTo;
import androidx.core.app.TaskStackBuilder;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleEventObserver;
@@ -95,7 +96,7 @@
private LifecycleOwner mLifecycleOwner;
private NavControllerViewModel mViewModel;
- private final NavigatorProvider mNavigatorProvider = new NavigatorProvider();
+ private NavigatorProvider mNavigatorProvider = new NavigatorProvider();
private final CopyOnWriteArrayList<OnDestinationChangedListener>
mOnDestinationChangedListeners = new CopyOnWriteArrayList<>();
@@ -169,6 +170,18 @@
mNavigatorProvider.addNavigator(new ActivityNavigator(mContext));
}
+ /**
+ * Retrieve the current back stack.
+ *
+ * @return The current back stack.
+ * @hide
+ */
+ @NonNull
+ @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP)
+ public Deque<NavBackStackEntry> getBackStack() {
+ return mBackStack;
+ }
+
@NonNull
Context getContext() {
return mContext;
@@ -190,6 +203,22 @@
}
/**
+ * Sets the {@link NavigatorProvider navigator provider} to the specified provider. This can
+ * only be called before the graph is set via {@code setGraph()}.
+ *
+ * @param navigatorProvider {@link NavigatorProvider} to set
+ * @throws IllegalStateException If this is called after {@code setGraph()}
+ * @hide
+ */
+ @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP)
+ public void setNavigatorProvider(@NonNull NavigatorProvider navigatorProvider) {
+ if (!mBackStack.isEmpty()) {
+ throw new IllegalStateException("NavigatorProvider must be set before setGraph call");
+ }
+ mNavigatorProvider = navigatorProvider;
+ }
+
+ /**
* Adds an {@link OnDestinationChangedListener} to this controller to receive a callback
* whenever the {@link #getCurrentDestination()} or its arguments change.
*
diff --git a/navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavHostControllerTest.kt b/navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavHostControllerTest.kt
index ed95edc..92b1a11 100644
--- a/navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavHostControllerTest.kt
+++ b/navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavHostControllerTest.kt
@@ -16,9 +16,8 @@
package androidx.navigation.testing
-import androidx.navigation.testing.test.R
-import androidx.navigation.TestNavHostController
import androidx.navigation.plusAssign
+import androidx.navigation.testing.test.R
import androidx.test.core.app.ApplicationProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
@@ -36,14 +35,12 @@
@Before
fun setUp() {
- navController = TestNavHostController(ApplicationProvider.getApplicationContext()).apply {
- navigatorProvider += TestNavigator()
- setGraph(R.navigation.test_graph)
- }
+ navController = TestNavHostController(ApplicationProvider.getApplicationContext())
}
@Test
fun testStartBackStack() {
+ navController.setGraph(R.navigation.test_graph)
val backStack = navController.backStack
assertThat(backStack).hasSize(2)
assertThat(backStack[0].destination.id).isEqualTo(R.id.test_graph)
@@ -52,9 +49,19 @@
@Test
fun testNavigateBackStack() {
+ navController.setGraph(R.navigation.test_graph)
navController.navigate(R.id.second)
val backStack = navController.backStack
assertThat(backStack).hasSize(3)
assertThat(backStack[2].destination.id).isEqualTo(R.id.second_test)
}
+
+ @Test
+ fun testCustomNavigator() {
+ navController.navigatorProvider += TestNavigator()
+ navController.setGraph(R.navigation.test_graph)
+ val backStack = navController.backStack
+ assertThat(backStack).hasSize(2)
+ assertThat(backStack[1].destination).isInstanceOf(TestNavigator.Destination::class.java)
+ }
}
diff --git a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavHostController.kt b/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavHostController.kt
index 228c966..192655e 100644
--- a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavHostController.kt
+++ b/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavHostController.kt
@@ -14,9 +14,11 @@
* limitations under the License.
*/
-package androidx.navigation
+package androidx.navigation.testing
import android.content.Context
+import androidx.navigation.NavBackStackEntry
+import androidx.navigation.NavHostController
/**
* Subclass of [NavHostController] that offers additional APIs for testing Navigation.
@@ -26,5 +28,9 @@
/**
* Gets an immutable copy of the [elements][NavBackStackEntry] currently on the back stack.
*/
- val backStack get(): List<NavBackStackEntry> = mBackStack.toList()
+ val backStack get(): List<NavBackStackEntry> = getBackStack().toList()
+
+ init {
+ navigatorProvider = TestNavigatorProvider()
+ }
}
diff --git a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorProvider.kt b/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorProvider.kt
new file mode 100644
index 0000000..62e9ba8
--- /dev/null
+++ b/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorProvider.kt
@@ -0,0 +1,65 @@
+/*
+ * Copyright 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.navigation.testing
+
+import android.os.Bundle
+import androidx.navigation.NavDestination
+import androidx.navigation.NavGraphNavigator
+import androidx.navigation.NavOptions
+import androidx.navigation.Navigator
+import androidx.navigation.NavigatorProvider
+import java.lang.IllegalStateException
+
+/**
+ * A [NavigatorProvider] for testing that only parses
+ * [navigation graphs][androidx.navigation.NavGraph] and [destinations][NavDestination].
+ */
+internal class TestNavigatorProvider : NavigatorProvider() {
+
+ /**
+ * A [Navigator] that only supports creating destinations.
+ */
+ private val navigator = object : Navigator<NavDestination>() {
+ override fun createDestination() = NavDestination("test")
+
+ override fun navigate(
+ destination: NavDestination,
+ args: Bundle?,
+ navOptions: NavOptions?,
+ navigatorExtras: Extras?
+ ): NavDestination? {
+ return destination
+ }
+
+ override fun popBackStack(): Boolean {
+ return true
+ }
+ }
+
+ init {
+ addNavigator(NavGraphNavigator(this))
+ }
+
+ override fun <T : Navigator<out NavDestination>> getNavigator(name: String): T {
+ return try {
+ super.getNavigator(name)
+ } catch (e: IllegalStateException) {
+ @Suppress("UNCHECKED_CAST")
+ navigator as T
+ }
+ }
+}
diff --git a/paging/common/api/restricted_3.0.0-alpha01.txt b/paging/common/api/restricted_3.0.0-alpha01.txt
index 6fb99d7..310fe1f 100644
--- a/paging/common/api/restricted_3.0.0-alpha01.txt
+++ b/paging/common/api/restricted_3.0.0-alpha01.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.paging {
-
public abstract class DataSource<Key, Value> {
method @AnyThread public void addInvalidatedCallback(androidx.paging.DataSource.InvalidatedCallback onInvalidatedCallback);
method @AnyThread public final void addInvalidatedCallback(kotlin.jvm.functions.Function0<kotlin.Unit> onInvalidatedCallback);
@@ -34,7 +33,6 @@
ctor public DataSourceKt();
}
-
public abstract class ItemKeyedDataSource<Key, Value> extends androidx.paging.DataSource<Key,Value> {
ctor public ItemKeyedDataSource();
method public abstract Key getKey(Value item);
@@ -331,7 +329,6 @@
method public final <V> androidx.paging.PositionalDataSource<V> mapByPage(kotlin.jvm.functions.Function1<? super java.util.List<? extends T>,? extends java.util.List<? extends V>> function);
}
-
public abstract static class PositionalDataSource.LoadInitialCallback<T> {
ctor public PositionalDataSource.LoadInitialCallback();
method public abstract void onResult(java.util.List<? extends T> data, int position, int totalCount);
diff --git a/paging/common/api/restricted_current.txt b/paging/common/api/restricted_current.txt
index 6fb99d7..310fe1f 100644
--- a/paging/common/api/restricted_current.txt
+++ b/paging/common/api/restricted_current.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.paging {
-
public abstract class DataSource<Key, Value> {
method @AnyThread public void addInvalidatedCallback(androidx.paging.DataSource.InvalidatedCallback onInvalidatedCallback);
method @AnyThread public final void addInvalidatedCallback(kotlin.jvm.functions.Function0<kotlin.Unit> onInvalidatedCallback);
@@ -34,7 +33,6 @@
ctor public DataSourceKt();
}
-
public abstract class ItemKeyedDataSource<Key, Value> extends androidx.paging.DataSource<Key,Value> {
ctor public ItemKeyedDataSource();
method public abstract Key getKey(Value item);
@@ -331,7 +329,6 @@
method public final <V> androidx.paging.PositionalDataSource<V> mapByPage(kotlin.jvm.functions.Function1<? super java.util.List<? extends T>,? extends java.util.List<? extends V>> function);
}
-
public abstract static class PositionalDataSource.LoadInitialCallback<T> {
ctor public PositionalDataSource.LoadInitialCallback();
method public abstract void onResult(java.util.List<? extends T> data, int position, int totalCount);
diff --git a/preference/preference/api/restricted_1.0.0.txt b/preference/preference/api/restricted_1.0.0.txt
index 55d3bd3..30b0b37 100644
--- a/preference/preference/api/restricted_1.0.0.txt
+++ b/preference/preference/api/restricted_1.0.0.txt
@@ -496,7 +496,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
diff --git a/preference/preference/api/restricted_1.1.0-alpha04.txt b/preference/preference/api/restricted_1.1.0-alpha04.txt
index fac4a6a..e107369 100644
--- a/preference/preference/api/restricted_1.1.0-alpha04.txt
+++ b/preference/preference/api/restricted_1.1.0-alpha04.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.preference {
-
public class CheckBoxPreference extends androidx.preference.TwoStatePreference {
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int);
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int, int);
@@ -510,7 +509,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
@@ -591,4 +589,13 @@
}
+package @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) androidx.preference.internal {
+
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class PreferenceImageView extends android.widget.ImageView {
+ ctor public PreferenceImageView(android.content.Context!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!, int);
+ }
+
+}
diff --git a/preference/preference/api/restricted_1.1.0-alpha05.txt b/preference/preference/api/restricted_1.1.0-alpha05.txt
index fac4a6a..e107369 100644
--- a/preference/preference/api/restricted_1.1.0-alpha05.txt
+++ b/preference/preference/api/restricted_1.1.0-alpha05.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.preference {
-
public class CheckBoxPreference extends androidx.preference.TwoStatePreference {
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int);
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int, int);
@@ -510,7 +509,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
@@ -591,4 +589,13 @@
}
+package @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) androidx.preference.internal {
+
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class PreferenceImageView extends android.widget.ImageView {
+ ctor public PreferenceImageView(android.content.Context!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!, int);
+ }
+
+}
diff --git a/preference/preference/api/restricted_1.1.0-beta01.txt b/preference/preference/api/restricted_1.1.0-beta01.txt
index 42cde3c..f6ba072 100644
--- a/preference/preference/api/restricted_1.1.0-beta01.txt
+++ b/preference/preference/api/restricted_1.1.0-beta01.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.preference {
-
public class CheckBoxPreference extends androidx.preference.TwoStatePreference {
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int);
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int, int);
@@ -509,7 +508,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
@@ -590,4 +588,13 @@
}
+package @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) androidx.preference.internal {
+
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class PreferenceImageView extends android.widget.ImageView {
+ ctor public PreferenceImageView(android.content.Context!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!, int);
+ }
+
+}
diff --git a/preference/preference/api/restricted_1.1.0-rc01.txt b/preference/preference/api/restricted_1.1.0-rc01.txt
index cf33935..ba0d303 100644
--- a/preference/preference/api/restricted_1.1.0-rc01.txt
+++ b/preference/preference/api/restricted_1.1.0-rc01.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.preference {
-
public class CheckBoxPreference extends androidx.preference.TwoStatePreference {
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int);
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int, int);
@@ -509,7 +508,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
@@ -590,4 +588,13 @@
}
+package @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY}) androidx.preference.internal {
+
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class PreferenceImageView extends android.widget.ImageView {
+ ctor public PreferenceImageView(android.content.Context!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!, int);
+ }
+
+}
diff --git a/preference/preference/api/restricted_1.2.0-alpha01.txt b/preference/preference/api/restricted_1.2.0-alpha01.txt
index c356468..7b25888 100644
--- a/preference/preference/api/restricted_1.2.0-alpha01.txt
+++ b/preference/preference/api/restricted_1.2.0-alpha01.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.preference {
-
public class CheckBoxPreference extends androidx.preference.TwoStatePreference {
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int);
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int, int);
@@ -509,7 +508,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
@@ -590,4 +588,13 @@
}
+package @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) androidx.preference.internal {
+
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class PreferenceImageView extends android.widget.ImageView {
+ ctor public PreferenceImageView(android.content.Context!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!, int);
+ }
+
+}
diff --git a/preference/preference/api/restricted_current.txt b/preference/preference/api/restricted_current.txt
index c356468..7b25888 100644
--- a/preference/preference/api/restricted_current.txt
+++ b/preference/preference/api/restricted_current.txt
@@ -1,7 +1,6 @@
// Signature format: 3.0
package androidx.preference {
-
public class CheckBoxPreference extends androidx.preference.TwoStatePreference {
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int);
ctor public CheckBoxPreference(android.content.Context!, android.util.AttributeSet!, int, int);
@@ -509,7 +508,6 @@
}
public class PreferenceViewHolder extends androidx.recyclerview.widget.RecyclerView.ViewHolder {
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.TESTS) public static androidx.preference.PreferenceViewHolder! createInstanceForTests(android.view.View!);
method public android.view.View! findViewById(@IdRes int);
method public boolean isDividerAllowedAbove();
method public boolean isDividerAllowedBelow();
@@ -590,4 +588,13 @@
}
+package @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) androidx.preference.internal {
+
+ @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class PreferenceImageView extends android.widget.ImageView {
+ ctor public PreferenceImageView(android.content.Context!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!);
+ ctor public PreferenceImageView(android.content.Context!, android.util.AttributeSet!, int);
+ }
+
+}
diff --git a/recyclerview/recyclerview-selection/api/restricted_1.1.0-alpha06.txt b/recyclerview/recyclerview-selection/api/restricted_1.1.0-alpha06.txt
index adebbf3..cea7610 100644
--- a/recyclerview/recyclerview-selection/api/restricted_1.1.0-alpha06.txt
+++ b/recyclerview/recyclerview-selection/api/restricted_1.1.0-alpha06.txt
@@ -16,7 +16,6 @@
method public boolean canInitiate(android.view.MotionEvent);
}
-
public abstract class FocusDelegate<K> {
ctor public FocusDelegate();
method public abstract void clearFocus();
diff --git a/recyclerview/recyclerview-selection/api/restricted_1.1.0-beta01.txt b/recyclerview/recyclerview-selection/api/restricted_1.1.0-beta01.txt
index f944138..f80bfd39 100644
--- a/recyclerview/recyclerview-selection/api/restricted_1.1.0-beta01.txt
+++ b/recyclerview/recyclerview-selection/api/restricted_1.1.0-beta01.txt
@@ -16,7 +16,6 @@
method public boolean canInitiate(android.view.MotionEvent);
}
-
public abstract class FocusDelegate<K> {
ctor public FocusDelegate();
method public abstract void clearFocus();
@@ -81,7 +80,6 @@
method public void onChanged();
}
-
public class Selection<K> implements java.lang.Iterable<K> {
method public boolean contains(K?);
method public boolean isEmpty();
diff --git a/recyclerview/recyclerview-selection/api/restricted_current.txt b/recyclerview/recyclerview-selection/api/restricted_current.txt
index f944138..f80bfd39 100644
--- a/recyclerview/recyclerview-selection/api/restricted_current.txt
+++ b/recyclerview/recyclerview-selection/api/restricted_current.txt
@@ -16,7 +16,6 @@
method public boolean canInitiate(android.view.MotionEvent);
}
-
public abstract class FocusDelegate<K> {
ctor public FocusDelegate();
method public abstract void clearFocus();
@@ -81,7 +80,6 @@
method public void onChanged();
}
-
public class Selection<K> implements java.lang.Iterable<K> {
method public boolean contains(K?);
method public boolean isEmpty();
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-alpha06.txt b/recyclerview/recyclerview/api/restricted_1.1.0-alpha06.txt
index 96f73f8..9a8590e 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-alpha06.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-alpha06.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-beta01.txt b/recyclerview/recyclerview/api/restricted_1.1.0-beta01.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-beta01.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-beta01.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-beta02.txt b/recyclerview/recyclerview/api/restricted_1.1.0-beta02.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-beta02.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-beta02.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-beta03.txt b/recyclerview/recyclerview/api/restricted_1.1.0-beta03.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-beta03.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-beta03.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-beta04.txt b/recyclerview/recyclerview/api/restricted_1.1.0-beta04.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-beta04.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-beta04.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-beta05.txt b/recyclerview/recyclerview/api/restricted_1.1.0-beta05.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-beta05.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-beta05.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.1.0-rc01.txt b/recyclerview/recyclerview/api/restricted_1.1.0-rc01.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.1.0-rc01.txt
+++ b/recyclerview/recyclerview/api/restricted_1.1.0-rc01.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_1.2.0-alpha01.txt b/recyclerview/recyclerview/api/restricted_1.2.0-alpha01.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_1.2.0-alpha01.txt
+++ b/recyclerview/recyclerview/api/restricted_1.2.0-alpha01.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/recyclerview/recyclerview/api/restricted_current.txt b/recyclerview/recyclerview/api/restricted_current.txt
index 7048ea8..6d5fda3 100644
--- a/recyclerview/recyclerview/api/restricted_current.txt
+++ b/recyclerview/recyclerview/api/restricted_current.txt
@@ -273,7 +273,6 @@
field public boolean mIgnoreConsumed;
}
-
public class LinearSmoothScroller extends androidx.recyclerview.widget.RecyclerView.SmoothScroller {
ctor public LinearSmoothScroller(android.content.Context!);
method public int calculateDtToFit(int, int, int, int, int);
@@ -811,7 +810,6 @@
method public void onViewRecycled(androidx.recyclerview.widget.RecyclerView.ViewHolder);
}
-
public static class RecyclerView.SimpleOnItemTouchListener implements androidx.recyclerview.widget.RecyclerView.OnItemTouchListener {
ctor public RecyclerView.SimpleOnItemTouchListener();
method public boolean onInterceptTouchEvent(androidx.recyclerview.widget.RecyclerView, android.view.MotionEvent);
@@ -1038,6 +1036,5 @@
field public static final int INVALID_SPAN_ID = -1; // 0xffffffff
}
-
}
diff --git a/remotecallback/api/restricted_1.0.0-alpha02.txt b/remotecallback/api/restricted_1.0.0-alpha02.txt
index 8bf05f9..104224b 100644
--- a/remotecallback/api/restricted_1.0.0-alpha02.txt
+++ b/remotecallback/api/restricted_1.0.0-alpha02.txt
@@ -59,12 +59,12 @@
}
public class RemoteCallback {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public RemoteCallback(android.content.Context, @androidx.remotecallback.RemoteCallback.RemoteCallbackType int, android.content.Intent, String, android.os.Bundle);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public RemoteCallback(android.content.Context, int, android.content.Intent, String, android.os.Bundle);
method public static <T extends androidx.remotecallback.CallbackReceiver> T! create(Class<T!>!, android.content.Context!);
method public android.os.Bundle! getArgumentBundle();
method public String! getMethodName();
method public String getReceiverClass();
- method @androidx.remotecallback.RemoteCallback.RemoteCallbackType public int getType();
+ method public int getType();
method public android.app.PendingIntent! toPendingIntent();
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String EXTRA_METHOD = "remotecallback.method";
field public static final androidx.remotecallback.RemoteCallback! LOCAL;
@@ -72,6 +72,5 @@
field public static final int TYPE_RECEIVER = 0; // 0x0
}
-
}
diff --git a/remotecallback/api/restricted_current.txt b/remotecallback/api/restricted_current.txt
index 8bf05f9..104224b 100644
--- a/remotecallback/api/restricted_current.txt
+++ b/remotecallback/api/restricted_current.txt
@@ -59,12 +59,12 @@
}
public class RemoteCallback {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public RemoteCallback(android.content.Context, @androidx.remotecallback.RemoteCallback.RemoteCallbackType int, android.content.Intent, String, android.os.Bundle);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public RemoteCallback(android.content.Context, int, android.content.Intent, String, android.os.Bundle);
method public static <T extends androidx.remotecallback.CallbackReceiver> T! create(Class<T!>!, android.content.Context!);
method public android.os.Bundle! getArgumentBundle();
method public String! getMethodName();
method public String getReceiverClass();
- method @androidx.remotecallback.RemoteCallback.RemoteCallbackType public int getType();
+ method public int getType();
method public android.app.PendingIntent! toPendingIntent();
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String EXTRA_METHOD = "remotecallback.method";
field public static final androidx.remotecallback.RemoteCallback! LOCAL;
@@ -72,6 +72,5 @@
field public static final int TYPE_RECEIVER = 0; // 0x0
}
-
}
diff --git a/slices/builders/api/restricted_1.1.0-alpha01.txt b/slices/builders/api/restricted_1.1.0-alpha01.txt
index 17a84fa..b666f762b 100644
--- a/slices/builders/api/restricted_1.1.0-alpha01.txt
+++ b/slices/builders/api/restricted_1.1.0-alpha01.txt
@@ -5,7 +5,7 @@
ctor public GridRowBuilder();
method public androidx.slice.builders.GridRowBuilder addCell(androidx.slice.builders.GridRowBuilder.CellBuilder);
method public androidx.slice.builders.GridRowBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.GridRowBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.GridRowBuilder setLayoutDirection(int);
method public androidx.slice.builders.GridRowBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.GridRowBuilder setSeeMoreAction(android.app.PendingIntent);
method public androidx.slice.builders.GridRowBuilder setSeeMoreAction(androidx.remotecallback.RemoteCallback);
@@ -14,8 +14,8 @@
public static class GridRowBuilder.CellBuilder {
ctor public GridRowBuilder.CellBuilder();
- method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addText(CharSequence);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addText(CharSequence?, boolean);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addTitleText(CharSequence);
@@ -38,7 +38,7 @@
method public androidx.slice.builders.ListBuilder setHeader(androidx.slice.builders.ListBuilder.HeaderBuilder);
method public androidx.slice.builders.ListBuilder setIsError(boolean);
method public androidx.slice.builders.ListBuilder setKeywords(java.util.Set<java.lang.String!>!);
- method public androidx.slice.builders.ListBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder setSeeMoreAction(android.app.PendingIntent);
method public androidx.slice.builders.ListBuilder setSeeMoreAction(androidx.remotecallback.RemoteCallback);
method public androidx.slice.builders.ListBuilder setSeeMoreRow(androidx.slice.builders.ListBuilder.RowBuilder);
@@ -53,7 +53,7 @@
ctor public ListBuilder.HeaderBuilder();
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public ListBuilder.HeaderBuilder(android.net.Uri!);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.HeaderBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.HeaderBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setSubtitle(CharSequence);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setSubtitle(CharSequence, boolean);
@@ -63,13 +63,12 @@
method public androidx.slice.builders.ListBuilder.HeaderBuilder setTitle(CharSequence, boolean);
}
-
public static class ListBuilder.InputRangeBuilder {
ctor public ListBuilder.InputRangeBuilder();
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setContentDescription(CharSequence);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setInputAction(android.app.PendingIntent);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setInputAction(androidx.remotecallback.RemoteCallback);
- method public androidx.slice.builders.ListBuilder.InputRangeBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.InputRangeBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setMax(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setMin(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
@@ -79,11 +78,10 @@
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setValue(int);
}
-
public static class ListBuilder.RangeBuilder {
ctor public ListBuilder.RangeBuilder();
method public androidx.slice.builders.ListBuilder.RangeBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.RangeBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.RangeBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.RangeBuilder setMax(int);
method public androidx.slice.builders.ListBuilder.RangeBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RangeBuilder setSubtitle(CharSequence);
@@ -95,20 +93,20 @@
ctor public ListBuilder.RowBuilder();
ctor public ListBuilder.RowBuilder(android.net.Uri!);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(long);
- method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.slice.builders.SliceAction, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.RowBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.RowBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder setSubtitle(CharSequence);
method public androidx.slice.builders.ListBuilder.RowBuilder setSubtitle(CharSequence?, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitle(CharSequence);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitle(CharSequence?, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(long);
- method public androidx.slice.builders.ListBuilder.RowBuilder! setTitleItem(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.ListBuilder.RowBuilder! setTitleItem(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.slice.builders.SliceAction, boolean);
}
@@ -134,7 +132,7 @@
method public androidx.slice.builders.SelectionBuilder! setContentDescription(CharSequence?);
method public androidx.slice.builders.SelectionBuilder! setInputAction(android.app.PendingIntent);
method public androidx.slice.builders.SelectionBuilder! setInputAction(androidx.remotecallback.RemoteCallback);
- method public androidx.slice.builders.SelectionBuilder! setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.SelectionBuilder! setLayoutDirection(int);
method public androidx.slice.builders.SelectionBuilder! setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.SelectionBuilder! setSelectedOption(String!);
method public androidx.slice.builders.SelectionBuilder! setSubtitle(CharSequence?);
@@ -142,13 +140,13 @@
}
@RequiresApi(19) public class SliceAction implements androidx.slice.core.SliceAction {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, CharSequence, boolean);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, CharSequence, boolean);
- method public static androidx.slice.builders.SliceAction! create(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! create(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! createDeeplink(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! createDeeplink(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! create(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! create(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! createDeeplink(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! createDeeplink(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
method public static androidx.slice.builders.SliceAction! createToggle(android.app.PendingIntent, CharSequence, boolean);
method public static androidx.slice.builders.SliceAction! createToggle(androidx.remotecallback.RemoteCallback, CharSequence, boolean);
method public static androidx.slice.builders.SliceAction! createToggle(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, CharSequence, boolean);
@@ -156,7 +154,7 @@
method public android.app.PendingIntent getAction();
method public CharSequence? getContentDescription();
method public androidx.core.graphics.drawable.IconCompat? getIcon();
- method @androidx.slice.builders.ListBuilder.ImageMode public int getImageMode();
+ method public int getImageMode();
method public int getPriority();
method public CharSequence getTitle();
method public boolean isActivity();
@@ -174,80 +172,3 @@
}
-package androidx.slice.builders.impl {
-
-
- public static final class GridRowBuilderListV1Impl.CellBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void fillFrom(androidx.slice.builders.GridRowBuilder.CellBuilder!);
- }
-
-
-
-
- public static class ListBuilderImpl.HeaderBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
- public static class ListBuilderImpl.InputRangeBuilderImpl extends androidx.slice.builders.impl.ListBuilderImpl.RangeBuilderImpl {
- }
-
- public static class ListBuilderImpl.RangeBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void apply(androidx.slice.Slice.Builder!);
- field protected CharSequence! mContentDescr;
- field protected int mLayoutDir;
- field protected int mMax;
- field protected int mMin;
- field protected androidx.slice.builders.SliceAction! mPrimaryAction;
- field protected CharSequence! mSubtitle;
- field protected CharSequence! mTitle;
- field protected int mValue;
- field protected boolean mValueSet;
- }
-
- public static class ListBuilderImpl.RowBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method protected void addEndItem(long);
- method public void apply(androidx.slice.Slice.Builder!);
- method protected void setSubtitle(CharSequence!);
- method protected void setTitleItem(androidx.core.graphics.drawable.IconCompat!, int);
- }
-
-
- public static final class MessagingBasicImpl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingBasicImpl.MessageBuilder(androidx.slice.builders.impl.MessagingBasicImpl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
- public static interface MessagingBuilder.MessageBuilder {
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- }
-
-
- public static final class MessagingListV1Impl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingListV1Impl.MessageBuilder(androidx.slice.builders.impl.MessagingListV1Impl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
- public static final class MessagingV1Impl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingV1Impl.MessageBuilder(androidx.slice.builders.impl.MessagingV1Impl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
-
-
-
-}
-
diff --git a/slices/builders/api/restricted_1.1.0-alpha02.txt b/slices/builders/api/restricted_1.1.0-alpha02.txt
index 17a84fa..b666f762b 100644
--- a/slices/builders/api/restricted_1.1.0-alpha02.txt
+++ b/slices/builders/api/restricted_1.1.0-alpha02.txt
@@ -5,7 +5,7 @@
ctor public GridRowBuilder();
method public androidx.slice.builders.GridRowBuilder addCell(androidx.slice.builders.GridRowBuilder.CellBuilder);
method public androidx.slice.builders.GridRowBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.GridRowBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.GridRowBuilder setLayoutDirection(int);
method public androidx.slice.builders.GridRowBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.GridRowBuilder setSeeMoreAction(android.app.PendingIntent);
method public androidx.slice.builders.GridRowBuilder setSeeMoreAction(androidx.remotecallback.RemoteCallback);
@@ -14,8 +14,8 @@
public static class GridRowBuilder.CellBuilder {
ctor public GridRowBuilder.CellBuilder();
- method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addText(CharSequence);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addText(CharSequence?, boolean);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addTitleText(CharSequence);
@@ -38,7 +38,7 @@
method public androidx.slice.builders.ListBuilder setHeader(androidx.slice.builders.ListBuilder.HeaderBuilder);
method public androidx.slice.builders.ListBuilder setIsError(boolean);
method public androidx.slice.builders.ListBuilder setKeywords(java.util.Set<java.lang.String!>!);
- method public androidx.slice.builders.ListBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder setSeeMoreAction(android.app.PendingIntent);
method public androidx.slice.builders.ListBuilder setSeeMoreAction(androidx.remotecallback.RemoteCallback);
method public androidx.slice.builders.ListBuilder setSeeMoreRow(androidx.slice.builders.ListBuilder.RowBuilder);
@@ -53,7 +53,7 @@
ctor public ListBuilder.HeaderBuilder();
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public ListBuilder.HeaderBuilder(android.net.Uri!);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.HeaderBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.HeaderBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setSubtitle(CharSequence);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setSubtitle(CharSequence, boolean);
@@ -63,13 +63,12 @@
method public androidx.slice.builders.ListBuilder.HeaderBuilder setTitle(CharSequence, boolean);
}
-
public static class ListBuilder.InputRangeBuilder {
ctor public ListBuilder.InputRangeBuilder();
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setContentDescription(CharSequence);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setInputAction(android.app.PendingIntent);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setInputAction(androidx.remotecallback.RemoteCallback);
- method public androidx.slice.builders.ListBuilder.InputRangeBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.InputRangeBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setMax(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setMin(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
@@ -79,11 +78,10 @@
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setValue(int);
}
-
public static class ListBuilder.RangeBuilder {
ctor public ListBuilder.RangeBuilder();
method public androidx.slice.builders.ListBuilder.RangeBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.RangeBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.RangeBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.RangeBuilder setMax(int);
method public androidx.slice.builders.ListBuilder.RangeBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RangeBuilder setSubtitle(CharSequence);
@@ -95,20 +93,20 @@
ctor public ListBuilder.RowBuilder();
ctor public ListBuilder.RowBuilder(android.net.Uri!);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(long);
- method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.slice.builders.SliceAction, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.RowBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.RowBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder setSubtitle(CharSequence);
method public androidx.slice.builders.ListBuilder.RowBuilder setSubtitle(CharSequence?, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitle(CharSequence);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitle(CharSequence?, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(long);
- method public androidx.slice.builders.ListBuilder.RowBuilder! setTitleItem(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.ListBuilder.RowBuilder! setTitleItem(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.slice.builders.SliceAction, boolean);
}
@@ -134,7 +132,7 @@
method public androidx.slice.builders.SelectionBuilder! setContentDescription(CharSequence?);
method public androidx.slice.builders.SelectionBuilder! setInputAction(android.app.PendingIntent);
method public androidx.slice.builders.SelectionBuilder! setInputAction(androidx.remotecallback.RemoteCallback);
- method public androidx.slice.builders.SelectionBuilder! setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.SelectionBuilder! setLayoutDirection(int);
method public androidx.slice.builders.SelectionBuilder! setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.SelectionBuilder! setSelectedOption(String!);
method public androidx.slice.builders.SelectionBuilder! setSubtitle(CharSequence?);
@@ -142,13 +140,13 @@
}
@RequiresApi(19) public class SliceAction implements androidx.slice.core.SliceAction {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, CharSequence, boolean);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, CharSequence, boolean);
- method public static androidx.slice.builders.SliceAction! create(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! create(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! createDeeplink(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! createDeeplink(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! create(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! create(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! createDeeplink(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! createDeeplink(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
method public static androidx.slice.builders.SliceAction! createToggle(android.app.PendingIntent, CharSequence, boolean);
method public static androidx.slice.builders.SliceAction! createToggle(androidx.remotecallback.RemoteCallback, CharSequence, boolean);
method public static androidx.slice.builders.SliceAction! createToggle(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, CharSequence, boolean);
@@ -156,7 +154,7 @@
method public android.app.PendingIntent getAction();
method public CharSequence? getContentDescription();
method public androidx.core.graphics.drawable.IconCompat? getIcon();
- method @androidx.slice.builders.ListBuilder.ImageMode public int getImageMode();
+ method public int getImageMode();
method public int getPriority();
method public CharSequence getTitle();
method public boolean isActivity();
@@ -174,80 +172,3 @@
}
-package androidx.slice.builders.impl {
-
-
- public static final class GridRowBuilderListV1Impl.CellBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void fillFrom(androidx.slice.builders.GridRowBuilder.CellBuilder!);
- }
-
-
-
-
- public static class ListBuilderImpl.HeaderBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
- public static class ListBuilderImpl.InputRangeBuilderImpl extends androidx.slice.builders.impl.ListBuilderImpl.RangeBuilderImpl {
- }
-
- public static class ListBuilderImpl.RangeBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void apply(androidx.slice.Slice.Builder!);
- field protected CharSequence! mContentDescr;
- field protected int mLayoutDir;
- field protected int mMax;
- field protected int mMin;
- field protected androidx.slice.builders.SliceAction! mPrimaryAction;
- field protected CharSequence! mSubtitle;
- field protected CharSequence! mTitle;
- field protected int mValue;
- field protected boolean mValueSet;
- }
-
- public static class ListBuilderImpl.RowBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method protected void addEndItem(long);
- method public void apply(androidx.slice.Slice.Builder!);
- method protected void setSubtitle(CharSequence!);
- method protected void setTitleItem(androidx.core.graphics.drawable.IconCompat!, int);
- }
-
-
- public static final class MessagingBasicImpl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingBasicImpl.MessageBuilder(androidx.slice.builders.impl.MessagingBasicImpl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
- public static interface MessagingBuilder.MessageBuilder {
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- }
-
-
- public static final class MessagingListV1Impl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingListV1Impl.MessageBuilder(androidx.slice.builders.impl.MessagingListV1Impl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
- public static final class MessagingV1Impl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingV1Impl.MessageBuilder(androidx.slice.builders.impl.MessagingV1Impl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
-
-
-
-}
-
diff --git a/slices/builders/api/restricted_current.txt b/slices/builders/api/restricted_current.txt
index 17a84fa..b666f762b 100644
--- a/slices/builders/api/restricted_current.txt
+++ b/slices/builders/api/restricted_current.txt
@@ -5,7 +5,7 @@
ctor public GridRowBuilder();
method public androidx.slice.builders.GridRowBuilder addCell(androidx.slice.builders.GridRowBuilder.CellBuilder);
method public androidx.slice.builders.GridRowBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.GridRowBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.GridRowBuilder setLayoutDirection(int);
method public androidx.slice.builders.GridRowBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.GridRowBuilder setSeeMoreAction(android.app.PendingIntent);
method public androidx.slice.builders.GridRowBuilder setSeeMoreAction(androidx.remotecallback.RemoteCallback);
@@ -14,8 +14,8 @@
public static class GridRowBuilder.CellBuilder {
ctor public GridRowBuilder.CellBuilder();
- method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.GridRowBuilder.CellBuilder addImage(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addText(CharSequence);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addText(CharSequence?, boolean);
method public androidx.slice.builders.GridRowBuilder.CellBuilder addTitleText(CharSequence);
@@ -38,7 +38,7 @@
method public androidx.slice.builders.ListBuilder setHeader(androidx.slice.builders.ListBuilder.HeaderBuilder);
method public androidx.slice.builders.ListBuilder setIsError(boolean);
method public androidx.slice.builders.ListBuilder setKeywords(java.util.Set<java.lang.String!>!);
- method public androidx.slice.builders.ListBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder setSeeMoreAction(android.app.PendingIntent);
method public androidx.slice.builders.ListBuilder setSeeMoreAction(androidx.remotecallback.RemoteCallback);
method public androidx.slice.builders.ListBuilder setSeeMoreRow(androidx.slice.builders.ListBuilder.RowBuilder);
@@ -53,7 +53,7 @@
ctor public ListBuilder.HeaderBuilder();
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public ListBuilder.HeaderBuilder(android.net.Uri!);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.HeaderBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.HeaderBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setSubtitle(CharSequence);
method public androidx.slice.builders.ListBuilder.HeaderBuilder setSubtitle(CharSequence, boolean);
@@ -63,13 +63,12 @@
method public androidx.slice.builders.ListBuilder.HeaderBuilder setTitle(CharSequence, boolean);
}
-
public static class ListBuilder.InputRangeBuilder {
ctor public ListBuilder.InputRangeBuilder();
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setContentDescription(CharSequence);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setInputAction(android.app.PendingIntent);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setInputAction(androidx.remotecallback.RemoteCallback);
- method public androidx.slice.builders.ListBuilder.InputRangeBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.InputRangeBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setMax(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setMin(int);
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
@@ -79,11 +78,10 @@
method public androidx.slice.builders.ListBuilder.InputRangeBuilder setValue(int);
}
-
public static class ListBuilder.RangeBuilder {
ctor public ListBuilder.RangeBuilder();
method public androidx.slice.builders.ListBuilder.RangeBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.RangeBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.RangeBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.RangeBuilder setMax(int);
method public androidx.slice.builders.ListBuilder.RangeBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RangeBuilder setSubtitle(CharSequence);
@@ -95,20 +93,20 @@
ctor public ListBuilder.RowBuilder();
ctor public ListBuilder.RowBuilder(android.net.Uri!);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(long);
- method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder addEndItem(androidx.slice.builders.SliceAction, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setContentDescription(CharSequence);
- method public androidx.slice.builders.ListBuilder.RowBuilder setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder setLayoutDirection(int);
method public androidx.slice.builders.ListBuilder.RowBuilder setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder setSubtitle(CharSequence);
method public androidx.slice.builders.ListBuilder.RowBuilder setSubtitle(CharSequence?, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitle(CharSequence);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitle(CharSequence?, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(long);
- method public androidx.slice.builders.ListBuilder.RowBuilder! setTitleItem(androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int);
- method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.core.graphics.drawable.IconCompat?, @androidx.slice.builders.ListBuilder.ImageMode int, boolean);
+ method public androidx.slice.builders.ListBuilder.RowBuilder! setTitleItem(androidx.core.graphics.drawable.IconCompat, int);
+ method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.core.graphics.drawable.IconCompat?, int, boolean);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.ListBuilder.RowBuilder setTitleItem(androidx.slice.builders.SliceAction, boolean);
}
@@ -134,7 +132,7 @@
method public androidx.slice.builders.SelectionBuilder! setContentDescription(CharSequence?);
method public androidx.slice.builders.SelectionBuilder! setInputAction(android.app.PendingIntent);
method public androidx.slice.builders.SelectionBuilder! setInputAction(androidx.remotecallback.RemoteCallback);
- method public androidx.slice.builders.SelectionBuilder! setLayoutDirection(@androidx.slice.builders.ListBuilder.LayoutDirection int);
+ method public androidx.slice.builders.SelectionBuilder! setLayoutDirection(int);
method public androidx.slice.builders.SelectionBuilder! setPrimaryAction(androidx.slice.builders.SliceAction);
method public androidx.slice.builders.SelectionBuilder! setSelectedOption(String!);
method public androidx.slice.builders.SelectionBuilder! setSubtitle(CharSequence?);
@@ -142,13 +140,13 @@
}
@RequiresApi(19) public class SliceAction implements androidx.slice.core.SliceAction {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, CharSequence, boolean);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceAction(android.app.PendingIntent, CharSequence, boolean);
- method public static androidx.slice.builders.SliceAction! create(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! create(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! createDeeplink(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
- method public static androidx.slice.builders.SliceAction! createDeeplink(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, @androidx.slice.builders.ListBuilder.ImageMode int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! create(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! create(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! createDeeplink(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
+ method public static androidx.slice.builders.SliceAction! createDeeplink(androidx.remotecallback.RemoteCallback, androidx.core.graphics.drawable.IconCompat, int, CharSequence);
method public static androidx.slice.builders.SliceAction! createToggle(android.app.PendingIntent, CharSequence, boolean);
method public static androidx.slice.builders.SliceAction! createToggle(androidx.remotecallback.RemoteCallback, CharSequence, boolean);
method public static androidx.slice.builders.SliceAction! createToggle(android.app.PendingIntent, androidx.core.graphics.drawable.IconCompat, CharSequence, boolean);
@@ -156,7 +154,7 @@
method public android.app.PendingIntent getAction();
method public CharSequence? getContentDescription();
method public androidx.core.graphics.drawable.IconCompat? getIcon();
- method @androidx.slice.builders.ListBuilder.ImageMode public int getImageMode();
+ method public int getImageMode();
method public int getPriority();
method public CharSequence getTitle();
method public boolean isActivity();
@@ -174,80 +172,3 @@
}
-package androidx.slice.builders.impl {
-
-
- public static final class GridRowBuilderListV1Impl.CellBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void fillFrom(androidx.slice.builders.GridRowBuilder.CellBuilder!);
- }
-
-
-
-
- public static class ListBuilderImpl.HeaderBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
- public static class ListBuilderImpl.InputRangeBuilderImpl extends androidx.slice.builders.impl.ListBuilderImpl.RangeBuilderImpl {
- }
-
- public static class ListBuilderImpl.RangeBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method public void apply(androidx.slice.Slice.Builder!);
- field protected CharSequence! mContentDescr;
- field protected int mLayoutDir;
- field protected int mMax;
- field protected int mMin;
- field protected androidx.slice.builders.SliceAction! mPrimaryAction;
- field protected CharSequence! mSubtitle;
- field protected CharSequence! mTitle;
- field protected int mValue;
- field protected boolean mValueSet;
- }
-
- public static class ListBuilderImpl.RowBuilderImpl extends androidx.slice.builders.impl.TemplateBuilderImpl {
- method protected void addEndItem(long);
- method public void apply(androidx.slice.Slice.Builder!);
- method protected void setSubtitle(CharSequence!);
- method protected void setTitleItem(androidx.core.graphics.drawable.IconCompat!, int);
- }
-
-
- public static final class MessagingBasicImpl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingBasicImpl.MessageBuilder(androidx.slice.builders.impl.MessagingBasicImpl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
- public static interface MessagingBuilder.MessageBuilder {
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- }
-
-
- public static final class MessagingListV1Impl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingListV1Impl.MessageBuilder(androidx.slice.builders.impl.MessagingListV1Impl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
- public static final class MessagingV1Impl.MessageBuilder extends androidx.slice.builders.impl.TemplateBuilderImpl implements androidx.slice.builders.impl.MessagingBuilder.MessageBuilder {
- ctor public MessagingV1Impl.MessageBuilder(androidx.slice.builders.impl.MessagingV1Impl!);
- method @RequiresApi(23) public void addSource(android.graphics.drawable.Icon!);
- method public void addText(CharSequence!);
- method public void addTimestamp(long);
- method public void apply(androidx.slice.Slice.Builder!);
- }
-
-
-
-
-
-}
-
diff --git a/slices/builders/ktx/api/restricted_1.0.0-alpha08.txt b/slices/builders/ktx/api/restricted_1.0.0-alpha08.txt
index 9558146..d1c4426 100644
--- a/slices/builders/ktx/api/restricted_1.0.0-alpha08.txt
+++ b/slices/builders/ktx/api/restricted_1.0.0-alpha08.txt
@@ -1,11 +1,11 @@
// Signature format: 3.0
package androidx.slice.builders {
- @androidx.slice.builders.SliceMarker public final class CellBuilderDsl extends androidx.slice.builders.GridRowBuilder.CellBuilder {
+ public final class CellBuilderDsl extends androidx.slice.builders.GridRowBuilder.CellBuilder {
ctor public CellBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class GridRowBuilderDsl extends androidx.slice.builders.GridRowBuilder {
+ public final class GridRowBuilderDsl extends androidx.slice.builders.GridRowBuilder {
ctor public GridRowBuilderDsl();
}
@@ -15,15 +15,15 @@
method public static inline androidx.slice.builders.GridRowBuilder seeMoreCell(androidx.slice.builders.GridRowBuilderDsl, kotlin.jvm.functions.Function1<? super androidx.slice.builders.CellBuilderDsl,kotlin.Unit> buildCell);
}
- @androidx.slice.builders.SliceMarker public final class HeaderBuilderDsl extends androidx.slice.builders.ListBuilder.HeaderBuilder {
+ public final class HeaderBuilderDsl extends androidx.slice.builders.ListBuilder.HeaderBuilder {
ctor public HeaderBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class InputRangeBuilderDsl extends androidx.slice.builders.ListBuilder.InputRangeBuilder {
+ public final class InputRangeBuilderDsl extends androidx.slice.builders.ListBuilder.InputRangeBuilder {
ctor public InputRangeBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class ListBuilderDsl extends androidx.slice.builders.ListBuilder {
+ public final class ListBuilderDsl extends androidx.slice.builders.ListBuilder {
ctor public ListBuilderDsl(android.content.Context context, android.net.Uri uri, long ttl);
}
@@ -40,14 +40,13 @@
method public static androidx.slice.builders.SliceAction toggleSliceAction(android.app.PendingIntent pendingIntent, androidx.core.graphics.drawable.IconCompat? icon = null, CharSequence title, boolean isChecked);
}
- @androidx.slice.builders.SliceMarker public final class RangeBuilderDsl extends androidx.slice.builders.ListBuilder.RangeBuilder {
+ public final class RangeBuilderDsl extends androidx.slice.builders.ListBuilder.RangeBuilder {
ctor public RangeBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class RowBuilderDsl extends androidx.slice.builders.ListBuilder.RowBuilder {
+ public final class RowBuilderDsl extends androidx.slice.builders.ListBuilder.RowBuilder {
ctor public RowBuilderDsl();
}
-
}
diff --git a/slices/builders/ktx/api/restricted_current.txt b/slices/builders/ktx/api/restricted_current.txt
index 9558146..d1c4426 100644
--- a/slices/builders/ktx/api/restricted_current.txt
+++ b/slices/builders/ktx/api/restricted_current.txt
@@ -1,11 +1,11 @@
// Signature format: 3.0
package androidx.slice.builders {
- @androidx.slice.builders.SliceMarker public final class CellBuilderDsl extends androidx.slice.builders.GridRowBuilder.CellBuilder {
+ public final class CellBuilderDsl extends androidx.slice.builders.GridRowBuilder.CellBuilder {
ctor public CellBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class GridRowBuilderDsl extends androidx.slice.builders.GridRowBuilder {
+ public final class GridRowBuilderDsl extends androidx.slice.builders.GridRowBuilder {
ctor public GridRowBuilderDsl();
}
@@ -15,15 +15,15 @@
method public static inline androidx.slice.builders.GridRowBuilder seeMoreCell(androidx.slice.builders.GridRowBuilderDsl, kotlin.jvm.functions.Function1<? super androidx.slice.builders.CellBuilderDsl,kotlin.Unit> buildCell);
}
- @androidx.slice.builders.SliceMarker public final class HeaderBuilderDsl extends androidx.slice.builders.ListBuilder.HeaderBuilder {
+ public final class HeaderBuilderDsl extends androidx.slice.builders.ListBuilder.HeaderBuilder {
ctor public HeaderBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class InputRangeBuilderDsl extends androidx.slice.builders.ListBuilder.InputRangeBuilder {
+ public final class InputRangeBuilderDsl extends androidx.slice.builders.ListBuilder.InputRangeBuilder {
ctor public InputRangeBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class ListBuilderDsl extends androidx.slice.builders.ListBuilder {
+ public final class ListBuilderDsl extends androidx.slice.builders.ListBuilder {
ctor public ListBuilderDsl(android.content.Context context, android.net.Uri uri, long ttl);
}
@@ -40,14 +40,13 @@
method public static androidx.slice.builders.SliceAction toggleSliceAction(android.app.PendingIntent pendingIntent, androidx.core.graphics.drawable.IconCompat? icon = null, CharSequence title, boolean isChecked);
}
- @androidx.slice.builders.SliceMarker public final class RangeBuilderDsl extends androidx.slice.builders.ListBuilder.RangeBuilder {
+ public final class RangeBuilderDsl extends androidx.slice.builders.ListBuilder.RangeBuilder {
ctor public RangeBuilderDsl();
}
- @androidx.slice.builders.SliceMarker public final class RowBuilderDsl extends androidx.slice.builders.ListBuilder.RowBuilder {
+ public final class RowBuilderDsl extends androidx.slice.builders.ListBuilder.RowBuilder {
ctor public RowBuilderDsl();
}
-
}
diff --git a/slices/core/api/restricted_1.1.0-alpha01.txt b/slices/core/api/restricted_1.1.0-alpha01.txt
index ea931d8..452751e 100644
--- a/slices/core/api/restricted_1.1.0-alpha01.txt
+++ b/slices/core/api/restricted_1.1.0-alpha01.txt
@@ -7,11 +7,11 @@
@RequiresApi(19) public final class Slice extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.versionedparcelable.VersionedParcelable {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.slice.Slice? bindSlice(android.content.Context!, android.net.Uri, java.util.Set<androidx.slice.SliceSpec!>!);
- method @androidx.slice.Slice.SliceHint public java.util.List<java.lang.String!>! getHints();
+ method public java.util.List<java.lang.String!>! getHints();
method public java.util.List<androidx.slice.SliceItem!>! getItems();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.SliceSpec? getSpec();
method public android.net.Uri! getUri();
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean hasHint(@androidx.slice.Slice.SliceHint String!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean hasHint(String!);
field public static final String EXTRA_SELECTION = "android.app.slice.extra.SELECTION";
}
@@ -20,46 +20,45 @@
ctor public Slice.Builder(androidx.slice.Slice.Builder);
method public androidx.slice.Slice.Builder! addAction(android.app.PendingIntent, androidx.slice.Slice, String?);
method public androidx.slice.Slice.Builder! addAction(androidx.slice.SliceItem.ActionHandler, androidx.slice.Slice, String?);
- method public androidx.slice.Slice.Builder! addHints(@androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addHints(@androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method public androidx.slice.Slice.Builder! addInt(int, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addInt(int, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addHints(java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addHints(java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addInt(int, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addInt(int, String?, java.util.List<java.lang.String!>!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public androidx.slice.Slice.Builder! addItem(androidx.slice.SliceItem!);
- method public androidx.slice.Slice.Builder! addLong(long, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addLong(long, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addLong(long, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addLong(long, String?, java.util.List<java.lang.String!>!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, java.util.List<java.lang.String!>!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, java.lang.String!...);
method public androidx.slice.Slice.Builder! addSubSlice(androidx.slice.Slice);
method public androidx.slice.Slice.Builder! addSubSlice(androidx.slice.Slice, String!);
- method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @Deprecated public androidx.slice.Slice.Builder! addTimestamp(long, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addTimestamp(long, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, java.util.List<java.lang.String!>!);
+ method @Deprecated public androidx.slice.Slice.Builder! addTimestamp(long, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addTimestamp(long, String?, java.util.List<java.lang.String!>!);
method public androidx.slice.Slice! build();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! setSpec(androidx.slice.SliceSpec!);
}
-
@RequiresApi(28) public class SliceConvert {
method public static android.app.slice.Slice! unwrap(androidx.slice.Slice!);
method public static androidx.slice.Slice! wrap(android.app.slice.Slice!, android.content.Context!);
}
@RequiresApi(19) public final class SliceItem extends androidx.versionedparcelable.CustomVersionedParcelable {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, @androidx.slice.SliceItem.SliceType String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, @androidx.slice.SliceItem.SliceType String!, String!, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, String!, String!, String![]!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, String!, String!, java.util.List<java.lang.String!>!);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem();
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(android.app.PendingIntent!, androidx.slice.Slice!, String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(androidx.slice.SliceItem.ActionHandler!, androidx.slice.Slice!, String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void addHint(@androidx.slice.Slice.SliceHint String!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(android.app.PendingIntent!, androidx.slice.Slice!, String!, String!, String![]!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(androidx.slice.SliceItem.ActionHandler!, androidx.slice.Slice!, String!, String!, String![]!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void addHint(String!);
method public static android.text.ParcelableSpan createSensitiveSpan();
method public void fireAction(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean fireActionInternal(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
method public android.app.PendingIntent! getAction();
- method @androidx.slice.SliceItem.SliceType public String! getFormat();
- method @androidx.slice.Slice.SliceHint public java.util.List<java.lang.String!> getHints();
+ method public String! getFormat();
+ method public java.util.List<java.lang.String!> getHints();
method public androidx.core.graphics.drawable.IconCompat! getIcon();
method public int getInt();
method public long getLong();
@@ -69,26 +68,14 @@
method public androidx.slice.Slice! getSlice();
method public String! getSubType();
method public CharSequence! getText();
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public boolean hasAnyHints(@androidx.slice.Slice.SliceHint java.lang.String!...);
- method public boolean hasHint(@androidx.slice.Slice.SliceHint String!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public boolean hasAnyHints(java.lang.String!...);
+ method public boolean hasHint(String!);
}
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static interface SliceItem.ActionHandler {
method public void onAction(androidx.slice.SliceItem!, android.content.Context!, android.content.Intent!);
}
-
-
- public static interface SliceItemHolder.HolderHandler {
- method public void handle(androidx.slice.SliceItemHolder!, String!);
- }
-
- public static class SliceItemHolder.SliceItemPool {
- ctor public SliceItemHolder.SliceItemPool();
- method public androidx.slice.SliceItemHolder! get();
- method public void release(androidx.slice.SliceItemHolder!);
- }
-
@RequiresApi(19) public abstract class SliceManager {
method public abstract int checkSlicePermission(android.net.Uri, int, int);
method public static androidx.slice.SliceManager getInstance(android.content.Context);
@@ -108,6 +95,7 @@
method @RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static java.util.Set<androidx.slice.SliceSpec!>! getCurrentSpecs();
method @RequiresApi(19) public java.util.List<android.net.Uri!> getPinnedSlices();
method public final String! getType(android.net.Uri!);
+ method @RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) public Object! getWrapper();
method public final android.net.Uri? insert(android.net.Uri, android.content.ContentValues?);
method @RequiresApi(19) public abstract androidx.slice.Slice! onBindSlice(android.net.Uri!);
method public final boolean onCreate();
@@ -152,16 +140,6 @@
package androidx.slice.compat {
-
- public static class CompatPermissionManager.PermissionState {
- method public String! getKey();
- method public boolean hasAccess(java.util.List<java.lang.String!>!);
- method public boolean hasAllPermissions();
- method public java.util.Set<java.lang.String!>! toPersistable();
- }
-
-
-
@RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class SliceProviderCompat {
ctor public SliceProviderCompat(androidx.slice.SliceProvider!, androidx.slice.compat.CompatPermissionManager!, android.content.Context!);
method public static void addSpecs(android.os.Bundle!, java.util.Set<androidx.slice.SliceSpec!>!);
@@ -204,12 +182,6 @@
field public static final String PERMS_PREFIX = "slice_perms_";
}
-
- @RequiresApi(28) public static class SliceProviderWrapperContainer.SliceProviderWrapper extends android.app.slice.SliceProvider {
- ctor public SliceProviderWrapperContainer.SliceProviderWrapper(androidx.slice.SliceProvider!, String![]!);
- method public boolean onCreate();
- }
-
}
package androidx.slice.core {
diff --git a/slices/core/api/restricted_1.1.0-alpha02.txt b/slices/core/api/restricted_1.1.0-alpha02.txt
index a074e4a..0d361e3 100644
--- a/slices/core/api/restricted_1.1.0-alpha02.txt
+++ b/slices/core/api/restricted_1.1.0-alpha02.txt
@@ -7,11 +7,11 @@
@RequiresApi(19) public final class Slice extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.versionedparcelable.VersionedParcelable {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.slice.Slice? bindSlice(android.content.Context!, android.net.Uri, java.util.Set<androidx.slice.SliceSpec!>!);
- method @androidx.slice.Slice.SliceHint public java.util.List<java.lang.String!>! getHints();
+ method public java.util.List<java.lang.String!>! getHints();
method public java.util.List<androidx.slice.SliceItem!>! getItems();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.SliceSpec? getSpec();
method public android.net.Uri! getUri();
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean hasHint(@androidx.slice.Slice.SliceHint String!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean hasHint(String!);
field public static final String EXTRA_SELECTION = "android.app.slice.extra.SELECTION";
}
@@ -20,46 +20,45 @@
ctor public Slice.Builder(androidx.slice.Slice.Builder);
method public androidx.slice.Slice.Builder! addAction(android.app.PendingIntent, androidx.slice.Slice, String?);
method public androidx.slice.Slice.Builder! addAction(androidx.slice.SliceItem.ActionHandler, androidx.slice.Slice, String?);
- method public androidx.slice.Slice.Builder! addHints(@androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addHints(@androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method public androidx.slice.Slice.Builder! addInt(int, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addInt(int, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addHints(java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addHints(java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addInt(int, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addInt(int, String?, java.util.List<java.lang.String!>!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public androidx.slice.Slice.Builder! addItem(androidx.slice.SliceItem!);
- method public androidx.slice.Slice.Builder! addLong(long, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addLong(long, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addLong(long, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addLong(long, String?, java.util.List<java.lang.String!>!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, java.util.List<java.lang.String!>!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, java.lang.String!...);
method public androidx.slice.Slice.Builder! addSubSlice(androidx.slice.Slice);
method public androidx.slice.Slice.Builder! addSubSlice(androidx.slice.Slice, String!);
- method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @Deprecated public androidx.slice.Slice.Builder! addTimestamp(long, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addTimestamp(long, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, java.util.List<java.lang.String!>!);
+ method @Deprecated public androidx.slice.Slice.Builder! addTimestamp(long, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addTimestamp(long, String?, java.util.List<java.lang.String!>!);
method public androidx.slice.Slice! build();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! setSpec(androidx.slice.SliceSpec!);
}
-
@RequiresApi(28) public class SliceConvert {
method public static android.app.slice.Slice! unwrap(androidx.slice.Slice!);
method public static androidx.slice.Slice! wrap(android.app.slice.Slice!, android.content.Context!);
}
@RequiresApi(19) public final class SliceItem extends androidx.versionedparcelable.CustomVersionedParcelable {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, @androidx.slice.SliceItem.SliceType String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, @androidx.slice.SliceItem.SliceType String!, String!, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, String!, String!, String![]!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, String!, String!, java.util.List<java.lang.String!>!);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem();
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(android.app.PendingIntent!, androidx.slice.Slice!, String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(androidx.slice.SliceItem.ActionHandler!, androidx.slice.Slice!, String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void addHint(@androidx.slice.Slice.SliceHint String!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(android.app.PendingIntent!, androidx.slice.Slice!, String!, String!, String![]!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(androidx.slice.SliceItem.ActionHandler!, androidx.slice.Slice!, String!, String!, String![]!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void addHint(String!);
method public static android.text.ParcelableSpan createSensitiveSpan();
method public void fireAction(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean fireActionInternal(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
method public android.app.PendingIntent! getAction();
- method @androidx.slice.SliceItem.SliceType public String! getFormat();
- method @androidx.slice.Slice.SliceHint public java.util.List<java.lang.String!> getHints();
+ method public String! getFormat();
+ method public java.util.List<java.lang.String!> getHints();
method public androidx.core.graphics.drawable.IconCompat! getIcon();
method public int getInt();
method public long getLong();
@@ -69,26 +68,14 @@
method public androidx.slice.Slice! getSlice();
method public String! getSubType();
method public CharSequence! getText();
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public boolean hasAnyHints(@androidx.slice.Slice.SliceHint java.lang.String!...);
- method public boolean hasHint(@androidx.slice.Slice.SliceHint String!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public boolean hasAnyHints(java.lang.String!...);
+ method public boolean hasHint(String!);
}
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static interface SliceItem.ActionHandler {
method public void onAction(androidx.slice.SliceItem!, android.content.Context!, android.content.Intent!);
}
-
-
- public static interface SliceItemHolder.HolderHandler {
- method public void handle(androidx.slice.SliceItemHolder!, String!);
- }
-
- public static class SliceItemHolder.SliceItemPool {
- ctor public SliceItemHolder.SliceItemPool();
- method public androidx.slice.SliceItemHolder! get();
- method public void release(androidx.slice.SliceItemHolder!);
- }
-
@RequiresApi(19) public abstract class SliceManager {
method public abstract int checkSlicePermission(android.net.Uri, int, int);
method public static androidx.slice.SliceManager getInstance(android.content.Context);
@@ -108,6 +95,7 @@
method @RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static java.util.Set<androidx.slice.SliceSpec!>? getCurrentSpecs();
method @RequiresApi(19) public java.util.List<android.net.Uri!> getPinnedSlices();
method public final String? getType(android.net.Uri);
+ method @RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) public Object? getWrapper();
method public final android.net.Uri? insert(android.net.Uri, android.content.ContentValues?);
method @RequiresApi(19) public abstract androidx.slice.Slice? onBindSlice(android.net.Uri);
method public final boolean onCreate();
@@ -146,16 +134,6 @@
package androidx.slice.compat {
-
- public static class CompatPermissionManager.PermissionState {
- method public String! getKey();
- method public boolean hasAccess(java.util.List<java.lang.String!>!);
- method public boolean hasAllPermissions();
- method public java.util.Set<java.lang.String!>! toPersistable();
- }
-
-
-
@RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class SliceProviderCompat {
ctor public SliceProviderCompat(androidx.slice.SliceProvider, androidx.slice.compat.CompatPermissionManager, android.content.Context);
method public static void addSpecs(android.os.Bundle, java.util.Set<androidx.slice.SliceSpec!>);
@@ -198,12 +176,6 @@
field public static final String PERMS_PREFIX = "slice_perms_";
}
-
- @RequiresApi(28) public static class SliceProviderWrapperContainer.SliceProviderWrapper extends android.app.slice.SliceProvider {
- ctor public SliceProviderWrapperContainer.SliceProviderWrapper(androidx.slice.SliceProvider!, String![]!);
- method public boolean onCreate();
- }
-
}
package androidx.slice.core {
diff --git a/slices/core/api/restricted_current.txt b/slices/core/api/restricted_current.txt
index a074e4a..0d361e3 100644
--- a/slices/core/api/restricted_current.txt
+++ b/slices/core/api/restricted_current.txt
@@ -7,11 +7,11 @@
@RequiresApi(19) public final class Slice extends androidx.versionedparcelable.CustomVersionedParcelable implements androidx.versionedparcelable.VersionedParcelable {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.slice.Slice? bindSlice(android.content.Context!, android.net.Uri, java.util.Set<androidx.slice.SliceSpec!>!);
- method @androidx.slice.Slice.SliceHint public java.util.List<java.lang.String!>! getHints();
+ method public java.util.List<java.lang.String!>! getHints();
method public java.util.List<androidx.slice.SliceItem!>! getItems();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.SliceSpec? getSpec();
method public android.net.Uri! getUri();
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean hasHint(@androidx.slice.Slice.SliceHint String!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean hasHint(String!);
field public static final String EXTRA_SELECTION = "android.app.slice.extra.SELECTION";
}
@@ -20,46 +20,45 @@
ctor public Slice.Builder(androidx.slice.Slice.Builder);
method public androidx.slice.Slice.Builder! addAction(android.app.PendingIntent, androidx.slice.Slice, String?);
method public androidx.slice.Slice.Builder! addAction(androidx.slice.SliceItem.ActionHandler, androidx.slice.Slice, String?);
- method public androidx.slice.Slice.Builder! addHints(@androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addHints(@androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method public androidx.slice.Slice.Builder! addInt(int, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addInt(int, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addHints(java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addHints(java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addIcon(androidx.core.graphics.drawable.IconCompat!, String?, java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addInt(int, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addInt(int, String?, java.util.List<java.lang.String!>!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public androidx.slice.Slice.Builder! addItem(androidx.slice.SliceItem!);
- method public androidx.slice.Slice.Builder! addLong(long, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addLong(long, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addLong(long, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addLong(long, String?, java.util.List<java.lang.String!>!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, java.util.List<java.lang.String!>!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! addRemoteInput(android.app.RemoteInput!, String?, java.lang.String!...);
method public androidx.slice.Slice.Builder! addSubSlice(androidx.slice.Slice);
method public androidx.slice.Slice.Builder! addSubSlice(androidx.slice.Slice, String!);
- method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
- method @Deprecated public androidx.slice.Slice.Builder! addTimestamp(long, String?, @androidx.slice.Slice.SliceHint java.lang.String!...);
- method public androidx.slice.Slice.Builder! addTimestamp(long, String?, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addText(CharSequence!, String?, java.util.List<java.lang.String!>!);
+ method @Deprecated public androidx.slice.Slice.Builder! addTimestamp(long, String?, java.lang.String!...);
+ method public androidx.slice.Slice.Builder! addTimestamp(long, String?, java.util.List<java.lang.String!>!);
method public androidx.slice.Slice! build();
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public androidx.slice.Slice.Builder! setSpec(androidx.slice.SliceSpec!);
}
-
@RequiresApi(28) public class SliceConvert {
method public static android.app.slice.Slice! unwrap(androidx.slice.Slice!);
method public static androidx.slice.Slice! wrap(android.app.slice.Slice!, android.content.Context!);
}
@RequiresApi(19) public final class SliceItem extends androidx.versionedparcelable.CustomVersionedParcelable {
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, @androidx.slice.SliceItem.SliceType String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, @androidx.slice.SliceItem.SliceType String!, String!, @androidx.slice.Slice.SliceHint java.util.List<java.lang.String!>!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, String!, String!, String![]!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(Object!, String!, String!, java.util.List<java.lang.String!>!);
ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem();
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(android.app.PendingIntent!, androidx.slice.Slice!, String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(androidx.slice.SliceItem.ActionHandler!, androidx.slice.Slice!, String!, String!, @androidx.slice.Slice.SliceHint String![]!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void addHint(@androidx.slice.Slice.SliceHint String!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(android.app.PendingIntent!, androidx.slice.Slice!, String!, String!, String![]!);
+ ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public SliceItem(androidx.slice.SliceItem.ActionHandler!, androidx.slice.Slice!, String!, String!, String![]!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public void addHint(String!);
method public static android.text.ParcelableSpan createSensitiveSpan();
method public void fireAction(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public boolean fireActionInternal(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
method public android.app.PendingIntent! getAction();
- method @androidx.slice.SliceItem.SliceType public String! getFormat();
- method @androidx.slice.Slice.SliceHint public java.util.List<java.lang.String!> getHints();
+ method public String! getFormat();
+ method public java.util.List<java.lang.String!> getHints();
method public androidx.core.graphics.drawable.IconCompat! getIcon();
method public int getInt();
method public long getLong();
@@ -69,26 +68,14 @@
method public androidx.slice.Slice! getSlice();
method public String! getSubType();
method public CharSequence! getText();
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public boolean hasAnyHints(@androidx.slice.Slice.SliceHint java.lang.String!...);
- method public boolean hasHint(@androidx.slice.Slice.SliceHint String!);
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public boolean hasAnyHints(java.lang.String!...);
+ method public boolean hasHint(String!);
}
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static interface SliceItem.ActionHandler {
method public void onAction(androidx.slice.SliceItem!, android.content.Context!, android.content.Intent!);
}
-
-
- public static interface SliceItemHolder.HolderHandler {
- method public void handle(androidx.slice.SliceItemHolder!, String!);
- }
-
- public static class SliceItemHolder.SliceItemPool {
- ctor public SliceItemHolder.SliceItemPool();
- method public androidx.slice.SliceItemHolder! get();
- method public void release(androidx.slice.SliceItemHolder!);
- }
-
@RequiresApi(19) public abstract class SliceManager {
method public abstract int checkSlicePermission(android.net.Uri, int, int);
method public static androidx.slice.SliceManager getInstance(android.content.Context);
@@ -108,6 +95,7 @@
method @RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static java.util.Set<androidx.slice.SliceSpec!>? getCurrentSpecs();
method @RequiresApi(19) public java.util.List<android.net.Uri!> getPinnedSlices();
method public final String? getType(android.net.Uri);
+ method @RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY) public Object? getWrapper();
method public final android.net.Uri? insert(android.net.Uri, android.content.ContentValues?);
method @RequiresApi(19) public abstract androidx.slice.Slice? onBindSlice(android.net.Uri);
method public final boolean onCreate();
@@ -146,16 +134,6 @@
package androidx.slice.compat {
-
- public static class CompatPermissionManager.PermissionState {
- method public String! getKey();
- method public boolean hasAccess(java.util.List<java.lang.String!>!);
- method public boolean hasAllPermissions();
- method public java.util.Set<java.lang.String!>! toPersistable();
- }
-
-
-
@RequiresApi(19) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class SliceProviderCompat {
ctor public SliceProviderCompat(androidx.slice.SliceProvider, androidx.slice.compat.CompatPermissionManager, android.content.Context);
method public static void addSpecs(android.os.Bundle, java.util.Set<androidx.slice.SliceSpec!>);
@@ -198,12 +176,6 @@
field public static final String PERMS_PREFIX = "slice_perms_";
}
-
- @RequiresApi(28) public static class SliceProviderWrapperContainer.SliceProviderWrapper extends android.app.slice.SliceProvider {
- ctor public SliceProviderWrapperContainer.SliceProviderWrapper(androidx.slice.SliceProvider!, String![]!);
- method public boolean onCreate();
- }
-
}
package androidx.slice.core {
diff --git a/textclassifier/api/restricted_1.0.0-alpha03.txt b/textclassifier/api/restricted_1.0.0-alpha03.txt
index b28437c..bfa9d49 100644
--- a/textclassifier/api/restricted_1.0.0-alpha03.txt
+++ b/textclassifier/api/restricted_1.0.0-alpha03.txt
@@ -7,7 +7,7 @@
method @FloatRange(from=0, to=1) public float getConfidenceScore();
method public android.os.Bundle getExtras();
method public CharSequence? getTextReply();
- method @androidx.textclassifier.ConversationAction.ActionType public String getType();
+ method public String getType();
method public android.os.Bundle toBundle();
field public static final String TYPE_ADD_CONTACT = "add_contact";
field public static final String TYPE_CALL_PHONE = "call_phone";
@@ -23,9 +23,8 @@
field public static final String TYPE_VIEW_MAP = "view_map";
}
-
public static final class ConversationAction.Builder {
- ctor public ConversationAction.Builder(@androidx.textclassifier.ConversationAction.ActionType String);
+ ctor public ConversationAction.Builder(String);
method public androidx.textclassifier.ConversationAction build();
method public androidx.textclassifier.ConversationAction.Builder setAction(androidx.core.app.RemoteActionCompat?);
method public androidx.textclassifier.ConversationAction.Builder setConfidenceScore(@FloatRange(from=0, to=1) float);
@@ -64,7 +63,7 @@
method public static androidx.textclassifier.ConversationActions.Request createFromBundle(android.os.Bundle);
method public java.util.List<androidx.textclassifier.ConversationActions.Message!> getConversation();
method public android.os.Bundle getExtras();
- method @androidx.textclassifier.ConversationActions.Request.Hint public java.util.List<java.lang.String!> getHints();
+ method public java.util.List<java.lang.String!> getHints();
method @IntRange(from=0xffffffff) public int getMaxSuggestions();
method public androidx.textclassifier.TextClassifier.EntityConfig getTypeConfig();
method public android.os.Bundle toBundle();
@@ -76,33 +75,31 @@
ctor public ConversationActions.Request.Builder(java.util.List<androidx.textclassifier.ConversationActions.Message!>);
method public androidx.textclassifier.ConversationActions.Request build();
method public androidx.textclassifier.ConversationActions.Request.Builder setExtras(android.os.Bundle?);
- method public androidx.textclassifier.ConversationActions.Request.Builder setHints(@androidx.textclassifier.ConversationActions.Request.Hint java.util.List<java.lang.String!>?);
+ method public androidx.textclassifier.ConversationActions.Request.Builder setHints(java.util.List<java.lang.String!>?);
method public androidx.textclassifier.ConversationActions.Request.Builder setMaxSuggestions(@IntRange(from=0xffffffff) int);
method public androidx.textclassifier.ConversationActions.Request.Builder setTypeConfig(androidx.textclassifier.TextClassifier.EntityConfig?);
}
-
public final class ExtrasUtils {
method public static java.util.Locale? getTopLanguage(android.content.Intent?);
}
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class SelectionEvent {
method public static androidx.textclassifier.SelectionEvent createFromBundle(android.os.Bundle);
- method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, @androidx.textclassifier.SelectionEvent.ActionType int);
- method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, @androidx.textclassifier.SelectionEvent.ActionType int, androidx.textclassifier.TextClassification);
+ method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int);
+ method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int, androidx.textclassifier.TextClassification);
method public static androidx.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int);
method public static androidx.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, androidx.textclassifier.TextClassification);
method public static androidx.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, androidx.textclassifier.TextSelection);
- method public static androidx.textclassifier.SelectionEvent createSelectionStartedEvent(@androidx.textclassifier.SelectionEvent.InvocationMethod int, int);
+ method public static androidx.textclassifier.SelectionEvent createSelectionStartedEvent(int, int);
method public long getDurationSincePreviousEvent();
method public long getDurationSinceSessionStart();
method public int getEnd();
method public String getEntityType();
method public int getEventIndex();
method public long getEventTime();
- method @androidx.textclassifier.SelectionEvent.EventType public int getEventType();
- method @androidx.textclassifier.SelectionEvent.InvocationMethod public int getInvocationMethod();
+ method public int getEventType();
+ method public int getInvocationMethod();
method public String getPackageName();
method public String? getResultId();
method public androidx.textclassifier.TextClassificationSessionId? getSessionId();
@@ -111,7 +108,7 @@
method public int getStart();
method public String getWidgetType();
method public String? getWidgetVersion();
- method public static boolean isTerminal(@androidx.textclassifier.SelectionEvent.EventType int);
+ method public static boolean isTerminal(int);
method public android.os.Bundle toBundle();
field public static final int ACTION_ABANDON = 107; // 0x6b
field public static final int ACTION_COPY = 101; // 0x65
@@ -134,9 +131,6 @@
field public static final int INVOCATION_UNKNOWN = 0; // 0x0
}
-
-
-
public final class TextClassification {
method public static androidx.textclassifier.TextClassification createFromBundle(android.os.Bundle);
method public java.util.List<androidx.core.app.RemoteActionCompat!> getActions();
@@ -252,7 +246,7 @@
}
public final class TextLinks {
- method @androidx.textclassifier.TextLinks.Status public int apply(android.text.Spannable, androidx.textclassifier.TextClassifier, androidx.textclassifier.TextLinksParams);
+ method public int apply(android.text.Spannable, androidx.textclassifier.TextClassifier, androidx.textclassifier.TextLinksParams);
method public static androidx.textclassifier.TextLinks createFromBundle(android.os.Bundle);
method public android.os.Bundle getExtras();
method public java.util.Collection<androidx.textclassifier.TextLinks.TextLink!> getLinks();
@@ -267,7 +261,6 @@
field public static final int STATUS_UNKNOWN = -1; // 0xffffffff
}
-
public static final class TextLinks.Builder {
ctor public TextLinks.Builder(CharSequence);
method public androidx.textclassifier.TextLinks.Builder addLink(int, int, java.util.Map<java.lang.String!,java.lang.Float!>);
@@ -305,7 +298,6 @@
method public androidx.textclassifier.TextLinks.TextLinkSpan! createSpan(androidx.textclassifier.TextLinks.TextLinkSpanData);
}
-
public static final class TextLinks.TextLink {
method public static androidx.textclassifier.TextLinks.TextLink createFromBundle(android.os.Bundle);
method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String!);
@@ -332,7 +324,7 @@
public static final class TextLinksParams.Builder {
ctor public TextLinksParams.Builder();
method public androidx.textclassifier.TextLinksParams build();
- method public androidx.textclassifier.TextLinksParams.Builder setApplyStrategy(@androidx.textclassifier.TextLinks.ApplyStrategy int);
+ method public androidx.textclassifier.TextLinksParams.Builder setApplyStrategy(int);
method public androidx.textclassifier.TextLinksParams.Builder setDefaultLocales(androidx.core.os.LocaleListCompat?);
method public androidx.textclassifier.TextLinksParams.Builder setEntityConfig(androidx.textclassifier.TextClassifier.EntityConfig?);
method public androidx.textclassifier.TextLinksParams.Builder setReferenceTime(Long?);
diff --git a/textclassifier/api/restricted_current.txt b/textclassifier/api/restricted_current.txt
index b28437c..bfa9d49 100644
--- a/textclassifier/api/restricted_current.txt
+++ b/textclassifier/api/restricted_current.txt
@@ -7,7 +7,7 @@
method @FloatRange(from=0, to=1) public float getConfidenceScore();
method public android.os.Bundle getExtras();
method public CharSequence? getTextReply();
- method @androidx.textclassifier.ConversationAction.ActionType public String getType();
+ method public String getType();
method public android.os.Bundle toBundle();
field public static final String TYPE_ADD_CONTACT = "add_contact";
field public static final String TYPE_CALL_PHONE = "call_phone";
@@ -23,9 +23,8 @@
field public static final String TYPE_VIEW_MAP = "view_map";
}
-
public static final class ConversationAction.Builder {
- ctor public ConversationAction.Builder(@androidx.textclassifier.ConversationAction.ActionType String);
+ ctor public ConversationAction.Builder(String);
method public androidx.textclassifier.ConversationAction build();
method public androidx.textclassifier.ConversationAction.Builder setAction(androidx.core.app.RemoteActionCompat?);
method public androidx.textclassifier.ConversationAction.Builder setConfidenceScore(@FloatRange(from=0, to=1) float);
@@ -64,7 +63,7 @@
method public static androidx.textclassifier.ConversationActions.Request createFromBundle(android.os.Bundle);
method public java.util.List<androidx.textclassifier.ConversationActions.Message!> getConversation();
method public android.os.Bundle getExtras();
- method @androidx.textclassifier.ConversationActions.Request.Hint public java.util.List<java.lang.String!> getHints();
+ method public java.util.List<java.lang.String!> getHints();
method @IntRange(from=0xffffffff) public int getMaxSuggestions();
method public androidx.textclassifier.TextClassifier.EntityConfig getTypeConfig();
method public android.os.Bundle toBundle();
@@ -76,33 +75,31 @@
ctor public ConversationActions.Request.Builder(java.util.List<androidx.textclassifier.ConversationActions.Message!>);
method public androidx.textclassifier.ConversationActions.Request build();
method public androidx.textclassifier.ConversationActions.Request.Builder setExtras(android.os.Bundle?);
- method public androidx.textclassifier.ConversationActions.Request.Builder setHints(@androidx.textclassifier.ConversationActions.Request.Hint java.util.List<java.lang.String!>?);
+ method public androidx.textclassifier.ConversationActions.Request.Builder setHints(java.util.List<java.lang.String!>?);
method public androidx.textclassifier.ConversationActions.Request.Builder setMaxSuggestions(@IntRange(from=0xffffffff) int);
method public androidx.textclassifier.ConversationActions.Request.Builder setTypeConfig(androidx.textclassifier.TextClassifier.EntityConfig?);
}
-
public final class ExtrasUtils {
method public static java.util.Locale? getTopLanguage(android.content.Intent?);
}
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class SelectionEvent {
method public static androidx.textclassifier.SelectionEvent createFromBundle(android.os.Bundle);
- method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, @androidx.textclassifier.SelectionEvent.ActionType int);
- method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, @androidx.textclassifier.SelectionEvent.ActionType int, androidx.textclassifier.TextClassification);
+ method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int);
+ method public static androidx.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int, androidx.textclassifier.TextClassification);
method public static androidx.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int);
method public static androidx.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, androidx.textclassifier.TextClassification);
method public static androidx.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, androidx.textclassifier.TextSelection);
- method public static androidx.textclassifier.SelectionEvent createSelectionStartedEvent(@androidx.textclassifier.SelectionEvent.InvocationMethod int, int);
+ method public static androidx.textclassifier.SelectionEvent createSelectionStartedEvent(int, int);
method public long getDurationSincePreviousEvent();
method public long getDurationSinceSessionStart();
method public int getEnd();
method public String getEntityType();
method public int getEventIndex();
method public long getEventTime();
- method @androidx.textclassifier.SelectionEvent.EventType public int getEventType();
- method @androidx.textclassifier.SelectionEvent.InvocationMethod public int getInvocationMethod();
+ method public int getEventType();
+ method public int getInvocationMethod();
method public String getPackageName();
method public String? getResultId();
method public androidx.textclassifier.TextClassificationSessionId? getSessionId();
@@ -111,7 +108,7 @@
method public int getStart();
method public String getWidgetType();
method public String? getWidgetVersion();
- method public static boolean isTerminal(@androidx.textclassifier.SelectionEvent.EventType int);
+ method public static boolean isTerminal(int);
method public android.os.Bundle toBundle();
field public static final int ACTION_ABANDON = 107; // 0x6b
field public static final int ACTION_COPY = 101; // 0x65
@@ -134,9 +131,6 @@
field public static final int INVOCATION_UNKNOWN = 0; // 0x0
}
-
-
-
public final class TextClassification {
method public static androidx.textclassifier.TextClassification createFromBundle(android.os.Bundle);
method public java.util.List<androidx.core.app.RemoteActionCompat!> getActions();
@@ -252,7 +246,7 @@
}
public final class TextLinks {
- method @androidx.textclassifier.TextLinks.Status public int apply(android.text.Spannable, androidx.textclassifier.TextClassifier, androidx.textclassifier.TextLinksParams);
+ method public int apply(android.text.Spannable, androidx.textclassifier.TextClassifier, androidx.textclassifier.TextLinksParams);
method public static androidx.textclassifier.TextLinks createFromBundle(android.os.Bundle);
method public android.os.Bundle getExtras();
method public java.util.Collection<androidx.textclassifier.TextLinks.TextLink!> getLinks();
@@ -267,7 +261,6 @@
field public static final int STATUS_UNKNOWN = -1; // 0xffffffff
}
-
public static final class TextLinks.Builder {
ctor public TextLinks.Builder(CharSequence);
method public androidx.textclassifier.TextLinks.Builder addLink(int, int, java.util.Map<java.lang.String!,java.lang.Float!>);
@@ -305,7 +298,6 @@
method public androidx.textclassifier.TextLinks.TextLinkSpan! createSpan(androidx.textclassifier.TextLinks.TextLinkSpanData);
}
-
public static final class TextLinks.TextLink {
method public static androidx.textclassifier.TextLinks.TextLink createFromBundle(android.os.Bundle);
method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String!);
@@ -332,7 +324,7 @@
public static final class TextLinksParams.Builder {
ctor public TextLinksParams.Builder();
method public androidx.textclassifier.TextLinksParams build();
- method public androidx.textclassifier.TextLinksParams.Builder setApplyStrategy(@androidx.textclassifier.TextLinks.ApplyStrategy int);
+ method public androidx.textclassifier.TextLinksParams.Builder setApplyStrategy(int);
method public androidx.textclassifier.TextLinksParams.Builder setDefaultLocales(androidx.core.os.LocaleListCompat?);
method public androidx.textclassifier.TextLinksParams.Builder setEntityConfig(androidx.textclassifier.TextClassifier.EntityConfig?);
method public androidx.textclassifier.TextLinksParams.Builder setReferenceTime(Long?);
diff --git a/tv-provider/api/restricted_1.1.0-alpha01.txt b/tv-provider/api/restricted_1.1.0-alpha01.txt
index f4730b4..897bdb5 100644
--- a/tv-provider/api/restricted_1.1.0-alpha01.txt
+++ b/tv-provider/api/restricted_1.1.0-alpha01.txt
@@ -1,89 +1,6 @@
// Signature format: 3.0
package androidx.tvprovider.media.tv {
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.ASPECT_RATIO_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_16_9, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_3_2, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_4_3, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_1_1, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_2_3, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_MOVIE_POSTER}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.AspectRatio {
- }
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.AVAILABILITY_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_AVAILABLE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_FREE_WITH_SUBSCRIPTION, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_PAID_CONTENT, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_PURCHASED, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_FREE}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.Availability {
- }
-
- public abstract static class BasePreviewProgram.Builder<T extends androidx.tvprovider.media.tv.BasePreviewProgram.Builder> extends androidx.tvprovider.media.tv.BaseProgram.Builder<T> {
- ctor public BasePreviewProgram.Builder();
- ctor public BasePreviewProgram.Builder(androidx.tvprovider.media.tv.BasePreviewProgram!);
- method public T! setAuthor(String!);
- method public T! setAvailability(@androidx.tvprovider.media.tv.BasePreviewProgram.Availability int);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public T! setBrowsable(boolean);
- method public T! setContentId(String!);
- method public T! setDurationMillis(int);
- method public T! setEndTimeUtcMillis(long);
- method public T! setGenre(String!);
- method public T! setIntent(android.content.Intent!);
- method public T! setIntentUri(android.net.Uri!);
- method public T! setInteractionCount(long);
- method public T! setInteractionType(@androidx.tvprovider.media.tv.BasePreviewProgram.InteractionType int);
- method public T! setInternalProviderId(String!);
- method public T! setItemCount(int);
- method public T! setLastPlaybackPositionMillis(int);
- method public T! setLive(boolean);
- method public T! setLogoContentDescription(String!);
- method public T! setLogoUri(android.net.Uri!);
- method public T! setOfferPrice(String!);
- method public T! setPosterArtAspectRatio(@androidx.tvprovider.media.tv.BasePreviewProgram.AspectRatio int);
- method public T! setPreviewAudioUri(android.net.Uri!);
- method public T! setPreviewVideoUri(android.net.Uri!);
- method public T! setReleaseDate(String!);
- method public T! setReleaseDate(java.util.Date!);
- method public T! setStartTimeUtcMillis(long);
- method public T! setStartingPrice(String!);
- method public T! setThumbnailAspectRatio(@androidx.tvprovider.media.tv.BasePreviewProgram.AspectRatio int);
- method public T! setTransient(boolean);
- method public T! setTvSeriesItemType(@androidx.tvprovider.media.tv.BasePreviewProgram.TvSeriesItemType int);
- method public T! setType(@androidx.tvprovider.media.tv.BasePreviewProgram.Type int);
- }
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.INTERACTION_TYPE_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_VIEWS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_LISTENS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_FOLLOWERS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_FANS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_LIKES, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_THUMBS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_VIEWERS}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.InteractionType {
- }
-
- @IntDef({androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TV_SERIES_ITEM_TYPE_EPISODE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TV_SERIES_ITEM_TYPE_CHAPTER}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.TvSeriesItemType {
- }
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.TYPE_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_MOVIE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TV_SERIES, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TV_SEASON, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TV_EPISODE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_CLIP, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_EVENT, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_CHANNEL, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TRACK, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_ALBUM, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_ARTIST, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_PLAYLIST, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_STATION, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_GAME}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.Type {
- }
-
-
- public abstract static class BaseProgram.Builder<T extends androidx.tvprovider.media.tv.BaseProgram.Builder> {
- ctor public BaseProgram.Builder();
- ctor public BaseProgram.Builder(androidx.tvprovider.media.tv.BaseProgram!);
- method public T! setAudioLanguages(String![]!);
- method public T! setCanonicalGenres(@androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre String![]!);
- method public T! setContentRatings(android.media.tv.TvContentRating![]!);
- method public T! setDescription(String!);
- method public T! setEpisodeNumber(int);
- method public T! setEpisodeNumber(String!, int);
- method public T! setEpisodeTitle(String!);
- method public T! setId(long);
- method public T! setInternalProviderData(byte[]!);
- method public T! setInternalProviderFlag1(long);
- method public T! setInternalProviderFlag2(long);
- method public T! setInternalProviderFlag3(long);
- method public T! setInternalProviderFlag4(long);
- method public T! setLongDescription(String!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public T! setPackageName(String!);
- method public T! setPosterArtUri(android.net.Uri!);
- method public T! setReviewRating(String!);
- method public T! setReviewRatingStyle(int);
- method public T! setSearchable(boolean);
- method public T! setSeasonNumber(int);
- method public T! setSeasonNumber(String!, int);
- method public T! setSeasonTitle(String!);
- method public T! setThumbnailUri(android.net.Uri!);
- method public T! setTitle(String!);
- method public T! setVideoHeight(int);
- method public T! setVideoWidth(int);
- field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected android.content.ContentValues! mValues;
- }
-
public final class Channel {
method public static androidx.tvprovider.media.tv.Channel! fromCursor(android.database.Cursor!);
method public int getAppLinkColor();
@@ -246,15 +163,69 @@
method public void updateWatchNextProgram(androidx.tvprovider.media.tv.WatchNextProgram, long);
}
- public final class PreviewProgram extends androidx.tvprovider.media.tv.BasePreviewProgram {
+ public final class PreviewProgram {
method public static androidx.tvprovider.media.tv.PreviewProgram! fromCursor(android.database.Cursor!);
+ method public String![]! getAudioLanguages();
+ method public String! getAuthor();
+ method public int getAvailability();
+ method public String![]! getCanonicalGenres();
method public long getChannelId();
+ method public String! getContentId();
+ method public android.media.tv.TvContentRating![]! getContentRatings();
+ method public String! getDescription();
+ method public int getDurationMillis();
+ method public long getEndTimeUtcMillis();
+ method public String! getEpisodeNumber();
+ method public String! getEpisodeTitle();
+ method public String! getGenre();
+ method public long getId();
+ method public android.content.Intent! getIntent() throws java.net.URISyntaxException;
+ method public android.net.Uri! getIntentUri();
+ method public long getInteractionCount();
+ method public int getInteractionType();
+ method public byte[]! getInternalProviderDataByteArray();
+ method public Long! getInternalProviderFlag1();
+ method public Long! getInternalProviderFlag2();
+ method public Long! getInternalProviderFlag3();
+ method public Long! getInternalProviderFlag4();
+ method public String! getInternalProviderId();
+ method public int getItemCount();
+ method public int getLastPlaybackPositionMillis();
+ method public String! getLogoContentDescription();
+ method public android.net.Uri! getLogoUri();
+ method public String! getLongDescription();
+ method public String! getOfferPrice();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public String! getPackageName();
+ method public int getPosterArtAspectRatio();
+ method public android.net.Uri! getPosterArtUri();
+ method public android.net.Uri! getPreviewAudioUri();
+ method public android.net.Uri! getPreviewVideoUri();
+ method public String! getReleaseDate();
+ method public String! getReviewRating();
+ method public int getReviewRatingStyle();
+ method public String! getSeasonNumber();
+ method public String! getSeasonTitle();
+ method public long getStartTimeUtcMillis();
+ method public String! getStartingPrice();
+ method public int getThumbnailAspectRatio();
+ method public android.net.Uri! getThumbnailUri();
+ method public String! getTitle();
+ method public int getTvSeriesItemType();
+ method public int getType();
+ method public int getVideoHeight();
+ method public int getVideoWidth();
method public int getWeight();
method public boolean hasAnyUpdatedValues(androidx.tvprovider.media.tv.PreviewProgram!);
+ method public boolean isBrowsable();
+ method public boolean isLive();
+ method public boolean isSearchable();
+ method public boolean isTransient();
+ method public android.content.ContentValues! toContentValues();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.content.ContentValues! toContentValues(boolean);
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String![]! PROJECTION;
}
- public static final class PreviewProgram.Builder extends androidx.tvprovider.media.tv.BasePreviewProgram.Builder<androidx.tvprovider.media.tv.PreviewProgram.Builder> {
+ public static final class PreviewProgram.Builder {
ctor public PreviewProgram.Builder();
ctor public PreviewProgram.Builder(androidx.tvprovider.media.tv.PreviewProgram!);
method public androidx.tvprovider.media.tv.PreviewProgram! build();
@@ -262,22 +233,47 @@
method public androidx.tvprovider.media.tv.PreviewProgram.Builder! setWeight(int);
}
- public final class Program extends androidx.tvprovider.media.tv.BaseProgram implements java.lang.Comparable<androidx.tvprovider.media.tv.Program> {
+ public final class Program implements java.lang.Comparable<androidx.tvprovider.media.tv.Program> {
method public int compareTo(androidx.tvprovider.media.tv.Program);
method public static androidx.tvprovider.media.tv.Program! fromCursor(android.database.Cursor!);
+ method public String![]! getAudioLanguages();
method public String![]! getBroadcastGenres();
+ method public String![]! getCanonicalGenres();
method public long getChannelId();
+ method public android.media.tv.TvContentRating![]! getContentRatings();
+ method public String! getDescription();
method public long getEndTimeUtcMillis();
+ method public String! getEpisodeNumber();
+ method public String! getEpisodeTitle();
+ method public long getId();
+ method public byte[]! getInternalProviderDataByteArray();
+ method public Long! getInternalProviderFlag1();
+ method public Long! getInternalProviderFlag2();
+ method public Long! getInternalProviderFlag3();
+ method public Long! getInternalProviderFlag4();
+ method public String! getLongDescription();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public String! getPackageName();
+ method public android.net.Uri! getPosterArtUri();
+ method public String! getReviewRating();
+ method public int getReviewRatingStyle();
+ method public String! getSeasonNumber();
+ method public String! getSeasonTitle();
method public long getStartTimeUtcMillis();
+ method public android.net.Uri! getThumbnailUri();
+ method public String! getTitle();
+ method public int getVideoHeight();
+ method public int getVideoWidth();
method public boolean isRecordingProhibited();
+ method public boolean isSearchable();
+ method public android.content.ContentValues! toContentValues();
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String![]! PROJECTION;
}
- public static class Program.Builder extends androidx.tvprovider.media.tv.BaseProgram.Builder<androidx.tvprovider.media.tv.Program.Builder> {
+ public static class Program.Builder {
ctor public Program.Builder();
ctor public Program.Builder(androidx.tvprovider.media.tv.Program!);
method public androidx.tvprovider.media.tv.Program! build();
- method public androidx.tvprovider.media.tv.Program.Builder! setBroadcastGenres(@androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre String![]!);
+ method public androidx.tvprovider.media.tv.Program.Builder! setBroadcastGenres(String![]!);
method public androidx.tvprovider.media.tv.Program.Builder! setChannelId(long);
method public androidx.tvprovider.media.tv.Program.Builder! setEndTimeUtcMillis(long);
method public androidx.tvprovider.media.tv.Program.Builder! setRecordingProhibited(boolean);
@@ -571,8 +567,8 @@
}
public static final class TvContractCompat.Programs.Genres {
- method @androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre public static String![]! decode(String);
- method public static String! encode(@androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre java.lang.String!...);
+ method public static String![]! decode(String);
+ method public static String! encode(java.lang.String!...);
method public static boolean isCanonical(String!);
field public static final String ANIMAL_WILDLIFE = "ANIMAL_WILDLIFE";
field public static final String ARTS = "ARTS";
@@ -593,7 +589,6 @@
field public static final String TRAVEL = "TRAVEL";
}
-
public static final class TvContractCompat.RecordedPrograms implements androidx.tvprovider.media.tv.TvContractCompat.BaseTvColumns {
field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language";
field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre";
@@ -680,16 +675,70 @@
method public static android.media.tv.TvContentRating![]! stringToContentRatings(String!);
}
- public final class WatchNextProgram extends androidx.tvprovider.media.tv.BasePreviewProgram {
+ public final class WatchNextProgram {
method public static androidx.tvprovider.media.tv.WatchNextProgram! fromCursor(android.database.Cursor!);
+ method public String![]! getAudioLanguages();
+ method public String! getAuthor();
+ method public int getAvailability();
+ method public String![]! getCanonicalGenres();
+ method public String! getContentId();
+ method public android.media.tv.TvContentRating![]! getContentRatings();
+ method public String! getDescription();
+ method public int getDurationMillis();
+ method public long getEndTimeUtcMillis();
+ method public String! getEpisodeNumber();
+ method public String! getEpisodeTitle();
+ method public String! getGenre();
+ method public long getId();
+ method public android.content.Intent! getIntent() throws java.net.URISyntaxException;
+ method public android.net.Uri! getIntentUri();
+ method public long getInteractionCount();
+ method public int getInteractionType();
+ method public byte[]! getInternalProviderDataByteArray();
+ method public Long! getInternalProviderFlag1();
+ method public Long! getInternalProviderFlag2();
+ method public Long! getInternalProviderFlag3();
+ method public Long! getInternalProviderFlag4();
+ method public String! getInternalProviderId();
+ method public int getItemCount();
method public long getLastEngagementTimeUtcMillis();
+ method public int getLastPlaybackPositionMillis();
+ method public String! getLogoContentDescription();
+ method public android.net.Uri! getLogoUri();
+ method public String! getLongDescription();
+ method public String! getOfferPrice();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public String! getPackageName();
+ method public int getPosterArtAspectRatio();
+ method public android.net.Uri! getPosterArtUri();
+ method public android.net.Uri! getPreviewAudioUri();
+ method public android.net.Uri! getPreviewVideoUri();
+ method public String! getReleaseDate();
+ method public String! getReviewRating();
+ method public int getReviewRatingStyle();
+ method public String! getSeasonNumber();
+ method public String! getSeasonTitle();
+ method public long getStartTimeUtcMillis();
+ method public String! getStartingPrice();
+ method public int getThumbnailAspectRatio();
+ method public android.net.Uri! getThumbnailUri();
+ method public String! getTitle();
+ method public int getTvSeriesItemType();
+ method public int getType();
+ method public int getVideoHeight();
+ method public int getVideoWidth();
method @androidx.tvprovider.media.tv.WatchNextProgram.WatchNextType public int getWatchNextType();
method public boolean hasAnyUpdatedValues(androidx.tvprovider.media.tv.WatchNextProgram!);
+ method public boolean isBrowsable();
+ method public boolean isLive();
+ method public boolean isSearchable();
+ method public boolean isTransient();
+ method public android.content.ContentValues! toContentValues();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.content.ContentValues! toContentValues(boolean);
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String![]! PROJECTION;
field public static final int WATCH_NEXT_TYPE_UNKNOWN = -1; // 0xffffffff
}
- public static final class WatchNextProgram.Builder extends androidx.tvprovider.media.tv.BasePreviewProgram.Builder<androidx.tvprovider.media.tv.WatchNextProgram.Builder> {
+ public static final class WatchNextProgram.Builder {
ctor public WatchNextProgram.Builder();
ctor public WatchNextProgram.Builder(androidx.tvprovider.media.tv.WatchNextProgram!);
method public androidx.tvprovider.media.tv.WatchNextProgram! build();
diff --git a/tv-provider/api/restricted_current.txt b/tv-provider/api/restricted_current.txt
index f4730b4..897bdb5 100644
--- a/tv-provider/api/restricted_current.txt
+++ b/tv-provider/api/restricted_current.txt
@@ -1,89 +1,6 @@
// Signature format: 3.0
package androidx.tvprovider.media.tv {
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.ASPECT_RATIO_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_16_9, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_3_2, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_4_3, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_1_1, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_2_3, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.ASPECT_RATIO_MOVIE_POSTER}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.AspectRatio {
- }
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.AVAILABILITY_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_AVAILABLE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_FREE_WITH_SUBSCRIPTION, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_PAID_CONTENT, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_PURCHASED, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.AVAILABILITY_FREE}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.Availability {
- }
-
- public abstract static class BasePreviewProgram.Builder<T extends androidx.tvprovider.media.tv.BasePreviewProgram.Builder> extends androidx.tvprovider.media.tv.BaseProgram.Builder<T> {
- ctor public BasePreviewProgram.Builder();
- ctor public BasePreviewProgram.Builder(androidx.tvprovider.media.tv.BasePreviewProgram!);
- method public T! setAuthor(String!);
- method public T! setAvailability(@androidx.tvprovider.media.tv.BasePreviewProgram.Availability int);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public T! setBrowsable(boolean);
- method public T! setContentId(String!);
- method public T! setDurationMillis(int);
- method public T! setEndTimeUtcMillis(long);
- method public T! setGenre(String!);
- method public T! setIntent(android.content.Intent!);
- method public T! setIntentUri(android.net.Uri!);
- method public T! setInteractionCount(long);
- method public T! setInteractionType(@androidx.tvprovider.media.tv.BasePreviewProgram.InteractionType int);
- method public T! setInternalProviderId(String!);
- method public T! setItemCount(int);
- method public T! setLastPlaybackPositionMillis(int);
- method public T! setLive(boolean);
- method public T! setLogoContentDescription(String!);
- method public T! setLogoUri(android.net.Uri!);
- method public T! setOfferPrice(String!);
- method public T! setPosterArtAspectRatio(@androidx.tvprovider.media.tv.BasePreviewProgram.AspectRatio int);
- method public T! setPreviewAudioUri(android.net.Uri!);
- method public T! setPreviewVideoUri(android.net.Uri!);
- method public T! setReleaseDate(String!);
- method public T! setReleaseDate(java.util.Date!);
- method public T! setStartTimeUtcMillis(long);
- method public T! setStartingPrice(String!);
- method public T! setThumbnailAspectRatio(@androidx.tvprovider.media.tv.BasePreviewProgram.AspectRatio int);
- method public T! setTransient(boolean);
- method public T! setTvSeriesItemType(@androidx.tvprovider.media.tv.BasePreviewProgram.TvSeriesItemType int);
- method public T! setType(@androidx.tvprovider.media.tv.BasePreviewProgram.Type int);
- }
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.INTERACTION_TYPE_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_VIEWS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_LISTENS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_FOLLOWERS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_FANS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_LIKES, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_THUMBS, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.INTERACTION_TYPE_VIEWERS}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.InteractionType {
- }
-
- @IntDef({androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TV_SERIES_ITEM_TYPE_EPISODE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TV_SERIES_ITEM_TYPE_CHAPTER}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.TvSeriesItemType {
- }
-
- @IntDef({androidx.tvprovider.media.tv.BasePreviewProgram.TYPE_UNKNOWN, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_MOVIE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TV_SERIES, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TV_SEASON, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TV_EPISODE, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_CLIP, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_EVENT, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_CHANNEL, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_TRACK, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_ALBUM, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_ARTIST, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_PLAYLIST, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_STATION, androidx.tvprovider.media.tv.TvContractCompat.PreviewProgramColumns.TYPE_GAME}) @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BasePreviewProgram.Type {
- }
-
-
- public abstract static class BaseProgram.Builder<T extends androidx.tvprovider.media.tv.BaseProgram.Builder> {
- ctor public BaseProgram.Builder();
- ctor public BaseProgram.Builder(androidx.tvprovider.media.tv.BaseProgram!);
- method public T! setAudioLanguages(String![]!);
- method public T! setCanonicalGenres(@androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre String![]!);
- method public T! setContentRatings(android.media.tv.TvContentRating![]!);
- method public T! setDescription(String!);
- method public T! setEpisodeNumber(int);
- method public T! setEpisodeNumber(String!, int);
- method public T! setEpisodeTitle(String!);
- method public T! setId(long);
- method public T! setInternalProviderData(byte[]!);
- method public T! setInternalProviderFlag1(long);
- method public T! setInternalProviderFlag2(long);
- method public T! setInternalProviderFlag3(long);
- method public T! setInternalProviderFlag4(long);
- method public T! setLongDescription(String!);
- method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public T! setPackageName(String!);
- method public T! setPosterArtUri(android.net.Uri!);
- method public T! setReviewRating(String!);
- method public T! setReviewRatingStyle(int);
- method public T! setSearchable(boolean);
- method public T! setSeasonNumber(int);
- method public T! setSeasonNumber(String!, int);
- method public T! setSeasonTitle(String!);
- method public T! setThumbnailUri(android.net.Uri!);
- method public T! setTitle(String!);
- method public T! setVideoHeight(int);
- method public T! setVideoWidth(int);
- field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected android.content.ContentValues! mValues;
- }
-
public final class Channel {
method public static androidx.tvprovider.media.tv.Channel! fromCursor(android.database.Cursor!);
method public int getAppLinkColor();
@@ -246,15 +163,69 @@
method public void updateWatchNextProgram(androidx.tvprovider.media.tv.WatchNextProgram, long);
}
- public final class PreviewProgram extends androidx.tvprovider.media.tv.BasePreviewProgram {
+ public final class PreviewProgram {
method public static androidx.tvprovider.media.tv.PreviewProgram! fromCursor(android.database.Cursor!);
+ method public String![]! getAudioLanguages();
+ method public String! getAuthor();
+ method public int getAvailability();
+ method public String![]! getCanonicalGenres();
method public long getChannelId();
+ method public String! getContentId();
+ method public android.media.tv.TvContentRating![]! getContentRatings();
+ method public String! getDescription();
+ method public int getDurationMillis();
+ method public long getEndTimeUtcMillis();
+ method public String! getEpisodeNumber();
+ method public String! getEpisodeTitle();
+ method public String! getGenre();
+ method public long getId();
+ method public android.content.Intent! getIntent() throws java.net.URISyntaxException;
+ method public android.net.Uri! getIntentUri();
+ method public long getInteractionCount();
+ method public int getInteractionType();
+ method public byte[]! getInternalProviderDataByteArray();
+ method public Long! getInternalProviderFlag1();
+ method public Long! getInternalProviderFlag2();
+ method public Long! getInternalProviderFlag3();
+ method public Long! getInternalProviderFlag4();
+ method public String! getInternalProviderId();
+ method public int getItemCount();
+ method public int getLastPlaybackPositionMillis();
+ method public String! getLogoContentDescription();
+ method public android.net.Uri! getLogoUri();
+ method public String! getLongDescription();
+ method public String! getOfferPrice();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public String! getPackageName();
+ method public int getPosterArtAspectRatio();
+ method public android.net.Uri! getPosterArtUri();
+ method public android.net.Uri! getPreviewAudioUri();
+ method public android.net.Uri! getPreviewVideoUri();
+ method public String! getReleaseDate();
+ method public String! getReviewRating();
+ method public int getReviewRatingStyle();
+ method public String! getSeasonNumber();
+ method public String! getSeasonTitle();
+ method public long getStartTimeUtcMillis();
+ method public String! getStartingPrice();
+ method public int getThumbnailAspectRatio();
+ method public android.net.Uri! getThumbnailUri();
+ method public String! getTitle();
+ method public int getTvSeriesItemType();
+ method public int getType();
+ method public int getVideoHeight();
+ method public int getVideoWidth();
method public int getWeight();
method public boolean hasAnyUpdatedValues(androidx.tvprovider.media.tv.PreviewProgram!);
+ method public boolean isBrowsable();
+ method public boolean isLive();
+ method public boolean isSearchable();
+ method public boolean isTransient();
+ method public android.content.ContentValues! toContentValues();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.content.ContentValues! toContentValues(boolean);
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String![]! PROJECTION;
}
- public static final class PreviewProgram.Builder extends androidx.tvprovider.media.tv.BasePreviewProgram.Builder<androidx.tvprovider.media.tv.PreviewProgram.Builder> {
+ public static final class PreviewProgram.Builder {
ctor public PreviewProgram.Builder();
ctor public PreviewProgram.Builder(androidx.tvprovider.media.tv.PreviewProgram!);
method public androidx.tvprovider.media.tv.PreviewProgram! build();
@@ -262,22 +233,47 @@
method public androidx.tvprovider.media.tv.PreviewProgram.Builder! setWeight(int);
}
- public final class Program extends androidx.tvprovider.media.tv.BaseProgram implements java.lang.Comparable<androidx.tvprovider.media.tv.Program> {
+ public final class Program implements java.lang.Comparable<androidx.tvprovider.media.tv.Program> {
method public int compareTo(androidx.tvprovider.media.tv.Program);
method public static androidx.tvprovider.media.tv.Program! fromCursor(android.database.Cursor!);
+ method public String![]! getAudioLanguages();
method public String![]! getBroadcastGenres();
+ method public String![]! getCanonicalGenres();
method public long getChannelId();
+ method public android.media.tv.TvContentRating![]! getContentRatings();
+ method public String! getDescription();
method public long getEndTimeUtcMillis();
+ method public String! getEpisodeNumber();
+ method public String! getEpisodeTitle();
+ method public long getId();
+ method public byte[]! getInternalProviderDataByteArray();
+ method public Long! getInternalProviderFlag1();
+ method public Long! getInternalProviderFlag2();
+ method public Long! getInternalProviderFlag3();
+ method public Long! getInternalProviderFlag4();
+ method public String! getLongDescription();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public String! getPackageName();
+ method public android.net.Uri! getPosterArtUri();
+ method public String! getReviewRating();
+ method public int getReviewRatingStyle();
+ method public String! getSeasonNumber();
+ method public String! getSeasonTitle();
method public long getStartTimeUtcMillis();
+ method public android.net.Uri! getThumbnailUri();
+ method public String! getTitle();
+ method public int getVideoHeight();
+ method public int getVideoWidth();
method public boolean isRecordingProhibited();
+ method public boolean isSearchable();
+ method public android.content.ContentValues! toContentValues();
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String![]! PROJECTION;
}
- public static class Program.Builder extends androidx.tvprovider.media.tv.BaseProgram.Builder<androidx.tvprovider.media.tv.Program.Builder> {
+ public static class Program.Builder {
ctor public Program.Builder();
ctor public Program.Builder(androidx.tvprovider.media.tv.Program!);
method public androidx.tvprovider.media.tv.Program! build();
- method public androidx.tvprovider.media.tv.Program.Builder! setBroadcastGenres(@androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre String![]!);
+ method public androidx.tvprovider.media.tv.Program.Builder! setBroadcastGenres(String![]!);
method public androidx.tvprovider.media.tv.Program.Builder! setChannelId(long);
method public androidx.tvprovider.media.tv.Program.Builder! setEndTimeUtcMillis(long);
method public androidx.tvprovider.media.tv.Program.Builder! setRecordingProhibited(boolean);
@@ -571,8 +567,8 @@
}
public static final class TvContractCompat.Programs.Genres {
- method @androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre public static String![]! decode(String);
- method public static String! encode(@androidx.tvprovider.media.tv.TvContractCompat.Programs.Genres.Genre java.lang.String!...);
+ method public static String![]! decode(String);
+ method public static String! encode(java.lang.String!...);
method public static boolean isCanonical(String!);
field public static final String ANIMAL_WILDLIFE = "ANIMAL_WILDLIFE";
field public static final String ARTS = "ARTS";
@@ -593,7 +589,6 @@
field public static final String TRAVEL = "TRAVEL";
}
-
public static final class TvContractCompat.RecordedPrograms implements androidx.tvprovider.media.tv.TvContractCompat.BaseTvColumns {
field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language";
field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre";
@@ -680,16 +675,70 @@
method public static android.media.tv.TvContentRating![]! stringToContentRatings(String!);
}
- public final class WatchNextProgram extends androidx.tvprovider.media.tv.BasePreviewProgram {
+ public final class WatchNextProgram {
method public static androidx.tvprovider.media.tv.WatchNextProgram! fromCursor(android.database.Cursor!);
+ method public String![]! getAudioLanguages();
+ method public String! getAuthor();
+ method public int getAvailability();
+ method public String![]! getCanonicalGenres();
+ method public String! getContentId();
+ method public android.media.tv.TvContentRating![]! getContentRatings();
+ method public String! getDescription();
+ method public int getDurationMillis();
+ method public long getEndTimeUtcMillis();
+ method public String! getEpisodeNumber();
+ method public String! getEpisodeTitle();
+ method public String! getGenre();
+ method public long getId();
+ method public android.content.Intent! getIntent() throws java.net.URISyntaxException;
+ method public android.net.Uri! getIntentUri();
+ method public long getInteractionCount();
+ method public int getInteractionType();
+ method public byte[]! getInternalProviderDataByteArray();
+ method public Long! getInternalProviderFlag1();
+ method public Long! getInternalProviderFlag2();
+ method public Long! getInternalProviderFlag3();
+ method public Long! getInternalProviderFlag4();
+ method public String! getInternalProviderId();
+ method public int getItemCount();
method public long getLastEngagementTimeUtcMillis();
+ method public int getLastPlaybackPositionMillis();
+ method public String! getLogoContentDescription();
+ method public android.net.Uri! getLogoUri();
+ method public String! getLongDescription();
+ method public String! getOfferPrice();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public String! getPackageName();
+ method public int getPosterArtAspectRatio();
+ method public android.net.Uri! getPosterArtUri();
+ method public android.net.Uri! getPreviewAudioUri();
+ method public android.net.Uri! getPreviewVideoUri();
+ method public String! getReleaseDate();
+ method public String! getReviewRating();
+ method public int getReviewRatingStyle();
+ method public String! getSeasonNumber();
+ method public String! getSeasonTitle();
+ method public long getStartTimeUtcMillis();
+ method public String! getStartingPrice();
+ method public int getThumbnailAspectRatio();
+ method public android.net.Uri! getThumbnailUri();
+ method public String! getTitle();
+ method public int getTvSeriesItemType();
+ method public int getType();
+ method public int getVideoHeight();
+ method public int getVideoWidth();
method @androidx.tvprovider.media.tv.WatchNextProgram.WatchNextType public int getWatchNextType();
method public boolean hasAnyUpdatedValues(androidx.tvprovider.media.tv.WatchNextProgram!);
+ method public boolean isBrowsable();
+ method public boolean isLive();
+ method public boolean isSearchable();
+ method public boolean isTransient();
+ method public android.content.ContentValues! toContentValues();
+ method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public android.content.ContentValues! toContentValues(boolean);
field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final String![]! PROJECTION;
field public static final int WATCH_NEXT_TYPE_UNKNOWN = -1; // 0xffffffff
}
- public static final class WatchNextProgram.Builder extends androidx.tvprovider.media.tv.BasePreviewProgram.Builder<androidx.tvprovider.media.tv.WatchNextProgram.Builder> {
+ public static final class WatchNextProgram.Builder {
ctor public WatchNextProgram.Builder();
ctor public WatchNextProgram.Builder(androidx.tvprovider.media.tv.WatchNextProgram!);
method public androidx.tvprovider.media.tv.WatchNextProgram! build();
diff --git a/ui/ui-framework/OWNERS b/ui/ui-framework/OWNERS
index 78f2531..fd8f9ec 100644
--- a/ui/ui-framework/OWNERS
+++ b/ui/ui-framework/OWNERS
@@ -1,5 +1,6 @@
[email protected]
[email protected]
[email protected]
# Semantics
[email protected]
diff --git a/ui/ui-layout/api/0.1.0-dev04.txt b/ui/ui-layout/api/0.1.0-dev04.txt
index 312c8ea..2a59b89 100644
--- a/ui/ui-layout/api/0.1.0-dev04.txt
+++ b/ui/ui-layout/api/0.1.0-dev04.txt
@@ -449,13 +449,7 @@
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.HorizontalAnchor.BarrierAnchor createTopBarrier(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference... elements);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.VerticalChain createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference![] elements, androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle chainStyle = ChainStyle.Spread);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference getParent();
- method public Object! getParentDimension();
- method public Object! getSpreadDimension();
- method public Object! getWrapDimension();
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference tag(Object tag);
- property public final Object! ParentDimension;
- property public final Object! SpreadDimension;
- property public final Object! WrapDimension;
property public final androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference parent;
}
diff --git a/ui/ui-layout/api/api_lint.ignore b/ui/ui-layout/api/api_lint.ignore
index 011ece5..f4de926 100644
--- a/ui/ui-layout/api/api_lint.ignore
+++ b/ui/ui-layout/api/api_lint.ignore
@@ -1,19 +1,5 @@
// Baseline format: 1.0
-ArrayReturn: androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope#createHorizontalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference[], androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle) parameter #0:
- Method parameter should be Collection<ConstrainedLayoutReference> (or subclass) instead of raw array; was `androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference[]`
-ArrayReturn: androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope#createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference[], androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle) parameter #0:
- Method parameter should be Collection<ConstrainedLayoutReference> (or subclass) instead of raw array; was `androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference[]`
-
-
DocumentExceptions: androidx.ui.layout.FlexChildren#expanded(float, kotlin.jvm.functions.Function0<kotlin.Unit>):
Method FlexChildren.expanded appears to be throwing java.lang.IllegalArgumentException; this should be listed in the documentation; see https://android.github.io/kotlin-guides/interop.html#document-exceptions
DocumentExceptions: androidx.ui.layout.FlexChildren#flexible(float, kotlin.jvm.functions.Function0<kotlin.Unit>):
Method FlexChildren.flexible appears to be throwing java.lang.IllegalArgumentException; this should be listed in the documentation; see https://android.github.io/kotlin-guides/interop.html#document-exceptions
-
-
-MissingNullability: androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope#getParentDimension():
- Missing nullability on method `getParentDimension` return
-MissingNullability: androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope#getSpreadDimension():
- Missing nullability on method `getSpreadDimension` return
-MissingNullability: androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope#getWrapDimension():
- Missing nullability on method `getWrapDimension` return
diff --git a/ui/ui-layout/api/current.txt b/ui/ui-layout/api/current.txt
index 312c8ea..2a59b89 100644
--- a/ui/ui-layout/api/current.txt
+++ b/ui/ui-layout/api/current.txt
@@ -449,13 +449,7 @@
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.HorizontalAnchor.BarrierAnchor createTopBarrier(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference... elements);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.VerticalChain createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference![] elements, androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle chainStyle = ChainStyle.Spread);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference getParent();
- method public Object! getParentDimension();
- method public Object! getSpreadDimension();
- method public Object! getWrapDimension();
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference tag(Object tag);
- property public final Object! ParentDimension;
- property public final Object! SpreadDimension;
- property public final Object! WrapDimension;
property public final androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference parent;
}
diff --git a/ui/ui-layout/api/public_plus_experimental_0.1.0-dev04.txt b/ui/ui-layout/api/public_plus_experimental_0.1.0-dev04.txt
index 312c8ea..2a59b89 100644
--- a/ui/ui-layout/api/public_plus_experimental_0.1.0-dev04.txt
+++ b/ui/ui-layout/api/public_plus_experimental_0.1.0-dev04.txt
@@ -449,13 +449,7 @@
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.HorizontalAnchor.BarrierAnchor createTopBarrier(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference... elements);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.VerticalChain createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference![] elements, androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle chainStyle = ChainStyle.Spread);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference getParent();
- method public Object! getParentDimension();
- method public Object! getSpreadDimension();
- method public Object! getWrapDimension();
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference tag(Object tag);
- property public final Object! ParentDimension;
- property public final Object! SpreadDimension;
- property public final Object! WrapDimension;
property public final androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference parent;
}
diff --git a/ui/ui-layout/api/public_plus_experimental_current.txt b/ui/ui-layout/api/public_plus_experimental_current.txt
index 312c8ea..2a59b89 100644
--- a/ui/ui-layout/api/public_plus_experimental_current.txt
+++ b/ui/ui-layout/api/public_plus_experimental_current.txt
@@ -449,13 +449,7 @@
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.HorizontalAnchor.BarrierAnchor createTopBarrier(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference... elements);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.VerticalChain createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference![] elements, androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle chainStyle = ChainStyle.Spread);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference getParent();
- method public Object! getParentDimension();
- method public Object! getSpreadDimension();
- method public Object! getWrapDimension();
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference tag(Object tag);
- property public final Object! ParentDimension;
- property public final Object! SpreadDimension;
- property public final Object! WrapDimension;
property public final androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference parent;
}
diff --git a/ui/ui-layout/api/restricted_0.1.0-dev04.txt b/ui/ui-layout/api/restricted_0.1.0-dev04.txt
index 312c8ea..2a59b89 100644
--- a/ui/ui-layout/api/restricted_0.1.0-dev04.txt
+++ b/ui/ui-layout/api/restricted_0.1.0-dev04.txt
@@ -449,13 +449,7 @@
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.HorizontalAnchor.BarrierAnchor createTopBarrier(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference... elements);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.VerticalChain createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference![] elements, androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle chainStyle = ChainStyle.Spread);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference getParent();
- method public Object! getParentDimension();
- method public Object! getSpreadDimension();
- method public Object! getWrapDimension();
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference tag(Object tag);
- property public final Object! ParentDimension;
- property public final Object! SpreadDimension;
- property public final Object! WrapDimension;
property public final androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference parent;
}
diff --git a/ui/ui-layout/api/restricted_current.txt b/ui/ui-layout/api/restricted_current.txt
index 312c8ea..2a59b89 100644
--- a/ui/ui-layout/api/restricted_current.txt
+++ b/ui/ui-layout/api/restricted_current.txt
@@ -449,13 +449,7 @@
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.HorizontalAnchor.BarrierAnchor createTopBarrier(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference... elements);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.VerticalChain createVerticalChain(androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference![] elements, androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ChainStyle chainStyle = ChainStyle.Spread);
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference getParent();
- method public Object! getParentDimension();
- method public Object! getSpreadDimension();
- method public Object! getWrapDimension();
method public androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference tag(Object tag);
- property public final Object! ParentDimension;
- property public final Object! SpreadDimension;
- property public final Object! WrapDimension;
property public final androidx.ui.layout.constraintlayout.ConstraintSetBuilderScope.ConstrainedLayoutReference parent;
}
diff --git a/ui/ui-layout/src/main/java/androidx/ui/layout/ConstraintLayout.kt b/ui/ui-layout/src/main/java/androidx/ui/layout/ConstraintLayout.kt
index ed17888..1c9c0c6 100644
--- a/ui/ui-layout/src/main/java/androidx/ui/layout/ConstraintLayout.kt
+++ b/ui/ui-layout/src/main/java/androidx/ui/layout/ConstraintLayout.kt
@@ -16,6 +16,7 @@
package androidx.ui.layout.constraintlayout
+import android.annotation.SuppressLint
import androidx.compose.Composable
import androidx.compose.Immutable
import androidx.compose.memo
@@ -364,6 +365,8 @@
* Creates a horizontal chain including the referenced layouts.
*/
fun createHorizontalChain(
+ // Suppress lint here to allow vararg parameter for elements. API likely to change.
+ @SuppressLint("ArrayReturn")
vararg elements: ConstrainedLayoutReference,
chainStyle: ChainStyle = ChainStyle.Spread
): HorizontalChain {
@@ -378,6 +381,8 @@
* Creates a vertical chain including the referenced layouts.
*/
fun createVerticalChain(
+ // Suppress lint here to allow vararg parameter for elements. API likely to change.
+ @SuppressLint("ArrayReturn")
vararg elements: ConstrainedLayoutReference,
chainStyle: ChainStyle = ChainStyle.Spread
): VerticalChain {
@@ -523,11 +528,6 @@
return VerticalAnchor.BarrierAnchor(state, tag, barrier)
}
- // TODO(popam): support these
- val WrapDimension = Dimension.WRAP_DIMENSION
- val SpreadDimension = Dimension.SPREAD_DIMENSION
- val ParentDimension = Dimension.PARENT_DIMENSION
-
internal companion object {
val verticalAnchorFunctions: Array<Array<ConstraintReference.(Any) -> Unit>> = arrayOf(
arrayOf(
diff --git a/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt b/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt
index 815ea6e..5d8d32b 100644
--- a/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt
+++ b/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt
@@ -35,6 +35,7 @@
import androidx.ui.core.Placeable
import androidx.ui.core.Px
import androidx.ui.core.Text
+import androidx.ui.core.WithConstraints
import androidx.ui.core.ambientDensity
import androidx.ui.core.coerceIn
import androidx.ui.core.dp
@@ -52,6 +53,7 @@
import androidx.ui.graphics.Image
import androidx.ui.layout.Container
import androidx.ui.layout.FlexRow
+import androidx.ui.layout.LayoutExpandedWidth
import androidx.ui.layout.LayoutGravity
import androidx.ui.layout.Padding
import androidx.ui.layout.Stack
@@ -138,7 +140,8 @@
}
}
- WithExpandedWidth { width ->
+ WithConstraints { constraints ->
+ val width = constraints.maxWidth
// TODO: force scrollable for tabs that will be too small if they take up equal space?
if (scrollable) {
ScrollableTabRow(width, selectedIndex, tabs, indicatorContainer)
@@ -169,7 +172,7 @@
TabRow.Divider(modifier)
}
- Stack {
+ Stack(LayoutExpandedWidth) {
FlexRow(LayoutGravity.Center) {
expanded(1f, tabs)
}
@@ -197,8 +200,8 @@
ScrollableTabData(selectedIndex, tabPositions, width, edgeOffset)
}
- scrollableTabData.selectedTab = selectedIndex
scrollableTabData.tabPositions = tabPositions
+ scrollableTabData.selectedTab = selectedIndex
scrollableTabData.visibleWidth = width
val indicator = @Composable {
@@ -212,7 +215,10 @@
TabRow.Divider()
}
- HorizontalScroller(scrollerPosition = scrollableTabData.position) {
+ HorizontalScroller(
+ scrollerPosition = scrollableTabData.position,
+ modifier = LayoutExpandedWidth
+ ) {
Layout(tabs, indicator, divider) { measurables, constraints ->
val tabPlaceables = mutableListOf<Pair<Placeable, IntPx>>()
val minTabWidth = ScrollableTabRowMinimumTabWidth.toIntPx()
@@ -305,27 +311,6 @@
}
}
-// TODO: cleanup when expanded width layouts are supported natively b/140408477
-/**
- * A layout that is sized according to its [child]'s height, and all the available width.
- */
-@Composable
-private fun WithExpandedWidth(child: @Composable() (width: IntPx) -> Unit) {
- // TODO: unfortunate 1f lag as we need to first measure total width and then recompose so the
- // tab row knows the correct width
- var widthState by +state { IntPx.Zero }
- Layout({ child(widthState) }) { measurables, constraints ->
- val width = constraints.maxWidth
- if (widthState != width) widthState = width
- val placeable = measurables.first().measure(constraints)
- val height = placeable.height
-
- layout(width, height) {
- placeable.place(IntPx.Zero, IntPx.Zero)
- }
- }
-}
-
object TabRow {
private val IndicatorOffset = PxPropKey()
diff --git a/ui/ui-platform/OWNERS b/ui/ui-platform/OWNERS
index af392f8..8fee348 100644
--- a/ui/ui-platform/OWNERS
+++ b/ui/ui-platform/OWNERS
@@ -2,6 +2,7 @@
[email protected]
[email protected]
[email protected]
[email protected]
# For text input
[email protected]
diff --git a/ui/ui-text/api/restricted_0.1.0-dev03.txt b/ui/ui-text/api/restricted_0.1.0-dev03.txt
index ea4d2ab..6ae0cb5 100644
--- a/ui/ui-text/api/restricted_0.1.0-dev03.txt
+++ b/ui/ui-text/api/restricted_0.1.0-dev03.txt
@@ -40,7 +40,6 @@
method public void process(androidx.ui.input.EditingBuffer buffer);
}
-
public final class EditingBuffer {
ctor public EditingBuffer(String initialText, androidx.ui.text.TextRange initialSelection);
field public static final int NOWHERE = -1; // 0xffffffff
@@ -112,7 +111,6 @@
property public final androidx.ui.input.OffsetMap identityOffsetMap;
}
-
public final class PasswordVisualTransformation implements androidx.ui.input.VisualTransformation {
ctor public PasswordVisualTransformation(char mask);
ctor public PasswordVisualTransformation();
@@ -463,7 +461,6 @@
method public static String toUpperCase(String, androidx.ui.text.LocaleList localeList);
}
-
public final class TextDelegateKt {
ctor public TextDelegateKt();
}
diff --git a/ui/ui-text/api/restricted_0.1.0-dev04.txt b/ui/ui-text/api/restricted_0.1.0-dev04.txt
index a148272..6d8d470 100644
--- a/ui/ui-text/api/restricted_0.1.0-dev04.txt
+++ b/ui/ui-text/api/restricted_0.1.0-dev04.txt
@@ -40,7 +40,6 @@
method public void process(androidx.ui.input.EditingBuffer buffer);
}
-
public final class EditingBuffer {
ctor public EditingBuffer(String initialText, androidx.ui.text.TextRange initialSelection);
field public static final int NOWHERE = -1; // 0xffffffff
@@ -112,7 +111,6 @@
property public final androidx.ui.input.OffsetMap identityOffsetMap;
}
-
public final class PasswordVisualTransformation implements androidx.ui.input.VisualTransformation {
ctor public PasswordVisualTransformation(char mask);
ctor public PasswordVisualTransformation();
@@ -468,7 +466,6 @@
method public static String toUpperCase(String, androidx.ui.text.LocaleList localeList);
}
-
public final class TextDelegateKt {
ctor public TextDelegateKt();
}
diff --git a/ui/ui-text/api/restricted_current.txt b/ui/ui-text/api/restricted_current.txt
index a148272..6d8d470 100644
--- a/ui/ui-text/api/restricted_current.txt
+++ b/ui/ui-text/api/restricted_current.txt
@@ -40,7 +40,6 @@
method public void process(androidx.ui.input.EditingBuffer buffer);
}
-
public final class EditingBuffer {
ctor public EditingBuffer(String initialText, androidx.ui.text.TextRange initialSelection);
field public static final int NOWHERE = -1; // 0xffffffff
@@ -112,7 +111,6 @@
property public final androidx.ui.input.OffsetMap identityOffsetMap;
}
-
public final class PasswordVisualTransformation implements androidx.ui.input.VisualTransformation {
ctor public PasswordVisualTransformation(char mask);
ctor public PasswordVisualTransformation();
@@ -468,7 +466,6 @@
method public static String toUpperCase(String, androidx.ui.text.LocaleList localeList);
}
-
public final class TextDelegateKt {
ctor public TextDelegateKt();
}
diff --git a/versionedparcelable/api/restricted_1.0.0.txt b/versionedparcelable/api/restricted_1.0.0.txt
index 842ac52..591ffac 100644
--- a/versionedparcelable/api/restricted_1.0.0.txt
+++ b/versionedparcelable/api/restricted_1.0.0.txt
@@ -14,7 +14,6 @@
method public abstract int value();
}
-
@RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP) public class ParcelUtils {
method public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromInputStream(java.io.InputStream!);
method public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromParcelable(android.os.Parcelable!);
diff --git a/versionedparcelable/api/restricted_1.1.0-alpha02.txt b/versionedparcelable/api/restricted_1.1.0-alpha02.txt
index ce3935d..db400ff 100644
--- a/versionedparcelable/api/restricted_1.1.0-alpha02.txt
+++ b/versionedparcelable/api/restricted_1.1.0-alpha02.txt
@@ -15,7 +15,6 @@
method public abstract int value();
}
-
public class ParcelUtils {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromInputStream(java.io.InputStream!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromParcelable(android.os.Parcelable!);
diff --git a/versionedparcelable/api/restricted_1.1.0-beta01.txt b/versionedparcelable/api/restricted_1.1.0-beta01.txt
index ec89d6a..22cda9a 100644
--- a/versionedparcelable/api/restricted_1.1.0-beta01.txt
+++ b/versionedparcelable/api/restricted_1.1.0-beta01.txt
@@ -15,7 +15,6 @@
method public abstract int value();
}
-
public class ParcelUtils {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromInputStream(java.io.InputStream!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromParcelable(android.os.Parcelable!);
diff --git a/versionedparcelable/api/restricted_1.1.0-rc01.txt b/versionedparcelable/api/restricted_1.1.0-rc01.txt
index ec89d6a..22cda9a 100644
--- a/versionedparcelable/api/restricted_1.1.0-rc01.txt
+++ b/versionedparcelable/api/restricted_1.1.0-rc01.txt
@@ -15,7 +15,6 @@
method public abstract int value();
}
-
public class ParcelUtils {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromInputStream(java.io.InputStream!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromParcelable(android.os.Parcelable!);
diff --git a/versionedparcelable/api/restricted_1.2.0-alpha01.txt b/versionedparcelable/api/restricted_1.2.0-alpha01.txt
index 3c0023a..6ec671d 100644
--- a/versionedparcelable/api/restricted_1.2.0-alpha01.txt
+++ b/versionedparcelable/api/restricted_1.2.0-alpha01.txt
@@ -15,7 +15,6 @@
method public abstract int value();
}
-
public class ParcelUtils {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromInputStream(java.io.InputStream!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromParcelable(android.os.Parcelable!);
diff --git a/versionedparcelable/api/restricted_current.txt b/versionedparcelable/api/restricted_current.txt
index 3c0023a..6ec671d 100644
--- a/versionedparcelable/api/restricted_current.txt
+++ b/versionedparcelable/api/restricted_current.txt
@@ -15,7 +15,6 @@
method public abstract int value();
}
-
public class ParcelUtils {
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromInputStream(java.io.InputStream!);
method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T extends androidx.versionedparcelable.VersionedParcelable> T! fromParcelable(android.os.Parcelable!);