Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 package org.chromium.chrome.browser.contextualsearch; | |
| 6 | |
| 7 import org.chromium.base.annotations.CalledByNative; | |
| 8 | |
| 9 /** | |
| 10 * Provides a context in which to search, and links to the native ContextualSear chContext. | |
| 11 * Includes the selection, selection offsets, surrounding page content, etc. | |
| 12 */ | |
| 13 public class ContextualSearchContext { | |
| 14 private long mNativePointer; | |
| 15 | |
| 16 private final String mSelection; | |
|
Theresa
2017/03/08 01:54:38
nit: final variables go first.
Donn Denman
2017/03/09 17:35:04
Done.
| |
| 17 | |
| 18 // Whether the context should include brief page content or a larger amount as would be | |
| 19 // appropriate when resolving the search term. | |
| 20 private boolean mUseBriefPageContent; | |
| 21 | |
| 22 /** | |
| 23 * Constructs a context that cannot resolve a search term and has a small am ount of | |
| 24 * page content. | |
| 25 */ | |
| 26 ContextualSearchContext(String selection) { | |
| 27 mNativePointer = nativeInit(); | |
| 28 mUseBriefPageContent = true; | |
| 29 mSelection = selection; | |
| 30 nativeSetUseBriefPageContent(getNativePointer(), true); | |
| 31 } | |
| 32 | |
| 33 /** | |
| 34 * Constructs a context that can resolve a search term and has a large amoun t of | |
| 35 * page content. | |
| 36 */ | |
| 37 ContextualSearchContext(String selection, String homeCountry, boolean maySen dBasePageUrl) { | |
|
Theresa
2017/03/08 01:54:38
nit: JavaDocs for parameters
Donn Denman
2017/03/09 17:35:04
Done.
| |
| 38 mNativePointer = nativeInit(); | |
| 39 mUseBriefPageContent = false; | |
| 40 mSelection = selection; | |
| 41 nativeSetUseBriefPageContent(getNativePointer(), false); | |
| 42 nativeSetProperties(getNativePointer(), selection, homeCountry, maySendB asePageUrl); | |
| 43 } | |
| 44 | |
| 45 /** | |
| 46 * This method should be called to clean up storage when an instance of this class is | |
| 47 * no longer in use. | |
| 48 */ | |
| 49 void destroy() { | |
| 50 assert mNativePointer != 0; | |
| 51 nativeDestroy(mNativePointer); | |
| 52 mNativePointer = 0; | |
| 53 } | |
| 54 | |
| 55 String getSelection() { | |
| 56 return mSelection; | |
| 57 } | |
| 58 | |
| 59 // ========================================================================= =================== | |
| 60 // Native callback support. | |
| 61 // ========================================================================= =================== | |
| 62 | |
| 63 @CalledByNative | |
| 64 private void clearNativePointer() { | |
|
Theresa
2017/03/08 01:54:38
When is this called vs destroy()?
Donn Denman
2017/03/09 17:35:04
Added JavaDoc.
Destroy is called from the java, b
Theresa
2017/03/09 18:29:44
What I was trying to ask is when is the object des
Donn Denman
2017/03/09 22:00:25
BTW, here's that sample code I was telling you abo
| |
| 65 assert mNativePointer != 0; | |
| 66 mNativePointer = 0; | |
| 67 } | |
| 68 | |
| 69 @CalledByNative | |
| 70 private long getNativePointer() { | |
| 71 assert mNativePointer != 0; | |
| 72 return mNativePointer; | |
| 73 } | |
| 74 | |
| 75 // ========================================================================= =================== | |
| 76 // Native methods. | |
| 77 // ========================================================================= =================== | |
| 78 private native long nativeInit(); | |
| 79 private native void nativeDestroy(long nativeContextualSearchContext); | |
| 80 private native void nativeSetUseBriefPageContent( | |
| 81 long nativeContextualSearchContext, boolean useBriefPageContent); | |
| 82 private native void nativeSetProperties(long nativeContextualSearchContext, String selection, | |
| 83 String homeCountry, boolean maySendBasePageUrl); | |
| 84 } | |
| OLD | NEW |