LastComposedWord.java revision 267563d1bb4d8091293fbd8774f0f95ef59f03c4
1267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard/*
2267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * Copyright (C) 2012 The Android Open Source Project
3267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard *
4267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * Licensed under the Apache License, Version 2.0 (the "License"); you may not
5267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * use this file except in compliance with the License. You may obtain a copy of
6267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * the License at
7267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard *
8267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * http://www.apache.org/licenses/LICENSE-2.0
9267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard *
10267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * Unless required by applicable law or agreed to in writing, software
11267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * License for the specific language governing permissions and limitations under
14267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * the License.
15267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard */
16267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard
17267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalardpackage com.android.inputmethod.latin;
18267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard
19267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard/**
20267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * This class encapsulates data about a word previously composed, but that has been
21267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard * committed already. This is used for resuming suggestion, and cancel auto-correction.
22267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard */
23267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalardpublic class LastComposedWord {
24267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // COMMIT_TYPE_USER_TYPED_WORD is used when the word committed is the exact typed word, with
25267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // no hinting from the IME. It happens when some external event happens (rotating the device,
26267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // for example) or when auto-correction is off by settings or editor attributes.
27267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    public static final int COMMIT_TYPE_USER_TYPED_WORD = 0;
28267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // COMMIT_TYPE_MANUAL_PICK is used when the user pressed a field in the suggestion strip.
29267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    public static final int COMMIT_TYPE_MANUAL_PICK = 1;
30267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // COMMIT_TYPE_DECIDED_WORD is used when the IME commits the word it decided was best
31267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // for the current user input. It may be different from what the user typed (true auto-correct)
32267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // or it may be exactly what the user typed if it's in the dictionary or the IME does not have
33267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // enough confidence in any suggestion to auto-correct (auto-correct to typed word).
34267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    public static final int COMMIT_TYPE_DECIDED_WORD = 2;
35267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // COMMIT_TYPE_CANCEL_AUTO_CORRECT is used upon committing back the old word upon cancelling
36267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    // an auto-correction.
37267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    public static final int COMMIT_TYPE_CANCEL_AUTO_CORRECT = 3;
38267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard
39267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    public final int mType;
40267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard
41267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    public LastComposedWord(final int type) {
42267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard        mType = type;
43267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard    }
44267563d1bb4d8091293fbd8774f0f95ef59f03c4Jean Chalard}
45