diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2003-04-17 14:40:30 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2003-04-17 14:40:30 +0000 |
commit | ae6f295684036c2007b7d1cf1823e97a664e59db (patch) | |
tree | f728ed067d68e566aa1224eaa1323d13839ac1e1 /sw/source/ui/shells/basesh.cxx | |
parent | 1ecad8d1c9ed99de909295c7c90f14474861382d (diff) |
INTEGRATION: CWS os8 (1.37.2.2.48); FILE MERGED
2003/04/11 14:03:26 os 1.37.2.2.48.4: #108737# prevent duplicate recording of paste/special
2003/04/09 10:21:36 os 1.37.2.2.48.3: #108737# recording of PasteSpecial corrected
2003/04/07 21:21:24 os 1.37.2.2.48.2: RESYNC: (1.37.2.2-1.39); FILE MERGED
2003/04/03 07:14:59 os 1.37.2.2.48.1: #108583# precompiled headers removed
Diffstat (limited to 'sw/source/ui/shells/basesh.cxx')
-rw-r--r-- | sw/source/ui/shells/basesh.cxx | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/sw/source/ui/shells/basesh.cxx b/sw/source/ui/shells/basesh.cxx index 6270256594f9..2af071cd2889 100644 --- a/sw/source/ui/shells/basesh.cxx +++ b/sw/source/ui/shells/basesh.cxx @@ -2,9 +2,9 @@ * * $RCSfile: basesh.cxx,v $ * - * $Revision: 1.41 $ + * $Revision: 1.42 $ * - * last change: $Author: vg $ $Date: 2003-04-17 10:16:18 $ + * last change: $Author: vg $ $Date: 2003-04-17 15:40:30 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -59,9 +59,6 @@ * ************************************************************************/ -#ifdef PRECOMPILED -#include "ui_pch.hxx" -#endif #pragma hdrstop #include <sot/factory.hxx> @@ -464,6 +461,7 @@ void SwBaseShell::ExecClpbrd(SfxRequest &rReq) SwWrtShell &rSh = GetShell(); USHORT nId = rReq.GetSlot(); + sal_Bool bIgnore = sal_False; switch( nId ) { case SID_CUT: @@ -530,10 +528,12 @@ void SwBaseShell::ExecClpbrd(SfxRequest &rReq) SwTransferable::PasteFormat( rSh, aDataHelper, ((SfxUInt32Item*)pFmt)->GetValue() ); + //Done() has to be called before the shell has been removed + rReq.Done(); + bIgnore = sal_True; if( rSh.IsFrmSelected() || rSh.IsObjSelected()) rSh.EnterSelFrmMode(); pView->AttrChangedNotify( &rSh ); - rReq.Done(); } } } @@ -556,6 +556,7 @@ void SwBaseShell::ExecClpbrd(SfxRequest &rReq) if ( nRet && rReq.IsRecording() ) { rReq.Ignore(); + bIgnore = sal_True; SfxRequest aReq( rView.GetViewFrame(), SID_CLIPBOARD_FORMAT_ITEMS ); aReq.AppendItem( SfxUInt32Item( SID_CLIPBOARD_FORMAT_ITEMS, nFormatId ) ); aReq.Done(); @@ -573,7 +574,8 @@ void SwBaseShell::ExecClpbrd(SfxRequest &rReq) DBG_ERROR("falscher Dispatcher"); return; } - rReq.Done(); + if(!bIgnore) + rReq.Done(); } /*-------------------------------------------------------------------- |