X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Fevent%2Fevents%2Fkey-event-processor.cpp;h=3d9ef4747fa4304a54c3b40271a5f111bac806a0;hb=182acae4df2a65a6876414c9540a3633a18911ff;hp=5261d26eae475769dde86f1e13643b389197bb2c;hpb=7dcb0a38005dd8c6d71e466c1ea0ec4d7d57239f;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/event/events/key-event-processor.cpp b/dali/internal/event/events/key-event-processor.cpp old mode 100644 new mode 100755 index 5261d26..3d9ef47 --- a/dali/internal/event/events/key-event-processor.cpp +++ b/dali/internal/event/events/key-event-processor.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,18 +20,20 @@ // INTERNAL INCLUDES #include +#include #include -#include +#include #include + namespace Dali { namespace Internal { -KeyEventProcessor::KeyEventProcessor(Stage& stage) -: mStage(stage) +KeyEventProcessor::KeyEventProcessor( Scene& scene ) +: mScene( scene ) { } @@ -39,12 +41,22 @@ KeyEventProcessor::~KeyEventProcessor() { } -void KeyEventProcessor::ProcessKeyEvent(const Integration::KeyEvent& event) +void KeyEventProcessor::ProcessKeyEvent( const Integration::KeyEvent& event ) { - KeyEvent keyEvent(event.keyName, event.keyString, event.keyCode, event.keyModifier, event.time, static_cast(event.state)); + KeyEvent keyEvent(event.keyName, event.keyString, event.keyCode, event.keyModifier, event.time, static_cast(event.state)); + GetImplementation( &keyEvent )->SetLogicalKey( event.logicalKey ); + GetImplementation( &keyEvent )->SetCompose( event.compose ); + GetImplementation( &keyEvent )->SetDeviceName( event.deviceName ); + GetImplementation( &keyEvent )->SetDeviceClass( event.deviceClass ); + GetImplementation( &keyEvent )->SetDeviceSubclass( event.deviceSubclass ); + + // Emit the key event signal from the scene. + bool consumed = mScene.EmitKeyEventGeneratedSignal( keyEvent ); + if( !consumed ) + { + mScene.EmitKeyEventSignal(keyEvent); + } - // Emit the key event signal from stage. - mStage.EmitKeyEventSignal(keyEvent); } } // namespace Internal