diff options
Diffstat (limited to 'core/java/android/app')
| -rw-r--r-- | core/java/android/app/ContextImpl.java | 6 | ||||
| -rw-r--r-- | core/java/android/app/NativeActivity.java | 39 | ||||
| -rw-r--r-- | core/java/android/app/WallpaperManager.java | 6 |
3 files changed, 23 insertions, 28 deletions
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java index 9bf8830..19d495b 100644 --- a/core/java/android/app/ContextImpl.java +++ b/core/java/android/app/ContextImpl.java @@ -371,9 +371,9 @@ class ContextImpl extends Context { return new DisplayManager(ctx.getOuterContext()); }}); - registerService(INPUT_METHOD_SERVICE, new ServiceFetcher() { - public Object createService(ContextImpl ctx) { - return InputMethodManager.getInstance(ctx); + registerService(INPUT_METHOD_SERVICE, new StaticServiceFetcher() { + public Object createStaticService() { + return InputMethodManager.getInstance(); }}); registerService(TEXT_SERVICES_MANAGER_SERVICE, new ServiceFetcher() { diff --git a/core/java/android/app/NativeActivity.java b/core/java/android/app/NativeActivity.java index 51867bc..7d8a36e 100644 --- a/core/java/android/app/NativeActivity.java +++ b/core/java/android/app/NativeActivity.java @@ -1,7 +1,20 @@ +/* + * Copyright (C) 2010 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 android.app; -import com.android.internal.view.IInputMethodSession; - import android.content.Context; import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; @@ -25,7 +38,6 @@ import android.view.ViewTreeObserver.OnGlobalLayoutListener; import android.view.inputmethod.InputMethodManager; import java.io.File; -import java.lang.ref.WeakReference; /** * Convenience for implementing an activity that will be implemented @@ -65,7 +77,6 @@ public class NativeActivity extends Activity implements SurfaceHolder.Callback2, private NativeContentView mNativeContentView; private InputMethodManager mIMM; - private InputMethodCallback mInputMethodCallback; private int mNativeHandle; @@ -117,22 +128,6 @@ public class NativeActivity extends Activity implements SurfaceHolder.Callback2, super(context, attrs); } } - - static final class InputMethodCallback implements InputMethodManager.FinishedEventCallback { - WeakReference<NativeActivity> mNa; - - InputMethodCallback(NativeActivity na) { - mNa = new WeakReference<NativeActivity>(na); - } - - @Override - public void finishedEvent(int seq, boolean handled) { - NativeActivity na = mNa.get(); - if (na != null) { - na.finishPreDispatchKeyEventNative(na.mNativeHandle, seq, handled); - } - } - } @Override protected void onCreate(Bundle savedInstanceState) { @@ -141,7 +136,6 @@ public class NativeActivity extends Activity implements SurfaceHolder.Callback2, ActivityInfo ai; mIMM = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); - mInputMethodCallback = new InputMethodCallback(this); getWindow().takeSurface(this); getWindow().takeInputQueue(this); @@ -353,7 +347,8 @@ public class NativeActivity extends Activity implements SurfaceHolder.Callback2, } void preDispatchKeyEvent(KeyEvent event, int seq) { - mIMM.dispatchInputEvent(this, seq, event, mInputMethodCallback); + // FIXME: Input dispatch should be redirected back through ViewRootImpl again. + finishPreDispatchKeyEventNative(mNativeHandle, seq, false); } void setWindowFlags(int flags, int mask) { diff --git a/core/java/android/app/WallpaperManager.java b/core/java/android/app/WallpaperManager.java index 9c0064e..3342068 100644 --- a/core/java/android/app/WallpaperManager.java +++ b/core/java/android/app/WallpaperManager.java @@ -709,7 +709,7 @@ public class WallpaperManager { public void setWallpaperOffsets(IBinder windowToken, float xOffset, float yOffset) { try { //Log.v(TAG, "Sending new wallpaper offsets from app..."); - WindowManagerGlobal.getWindowSession(mContext.getMainLooper()).setWallpaperPosition( + WindowManagerGlobal.getWindowSession().setWallpaperPosition( windowToken, xOffset, yOffset, mWallpaperXStep, mWallpaperYStep); //Log.v(TAG, "...app returning after sending offsets!"); } catch (RemoteException e) { @@ -747,7 +747,7 @@ public class WallpaperManager { int x, int y, int z, Bundle extras) { try { //Log.v(TAG, "Sending new wallpaper offsets from app..."); - WindowManagerGlobal.getWindowSession(mContext.getMainLooper()).sendWallpaperCommand( + WindowManagerGlobal.getWindowSession().sendWallpaperCommand( windowToken, action, x, y, z, extras, false); //Log.v(TAG, "...app returning after sending offsets!"); } catch (RemoteException e) { @@ -767,7 +767,7 @@ public class WallpaperManager { */ public void clearWallpaperOffsets(IBinder windowToken) { try { - WindowManagerGlobal.getWindowSession(mContext.getMainLooper()).setWallpaperPosition( + WindowManagerGlobal.getWindowSession().setWallpaperPosition( windowToken, -1, -1, -1, -1); } catch (RemoteException e) { // Ignore. |
