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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/widget/OverviewListLayout.java

Issue 2784463002: Revert of chrome/android: Push EventFilters into the Layout implementations. (Closed)
Patch Set: Created 3 years, 9 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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.browser.widget; 5 package org.chromium.chrome.browser.widget;
6 6
7 import android.content.Context; 7 import android.content.Context;
8 import android.view.LayoutInflater; 8 import android.view.LayoutInflater;
9 import android.view.ViewGroup; 9 import android.view.ViewGroup;
10 import android.widget.FrameLayout; 10 import android.widget.FrameLayout;
11 import android.widget.ListView; 11 import android.widget.ListView;
12 12
13 import org.chromium.base.VisibleForTesting; 13 import org.chromium.base.VisibleForTesting;
14 import org.chromium.chrome.R; 14 import org.chromium.chrome.R;
15 import org.chromium.chrome.browser.compositor.layouts.Layout; 15 import org.chromium.chrome.browser.compositor.layouts.Layout;
16 import org.chromium.chrome.browser.compositor.layouts.LayoutRenderHost; 16 import org.chromium.chrome.browser.compositor.layouts.LayoutRenderHost;
17 import org.chromium.chrome.browser.compositor.layouts.LayoutUpdateHost; 17 import org.chromium.chrome.browser.compositor.layouts.LayoutUpdateHost;
18 import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager; 18 import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager;
19 import org.chromium.chrome.browser.compositor.layouts.eventfilter.BlackHoleEvent Filter;
20 import org.chromium.chrome.browser.compositor.layouts.eventfilter.EventFilter; 19 import org.chromium.chrome.browser.compositor.layouts.eventfilter.EventFilter;
21 import org.chromium.chrome.browser.compositor.scene_layer.SceneLayer; 20 import org.chromium.chrome.browser.compositor.scene_layer.SceneLayer;
22 import org.chromium.chrome.browser.tabmodel.TabModel; 21 import org.chromium.chrome.browser.tabmodel.TabModel;
23 import org.chromium.chrome.browser.tabmodel.TabModelSelector; 22 import org.chromium.chrome.browser.tabmodel.TabModelSelector;
24 import org.chromium.chrome.browser.tabmodel.TabModelUtils; 23 import org.chromium.chrome.browser.tabmodel.TabModelUtils;
25 import org.chromium.chrome.browser.widget.accessibility.AccessibilityTabModelAda pter.AccessibilityTabModelAdapterListener; 24 import org.chromium.chrome.browser.widget.accessibility.AccessibilityTabModelAda pter.AccessibilityTabModelAdapterListener;
26 import org.chromium.chrome.browser.widget.accessibility.AccessibilityTabModelWra pper; 25 import org.chromium.chrome.browser.widget.accessibility.AccessibilityTabModelWra pper;
27 26
28 /** 27 /**
29 * A {@link Layout} that shows the tabs as two {@link ListView}s, one for each { @link TabModel} to 28 * A {@link Layout} that shows the tabs as two {@link ListView}s, one for each { @link TabModel} to
30 * represent. 29 * represent.
31 */ 30 */
32 public class OverviewListLayout extends Layout implements AccessibilityTabModelA dapterListener { 31 public class OverviewListLayout extends Layout implements AccessibilityTabModelA dapterListener {
33 private AccessibilityTabModelWrapper mTabModelWrapper; 32 private AccessibilityTabModelWrapper mTabModelWrapper;
34 private final float mDpToPx; 33 private final float mDpToPx;
35 private final BlackHoleEventFilter mBlackHoleEventFilter;
36 private final SceneLayer mSceneLayer; 34 private final SceneLayer mSceneLayer;
37 35
38 public OverviewListLayout( 36 public OverviewListLayout(Context context, LayoutUpdateHost updateHost,
39 Context context, LayoutUpdateHost updateHost, LayoutRenderHost rende rHost) { 37 LayoutRenderHost renderHost, EventFilter eventFilter) {
40 super(context, updateHost, renderHost); 38 super(context, updateHost, renderHost, eventFilter);
41 mBlackHoleEventFilter = new BlackHoleEventFilter(context);
42 mDpToPx = context.getResources().getDisplayMetrics().density; 39 mDpToPx = context.getResources().getDisplayMetrics().density;
43 mSceneLayer = new SceneLayer(); 40 mSceneLayer = new SceneLayer();
44 } 41 }
45 42
46 @Override 43 @Override
47 public void attachViews(ViewGroup container) { 44 public void attachViews(ViewGroup container) {
48 if (mTabModelWrapper == null) { 45 if (mTabModelWrapper == null) {
49 mTabModelWrapper = 46 mTabModelWrapper =
50 (AccessibilityTabModelWrapper) LayoutInflater.from(container .getContext()) 47 (AccessibilityTabModelWrapper) LayoutInflater.from(container .getContext())
51 .inflate(R.layout.accessibility_tab_switcher, null); 48 .inflate(R.layout.accessibility_tab_switcher, null);
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 public void onTabClosureCommitted(long time, int tabId, boolean incognito) { 179 public void onTabClosureCommitted(long time, int tabId, boolean incognito) {
183 mTabModelWrapper.setStateBasedOnModel(); 180 mTabModelWrapper.setStateBasedOnModel();
184 } 181 }
185 182
186 @Override 183 @Override
187 public void showTab(int tabId) { 184 public void showTab(int tabId) {
188 onTabSelecting(0, tabId); 185 onTabSelecting(0, tabId);
189 } 186 }
190 187
191 @Override 188 @Override
192 protected EventFilter getEventFilter() {
193 return mBlackHoleEventFilter;
194 }
195
196 @Override
197 protected SceneLayer getSceneLayer() { 189 protected SceneLayer getSceneLayer() {
198 return mSceneLayer; 190 return mSceneLayer;
199 } 191 }
200 } 192 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698