diff options
author | Karthik Gopalan <quic_gkarth@quicinc.com> | 2022-03-15 15:11:06 +0530 |
---|---|---|
committer | Karthik Gopalan <quic_gkarth@quicinc.com> | 2022-03-24 09:12:32 +0000 |
commit | 123e29b617e75aeaaf461a136be146953082094a (patch) | |
tree | e01d0db736ae415c9f0cf6b65cb30364797ba969 /services | |
parent | 12bb6d3cbf05cea529a165917c7430af607056f2 (diff) |
perf: Enable Animation-Boost & Activity Trigger
Enable Animation Boost & Activity Trigger, which
was refactored.
CRs-Fixed: 3158078
Bug: 226046354
Change-Id: Ie3858d2e0afc5e08bac9edb673f89ecef8f4218c
Diffstat (limited to 'services')
-rw-r--r-- | services/core/java/com/android/server/wm/Task.java | 6 | ||||
-rw-r--r-- | services/core/java/com/android/server/wm/TaskFragment.java | 59 |
2 files changed, 32 insertions, 33 deletions
diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index ba5e32891255..69c3c6e46346 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -195,7 +195,6 @@ import android.window.WindowContainerToken; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.app.ActivityTrigger; import com.android.internal.app.IVoiceInteractor; import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.XmlUtils; @@ -284,9 +283,6 @@ class Task extends TaskFragment { // code. static final int PERSIST_TASK_VERSION = 1; - //ActivityTrigger - static final ActivityTrigger mActivityTrigger = new ActivityTrigger(); - private float mShadowRadius = 0; /** @@ -306,8 +302,6 @@ class Task extends TaskFragment { // Do not move the root task as a part of reparenting static final int REPARENT_LEAVE_ROOT_TASK_IN_PLACE = 2; - public BoostFramework mPerf = null; - // The topmost Activity passed to convertToTranslucent(). When non-null it means we are // waiting for all Activities in mUndrawnActivitiesBelowTopTranslucent to be removed as they // are drawn. When the last member of mUndrawnActivitiesBelowTopTranslucent is removed the diff --git a/services/core/java/com/android/server/wm/TaskFragment.java b/services/core/java/com/android/server/wm/TaskFragment.java index ad51387210d9..7f890fc7469c 100644 --- a/services/core/java/com/android/server/wm/TaskFragment.java +++ b/services/core/java/com/android/server/wm/TaskFragment.java @@ -82,6 +82,7 @@ import android.graphics.Point; import android.graphics.Rect; import android.os.IBinder; import android.os.RemoteException; +import android.util.BoostFramework; import android.util.DisplayMetrics; import android.util.Slog; import android.util.proto.ProtoOutputStream; @@ -93,6 +94,7 @@ import android.window.TaskFragmentInfo; import android.window.TaskFragmentOrganizerToken; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.app.ActivityTrigger; import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.function.pooled.PooledFunction; import com.android.internal.util.function.pooled.PooledLambda; @@ -240,6 +242,12 @@ class TaskFragment extends WindowContainer<WindowContainer> { @Nullable private IBinder mFragmentToken; + //Perf + public BoostFramework mPerf = null; + + //ActivityTrigger + static final ActivityTrigger mActivityTrigger = new ActivityTrigger(); + /** * Whether to delay the last activity of TaskFragment being immediately removed while finishing. * This should only be set on a embedded TaskFragment, where the organizer can have the @@ -1048,14 +1056,14 @@ class TaskFragment extends WindowContainer<WindowContainer> { if (DEBUG_SWITCH) Slog.v(TAG_SWITCH, "Resuming " + next); - // TODO(b/223439401) adjust the value-add - // //Trigger Activity Resume - // if (mActivityTrigger != null) { - // mActivityTrigger.activityResumeTrigger(next.intent, next.info, - // next.info.applicationInfo, - // next.occludesParent()); - // } + //Trigger Activity Resume + if (mActivityTrigger != null) { + mActivityTrigger.activityResumeTrigger(next.intent, next.info, + next.info.applicationInfo, + next.occludesParent()); + } + // TODO(b/223439401) adjust the value-add // if (mActivityPluginDelegate != null && getWindowingMode() != WINDOWING_MODE_UNDEFINED) { // mActivityPluginDelegate.activityInvokeNotification // (next.info.packageName, getWindowingMode() == WINDOWING_MODE_FULLSCREEN); @@ -1162,10 +1170,9 @@ class TaskFragment extends WindowContainer<WindowContainer> { // to ignore it when computing the desired screen orientation. boolean anim = true; final DisplayContent dc = taskDisplayArea.mDisplayContent; - // TODO(b/223439401) adjust the value-add - // if (mPerf == null) { - // mPerf = new BoostFramework(); - // } + if (mPerf == null) { + mPerf = new BoostFramework(); + } if (prev != null) { if (prev.finishing) { if (DEBUG_TRANSITION) { @@ -1175,11 +1182,10 @@ class TaskFragment extends WindowContainer<WindowContainer> { anim = false; dc.prepareAppTransition(TRANSIT_NONE); } else { - // TODO(b/223439401) adjust the value-add - // if(prev.getTask() != next.getTask() && mPerf != null) { - // mPerf.perfHint(BoostFramework.VENDOR_HINT_ANIM_BOOST, - // next.packageName); - // } + if(prev.getTask() != next.getTask() && mPerf != null) { + mPerf.perfHint(BoostFramework.VENDOR_HINT_ANIM_BOOST, + next.packageName); + } dc.prepareAppTransition(TRANSIT_CLOSE); } prev.setVisibility(false); @@ -1191,11 +1197,10 @@ class TaskFragment extends WindowContainer<WindowContainer> { anim = false; dc.prepareAppTransition(TRANSIT_NONE); } else { - // TODO(b/223439401) adjust the value-add - // if(prev.getTask() != next.getTask() && mPerf != null) { - // mPerf.perfHint(BoostFramework.VENDOR_HINT_ANIM_BOOST, - // next.packageName); - // } + if(prev.getTask() != next.getTask() && mPerf != null) { + mPerf.perfHint(BoostFramework.VENDOR_HINT_ANIM_BOOST, + next.packageName); + } dc.prepareAppTransition(TRANSIT_OPEN, next.mLaunchTaskBehind ? TRANSIT_FLAG_OPEN_BEHIND : 0); } @@ -1458,13 +1463,13 @@ class TaskFragment extends WindowContainer<WindowContainer> { return false; } - // TODO(b/223439401) adjust the value-add - // //Trigger Activity Pause - // if (mActivityTrigger != null) { - // mActivityTrigger.activityPauseTrigger(prev.intent, prev.info, - // prev.info.applicationInfo); - // } + //Trigger Activity Pause + if (mActivityTrigger != null) { + mActivityTrigger.activityPauseTrigger(prev.intent, prev.info, + prev.info.applicationInfo); + } + // TODO(b/223439401) adjust the value-add // if (mActivityPluginDelegate != null && getWindowingMode() != WINDOWING_MODE_UNDEFINED) { // mActivityPluginDelegate.activitySuspendNotification // (prev.info.packageName, getWindowingMode() == WINDOWING_MODE_FULLSCREEN, true); |