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

Side by Side Diff: chrome/android/shell/java/src/org/chromium/chrome/shell/TabManager.java

Issue 724683002: Keyboard should not be displayed in tab switcher mode. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Review Changes Created 6 years, 1 month 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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;
13 import android.widget.FrameLayout; 14 import android.widget.FrameLayout;
14 import android.widget.LinearLayout; 15 import android.widget.LinearLayout;
15 16
16 import org.chromium.chrome.browser.EmptyTabObserver; 17 import org.chromium.chrome.browser.EmptyTabObserver;
17 import org.chromium.chrome.browser.Tab; 18 import org.chromium.chrome.browser.Tab;
18 import org.chromium.chrome.browser.tabmodel.EmptyTabModelObserver; 19 import org.chromium.chrome.browser.tabmodel.EmptyTabModelObserver;
19 import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType; 20 import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
20 import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType; 21 import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType;
21 import org.chromium.chrome.browser.widget.accessibility.AccessibilityTabModelWra pper; 22 import org.chromium.chrome.browser.widget.accessibility.AccessibilityTabModelWra pper;
22 import org.chromium.content.browser.ContentVideoViewClient; 23 import org.chromium.content.browser.ContentVideoViewClient;
(...skipping 14 matching lines...) Expand all
37 private ViewGroup mContentViewHolder; 38 private ViewGroup mContentViewHolder;
38 private ContentViewRenderView mContentViewRenderView; 39 private ContentViewRenderView mContentViewRenderView;
39 private ChromeShellToolbar mToolbar; 40 private ChromeShellToolbar mToolbar;
40 41
41 private ChromeShellTab mCurrentTab; 42 private ChromeShellTab mCurrentTab;
42 43
43 private String mStartupUrl = DEFAULT_URL; 44 private String mStartupUrl = DEFAULT_URL;
44 45
45 private ChromeShellTabModelSelector mTabModelSelector; 46 private ChromeShellTabModelSelector mTabModelSelector;
46 private AccessibilityTabModelWrapper mTabModelWrapper; 47 private AccessibilityTabModelWrapper mTabModelWrapper;
48 private InputMethodManager mImm;
47 49
48 private final EmptyTabModelObserver mTabModelObserver = new EmptyTabModelObs erver() { 50 private final EmptyTabModelObserver mTabModelObserver = new EmptyTabModelObs erver() {
49 @Override 51 @Override
50 public void didSelectTab(Tab tab, TabSelectionType type, int lastId) { 52 public void didSelectTab(Tab tab, TabSelectionType type, int lastId) {
51 assert tab instanceof ChromeShellTab; 53 assert tab instanceof ChromeShellTab;
52 setCurrentTab((ChromeShellTab) tab); 54 setCurrentTab((ChromeShellTab) tab);
53 hideTabSwitcher(); 55 hideTabSwitcher();
54 } 56 }
55 57
56 @Override 58 @Override
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 @Override 90 @Override
89 protected void onReadyToRender() { 91 protected void onReadyToRender() {
90 if (mCurrentTab == null) createTab(mStartupUrl, TabLaunchType.FR OM_RESTORE); 92 if (mCurrentTab == null) createTab(mStartupUrl, TabLaunchType.FR OM_RESTORE);
91 } 93 }
92 }; 94 };
93 mContentViewRenderView.onNativeLibraryLoaded(window); 95 mContentViewRenderView.onNativeLibraryLoaded(window);
94 mContentViewHolder.addView(mContentViewRenderView, 96 mContentViewHolder.addView(mContentViewRenderView,
95 new FrameLayout.LayoutParams( 97 new FrameLayout.LayoutParams(
96 FrameLayout.LayoutParams.MATCH_PARENT, 98 FrameLayout.LayoutParams.MATCH_PARENT,
97 FrameLayout.LayoutParams.MATCH_PARENT)); 99 FrameLayout.LayoutParams.MATCH_PARENT));
100 mImm = (InputMethodManager) getContext().getSystemService(
101 Context.INPUT_METHOD_SERVICE);
98 } 102 }
99 103
100 /** 104 /**
101 * @param startupUrl The URL that the first tab should navigate to. 105 * @param startupUrl The URL that the first tab should navigate to.
102 */ 106 */
103 public void setStartupUrl(String startupUrl) { 107 public void setStartupUrl(String startupUrl) {
104 mStartupUrl = startupUrl; 108 mStartupUrl = startupUrl;
105 } 109 }
106 110
107 /** 111 /**
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 mContentViewHolder.getContext()).inflate( 213 mContentViewHolder.getContext()).inflate(
210 R.layout.accessibility_tab_switcher, null); 214 R.layout.accessibility_tab_switcher, null);
211 mTabModelWrapper.setup(null); 215 mTabModelWrapper.setup(null);
212 mTabModelWrapper.setTabModelSelector(mTabModelSelector); 216 mTabModelWrapper.setTabModelSelector(mTabModelSelector);
213 } 217 }
214 218
215 if (mTabModelWrapper.getParent() == null) { 219 if (mTabModelWrapper.getParent() == null) {
216 mContentViewHolder.addView(mTabModelWrapper); 220 mContentViewHolder.addView(mTabModelWrapper);
217 } 221 }
218 mToolbar.showAddButton(true); 222 mToolbar.showAddButton(true);
223 mImm.hideSoftInputFromWindow(mContentViewHolder.getWindowToken(), 0);
Bernhard Bauer 2014/11/13 11:52:54 Just get the InputMethodManager directly here?
divya.bansal 2014/11/13 13:53:51 Done.
219 } 224 }
220 225
221 /** 226 /**
222 * Returns the visibility status of the tab switcher. 227 * Returns the visibility status of the tab switcher.
223 */ 228 */
224 public boolean isTabSwitcherVisible() { 229 public boolean isTabSwitcherVisible() {
225 return mTabModelWrapper != null && mTabModelWrapper.getParent() == mCont entViewHolder; 230 return mTabModelWrapper != null && mTabModelWrapper.getParent() == mCont entViewHolder;
226 } 231 }
227 232
228 /** 233 /**
(...skipping 16 matching lines...) Expand all
245 LoadUrlParams loadUrlParams = new LoadUrlParams(url); 250 LoadUrlParams loadUrlParams = new LoadUrlParams(url);
246 loadUrlParams.setTransitionType(PageTransition.TYPED | PageTransition.FR OM_ADDRESS_BAR); 251 loadUrlParams.setTransitionType(PageTransition.TYPED | PageTransition.FR OM_ADDRESS_BAR);
247 Tab tab = mTabModelSelector.getCurrentTab(); 252 Tab tab = mTabModelSelector.getCurrentTab();
248 if (tab != null) { 253 if (tab != null) {
249 tab.loadUrl(loadUrlParams); 254 tab.loadUrl(loadUrlParams);
250 return tab; 255 return tab;
251 } 256 }
252 return createTab(url, TabLaunchType.FROM_KEYBOARD); 257 return createTab(url, TabLaunchType.FROM_KEYBOARD);
253 } 258 }
254 } 259 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698