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

Side by Side Diff: device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderAdapter.java

Issue 2847523002: Android: Remove GetApplicationContext part 4 (Closed)
Patch Set: Rebase and fix build 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.device.geolocation; 5 package org.chromium.device.geolocation;
6 6
7 import android.content.Context;
8 import android.location.Location; 7 import android.location.Location;
9 8
10 import org.chromium.base.Log; 9 import org.chromium.base.Log;
11 import org.chromium.base.ThreadUtils; 10 import org.chromium.base.ThreadUtils;
12 import org.chromium.base.VisibleForTesting; 11 import org.chromium.base.VisibleForTesting;
13 import org.chromium.base.annotations.CalledByNative; 12 import org.chromium.base.annotations.CalledByNative;
14 import org.chromium.base.annotations.MainDex; 13 import org.chromium.base.annotations.MainDex;
15 14
16 import java.util.concurrent.FutureTask; 15 import java.util.concurrent.FutureTask;
17 16
18 /** 17 /**
19 * Implements the Java side of LocationProviderAndroid. 18 * Implements the Java side of LocationProviderAndroid.
20 * Delegates all real functionality to the implementation 19 * Delegates all real functionality to the implementation
21 * returned from LocationProviderFactory. 20 * returned from LocationProviderFactory.
22 * See detailed documentation on 21 * See detailed documentation on
23 * content/browser/geolocation/location_api_adapter_android.h. 22 * content/browser/geolocation/location_api_adapter_android.h.
24 * Based on android.webkit.GeolocationService.java 23 * Based on android.webkit.GeolocationService.java
25 */ 24 */
26 @MainDex 25 @MainDex
27 @VisibleForTesting 26 @VisibleForTesting
28 public class LocationProviderAdapter { 27 public class LocationProviderAdapter {
29 private static final String TAG = "cr_LocationProvider"; 28 private static final String TAG = "cr_LocationProvider";
30 29
31 // Delegate handling the real work in the main thread. 30 // Delegate handling the real work in the main thread.
32 private LocationProviderFactory.LocationProvider mImpl; 31 private LocationProviderFactory.LocationProvider mImpl;
33 32
34 private LocationProviderAdapter(Context context) { 33 private LocationProviderAdapter() {
35 mImpl = LocationProviderFactory.create(context); 34 mImpl = LocationProviderFactory.create();
36 } 35 }
37 36
38 @CalledByNative 37 @CalledByNative
39 public static LocationProviderAdapter create(Context context) { 38 public static LocationProviderAdapter create() {
40 return new LocationProviderAdapter(context); 39 return new LocationProviderAdapter();
41 } 40 }
42 41
43 /** 42 /**
44 * Start listening for location updates until we're told to quit. May be cal led in any thread. 43 * Start listening for location updates until we're told to quit. May be cal led in any thread.
45 * @param enableHighAccuracy Whether or not to enable high accuracy location providers. 44 * @param enableHighAccuracy Whether or not to enable high accuracy location providers.
46 */ 45 */
47 @CalledByNative 46 @CalledByNative
48 public boolean start(final boolean enableHighAccuracy) { 47 public boolean start(final boolean enableHighAccuracy) {
49 FutureTask<Void> task = new FutureTask<Void>(new Runnable() { 48 FutureTask<Void> task = new FutureTask<Void>(new Runnable() {
50 @Override 49 @Override
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 Log.e(TAG, "newErrorAvailable %s", message); 89 Log.e(TAG, "newErrorAvailable %s", message);
91 nativeNewErrorAvailable(message); 90 nativeNewErrorAvailable(message);
92 } 91 }
93 92
94 // Native functions 93 // Native functions
95 private static native void nativeNewLocationAvailable(double latitude, doubl e longitude, 94 private static native void nativeNewLocationAvailable(double latitude, doubl e longitude,
96 double timeStamp, boolean hasAltitude, double altitude, boolean hasA ccuracy, 95 double timeStamp, boolean hasAltitude, double altitude, boolean hasA ccuracy,
97 double accuracy, boolean hasHeading, double heading, boolean hasSpee d, double speed); 96 double accuracy, boolean hasHeading, double heading, boolean hasSpee d, double speed);
98 private static native void nativeNewErrorAvailable(String message); 97 private static native void nativeNewErrorAvailable(String message);
99 } 98 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698