1f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet/*
2f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * Copyright (C) 2011 The Android Open Source Project
3f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet *
4f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * Licensed under the Apache License, Version 2.0 (the "License");
5f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * you may not use this file except in compliance with the License.
6f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * You may obtain a copy of the License at
7f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet *
8f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet *      http://www.apache.org/licenses/LICENSE-2.0
9f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet *
10f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * Unless required by applicable law or agreed to in writing, software
11f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * distributed under the License is distributed on an "AS IS" BASIS,
12f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * See the License for the specific language governing permissions and
14f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * limitations under the License.
15f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet */
16f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
17f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetpackage com.android.internal.textservice;
18f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
19f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetimport com.android.tools.layoutlib.annotations.LayoutlibDelegate;
20f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
21f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetimport android.os.Bundle;
22f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetimport android.os.IBinder;
23f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetimport android.os.RemoteException;
24f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetimport android.view.textservice.SpellCheckerInfo;
25f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetimport android.view.textservice.SpellCheckerSubtype;
26f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
27f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
28f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet/**
29f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * Delegate used to provide new implementation of a select few methods of
30f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * {@link ITextServicesManager$Stub}
31f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet *
32f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * Through the layoutlib_create tool, the original  methods of Stub have been replaced
33f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet * by calls to methods of the same name in this delegate class.
34f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet *
35f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet */
36f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohetpublic class ITextServicesManager_Stub_Delegate {
37f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
38f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet    @LayoutlibDelegate
39f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet    public static ITextServicesManager asInterface(IBinder obj) {
40f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        // ignore the obj and return a fake interface implementation
41f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        return new FakeTextServicesManager();
42f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet    }
43f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
44f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet    private static class FakeTextServicesManager implements ITextServicesManager {
45f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
4646d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
47f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public void finishSpellCheckerService(ISpellCheckerSessionListener arg0)
48f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet                throws RemoteException {
49f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
50f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
51f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
52f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
5346d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
54f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public SpellCheckerInfo getCurrentSpellChecker(String arg0) throws RemoteException {
55f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
56f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            return null;
57f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
58f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
5946d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
60f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public SpellCheckerSubtype getCurrentSpellCheckerSubtype(String arg0, boolean arg1)
61f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet                throws RemoteException {
62f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
63f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            return null;
64f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
65f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
6646d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
67f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public SpellCheckerInfo[] getEnabledSpellCheckers() throws RemoteException {
68f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
69f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            return null;
70f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
71f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
7246d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
73f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public void getSpellCheckerService(String arg0, String arg1,
74f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet                ITextServicesSessionListener arg2, ISpellCheckerSessionListener arg3, Bundle arg4)
75f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet                throws RemoteException {
76f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
77f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
78f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
79f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
8046d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
81f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public boolean isSpellCheckerEnabled() throws RemoteException {
82f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
83f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            return false;
84f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
85f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
8646d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
87f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public void setCurrentSpellChecker(String arg0, String arg1) throws RemoteException {
88f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
89f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
90f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
91f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
9246d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
93f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public void setCurrentSpellCheckerSubtype(String arg0, int arg1) throws RemoteException {
94f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
95f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
96f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
97f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
9846d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
99f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public void setSpellCheckerEnabled(boolean arg0) throws RemoteException {
100f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
101f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
102f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
103f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
10446d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
105f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        public IBinder asBinder() {
106f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            // TODO Auto-generated method stub
107f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet            return null;
108f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet        }
109f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet
110f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet    }
111f1dee199a009fec5e3a5d1469f654098261f8b06Xavier Ducrohet }
112