19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2008 The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage com.android.internal.view;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.graphics.Rect;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Bundle;
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.KeyEvent;
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.MotionEvent;
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.inputmethod.CompletionInfo;
24c2ddd6023688db5ecf6c586e05f55e262b4a802eYohei Yukawaimport android.view.inputmethod.CursorAnchorInfo;
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.inputmethod.ExtractedText;
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Sub-interface of IInputMethod which is safe to give to client applications.
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@hide}
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectoneway interface IInputMethodSession {
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void finishInput();
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void updateExtractedText(int token, in ExtractedText text);
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void updateSelection(int oldSelStart, int oldSelEnd,
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            int newSelStart, int newSelEnd,
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            int candidatesStart, int candidatesEnd);
39863fcd62171e55bc9f2105d9fb5877df982454d8satok
40863fcd62171e55bc9f2105d9fb5877df982454d8satok    void viewClicked(boolean focusChanged);
41863fcd62171e55bc9f2105d9fb5877df982454d8satok
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void updateCursor(in Rect newCursor);
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
44c28867a1d67121ce5963de135e3ae2b1dbd9a33dJeff Brown    void displayCompletions(in CompletionInfo[] completions);
45b38070caa5143ab9fd1883e0c7c879533a480bc7Victoria Lease
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void appPrivateCommand(String action, in Bundle data);
474df2423a947bcd3f024cc3d3a1a315a8dc428598The Android Open Source Project
484df2423a947bcd3f024cc3d3a1a315a8dc428598The Android Open Source Project    void toggleSoftInput(int showFlags, int hideFlags);
490c33ed2992b2eb484c229fd3322df14d97c10caaDevin Taylor
500c33ed2992b2eb484c229fd3322df14d97c10caaDevin Taylor    void finishSession();
51c2ddd6023688db5ecf6c586e05f55e262b4a802eYohei Yukawa
52c2ddd6023688db5ecf6c586e05f55e262b4a802eYohei Yukawa    void updateCursorAnchorInfo(in CursorAnchorInfo cursorAnchorInfo);
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
54