Commit 51d19641 authored by Mohamed Heikal's avatar Mohamed Heikal Committed by Commit Bot

[Android] Improve tracing in ChromeActvity

Adds more tracing calls in ChromeActivity and other related startup code. Also
fixes two presubmit warnings.

Change-Id: Ida5d6ac0024dfa42a7e9c4aa3179bd7b55c4363f
Reviewed-on: https://chromium-review.googlesource.com/1072409
Commit-Queue: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: default avatarBernhard Bauer <bauerb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561901}
parent d00bd79c
......@@ -15,6 +15,7 @@ import android.view.View;
import android.view.ViewStub;
import android.widget.FrameLayout;
import org.chromium.base.TraceEvent;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.compositor.layouts.eventfilter.EdgeSwipeHandler;
import org.chromium.chrome.browser.compositor.resources.ResourceFactory;
......@@ -84,24 +85,30 @@ public class ToolbarControlContainer extends FrameLayout implements ControlConta
@Override
public void initWithToolbar(int toolbarLayoutId) {
ViewStub toolbarStub = (ViewStub) findViewById(R.id.toolbar_stub);
toolbarStub.setLayoutResource(toolbarLayoutId);
toolbarStub.inflate();
mToolbar = (Toolbar) findViewById(R.id.toolbar);
mToolbarContainer = (ToolbarViewResourceFrameLayout) findViewById(R.id.toolbar_container);
mToolbarContainer.setToolbar(mToolbar);
mMenuBtn = findViewById(R.id.menu_button);
if (mToolbar instanceof ToolbarTablet) {
// On tablet, draw a fake tab strip and toolbar until the compositor is ready to draw
// the real tab strip. (On phone, the toolbar is made entirely of Android views, which
// are already initialized.)
setBackgroundResource(R.drawable.toolbar_background);
try (TraceEvent te = TraceEvent.scoped("ToolbarControlContainer.initWithToolbar")) {
ViewStub toolbarStub = (ViewStub) findViewById(R.id.toolbar_stub);
toolbarStub.setLayoutResource(toolbarLayoutId);
toolbarStub.inflate();
mToolbar = (Toolbar) findViewById(R.id.toolbar);
mToolbarContainer =
(ToolbarViewResourceFrameLayout) findViewById(R.id.toolbar_container);
mToolbarContainer.setToolbar(mToolbar);
mMenuBtn = findViewById(R.id.menu_button);
if (mToolbar instanceof ToolbarTablet) {
// On tablet, draw a fake tab strip and toolbar until the compositor is ready to
// draw
// the real tab strip. (On phone, the toolbar is made entirely of Android views,
// which
// are already initialized.)
setBackgroundResource(R.drawable.toolbar_background);
}
assert mToolbar != null;
assert mMenuBtn != null;
}
assert mToolbar != null;
assert mMenuBtn != null;
}
@Override
......
......@@ -50,6 +50,7 @@ import android.widget.PopupWindow.OnDismissListener;
import android.widget.TextView;
import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.TraceEvent;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R;
......@@ -360,32 +361,35 @@ public class ToolbarPhone extends ToolbarLayout
@Override
public void onFinishInflate() {
super.onFinishInflate();
mLocationBar = (LocationBarPhone) findViewById(R.id.location_bar);
try (TraceEvent te = TraceEvent.scoped("ToolbarPhone.onFinishInflate")) {
super.onFinishInflate();
mLocationBar = (LocationBarPhone) findViewById(R.id.location_bar);
mToolbarButtonsContainer = (ViewGroup) findViewById(R.id.toolbar_buttons);
mToolbarButtonsContainer = (ViewGroup) findViewById(R.id.toolbar_buttons);
mHomeButton = (TintedImageButton) findViewById(R.id.home_button);
if (FeatureUtilities.isNewTabPageButtonEnabled()) changeIconToNTPIcon(mHomeButton);
mHomeButton = (TintedImageButton) findViewById(R.id.home_button);
if (FeatureUtilities.isNewTabPageButtonEnabled()) changeIconToNTPIcon(mHomeButton);
mUrlBar = (TextView) findViewById(R.id.url_bar);
mUrlBar = (TextView) findViewById(R.id.url_bar);
mUrlActionContainer = findViewById(R.id.url_action_container);
mUrlActionContainer = findViewById(R.id.url_action_container);
mBrowsingModeViews.add(mLocationBar);
mBrowsingModeViews.add(mLocationBar);
mToolbarBackground = new ColorDrawable(getToolbarColorForVisualState(VisualState.NORMAL));
mTabSwitcherAnimationBgOverlay =
new ColorDrawable(getToolbarColorForVisualState(VisualState.NORMAL));
mToolbarBackground =
new ColorDrawable(getToolbarColorForVisualState(VisualState.NORMAL));
mTabSwitcherAnimationBgOverlay =
new ColorDrawable(getToolbarColorForVisualState(VisualState.NORMAL));
initLocationBarBackground();
initLocationBarBackground();
setLayoutTransition(null);
setLayoutTransition(null);
mMenuButtonWrapper.setVisibility(View.VISIBLE);
inflateTabSwitchingResources();
mMenuButtonWrapper.setVisibility(View.VISIBLE);
inflateTabSwitchingResources();
setWillNotDraw(false);
setWillNotDraw(false);
}
}
/**
......
......@@ -31,6 +31,7 @@ import org.chromium.base.ActivityState;
import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.ApplicationStatus;
import org.chromium.base.Log;
import org.chromium.base.TraceEvent;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
......@@ -585,12 +586,13 @@ public class WebappActivity extends SingleTabActivity {
}
private void initializeWebappData() {
if (mWebappInfo.displayMode() == WebDisplayMode.FULLSCREEN) {
enterImmersiveMode();
try (TraceEvent te = TraceEvent.scoped("WebappActivity.initializeWebappData")) {
if (mWebappInfo.displayMode() == WebDisplayMode.FULLSCREEN) {
enterImmersiveMode();
}
ViewGroup contentView = (ViewGroup) findViewById(android.R.id.content);
mSplashController.showSplashScreen(getActivityType(), contentView, mWebappInfo);
}
ViewGroup contentView = (ViewGroup) findViewById(android.R.id.content);
mSplashController.showSplashScreen(getActivityType(), contentView, mWebappInfo);
}
protected void updateStorage(WebappDataStorage storage) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment