Loading api/current.xml +36 −1 Original line number Diff line number Diff line Loading @@ -7489,6 +7489,17 @@ visibility="public" > </field> <field name="supportsUploading" type="int" transient="false" volatile="false" value="16843410" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="syncable" type="int" transient="false" Loading Loading @@ -36124,6 +36135,8 @@ </parameter> <parameter name="userVisible" type="boolean"> </parameter> <parameter name="supportsUploading" type="boolean"> </parameter> </constructor> <constructor name="SyncAdapterType" type="android.content.SyncAdapterType" Loading @@ -36146,6 +36159,17 @@ visibility="public" > </method> <method name="isUserVisible" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="newKey" return="android.content.SyncAdapterType" abstract="false" Loading @@ -36161,6 +36185,17 @@ <parameter name="accountType" type="java.lang.String"> </parameter> </method> <method name="supportsUploading" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="writeToParcel" return="void" abstract="false" Loading Loading @@ -36206,7 +36241,7 @@ visibility="public" > </field> <field name="userVisible" <field name="isKey" type="boolean" transient="false" volatile="false" core/java/android/content/SyncAdapterType.java +61 −8 Original line number Diff line number Diff line Loading @@ -27,9 +27,12 @@ import android.os.Parcel; public class SyncAdapterType implements Parcelable { public final String authority; public final String accountType; public final boolean userVisible; public final boolean isKey; private final boolean userVisible; private final boolean supportsUploading; public SyncAdapterType(String authority, String accountType, boolean userVisible) { public SyncAdapterType(String authority, String accountType, boolean userVisible, boolean supportsUploading) { if (TextUtils.isEmpty(authority)) { throw new IllegalArgumentException("the authority must not be empty: " + authority); } Loading @@ -39,17 +42,49 @@ public class SyncAdapterType implements Parcelable { this.authority = authority; this.accountType = accountType; this.userVisible = userVisible; this.supportsUploading = supportsUploading; this.isKey = false; } private SyncAdapterType(String authority, String accountType) { if (TextUtils.isEmpty(authority)) { throw new IllegalArgumentException("the authority must not be empty: " + authority); } if (TextUtils.isEmpty(accountType)) { throw new IllegalArgumentException("the accountType must not be empty: " + accountType); } this.authority = authority; this.accountType = accountType; this.userVisible = true; this.supportsUploading = true; this.isKey = true; } public boolean supportsUploading() { if (isKey) { throw new IllegalStateException( "this method is not allowed to be called when this is a key"); } return supportsUploading; } public boolean isUserVisible() { if (isKey) { throw new IllegalStateException( "this method is not allowed to be called when this is a key"); } return userVisible; } public static SyncAdapterType newKey(String authority, String accountType) { return new SyncAdapterType(authority, accountType, true); return new SyncAdapterType(authority, accountType); } public boolean equals(Object o) { if (o == this) return true; if (!(o instanceof SyncAdapterType)) return false; final SyncAdapterType other = (SyncAdapterType)o; // don't include userVisible in the equality check // don't include userVisible or supportsUploading in the equality check return authority.equals(other.authority) && accountType.equals(other.accountType); } Loading @@ -57,13 +92,22 @@ public class SyncAdapterType implements Parcelable { int result = 17; result = 31 * result + authority.hashCode(); result = 31 * result + accountType.hashCode(); // don't include userVisible in the hash // don't include userVisible or supportsUploading the hash return result; } public String toString() { return "SyncAdapterType {name=" + authority + ", type=" + accountType + ", userVisible=" + userVisible + "}"; if (isKey) { return "SyncAdapterType Key {name=" + authority + ", type=" + accountType + "}"; } else { return "SyncAdapterType {name=" + authority + ", type=" + accountType + ", userVisible=" + userVisible + ", supportsUploading=" + supportsUploading + "}"; } } public int describeContents() { Loading @@ -71,13 +115,22 @@ public class SyncAdapterType implements Parcelable { } public void writeToParcel(Parcel dest, int flags) { if (isKey) { throw new IllegalStateException("keys aren't parcelable"); } dest.writeString(authority); dest.writeString(accountType); dest.writeInt(userVisible ? 1 : 0); dest.writeInt(supportsUploading ? 1 : 0); } public SyncAdapterType(Parcel source) { this(source.readString(), source.readString(), source.readInt() != 0); this( source.readString(), source.readString(), source.readInt() != 0, source.readInt() != 0); } public static final Creator<SyncAdapterType> CREATOR = new Creator<SyncAdapterType>() { Loading core/java/android/content/SyncAdaptersCache.java +4 −1 Original line number Diff line number Diff line Loading @@ -49,7 +49,10 @@ import android.util.AttributeSet; } final boolean userVisible = sa.getBoolean(com.android.internal.R.styleable.SyncAdapter_userVisible, true); return new SyncAdapterType(authority, accountType, userVisible); final boolean supportsUploading = sa.getBoolean(com.android.internal.R.styleable.SyncAdapter_supportsUploading, true); return new SyncAdapterType(authority, accountType, userVisible, supportsUploading); } finally { sa.recycle(); } Loading core/java/android/content/SyncManager.java +17 −10 Original line number Diff line number Diff line Loading @@ -526,13 +526,6 @@ class SyncManager implements OnAccountsUpdatedListener { public void scheduleSync(Account requestedAccount, String requestedAuthority, Bundle extras, long delay, boolean onlyThoseWithUnkownSyncableState) { boolean isLoggable = Log.isLoggable(TAG, Log.VERBOSE); if (isLoggable) { Log.v(TAG, "scheduleSync:" + " delay " + delay + ", account " + requestedAccount + ", authority " + requestedAuthority + ", extras " + ((extras == null) ? "(null)" : extras)); } if (!isSyncEnabled()) { if (isLoggable) { Loading Loading @@ -617,13 +610,27 @@ class SyncManager implements OnAccountsUpdatedListener { if (onlyThoseWithUnkownSyncableState && isSyncable >= 0) { continue; } if (mSyncAdapters.getServiceInfo(SyncAdapterType.newKey(authority, account.type)) != null) { final RegisteredServicesCache.ServiceInfo<SyncAdapterType> syncAdapterInfo = mSyncAdapters.getServiceInfo( SyncAdapterType.newKey(authority, account.type)); if (syncAdapterInfo != null) { if (!syncAdapterInfo.type.supportsUploading() && uploadOnly) { continue; } // make this an initialization sync if the isSyncable state is unknown Bundle extrasCopy = new Bundle(extras); Bundle extrasCopy = extras; if (isSyncable < 0) { extrasCopy = new Bundle(extras); extrasCopy.putBoolean(ContentResolver.SYNC_EXTRAS_INITIALIZE, true); } if (isLoggable) { Log.v(TAG, "scheduleSync:" + " delay " + delay + ", source " + source + ", account " + account + ", authority " + authority + ", extras " + extrasCopy); } scheduleSyncOperation( new SyncOperation(account, source, authority, extrasCopy, delay)); } Loading core/java/android/preference/CheckBoxPreference.java +6 −8 Original line number Diff line number Diff line Loading @@ -149,15 +149,13 @@ public class CheckBoxPreference extends Preference { * @param checked The checked state. */ public void setChecked(boolean checked) { if (mChecked != checked) { mChecked = checked; persistBoolean(checked); notifyDependencyChange(shouldDisableDependents()); notifyChanged(); } } /** * Returns the checked state. Loading Loading
api/current.xml +36 −1 Original line number Diff line number Diff line Loading @@ -7489,6 +7489,17 @@ visibility="public" > </field> <field name="supportsUploading" type="int" transient="false" volatile="false" value="16843410" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="syncable" type="int" transient="false" Loading Loading @@ -36124,6 +36135,8 @@ </parameter> <parameter name="userVisible" type="boolean"> </parameter> <parameter name="supportsUploading" type="boolean"> </parameter> </constructor> <constructor name="SyncAdapterType" type="android.content.SyncAdapterType" Loading @@ -36146,6 +36159,17 @@ visibility="public" > </method> <method name="isUserVisible" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="newKey" return="android.content.SyncAdapterType" abstract="false" Loading @@ -36161,6 +36185,17 @@ <parameter name="accountType" type="java.lang.String"> </parameter> </method> <method name="supportsUploading" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="writeToParcel" return="void" abstract="false" Loading Loading @@ -36206,7 +36241,7 @@ visibility="public" > </field> <field name="userVisible" <field name="isKey" type="boolean" transient="false" volatile="false"
core/java/android/content/SyncAdapterType.java +61 −8 Original line number Diff line number Diff line Loading @@ -27,9 +27,12 @@ import android.os.Parcel; public class SyncAdapterType implements Parcelable { public final String authority; public final String accountType; public final boolean userVisible; public final boolean isKey; private final boolean userVisible; private final boolean supportsUploading; public SyncAdapterType(String authority, String accountType, boolean userVisible) { public SyncAdapterType(String authority, String accountType, boolean userVisible, boolean supportsUploading) { if (TextUtils.isEmpty(authority)) { throw new IllegalArgumentException("the authority must not be empty: " + authority); } Loading @@ -39,17 +42,49 @@ public class SyncAdapterType implements Parcelable { this.authority = authority; this.accountType = accountType; this.userVisible = userVisible; this.supportsUploading = supportsUploading; this.isKey = false; } private SyncAdapterType(String authority, String accountType) { if (TextUtils.isEmpty(authority)) { throw new IllegalArgumentException("the authority must not be empty: " + authority); } if (TextUtils.isEmpty(accountType)) { throw new IllegalArgumentException("the accountType must not be empty: " + accountType); } this.authority = authority; this.accountType = accountType; this.userVisible = true; this.supportsUploading = true; this.isKey = true; } public boolean supportsUploading() { if (isKey) { throw new IllegalStateException( "this method is not allowed to be called when this is a key"); } return supportsUploading; } public boolean isUserVisible() { if (isKey) { throw new IllegalStateException( "this method is not allowed to be called when this is a key"); } return userVisible; } public static SyncAdapterType newKey(String authority, String accountType) { return new SyncAdapterType(authority, accountType, true); return new SyncAdapterType(authority, accountType); } public boolean equals(Object o) { if (o == this) return true; if (!(o instanceof SyncAdapterType)) return false; final SyncAdapterType other = (SyncAdapterType)o; // don't include userVisible in the equality check // don't include userVisible or supportsUploading in the equality check return authority.equals(other.authority) && accountType.equals(other.accountType); } Loading @@ -57,13 +92,22 @@ public class SyncAdapterType implements Parcelable { int result = 17; result = 31 * result + authority.hashCode(); result = 31 * result + accountType.hashCode(); // don't include userVisible in the hash // don't include userVisible or supportsUploading the hash return result; } public String toString() { return "SyncAdapterType {name=" + authority + ", type=" + accountType + ", userVisible=" + userVisible + "}"; if (isKey) { return "SyncAdapterType Key {name=" + authority + ", type=" + accountType + "}"; } else { return "SyncAdapterType {name=" + authority + ", type=" + accountType + ", userVisible=" + userVisible + ", supportsUploading=" + supportsUploading + "}"; } } public int describeContents() { Loading @@ -71,13 +115,22 @@ public class SyncAdapterType implements Parcelable { } public void writeToParcel(Parcel dest, int flags) { if (isKey) { throw new IllegalStateException("keys aren't parcelable"); } dest.writeString(authority); dest.writeString(accountType); dest.writeInt(userVisible ? 1 : 0); dest.writeInt(supportsUploading ? 1 : 0); } public SyncAdapterType(Parcel source) { this(source.readString(), source.readString(), source.readInt() != 0); this( source.readString(), source.readString(), source.readInt() != 0, source.readInt() != 0); } public static final Creator<SyncAdapterType> CREATOR = new Creator<SyncAdapterType>() { Loading
core/java/android/content/SyncAdaptersCache.java +4 −1 Original line number Diff line number Diff line Loading @@ -49,7 +49,10 @@ import android.util.AttributeSet; } final boolean userVisible = sa.getBoolean(com.android.internal.R.styleable.SyncAdapter_userVisible, true); return new SyncAdapterType(authority, accountType, userVisible); final boolean supportsUploading = sa.getBoolean(com.android.internal.R.styleable.SyncAdapter_supportsUploading, true); return new SyncAdapterType(authority, accountType, userVisible, supportsUploading); } finally { sa.recycle(); } Loading
core/java/android/content/SyncManager.java +17 −10 Original line number Diff line number Diff line Loading @@ -526,13 +526,6 @@ class SyncManager implements OnAccountsUpdatedListener { public void scheduleSync(Account requestedAccount, String requestedAuthority, Bundle extras, long delay, boolean onlyThoseWithUnkownSyncableState) { boolean isLoggable = Log.isLoggable(TAG, Log.VERBOSE); if (isLoggable) { Log.v(TAG, "scheduleSync:" + " delay " + delay + ", account " + requestedAccount + ", authority " + requestedAuthority + ", extras " + ((extras == null) ? "(null)" : extras)); } if (!isSyncEnabled()) { if (isLoggable) { Loading Loading @@ -617,13 +610,27 @@ class SyncManager implements OnAccountsUpdatedListener { if (onlyThoseWithUnkownSyncableState && isSyncable >= 0) { continue; } if (mSyncAdapters.getServiceInfo(SyncAdapterType.newKey(authority, account.type)) != null) { final RegisteredServicesCache.ServiceInfo<SyncAdapterType> syncAdapterInfo = mSyncAdapters.getServiceInfo( SyncAdapterType.newKey(authority, account.type)); if (syncAdapterInfo != null) { if (!syncAdapterInfo.type.supportsUploading() && uploadOnly) { continue; } // make this an initialization sync if the isSyncable state is unknown Bundle extrasCopy = new Bundle(extras); Bundle extrasCopy = extras; if (isSyncable < 0) { extrasCopy = new Bundle(extras); extrasCopy.putBoolean(ContentResolver.SYNC_EXTRAS_INITIALIZE, true); } if (isLoggable) { Log.v(TAG, "scheduleSync:" + " delay " + delay + ", source " + source + ", account " + account + ", authority " + authority + ", extras " + extrasCopy); } scheduleSyncOperation( new SyncOperation(account, source, authority, extrasCopy, delay)); } Loading
core/java/android/preference/CheckBoxPreference.java +6 −8 Original line number Diff line number Diff line Loading @@ -149,15 +149,13 @@ public class CheckBoxPreference extends Preference { * @param checked The checked state. */ public void setChecked(boolean checked) { if (mChecked != checked) { mChecked = checked; persistBoolean(checked); notifyDependencyChange(shouldDisableDependents()); notifyChanged(); } } /** * Returns the checked state. Loading