1 /*
2  * Copyright (C) 2008 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.internal.inputmethod;
18 
19 import android.graphics.Rect;
20 import android.os.Bundle;
21 import android.view.KeyEvent;
22 import android.view.MotionEvent;
23 import android.view.inputmethod.CompletionInfo;
24 import android.view.inputmethod.CursorAnchorInfo;
25 import android.view.inputmethod.EditorInfo;
26 import android.view.inputmethod.ExtractedText;
27 
28 import com.android.internal.inputmethod.IRemoteInputConnection;
29 
30 /**
31  * Sub-interface of IInputMethod which is safe to give to client applications.
32  * {@hide}
33  */
34 oneway interface IInputMethodSession {
updateExtractedText(int token, in ExtractedText text)35     void updateExtractedText(int token, in ExtractedText text);
36 
updateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)37     void updateSelection(int oldSelStart, int oldSelEnd,
38             int newSelStart, int newSelEnd,
39             int candidatesStart, int candidatesEnd);
40 
viewClicked(boolean focusChanged)41     void viewClicked(boolean focusChanged);
42 
updateCursor(in Rect newCursor)43     void updateCursor(in Rect newCursor);
44 
displayCompletions(in CompletionInfo[] completions)45     void displayCompletions(in CompletionInfo[] completions);
46 
appPrivateCommand(String action, in Bundle data)47     void appPrivateCommand(String action, in Bundle data);
48 
finishSession()49     void finishSession();
50 
updateCursorAnchorInfo(in CursorAnchorInfo cursorAnchorInfo)51     void updateCursorAnchorInfo(in CursorAnchorInfo cursorAnchorInfo);
52 
removeImeSurface()53     void removeImeSurface();
54 
finishInput()55     void finishInput();
56 
invalidateInput(in EditorInfo editorInfo, in IRemoteInputConnection inputConnection, int sessionId)57     void invalidateInput(in EditorInfo editorInfo, in IRemoteInputConnection inputConnection,
58             int sessionId);
59 }
60