freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Git][freetype/freetype-demos][master] [graph/win32] Fix up the key even


From: Alexei Podtelezhnikov (@apodtele)
Subject: [Git][freetype/freetype-demos][master] [graph/win32] Fix up the key event handling.
Date: Sun, 16 Jan 2022 03:25:06 +0000

Alexei Podtelezhnikov pushed to branch master at FreeType / FreeType Demo Programs

Commits:

1 changed file:

Changes:

  • graph/win32/grwin32.c
    ... ... @@ -71,10 +71,6 @@
    71 71
       static
    
    72 72
       Translator  key_translators[] =
    
    73 73
       {
    
    74
    -    { VK_BACK,      grKeyBackSpace },
    
    75
    -    { VK_TAB,       grKeyTab       },
    
    76
    -    { VK_RETURN,    grKeyReturn    },
    
    77
    -    { VK_ESCAPE,    grKeyEsc       },
    
    78 74
         { VK_HOME,      grKeyHome      },
    
    79 75
         { VK_LEFT,      grKeyLeft      },
    
    80 76
         { VK_UP,        grKeyUp        },
    
    ... ... @@ -398,23 +394,6 @@ gr_win32_surface_listen_event( grWin32Surface* surface,
    398 394
           }
    
    399 395
           break;
    
    400 396
     
    
    401
    -    case WM_KEYDOWN:
    
    402
    -    case WM_SYSKEYDOWN:
    
    403
    -      {
    
    404
    -        Translator*  trans = key_translators;
    
    405
    -        Translator*  limit = trans + sizeof( key_translators ) /
    
    406
    -                                     sizeof( key_translators[0] );
    
    407
    -        for ( ; trans < limit; trans++ )
    
    408
    -          if ( msg.wParam == trans->winkey )
    
    409
    -          {
    
    410
    -            grevent->type = gr_event_key;
    
    411
    -            grevent->key  = trans->grkey;
    
    412
    -            LOG(( "KeyPress: VK = 0x%02x\n", msg.wParam ));
    
    413
    -            return;
    
    414
    -          }
    
    415
    -      }
    
    416
    -      break;
    
    417
    -
    
    418 397
         case WM_CHAR:
    
    419 398
           {
    
    420 399
             grevent->type = gr_event_key;
    
    ... ... @@ -680,6 +659,22 @@ LRESULT CALLBACK Message_Process( HWND handle, UINT mess,
    680 659
     
    
    681 660
         case WM_KEYDOWN:
    
    682 661
         case WM_SYSKEYDOWN:
    
    662
    +      {
    
    663
    +        Translator*  trans = key_translators;
    
    664
    +        Translator*  limit = trans + sizeof( key_translators ) /
    
    665
    +                                     sizeof( key_translators[0] );
    
    666
    +
    
    667
    +        for ( ; trans < limit; trans++ )
    
    668
    +          if ( wParam == trans->winkey )
    
    669
    +          {
    
    670
    +            /* repost to the main thread */
    
    671
    +            PostThreadMessage( surface->host, WM_CHAR, trans->grkey, 0 );
    
    672
    +            LOG(( "KeyPress: VK = 0x%02x\n", wParam ));
    
    673
    +            break;
    
    674
    +          }
    
    675
    +      }
    
    676
    +      break;
    
    677
    +
    
    683 678
         case WM_CHAR:
    
    684 679
           /* repost to the main thread */
    
    685 680
           PostThreadMessage( surface->host, mess, wParam, lParam );
    


  • reply via email to

    [Prev in Thread] Current Thread [Next in Thread]