diff options
| author | Robert Carr <racarr@google.com> | 2019-12-18 00:38:40 -0800 |
|---|---|---|
| committer | Robert Carr <racarr@google.com> | 2019-12-30 20:59:39 -0800 |
| commit | 59b1888bb95544a57e29d8a3c29960087d9f7ae9 (patch) | |
| tree | 2eb97f0fcc30e78b07890fa084f254e9976c01c3 /core/java/android/view/WindowlessViewRoot.java | |
| parent | f06d584d39723ed4ddfb326c256d67121d5e5d5a (diff) | |
Rename WindowlessViewRoot to SurfaceControlViewHost and rework API
Should be a little more clear. The internal IWindowSession implementation
keeps the WindowlessWindowManager name, but the API section definitely
needs a more usable name. Instead of passing in a root Surface we want it
to be owned by the SurfaceControlViewHost itself. This way we can ensure
we only return a SurfacePackage. In follow up CLs we will add an
accessibility ID to the SurfacePackage so we can ensure the Control
is passed around with the accessibility ID.
Test: Builds
Bug: 134365580
Change-Id: I30520e8b169d3744a66ccedf61cc4515cfef4dee
Diffstat (limited to 'core/java/android/view/WindowlessViewRoot.java')
| -rw-r--r-- | core/java/android/view/WindowlessViewRoot.java | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/core/java/android/view/WindowlessViewRoot.java b/core/java/android/view/WindowlessViewRoot.java deleted file mode 100644 index 68f2bde9c265..000000000000 --- a/core/java/android/view/WindowlessViewRoot.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (C) 2019 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.view; - -import android.annotation.NonNull; -import android.annotation.Nullable; -import android.annotation.TestApi; -import android.content.Context; -import android.os.IBinder; - -/** - * Utility class for adding a view hierarchy to a SurfaceControl. - * - * See WindowlessWmTest for example usage. - * @hide - */ -@TestApi -public class WindowlessViewRoot { - private ViewRootImpl mViewRoot; - private WindowlessWindowManager mWm; - - /** @hide */ - public WindowlessViewRoot(@NonNull Context c, @NonNull Display d, - @NonNull WindowlessWindowManager wwm) { - mWm = wwm; - mViewRoot = new ViewRootImpl(c, d, mWm); - } - - public WindowlessViewRoot(@NonNull Context c, @NonNull Display d, - @NonNull SurfaceControl rootSurface, - @Nullable IBinder hostInputToken) { - mWm = new WindowlessWindowManager(c.getResources().getConfiguration(), rootSurface, - hostInputToken); - mViewRoot = new ViewRootImpl(c, d, mWm); - } - - public void addView(View view, WindowManager.LayoutParams attrs) { - mViewRoot.setView(view, attrs, null); - } - - public void relayout(WindowManager.LayoutParams attrs) { - mViewRoot.setLayoutParams(attrs, false); - mViewRoot.setReportNextDraw(); - mWm.setCompletionCallback(mViewRoot.mWindow.asBinder(), (SurfaceControl.Transaction t) -> { - t.apply(); - }); - } - - public void dispose() { - mViewRoot.dispatchDetachedFromWindow(); - } - - /** - * Tell this viewroot to clean itself up. - * @hide - */ - public void die() { - mViewRoot.die(false /* immediate */); - } -} |
