summaryrefslogtreecommitdiff
path: root/sw/source/ui/shells/basesh.cxx
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2003-04-17 14:40:30 +0000
committerVladimir Glazounov <vg@openoffice.org>2003-04-17 14:40:30 +0000
commitae6f295684036c2007b7d1cf1823e97a664e59db (patch)
treef728ed067d68e566aa1224eaa1323d13839ac1e1 /sw/source/ui/shells/basesh.cxx
parent1ecad8d1c9ed99de909295c7c90f14474861382d (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.cxx16
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();
}
/*--------------------------------------------------------------------