src/windows/native/sun/windows/awt_Frame.cpp

Print this page




 302     env->DeleteLocalRef(target);
 303     env->DeleteLocalRef(cls);
 304     env->DeleteLocalRef(inputMethodWindowCls);
 305 
 306     return frame;
 307 }
 308 
 309 LRESULT AwtFrame::ProxyWindowProc(UINT message, WPARAM wParam, LPARAM lParam, MsgRouting &mr)
 310 {
 311     LRESULT retValue = 0L;
 312 
 313     AwtComponent *focusOwner = NULL;
 314     AwtComponent *imeTargetComponent = NULL;
 315 
 316     // IME and input language related messages need to be sent to a window
 317     // which has the Java input focus
 318     switch (message) {
 319         case WM_IME_STARTCOMPOSITION:
 320         case WM_IME_ENDCOMPOSITION:
 321         case WM_IME_COMPOSITION:
 322         case WM_IME_SETCONTEXT:
 323         case WM_IME_NOTIFY:
 324         case WM_IME_CONTROL:
 325         case WM_IME_COMPOSITIONFULL:
 326         case WM_IME_SELECT:
 327         case WM_IME_CHAR:
 328         case WM_IME_REQUEST:
 329         case WM_IME_KEYDOWN:
 330         case WM_IME_KEYUP:
 331         case WM_INPUTLANGCHANGEREQUEST:
 332         case WM_INPUTLANGCHANGE:
 333             if (message == WM_IME_STARTCOMPOSITION) {
 334                 SetImeTargetComponent(sm_focusOwner);
 335             }
 336             imeTargetComponent = AwtComponent::GetComponent(GetImeTargetComponent());
 337             if (imeTargetComponent != NULL &&
 338                 imeTargetComponent != this) // avoid recursive calls
 339             {
 340                 retValue = imeTargetComponent->WindowProc(message, wParam, lParam);
 341                 mr = mrConsume;
 342             }
 343             if (message == WM_IME_ENDCOMPOSITION) {




 302     env->DeleteLocalRef(target);
 303     env->DeleteLocalRef(cls);
 304     env->DeleteLocalRef(inputMethodWindowCls);
 305 
 306     return frame;
 307 }
 308 
 309 LRESULT AwtFrame::ProxyWindowProc(UINT message, WPARAM wParam, LPARAM lParam, MsgRouting &mr)
 310 {
 311     LRESULT retValue = 0L;
 312 
 313     AwtComponent *focusOwner = NULL;
 314     AwtComponent *imeTargetComponent = NULL;
 315 
 316     // IME and input language related messages need to be sent to a window
 317     // which has the Java input focus
 318     switch (message) {
 319         case WM_IME_STARTCOMPOSITION:
 320         case WM_IME_ENDCOMPOSITION:
 321         case WM_IME_COMPOSITION:


 322         case WM_IME_CONTROL:
 323         case WM_IME_COMPOSITIONFULL:
 324         case WM_IME_SELECT:
 325         case WM_IME_CHAR:
 326         case WM_IME_REQUEST:
 327         case WM_IME_KEYDOWN:
 328         case WM_IME_KEYUP:
 329         case WM_INPUTLANGCHANGEREQUEST:
 330         case WM_INPUTLANGCHANGE:
 331             if (message == WM_IME_STARTCOMPOSITION) {
 332                 SetImeTargetComponent(sm_focusOwner);
 333             }
 334             imeTargetComponent = AwtComponent::GetComponent(GetImeTargetComponent());
 335             if (imeTargetComponent != NULL &&
 336                 imeTargetComponent != this) // avoid recursive calls
 337             {
 338                 retValue = imeTargetComponent->WindowProc(message, wParam, lParam);
 339                 mr = mrConsume;
 340             }
 341             if (message == WM_IME_ENDCOMPOSITION) {