Merge "Remove the internal APIs of TSM to change spell checker settings"
This commit is contained in:
committed by
Android (Google) Code Review
commit
08a18210fb
@@ -210,20 +210,6 @@ public final class TextServicesManager {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
public void setCurrentSpellChecker(SpellCheckerInfo sci) {
|
||||
try {
|
||||
if (sci == null) {
|
||||
throw new NullPointerException("SpellCheckerInfo is null.");
|
||||
}
|
||||
mService.setCurrentSpellChecker(null, sci.getId());
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowFromSystemServer();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
@@ -237,34 +223,6 @@ public final class TextServicesManager {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
public void setSpellCheckerSubtype(SpellCheckerSubtype subtype) {
|
||||
try {
|
||||
final int hashCode;
|
||||
if (subtype == null) {
|
||||
hashCode = 0;
|
||||
} else {
|
||||
hashCode = subtype.hashCode();
|
||||
}
|
||||
mService.setCurrentSpellCheckerSubtype(null, hashCode);
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowFromSystemServer();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
public void setSpellCheckerEnabled(boolean enabled) {
|
||||
try {
|
||||
mService.setSpellCheckerEnabled(enabled);
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowFromSystemServer();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
|
||||
@@ -36,9 +36,6 @@ interface ITextServicesManager {
|
||||
in ITextServicesSessionListener tsListener,
|
||||
in ISpellCheckerSessionListener scListener, in Bundle bundle);
|
||||
oneway void finishSpellCheckerService(in ISpellCheckerSessionListener listener);
|
||||
oneway void setCurrentSpellChecker(String locale, String sciId);
|
||||
oneway void setCurrentSpellCheckerSubtype(String locale, int hashCode);
|
||||
oneway void setSpellCheckerEnabled(boolean enabled);
|
||||
boolean isSpellCheckerEnabled();
|
||||
SpellCheckerInfo[] getEnabledSpellCheckers();
|
||||
}
|
||||
|
||||
@@ -642,57 +642,6 @@ public class TextServicesManagerService extends ITextServicesManager.Stub {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCurrentSpellChecker(String locale, String sciId) {
|
||||
if (!calledFromValidUser()) {
|
||||
return;
|
||||
}
|
||||
synchronized(mSpellCheckerMap) {
|
||||
if (mContext.checkCallingOrSelfPermission(
|
||||
android.Manifest.permission.WRITE_SECURE_SETTINGS)
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
throw new SecurityException(
|
||||
"Requires permission "
|
||||
+ android.Manifest.permission.WRITE_SECURE_SETTINGS);
|
||||
}
|
||||
setCurrentSpellCheckerLocked(sciId);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCurrentSpellCheckerSubtype(String locale, int hashCode) {
|
||||
if (!calledFromValidUser()) {
|
||||
return;
|
||||
}
|
||||
synchronized(mSpellCheckerMap) {
|
||||
if (mContext.checkCallingOrSelfPermission(
|
||||
android.Manifest.permission.WRITE_SECURE_SETTINGS)
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
throw new SecurityException(
|
||||
"Requires permission "
|
||||
+ android.Manifest.permission.WRITE_SECURE_SETTINGS);
|
||||
}
|
||||
setCurrentSpellCheckerSubtypeLocked(hashCode);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSpellCheckerEnabled(boolean enabled) {
|
||||
if (!calledFromValidUser()) {
|
||||
return;
|
||||
}
|
||||
synchronized(mSpellCheckerMap) {
|
||||
if (mContext.checkCallingOrSelfPermission(
|
||||
android.Manifest.permission.WRITE_SECURE_SETTINGS)
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
throw new SecurityException(
|
||||
"Requires permission "
|
||||
+ android.Manifest.permission.WRITE_SECURE_SETTINGS);
|
||||
}
|
||||
setSpellCheckerEnabledLocked(enabled);
|
||||
}
|
||||
}
|
||||
|
||||
private void setCurrentSpellCheckerLocked(String sciId) {
|
||||
if (DBG) {
|
||||
Slog.w(TAG, "setCurrentSpellChecker: " + sciId);
|
||||
@@ -732,18 +681,6 @@ public class TextServicesManagerService extends ITextServicesManager.Stub {
|
||||
}
|
||||
}
|
||||
|
||||
private void setSpellCheckerEnabledLocked(boolean enabled) {
|
||||
if (DBG) {
|
||||
Slog.w(TAG, "setSpellCheckerEnabled: " + enabled);
|
||||
}
|
||||
final long ident = Binder.clearCallingIdentity();
|
||||
try {
|
||||
mSettings.setSpellCheckerEnabled(enabled);
|
||||
} finally {
|
||||
Binder.restoreCallingIdentity(ident);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isSpellCheckerEnabledLocked() {
|
||||
final long ident = Binder.clearCallingIdentity();
|
||||
try {
|
||||
@@ -1135,10 +1072,6 @@ public class TextServicesManagerService extends ITextServicesManager.Stub {
|
||||
return Settings.Secure.getIntForUser(mResolver, key, defaultValue, mCurrentUserId);
|
||||
}
|
||||
|
||||
private void putBoolean(final String key, final boolean value) {
|
||||
putInt(key, value ? 1 : 0);
|
||||
}
|
||||
|
||||
private boolean getBoolean(final String key, final boolean defaultValue) {
|
||||
return getInt(key, defaultValue ? 1 : 0) == 1;
|
||||
}
|
||||
@@ -1178,10 +1111,6 @@ public class TextServicesManagerService extends ITextServicesManager.Stub {
|
||||
putInt(Settings.Secure.SELECTED_SPELL_CHECKER_SUBTYPE, hashCode);
|
||||
}
|
||||
|
||||
public void setSpellCheckerEnabled(boolean enabled) {
|
||||
putBoolean(Settings.Secure.SPELL_CHECKER_ENABLED, enabled);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public String getSelectedSpellChecker() {
|
||||
return getString(Settings.Secure.SELECTED_SPELL_CHECKER, "");
|
||||
|
||||
Reference in New Issue
Block a user