mirror of
https://github.com/openharmony/distributed_screen.git
synced 2026-07-19 17:04:08 -04:00
!104 适配window修改对input的监听方式
Merge pull request !104 from xiahaiqin/master
This commit is contained in:
@@ -22,7 +22,9 @@
|
||||
#include <memory>
|
||||
#include <refbase.h>
|
||||
|
||||
#include "i_input_event_consumer.h"
|
||||
#include "axis_event.h"
|
||||
#include "key_event.h"
|
||||
#include "pointer_event.h"
|
||||
#include "single_instance.h"
|
||||
#include "surface.h"
|
||||
#include "window.h"
|
||||
@@ -47,12 +49,13 @@ private:
|
||||
std::mutex windowIdMapMutex_;
|
||||
};
|
||||
|
||||
class ScreenClientInputEventListener : public MMI::IInputEventConsumer {
|
||||
class ScreenClientInputEventListener : public Rosen::IInputEventConsumer {
|
||||
public:
|
||||
ScreenClientInputEventListener() = default;
|
||||
void OnInputEvent(std::shared_ptr<MMI::PointerEvent> pointerEvent) const override;
|
||||
void OnInputEvent(std::shared_ptr<MMI::KeyEvent> keyEvent) const override;
|
||||
void OnInputEvent(std::shared_ptr<MMI::AxisEvent> axisEvent) const override;
|
||||
~ScreenClientInputEventListener() override = default;
|
||||
bool OnInputEvent(const std::shared_ptr<MMI::PointerEvent>& pointerEvent) const override;
|
||||
bool OnInputEvent(const std::shared_ptr<MMI::KeyEvent>& keyEvent) const override;
|
||||
bool OnInputEvent(const std::shared_ptr<MMI::AxisEvent>& axisEvent) const override;
|
||||
};
|
||||
} // namespace DistributedHardware
|
||||
} // namespace OHOS
|
||||
|
||||
@@ -74,9 +74,9 @@ sptr<Surface> ScreenClientWindowAdapter::CreateWindow(std::shared_ptr<WindowProp
|
||||
return nullptr;
|
||||
}
|
||||
Rosen::RSTransactionProxy::GetInstance()->FlushImplicitTransaction();
|
||||
std::shared_ptr<MMI::IInputEventConsumer> listener =
|
||||
std::shared_ptr<Rosen::IInputEventConsumer> listener =
|
||||
std::make_shared<ScreenClientInputEventListener>(ScreenClientInputEventListener());
|
||||
window->AddInputEventListener(listener);
|
||||
window->SetInputEventConsumer(listener);
|
||||
DHLOGD("Create window name is %s.", windowName.c_str());
|
||||
if (OHOS::Rosen::WMError::WM_OK != window->Resize(windowProperty->width, windowProperty->height)) {
|
||||
window->Destroy();
|
||||
@@ -197,22 +197,25 @@ int32_t ScreenClientWindowAdapter::RemoveWindow(int32_t windowId)
|
||||
return DH_SUCCESS;
|
||||
}
|
||||
|
||||
void ScreenClientInputEventListener::OnInputEvent(std::shared_ptr<MMI::PointerEvent> pointerEvent) const
|
||||
bool ScreenClientInputEventListener::OnInputEvent(const std::shared_ptr<MMI::PointerEvent>& pointerEvent) const
|
||||
{
|
||||
DHLOGI("onInputEvent, pointerEvent");
|
||||
pointerEvent->MarkProcessed();
|
||||
return true;
|
||||
}
|
||||
|
||||
void ScreenClientInputEventListener::OnInputEvent(std::shared_ptr<MMI::KeyEvent> keyEvent) const
|
||||
bool ScreenClientInputEventListener::OnInputEvent(const std::shared_ptr<MMI::KeyEvent>& keyEvent) const
|
||||
{
|
||||
DHLOGI("onInputEvent, keyEvent");
|
||||
keyEvent->MarkProcessed();
|
||||
return true;
|
||||
}
|
||||
|
||||
void ScreenClientInputEventListener::OnInputEvent(std::shared_ptr<MMI::AxisEvent> axisEvent) const
|
||||
bool ScreenClientInputEventListener::OnInputEvent(const std::shared_ptr<MMI::AxisEvent>& axisEvent) const
|
||||
{
|
||||
DHLOGI("onInputEvent, axisEvent");
|
||||
axisEvent->MarkProcessed();
|
||||
return true;
|
||||
}
|
||||
} // namespace DistributedHardware
|
||||
} // namespace OHOS
|
||||
Reference in New Issue
Block a user