Changeset 8301 for trunk/src


Ignore:
Timestamp:
Apr 24, 2002, 10:56:17 AM (23 years ago)
Author:
sandervl
Message:

PF: listbox fix when button clicked outside control (rollup dropdown); minimize fixes (activation + z-order)

Location:
trunk/src/user32
Files:
4 edited

Legend:

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

    r5157 r8301  
    1 /* $Id: combo.cpp,v 1.33 2001-02-17 20:16:31 sandervl Exp $ */
     1/* $Id: combo.cpp,v 1.34 2002-04-24 08:56:16 sandervl Exp $ */
    22/*
    33 * Combo controls
     
    12721272   return TRUE;
    12731273}
     1274
     1275#ifdef __WIN32OS2__
     1276/***********************************************************************
     1277 *           COMBO_RollupListbox
     1278 *
     1279 * @@PF Odin specific function.
     1280 */
     1281BOOL COMBO_RollupListbox( LPHEADCOMBO lphc)
     1282{
     1283   if(lphc->wState & CBF_DROPPED)
     1284   {
     1285       CBRollUp( lphc, FALSE, FALSE);
     1286       return TRUE;
     1287   }
     1288   return FALSE;
     1289}
     1290#endif
    12741291
    12751292/***********************************************************************
  • trunk/src/user32/listbox.cpp

    r6269 r8301  
    1 /* $Id: listbox.cpp,v 1.27 2001-07-09 18:10:44 sandervl Exp $ */
     1/* $Id: listbox.cpp,v 1.28 2002-04-24 08:56:16 sandervl Exp $ */
    22/*
    33 * Listbox controls
     
    20402040        ReleaseCapture();
    20412041        LISTBOX_SetSelection( hwnd, pDescr, pDescr->lphc->droppedIndex, FALSE, FALSE );
     2042#ifdef __WIN32OS2__
     2043        COMBO_RollupListbox(pDescr->lphc);
     2044 
     2045       /* @@PF Previous code is all wrong here. Here we are supposed to close
     2046         and only close dropdown, instead flip, flips it. This happens because
     2047         previous code did not pay attention to the fact that combobox can be
     2048         closed with SendMessage by application, as MFC apps do     
     2049         COMBO_FlipListbox( pDescr->lphc, FALSE, FALSE ); */
     2050#else
    20422051        COMBO_FlipListbox( pDescr->lphc, FALSE, FALSE );
    2043 
     2052#endif
    20442053        return 0;
    20452054      } else
  • trunk/src/user32/oslibwin.cpp

    r8126 r8301  
    1 /* $Id: oslibwin.cpp,v 1.117 2002-03-27 10:56:24 sandervl Exp $ */
     1/* $Id: oslibwin.cpp,v 1.118 2002-04-24 08:56:17 sandervl Exp $ */
    22/*
    33 * Window API wrappers for OS/2
     
    542542BOOL OSLibWinMinimizeWindow(HWND hwnd)
    543543{
    544   return WinSetWindowPos(hwnd, 0, 0, 0, 0, 0, SWP_MINIMIZE);
     544 /* @@PF The reason for this weird minimize algorithm is that we are not fully
     545    using PM for minimization. I.e. we respect all PM messages yet we do mess
     546    so much with some messages that minimization is based partly on vodoo.
     547    That is if you try minimize and deactivate in one call it will fail.
     548    Here we deactivate yourselves and give focus to next window that is
     549    on desktop, this func also works with MDI */
     550
     551    BOOL rc;
     552
     553    rc = WinSetWindowPos(hwnd, 0, 0, 0, 0, 0, SWP_MINIMIZE);
     554    if (rc) {
     555        rc = WinSetWindowPos(hwnd, HWND_BOTTOM, 0, 0, 0, 0, SWP_DEACTIVATE | SWP_ZORDER);
     556    }
     557    return (rc);
    545558}
    546559//******************************************************************************
  • trunk/src/user32/win32wbase.cpp

    r8210 r8301  
    1 /* $Id: win32wbase.cpp,v 1.322 2002-04-07 21:37:34 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.323 2002-04-24 08:56:17 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    23192319    else OSLibWinMinimizeWindow(getOS2FrameWindowHandle());
    23202320
    2321     if(!(swp & SWP_NOACTIVATE)) {
     2321    if(!(swp & SWP_NOACTIVATE) && (!(getStyle() & WS_MINIMIZE))) {
    23222322        OSLibWinSetActiveWindow(OS2HwndFrame);
    23232323    }
Note: See TracChangeset for help on using the changeset viewer.