Changeset 3108


Ignore:
Timestamp:
Mar 14, 2000, 4:01:00 PM (25 years ago)
Author:
sandervl
Message:

combobox bug fixes (rp7 infinite loop)

Location:
trunk/src/user32
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/user32/combo.cpp

    r2804 r3108  
    1 /* $Id: combo.cpp,v 1.26 2000-02-16 14:34:06 sandervl Exp $ */
     1/* $Id: combo.cpp,v 1.27 2000-03-14 15:00:58 sandervl Exp $ */
    22/*
    33 * Combo controls
     
    13851385
    13861386           case (EN_UPDATE >> 8):
    1387                 CB_NOTIFY( lphc, CBN_EDITUPDATE );
     1387                //SvL: Don't send updates either. (Realplayer 7 infinite loops)
     1388               /*
     1389                * In some circumstances (when the selection of the combobox
     1390                * is changed for example) we don't wans the EN_CHANGE notification
     1391                * to be forwarded to the parent of the combobox. This code
     1392                * checks a flag that is set in these occasions and ignores the
     1393                * notification.
     1394                */
     1395                if (lphc->wState & CBF_NOEDITNOTIFY)
     1396                {
     1397                  lphc->wState &= ~CBF_NOEDITNOTIFY;
     1398                }
     1399                else
     1400                {
     1401                        CB_NOTIFY( lphc, CBN_EDITUPDATE );
     1402                }
    13881403                break;
    13891404
     
    21052120  if( lphc->wState & CBF_SELCHANGE )
    21062121  {
     2122    //SvL: Clear the flag here; doing it after calling CBUpdateEdit causes
     2123    //     an infinite loop in RealPlayer 7
     2124    lphc->wState &= ~CBF_SELCHANGE;
     2125
    21072126    /* no LBN_SELCHANGE in this case, update manually */
    21082127    if( lphc->wState & CBF_EDIT )
     
    21102129    else
    21112130        InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
    2112 
    2113     lphc->wState &= ~CBF_SELCHANGE;
    21142131  }
    21152132
  • TabularUnified trunk/src/user32/listbox.cpp

    r2852 r3108  
    1 /* $Id: listbox.cpp,v 1.20 2000-02-21 17:25:27 cbratschi Exp $ */
     1/* $Id: listbox.cpp,v 1.21 2000-03-14 15:00:59 sandervl Exp $ */
    22/*
    33 * Listbox controls
     
    12411241    {
    12421242        INT oldsel = descr->selected_item;
    1243 ////        if (index == oldsel) return LB_OKAY;
     1243        //SvL: Why was this commented out??? (enabled in latest wine code)
     1244        if (index == oldsel) return LB_OKAY;
     1245
    12441246        if (oldsel != -1) descr->items[oldsel].selected = FALSE;
    12451247        if (index != -1) descr->items[index].selected = TRUE;
  • TabularUnified trunk/src/user32/oslibmsgtranslate.cpp

    r3101 r3108  
    1 /* $Id: oslibmsgtranslate.cpp,v 1.23 2000-03-13 13:10:46 sandervl Exp $ */
     1/* $Id: oslibmsgtranslate.cpp,v 1.24 2000-03-14 15:01:00 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    195195        if(ISMOUSE_CAPTURED())
    196196        {
    197             if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y))
     197            if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y)) {
    198198                goto dummymessage; //dinput swallowed message
     199            }
    199200        }
    200201
     
    231232        if(ISMOUSE_CAPTURED())
    232233        {
    233             if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y))
     234            if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y)) {
    234235                goto dummymessage; //dinput swallowed message
     236            }
    235237        }
    236238        //OS/2 Window coordinates -> Win32 Window coordinates
     
    449451        if(ISMOUSE_CAPTURED())
    450452        {
    451             if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y))
     453            if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y)) {
    452454                goto dummymessage; //dinput swallowed message
     455            }
    453456        }
    454457
     
    485488        if(ISMOUSE_CAPTURED())
    486489        {
    487             if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y))
     490            if(DInputMouseHandler(win32wnd->getWindowHandle(), winMsg->message, winMsg->pt.x, winMsg->pt.y)) {
    488491                goto dummymessage; //dinput swallowed message
     492            }
    489493        }
    490494        //OS/2 Window coordinates -> Win32 Window coordinates
     
    645649        if(ISKDB_CAPTURED())
    646650        {
    647             if(DInputKeyBoardHandler(winMsg))
     651            if(DInputKeyBoardHandler(winMsg)) {
    648652                goto dummymessage; //dinput swallowed message
     653            }
    649654        }
    650655        break;
     
    741746    default:
    742747dummymessage:
     748        winMsg->message = 0;
     749        winMsg->wParam  = 0;
     750        winMsg->lParam  = 0;
    743751        return FALSE;
    744752  }
Note: See TracChangeset for help on using the changeset viewer.