From 733a0ea4064a4bae50d0716b6331a3a98e18def9 Mon Sep 17 00:00:00 2001 From: Yohei Yukawa Date: Sun, 24 Jun 2018 15:52:36 -0700 Subject: Merge inputmethodcommon into LatinIME repo This is a preparation to deprecate frameworks/opt/inputmethodcommon repository. Currently repository 'inputmethodcommon' is used only from LatinIME. Having such a repository only for one project is overkill. Also, to add gradle build support to LatinIME project, it would be much easier LatinIME didn't have such a dependency. This CL mechanically copies files in 'inputmethodcommon' repository to 'LatinIME' repository. In theory there should be no behavior change. Bug: 110741521 Test: tapas LatinIME && make -j Change-Id: I3fabb038be9a944dcd9ef79ffcc89800a5f0bf5a --- .../InputMethodSettingsFragment.java | 95 ++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 java/src/com/android/inputmethodcommon/InputMethodSettingsFragment.java (limited to 'java/src/com/android/inputmethodcommon/InputMethodSettingsFragment.java') diff --git a/java/src/com/android/inputmethodcommon/InputMethodSettingsFragment.java b/java/src/com/android/inputmethodcommon/InputMethodSettingsFragment.java new file mode 100644 index 000000000..49f0b87f1 --- /dev/null +++ b/java/src/com/android/inputmethodcommon/InputMethodSettingsFragment.java @@ -0,0 +1,95 @@ +/* + * Copyright (C) 2011 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 com.android.inputmethodcommon; + +import android.content.Context; +import android.graphics.drawable.Drawable; +import android.os.Bundle; +import android.preference.PreferenceFragment; + +/** + * This is a helper class for an IME's settings preference fragment. It's recommended for every + * IME to have its own settings preference fragment which inherits this class. + */ +public abstract class InputMethodSettingsFragment extends PreferenceFragment + implements InputMethodSettingsInterface { + private final InputMethodSettingsImpl mSettings = new InputMethodSettingsImpl(); + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + final Context context = getActivity(); + setPreferenceScreen(getPreferenceManager().createPreferenceScreen(context)); + mSettings.init(context, getPreferenceScreen()); + } + + /** + * {@inheritDoc} + */ + @Override + public void setInputMethodSettingsCategoryTitle(int resId) { + mSettings.setInputMethodSettingsCategoryTitle(resId); + } + + /** + * {@inheritDoc} + */ + @Override + public void setInputMethodSettingsCategoryTitle(CharSequence title) { + mSettings.setInputMethodSettingsCategoryTitle(title); + } + + /** + * {@inheritDoc} + */ + @Override + public void setSubtypeEnablerTitle(int resId) { + mSettings.setSubtypeEnablerTitle(resId); + } + + /** + * {@inheritDoc} + */ + @Override + public void setSubtypeEnablerTitle(CharSequence title) { + mSettings.setSubtypeEnablerTitle(title); + } + + /** + * {@inheritDoc} + */ + @Override + public void setSubtypeEnablerIcon(int resId) { + mSettings.setSubtypeEnablerIcon(resId); + } + + /** + * {@inheritDoc} + */ + @Override + public void setSubtypeEnablerIcon(Drawable drawable) { + mSettings.setSubtypeEnablerIcon(drawable); + } + + /** + * {@inheritDoc} + */ + @Override + public void onResume() { + super.onResume(); + mSettings.updateSubtypeEnabler(); + } +} -- cgit v1.2.3-83-g751a