Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEnginePreferences.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEnginePreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEnginePreferences.java |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..8b374aaa00d646b433412bad6ec9f87a85f8ddac |
| --- /dev/null |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEnginePreferences.java |
| @@ -0,0 +1,77 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +package org.chromium.chrome.browser.preferences; |
| + |
| +import android.os.Bundle; |
| +import android.preference.PreferenceFragment; |
| +import android.view.LayoutInflater; |
| +import android.view.View; |
| +import android.view.ViewGroup; |
| +import android.widget.ListView; |
| + |
| +import org.chromium.chrome.R; |
| +import org.chromium.chrome.browser.search_engines.TemplateUrlService; |
| + |
| +/** |
| +* A preference fragment for selecting a default search engine. |
| +*/ |
| +public class SearchEnginePreferences extends PreferenceFragment |
| + implements View.OnClickListener, SearchEngineAdapter.SelectSearchEngineCallback { |
| + static final String PREF_SEARCH_ENGINE = "search_engine"; |
| + |
| + private ListView mListView; |
| + private View mCancelButton; |
| + private View mSaveButton; |
| + |
| + private SearchEngineAdapter mSearchEngineAdapter; |
| + private int mSelectedIndex; |
| + |
| + @Override |
| + public void onCreate(Bundle savedInstanceState) { |
| + super.onCreate(savedInstanceState); |
| + getActivity().setTitle(R.string.prefs_search_engine); |
| + mSearchEngineAdapter = new SearchEngineAdapter(getActivity(), this); |
| + } |
| + |
| + @Override |
| + public View onCreateView( |
| + LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { |
| + View view = inflater.inflate(R.layout.search_engine_layout, container, false); |
| + mListView = (ListView) view.findViewById(android.R.id.list); |
| + mListView.setAdapter(mSearchEngineAdapter); |
| + mListView.setDivider(null); |
| + mCancelButton = view.findViewById(R.id.cancel_button); |
| + mCancelButton.setOnClickListener(this); |
| + mSaveButton = view.findViewById(R.id.save_button); |
| + mSaveButton.setOnClickListener(this); |
| + return view; |
| + } |
| + |
| + @Override |
| + public void onActivityCreated(Bundle savedInstanceState) { |
| + super.onActivityCreated(savedInstanceState); |
| + } |
| + |
| + @Override |
| + public void onClick(View v) { |
| + if (v.getId() == R.id.cancel_button) { |
|
Ian Wen
2016/09/23 23:00:19
Nit: Use v == mCancelButton and v == mSaveButton.
ltian
2016/09/24 01:16:47
Done.
|
| + getActivity().finish(); |
| + } else if (v.getId() == R.id.save_button) { |
| + TemplateUrlService.getInstance().setSearchEngine(mSelectedIndex); |
| + getActivity().finish(); |
| + } |
| + } |
| + |
| + @Override |
| + public void currentSearchEngineDetermined(int selectedIndex) { |
| + mSelectedIndex = selectedIndex; |
| + } |
| + |
| + @Override |
| + public void onResume() { |
| + super.onResume(); |
| + mSearchEngineAdapter.notifyDataSetChanged(); |
| + } |
| +} |