diff options
author | Oliver Bolte <obo@openoffice.org> | 2008-07-22 16:29:22 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2008-07-22 16:29:22 +0000 |
commit | d333afc08a3ee0d95c4eb9d542b190f0844e28cd (patch) | |
tree | eb9d7b204dda4e7febd77dcc15534a50e9720e2f /vcl/os2/source | |
parent | a9b34fea3aa9ffacf0c738564f4ab01c5cd7aaff (diff) |
INTEGRATION: CWS os2port03 (1.5.116); FILE MERGED
2008/07/16 13:38:57 obr 1.5.116.3: RESYNC: (1.5-1.6); FILE MERGED
2008/04/15 14:42:28 ydario 1.5.116.2: Issue number: i85203
Submitted by: ydario
Reviewed by: ydario
2008/01/29 15:21:51 ydario 1.5.116.1: os2 compile fixes.
Issue number:i85203
Submitted by:ydario
Diffstat (limited to 'vcl/os2/source')
-rw-r--r-- | vcl/os2/source/window/salframe.cxx | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/vcl/os2/source/window/salframe.cxx b/vcl/os2/source/window/salframe.cxx index 1250d98d5c8f..474a87f9d1bf 100644 --- a/vcl/os2/source/window/salframe.cxx +++ b/vcl/os2/source/window/salframe.cxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: salframe.cxx,v $ - * $Revision: 1.6 $ + * $Revision: 1.7 $ * * This file is part of OpenOffice.org. * @@ -81,6 +81,8 @@ static void ImplSalCalcFrameSize( HWND hWnd, LONG& nFrameX, LONG& nFrameY, LONG& nCaptionY ); static void ImplSalCalcFrameSize( const Os2SalFrame* pFrame, LONG& nFrameX, LONG& nFrameY, LONG& nCaptionY ); +MRESULT EXPENTRY SalFrameSubClassWndProc( HWND hWnd, ULONG nMsg, + MPARAM nMP1, MPARAM nMP2 ); // ======================================================================= @@ -712,6 +714,9 @@ SalFrame* ImplSalCreateFrame( Os2SalInstance* pInst, HWND hWndParent, ULONG nSal } } + // ticket#124 subclass frame window: we need to intercept TRACK message + aSalShlData.mpFrameProc = WinSubclassWindow( hWndFrame, SalFrameSubClassWndProc); + // init OS/2 frame data pFrame->mhAB = pInst->mhAB; @@ -2752,13 +2757,7 @@ static long ImplHandleKeyMsg( HWND hWnd, if ( nFlags & KC_CTRL ) nModCode |= KEY_MOD1; if ( nFlags & KC_ALT ) - { nModCode |= KEY_MOD2; - // Nur wenn nicht Control und kein auswertbarer CharCode - // Wegen AltGr (vorallem wegen 122-Tastaturen auch KC_CHAR testen) - if ( !(nModCode & KEY_MOD1) && !(nFlags & KC_CHAR) ) - nModCode |= KEY_CONTROLMOD; - } // Bei Shift, Control und Alt schicken wir einen KeyModChange-Event if ( (nOS2KeyCode == VK_SHIFT) || (nOS2KeyCode == VK_CTRL) || @@ -3703,7 +3702,6 @@ MRESULT EXPENTRY SalFrameWndProc( HWND hWnd, ULONG nMsg, // ----------------------------------------------------------------------- - void Os2SalFrame::ResetClipRegion() { } @@ -3720,3 +3718,26 @@ void Os2SalFrame::EndSetClipRegion() { } +// ----------------------------------------------------------------------- + +MRESULT EXPENTRY SalFrameSubClassWndProc( HWND hWnd, ULONG nMsg, + MPARAM nMP1, MPARAM nMP2 ) +{ + MRESULT mReturn = 0L; + + // ticket#124 min size of 132 px is too much + if (nMsg == WM_QUERYTRACKINFO) { + PTRACKINFO pti; + // first, let PM initialize TRACKINFO + mReturn = aSalShlData.mpFrameProc( hWnd, nMsg, nMP1, nMP2 ); + // now change default min size + pti = (PTRACKINFO) nMP2; + pti->ptlMinTrackSize.x = 64L; + // now return to PM + return mReturn; + } + + return aSalShlData.mpFrameProc( hWnd, nMsg, nMP1, nMP2 ); +} + +// ----------------------------------------------------------------------- |