LatinIME/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java

51 lines
2 KiB
Java
Raw Normal View History

/*
* 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.inputmethod.latin.spellcheck;
import android.service.textservice.SpellCheckerService;
import android.util.Log;
import android.view.textservice.SuggestionsInfo;
import android.view.textservice.TextInfo;
/**
* Service for spell checking, using LatinIME's dictionaries and mechanisms.
*/
public class AndroidSpellCheckerService extends SpellCheckerService {
private static final String TAG = AndroidSpellCheckerService.class.getSimpleName();
private static final boolean DBG = true;
@Override
public SuggestionsInfo getSuggestions(TextInfo textInfo, int suggestionsLimit,
String locale) {
// TODO: implement this
final String text = textInfo.getText();
if (DBG) {
Log.w(TAG, "getSuggestions: " + text);
}
String[] candidates0 = new String[] {text, "candidate1", "candidate2", "candidate3"};
String[] candidates1 = new String[] {text, "candidateA", "candidateB"};
final int textLength = textInfo.getText().length() % 3;
if (textLength % 3 == 0) {
return new SuggestionsInfo(2
| SuggestionsInfo.RESULT_ATTR_IN_THE_DICTIONARY, candidates0);
} else if (textLength % 3 == 1) {
return new SuggestionsInfo(SuggestionsInfo.RESULT_ATTR_IN_THE_DICTIONARY, candidates1);
} else {
return new SuggestionsInfo(0, null);
}
}
}