OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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.chrome.shell; | 5 package org.chromium.chrome.shell; |
6 | 6 |
7 import android.content.Context; | 7 import android.content.Context; |
8 import android.util.AttributeSet; | 8 import android.util.AttributeSet; |
9 import android.view.LayoutInflater; | 9 import android.view.LayoutInflater; |
10 import android.view.View; | 10 import android.view.View; |
11 import android.view.ViewGroup; | 11 import android.view.ViewGroup; |
12 import android.view.ViewParent; | 12 import android.view.ViewParent; |
13 import android.view.inputmethod.InputMethodManager; | |
14 import android.widget.FrameLayout; | 13 import android.widget.FrameLayout; |
15 import android.widget.LinearLayout; | 14 import android.widget.LinearLayout; |
16 | 15 |
17 import org.chromium.base.VisibleForTesting; | 16 import org.chromium.base.VisibleForTesting; |
18 import org.chromium.chrome.browser.EmptyTabObserver; | 17 import org.chromium.chrome.browser.EmptyTabObserver; |
19 import org.chromium.chrome.browser.Tab; | 18 import org.chromium.chrome.browser.Tab; |
20 import org.chromium.chrome.browser.tabmodel.EmptyTabModelObserver; | 19 import org.chromium.chrome.browser.tabmodel.EmptyTabModelObserver; |
21 import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType; | 20 import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType; |
22 import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType; | 21 import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType; |
23 import org.chromium.chrome.browser.tabmodel.TabModelSelector; | 22 import org.chromium.chrome.browser.tabmodel.TabModelSelector; |
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 * Hide the tab switcher. | 219 * Hide the tab switcher. |
221 */ | 220 */ |
222 public void hideTabSwitcher() { | 221 public void hideTabSwitcher() { |
223 if (mTabModelWrapper == null) return; | 222 if (mTabModelWrapper == null) return; |
224 if (!isTabSwitcherVisible()) return; | 223 if (!isTabSwitcherVisible()) return; |
225 ViewParent parent = mTabModelWrapper.getParent(); | 224 ViewParent parent = mTabModelWrapper.getParent(); |
226 if (parent != null) { | 225 if (parent != null) { |
227 assert parent == mContentViewHolder; | 226 assert parent == mContentViewHolder; |
228 mContentViewHolder.removeView(mTabModelWrapper); | 227 mContentViewHolder.removeView(mTabModelWrapper); |
229 } | 228 } |
230 mToolbar.updateToolBarButtonState(); | 229 mToolbar.updateToolbarState(); |
231 } | 230 } |
232 | 231 |
233 /** | 232 /** |
234 * Shows the tab switcher. | 233 * Shows the tab switcher. |
235 */ | 234 */ |
236 private void showTabSwitcher() { | 235 private void showTabSwitcher() { |
237 if (mTabModelWrapper == null) { | 236 if (mTabModelWrapper == null) { |
238 mTabModelWrapper = (AccessibilityTabModelWrapper) LayoutInflater.fro
m( | 237 mTabModelWrapper = (AccessibilityTabModelWrapper) LayoutInflater.fro
m( |
239 mContentViewHolder.getContext()).inflate( | 238 mContentViewHolder.getContext()).inflate( |
240 R.layout.accessibility_tab_switcher, null); | 239 R.layout.accessibility_tab_switcher, null); |
241 mTabModelWrapper.setup(null); | 240 mTabModelWrapper.setup(null); |
242 mTabModelWrapper.setTabModelSelector(mTabModelSelector); | 241 mTabModelWrapper.setTabModelSelector(mTabModelSelector); |
243 } | 242 } |
244 | 243 |
245 if (mTabModelWrapper.getParent() == null) { | 244 if (mTabModelWrapper.getParent() == null) { |
246 mContentViewHolder.addView(mTabModelWrapper); | 245 mContentViewHolder.addView(mTabModelWrapper); |
247 } | 246 } |
248 mToolbar.updateToolBarButtonState(); | 247 mToolbar.updateToolbarState(); |
249 InputMethodManager mImm = (InputMethodManager) getContext().getSystemSer
vice( | |
250 Context.INPUT_METHOD_SERVICE); | |
251 mImm.hideSoftInputFromWindow(mContentViewHolder.getWindowToken(), 0); | |
252 } | 248 } |
253 | 249 |
254 /** | 250 /** |
255 * Returns the visibility status of the tab switcher. | 251 * Returns the visibility status of the tab switcher. |
256 */ | 252 */ |
257 public boolean isTabSwitcherVisible() { | 253 public boolean isTabSwitcherVisible() { |
258 return mTabModelWrapper != null && mTabModelWrapper.getParent() == mCont
entViewHolder; | 254 return mTabModelWrapper != null && mTabModelWrapper.getParent() == mCont
entViewHolder; |
259 } | 255 } |
260 | 256 |
261 /** | 257 /** |
(...skipping 23 matching lines...) Expand all Loading... |
285 return createTab(url, TabLaunchType.FROM_KEYBOARD); | 281 return createTab(url, TabLaunchType.FROM_KEYBOARD); |
286 } | 282 } |
287 | 283 |
288 /** | 284 /** |
289 * Returns the TabModelSelector containing the tabs. | 285 * Returns the TabModelSelector containing the tabs. |
290 */ | 286 */ |
291 public TabModelSelector getTabModelSelector() { | 287 public TabModelSelector getTabModelSelector() { |
292 return mTabModelSelector; | 288 return mTabModelSelector; |
293 } | 289 } |
294 } | 290 } |
OLD | NEW |