Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(238)

Side by Side Diff: ui/platform_window/android/java/src/org/chromium/ui/PlatformWindowAndroid.java

Issue 2847523002: Android: Remove GetApplicationContext part 4 (Closed)
Patch Set: fix cronet Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.ui; 5 package org.chromium.ui;
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.content.Context;
9 import android.view.KeyEvent; 8 import android.view.KeyEvent;
10 import android.view.MotionEvent; 9 import android.view.MotionEvent;
11 import android.view.Surface; 10 import android.view.Surface;
12 import android.view.SurfaceHolder; 11 import android.view.SurfaceHolder;
13 import android.view.SurfaceView; 12 import android.view.SurfaceView;
14 import android.view.View; 13 import android.view.View;
15 import android.view.inputmethod.EditorInfo; 14 import android.view.inputmethod.EditorInfo;
16 import android.view.inputmethod.InputConnection; 15 import android.view.inputmethod.InputConnection;
17 16
17 import org.chromium.base.ContextUtils;
18 import org.chromium.base.annotations.CalledByNative; 18 import org.chromium.base.annotations.CalledByNative;
19 import org.chromium.base.annotations.JNINamespace; 19 import org.chromium.base.annotations.JNINamespace;
20 20
21 /** 21 /**
22 * Exposes SurfaceView to native code. 22 * Exposes SurfaceView to native code.
23 */ 23 */
24 @JNINamespace("ui") 24 @JNINamespace("ui")
25 public class PlatformWindowAndroid extends SurfaceView { 25 public class PlatformWindowAndroid extends SurfaceView {
26 26
27 private long mNativeMojoViewport; 27 private long mNativeMojoViewport;
28 private final SurfaceHolder.Callback mSurfaceCallback; 28 private final SurfaceHolder.Callback mSurfaceCallback;
29 private final PlatformImeControllerAndroid mImeController; 29 private final PlatformImeControllerAndroid mImeController;
30 30
31 @CalledByNative 31 @CalledByNative
32 public static PlatformWindowAndroid createForActivity( 32 public static PlatformWindowAndroid createForActivity(
33 Activity activity, long nativeViewport, long nativeImeController) { 33 long nativeViewport, long nativeImeController) {
34 PlatformWindowAndroid rv = 34 PlatformWindowAndroid rv = new PlatformWindowAndroid(nativeViewport, nat iveImeController);
35 new PlatformWindowAndroid(activity, nativeViewport, nativeImeCon troller); 35 ((Activity) ContextUtils.getApplicationContext()).setContentView(rv);
agrieve 2017/05/04 15:55:50 You're casting the application context to an Activ
Peter Wen 2017/05/04 17:39:26 Maybe this is actually never called, but native do
agrieve 2017/05/04 18:24:51 aha. Did some codesearching and my best guess is t
36 activity.setContentView(rv);
37 return rv; 36 return rv;
38 } 37 }
39 38
40 public PlatformWindowAndroid(Context context, long nativeViewport, long nati veImeController) { 39 private PlatformWindowAndroid(long nativeViewport, long nativeImeController) {
41 super(context); 40 super(ContextUtils.getApplicationContext());
42 41
43 setFocusable(true); 42 setFocusable(true);
44 setFocusableInTouchMode(true); 43 setFocusableInTouchMode(true);
45 44
46 mNativeMojoViewport = nativeViewport; 45 mNativeMojoViewport = nativeViewport;
47 assert mNativeMojoViewport != 0; 46 assert mNativeMojoViewport != 0;
48 47
49 final float density = context.getResources().getDisplayMetrics().density ; 48 final float density =
49 ContextUtils.getApplicationContext().getResources().getDisplayMe trics().density;
50 50
51 mSurfaceCallback = new SurfaceHolder.Callback() { 51 mSurfaceCallback = new SurfaceHolder.Callback() {
52 @Override 52 @Override
53 public void surfaceChanged(SurfaceHolder holder, int format, int wid th, int height) { 53 public void surfaceChanged(SurfaceHolder holder, int format, int wid th, int height) {
54 assert mNativeMojoViewport != 0; 54 assert mNativeMojoViewport != 0;
55 nativeSurfaceSetSize(mNativeMojoViewport, width, height, density ); 55 nativeSurfaceSetSize(mNativeMojoViewport, width, height, density );
56 } 56 }
57 57
58 @Override 58 @Override
59 public void surfaceCreated(SurfaceHolder holder) { 59 public void surfaceCreated(SurfaceHolder holder) {
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 private static native void nativeSurfaceSetSize( 198 private static native void nativeSurfaceSetSize(
199 long nativePlatformWindowAndroid, int width, int height, float densi ty); 199 long nativePlatformWindowAndroid, int width, int height, float densi ty);
200 200
201 private static native boolean nativeTouchEvent(long nativePlatformWindowAndr oid, long timeMs, 201 private static native boolean nativeTouchEvent(long nativePlatformWindowAndr oid, long timeMs,
202 int maskedAction, int pointerId, float x, float y, float pressure, f loat touchMajor, 202 int maskedAction, int pointerId, float x, float y, float pressure, f loat touchMajor,
203 float touchMinor, float orientation, float hWheel, float vWheel); 203 float touchMinor, float orientation, float hWheel, float vWheel);
204 204
205 private static native boolean nativeKeyEvent( 205 private static native boolean nativeKeyEvent(
206 long nativePlatformWindowAndroid, boolean pressed, int keyCode, int unicodeCharacter); 206 long nativePlatformWindowAndroid, boolean pressed, int keyCode, int unicodeCharacter);
207 } 207 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698