diff options
author | 2023-08-18 19:44:55 +0000 | |
---|---|---|
committer | 2023-08-18 19:56:15 +0000 | |
commit | 27c6d99600422ee96fcc29de26c2be84c6a9838d (patch) | |
tree | ced5bc81068c3e7ff2b9c0c94afb91a974cbc16a /libs/input/PointerController.cpp | |
parent | bbd57bc5f77c57b6cebd4b1bcab7a8c5430d36bd (diff) |
Use std::shared_ptr for SpriteController
Remove RefBase from SpriteController, and use std::shared_ptr. We cannot
migrate to std::unique_ptr because we have to post messages to the
handler, which needs to have a weak reference to the object.
Bug: 278783893
Test: presubmit
Change-Id: I0ea4bb220e5b1866375ed39335f9035cd4bb766c
Diffstat (limited to 'libs/input/PointerController.cpp')
-rw-r--r-- | libs/input/PointerController.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/libs/input/PointerController.cpp b/libs/input/PointerController.cpp index bb3d9d7c680c..435452c11370 100644 --- a/libs/input/PointerController.cpp +++ b/libs/input/PointerController.cpp @@ -63,7 +63,7 @@ void PointerController::DisplayInfoListener::onPointerControllerDestroyed() { std::shared_ptr<PointerController> PointerController::create( const sp<PointerControllerPolicyInterface>& policy, const sp<Looper>& looper, - const sp<SpriteController>& spriteController) { + SpriteController& spriteController) { // using 'new' to access non-public constructor std::shared_ptr<PointerController> controller = std::shared_ptr<PointerController>( new PointerController(policy, looper, spriteController)); @@ -85,8 +85,7 @@ std::shared_ptr<PointerController> PointerController::create( } PointerController::PointerController(const sp<PointerControllerPolicyInterface>& policy, - const sp<Looper>& looper, - const sp<SpriteController>& spriteController) + const sp<Looper>& looper, SpriteController& spriteController) : PointerController( policy, looper, spriteController, [](const sp<android::gui::WindowInfosListener>& listener) { @@ -97,8 +96,7 @@ PointerController::PointerController(const sp<PointerControllerPolicyInterface>& }) {} PointerController::PointerController(const sp<PointerControllerPolicyInterface>& policy, - const sp<Looper>& looper, - const sp<SpriteController>& spriteController, + const sp<Looper>& looper, SpriteController& spriteController, WindowListenerConsumer registerListener, WindowListenerConsumer unregisterListener) : mContext(policy, looper, spriteController, *this), |