idlehomescreen/xmluirendering/uiengine/src/xncontroladapterimpl.cpp
branchRCL_3
changeset 17 b8fae6b8a148
parent 12 9674c1a575e9
child 18 d05a55b217df
equal deleted inserted replaced
12:9674c1a575e9 17:b8fae6b8a148
    19 // System includes
    19 // System includes
    20 #include <utf.h>
    20 #include <utf.h>
    21 #include <SVGEngineInterfaceImpl.h>
    21 #include <SVGEngineInterfaceImpl.h>
    22 #include <s32file.h>
    22 #include <s32file.h>
    23 #include <mifconvdefs.h>
    23 #include <mifconvdefs.h>
       
    24 //skinning support
    24 #include <AknsFrameBackgroundControlContext.h>
    25 #include <AknsFrameBackgroundControlContext.h>
    25 #include <AknsDrawUtils.h>
    26 #include <AknsDrawUtils.h>
    26 #include <aknconsts.h>
    27 #include <aknconsts.h>
    27 #include <AknUtils.h>
    28 #include <AknUtils.h>
    28 #include <AknsListBoxBackgroundControlContext.h>
    29 #include <AknsListBoxBackgroundControlContext.h>
  3757          aKeyEvent.iScanCode == EStdKeyDevice1 || // LSK
  3758          aKeyEvent.iScanCode == EStdKeyDevice1 || // LSK
  3758          aKeyEvent.iScanCode == EStdKeyDevice3 )  // MSK
  3759          aKeyEvent.iScanCode == EStdKeyDevice3 )  // MSK
  3759         {
  3760         {
  3760         if ( aType == EEventKeyDown )
  3761         if ( aType == EEventKeyDown )
  3761             {
  3762             {
       
  3763             iKeyDownNode = node;
  3762             iLongtap = EFalse;
  3764             iLongtap = EFalse;
  3763             
  3765             
  3764             if ( aKeyEvent.iScanCode == EStdKeyDevice3 ||
  3766             if ( aKeyEvent.iScanCode == EStdKeyDevice3 ||
  3765                 aKeyEvent.iScanCode == EStdKeyEnter )
  3767                 aKeyEvent.iScanCode == EStdKeyEnter )
  3766                 {
  3768                 {
  3785 
  3787 
  3786             CleanupStack::PopAndDestroy( keydown );                              
  3788             CleanupStack::PopAndDestroy( keydown );                              
  3787             }
  3789             }
  3788         else if( aType == EEventKey )
  3790         else if( aType == EEventKey )
  3789             {
  3791             {
       
  3792             if( iKeyDownNode != node)
       
  3793             	{
       
  3794                 node = iKeyDownNode;
       
  3795             	}
  3790             if ( aKeyEvent.iRepeats == 0 )
  3796             if ( aKeyEvent.iRepeats == 0 )
  3791                 {
  3797                 {
  3792                 if ( !HasHoldTrigger( node->DomNode() ) )
  3798                 if ( !HasHoldTrigger( node->DomNode() ) )
  3793                     {
  3799                     {
  3794                     // If node doesn't define hold trigger, then report activate
  3800                     // If node doesn't define hold trigger, then report activate
  3813                 
  3819                 
  3814         else if ( aType == EEventKeyUp )
  3820         else if ( aType == EEventKeyUp )
  3815             {
  3821             {
  3816             if ( !iLongtap )
  3822             if ( !iLongtap )
  3817                 {
  3823                 {
       
  3824               if( iKeyDownNode != node)
       
  3825                 {
       
  3826                 node = iKeyDownNode;
       
  3827                 }   
  3818                 if ( HasHoldTrigger( node->DomNode() ) )
  3828                 if ( HasHoldTrigger( node->DomNode() ) )
  3819                     {
  3829                     {
  3820                     // Hold trigger defined, report activate event here                   
  3830                     // Hold trigger defined, report activate event here                   
  3821                     node->SetStateL( 
  3831                     node->SetStateL( 
  3822                         XnPropertyNames::style::common::KActive );                     
  3832                         XnPropertyNames::style::common::KActive );                     
  3905                     appui.ViewManager().ActiveViewData().ViewNode()->Control() );
  3915                     appui.ViewManager().ActiveViewData().ViewNode()->Control() );
  3906                 
  3916                 
  3907                 control->IgnoreEventsUntilNextPointerUp();
  3917                 control->IgnoreEventsUntilNextPointerUp();
  3908                 control->ResetGrabbing();                      
  3918                 control->ResetGrabbing();                      
  3909                 }
  3919                 }
  3910             
  3920 
  3911             // Indicate long tap has taken plave
  3921           // Indicate long tap has taken place
  3912             iLongtap = ETrue;
  3922             iLongtap = ETrue;
  3913             
  3923             
  3914             CXnNode* hold = BuildTriggerNodeL( *engine,
  3924             CXnNode* hold = BuildTriggerNodeL( *engine,
  3915                 XnPropertyNames::action::trigger::name::KHold );
  3925                 XnPropertyNames::action::trigger::name::KHold );
  3916 
  3926 
  3950             control->ResetGrabbing();
  3960             control->ResetGrabbing();
  3951 
  3961 
  3952             // Swipe took place, consume this event
  3962             // Swipe took place, consume this event
  3953             return ETrue;
  3963             return ETrue;
  3954             }
  3964             }
       
  3965 
  3955         }
  3966         }
  3956     
  3967     
  3957     TBool menuBar( node == engine->MenuBarNode() );
  3968     TBool menuBar( node == engine->MenuBarNode() );
  3958 
  3969 
  3959     if ( menuBar )
  3970     if ( menuBar )
  4009         }                
  4020         }                
  4010 
  4021 
  4011     if ( event.iType == TPointerEvent::EButton1Down )
  4022     if ( event.iType == TPointerEvent::EButton1Down )
  4012         {
  4023         {
  4013         iLongtap = EFalse;
  4024         iLongtap = EFalse;
       
  4025         node->HideTooltipsL();
  4014         
  4026         
  4015         if ( !menuBar )
  4027         if ( !menuBar )
  4016             {
  4028             {
  4017             CancelFocusRefusalL( *engine );
  4029             CancelFocusRefusalL( *engine );
  4018             }
  4030             }