rpms/openoffice.org/devel workspace.calc53.patch, NONE, 1.1 openoffice.org.spec, 1.2194, 1.2195 openoffice.org-3.2.0.ooo109009.sc.tooltipcrash.patch, 1.1, NONE

Caolan McNamara caolanm at fedoraproject.org
Mon Apr 26 17:50:17 UTC 2010


Author: caolanm

Update of /cvs/pkgs/rpms/openoffice.org/devel
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv18097

Modified Files:
	openoffice.org.spec 
Added Files:
	workspace.calc53.patch 
Removed Files:
	openoffice.org-3.2.0.ooo109009.sc.tooltipcrash.patch 
Log Message:
track accepted upstream workspace

workspace.calc53.patch:
 app/inputhdl.cxx |   39 +++++++++++++++++++++++++++++++--------
 inc/inputhdl.hxx |    4 ++++
 2 files changed, 35 insertions(+), 8 deletions(-)

--- NEW FILE workspace.calc53.patch ---
diff -ru sc.orig/source/ui/app/inputhdl.cxx sc/source/ui/app/inputhdl.cxx
--- sc.orig/source/ui/app/inputhdl.cxx	2010-02-05 15:10:03.000000000 +0000
+++ sc/source/ui/app/inputhdl.cxx	2010-02-05 20:49:17.000000000 +0000
@@ -419,7 +421,9 @@
 		pColumnData( NULL ),
 		pFormulaData( NULL ),
         pFormulaDataPara( NULL ),
+        pTipVisibleParent( NULL ),
 		nTipVisible( 0 ),
+        pTipVisibleSecParent( NULL ),
         nTipVisibleSec( 0 ),
 		nAutoPos( SCPOS_INVALID ),
 		bUseTab( FALSE ),
@@ -681,12 +687,29 @@
 	}
 }
 
+IMPL_LINK( ScInputHandler, ShowHideTipVisibleParentListener, VclWindowEvent*, pEvent )
+{
+    if( pEvent->GetId() == VCLEVENT_OBJECT_DYING || pEvent->GetId() == VCLEVENT_WINDOW_HIDE )
+	HideTip();
+    return 0;
+}
+
+IMPL_LINK( ScInputHandler, ShowHideTipVisibleSecParentListener, VclWindowEvent*, pEvent )
+{
+    if( pEvent->GetId() == VCLEVENT_OBJECT_DYING || pEvent->GetId() == VCLEVENT_WINDOW_HIDE )
+	HideTipBelow();
+    return 0;
+}
+
 void ScInputHandler::HideTip()
 {
 	if ( nTipVisible )
 	{
+		if (pTipVisibleParent)
+			pTipVisibleParent->RemoveEventListener( LINK( this, ScInputHandler, ShowHideTipVisibleParentListener ) );
 		Help::HideTip( nTipVisible );
 		nTipVisible = 0;
+		pTipVisibleParent = NULL;
 	}
 	aManualTip.Erase();
 }
@@ -694,6 +717,8 @@
 {
     if ( nTipVisibleSec )
     {
+		if (pTipVisibleSecParent)
+			pTipVisibleSecParent->RemoveEventListener( LINK( this, ScInputHandler, ShowHideTipVisibleSecParentListener ) );
         Help::HideTip( nTipVisibleSec );
         nTipVisibleSec = 0;
     }
@@ -887,15 +912,16 @@
 	if (pActiveView)
 	{
 		Point aPos;
-		Window* pWin = pActiveView->GetWindow();
+		pTipVisibleParent = pActiveView->GetWindow();
 		Cursor* pCur = pActiveView->GetCursor();
 		if (pCur)
-			aPos = pWin->LogicToPixel( pCur->GetPos() );
-		aPos = pWin->OutputToScreenPixel( aPos );
+			aPos = pTipVisibleParent->LogicToPixel( pCur->GetPos() );
+		aPos = pTipVisibleParent->OutputToScreenPixel( aPos );
 		Rectangle aRect( aPos, aPos );
 
 		USHORT nAlign = QUICKHELP_LEFT|QUICKHELP_BOTTOM;
-		nTipVisible = Help::ShowTip(pWin, aRect, rText, nAlign);
+		nTipVisible = Help::ShowTip(pTipVisibleParent, aRect, rText, nAlign);
+		pTipVisibleParent->AddEventListener( LINK( this, ScInputHandler, ShowHideTipVisibleParentListener ) );
 	}
 }
 
@@ -907,18 +933,19 @@
     if ( pActiveView )
     {
         Point aPos;
-        Window* pWin = pActiveView->GetWindow();
+        pTipVisibleSecParent = pActiveView->GetWindow();
         Cursor* pCur = pActiveView->GetCursor();
         if ( pCur )
         {
             Point aLogicPos = pCur->GetPos();
             aLogicPos.Y() += pCur->GetHeight();
-            aPos = pWin->LogicToPixel( aLogicPos );
+            aPos = pTipVisibleSecParent->LogicToPixel( aLogicPos );
         }
-        aPos = pWin->OutputToScreenPixel( aPos );
+        aPos = pTipVisibleSecParent->OutputToScreenPixel( aPos );
         Rectangle aRect( aPos, aPos );
         USHORT nAlign = QUICKHELP_LEFT | QUICKHELP_TOP;
-        nTipVisibleSec = Help::ShowTip(pWin, aRect, rText, nAlign);
+        nTipVisibleSec = Help::ShowTip(pTipVisibleSecParent, aRect, rText, nAlign);
+        pTipVisibleSecParent->AddEventListener( LINK( this, ScInputHandler, ShowHideTipVisibleSecParentListener ) );
     }
 }
 
diff -ru sc.orig/source/ui/inc/inputhdl.hxx sc/source/ui/inc/inputhdl.hxx
--- sc.orig/source/ui/inc/inputhdl.hxx	2010-02-05 15:10:03.000000000 +0000
+++ sc/source/ui/inc/inputhdl.hxx	2010-02-05 20:33:39.000000000 +0000
@@ -71,7 +71,9 @@
 	TypedScStrCollection*		pColumnData;
 	TypedScStrCollection*		pFormulaData;
     TypedScStrCollection*		pFormulaDataPara;
+	Window*					pTipVisibleParent;
 	ULONG					nTipVisible;
+	Window*					pTipVisibleSecParent;
     ULONG                   nTipVisibleSec;
 	String					aManualTip;
 	String					aAutoSearch;
@@ -152,6 +154,8 @@
 	BOOL			CursorAtClosingPar();
 	void			SkipClosingPar();
 	DECL_LINK( ModifyHdl, void* );
+	DECL_LINK( ShowHideTipVisibleParentListener, VclWindowEvent* );
+	DECL_LINK( ShowHideTipVisibleSecParentListener, VclWindowEvent* );
 #endif
 
 public:


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.2194
retrieving revision 1.2195
diff -u -p -r1.2194 -r1.2195
--- openoffice.org.spec	26 Apr 2010 10:57:10 -0000	1.2194
+++ openoffice.org.spec	26 Apr 2010 17:50:17 -0000	1.2195
@@ -125,7 +125,7 @@ Patch54: workspace.cmcfixes70.patch
 Patch55: workspace.s390xport02.patch
 Patch56: openoffice.org-3.3.0.ooo108637.sfx2.uisavedir.patch
 Patch57: openoffice.org-3.2.0.ooo108846.sfx2.qstartfixes.patch
-Patch58: openoffice.org-3.2.0.ooo109009.sc.tooltipcrash.patch
+Patch58: workspace.calc53.patch
 Patch59: workspace.impress188.patch
 Patch60: openoffice.org-3.2.0.ooo95369.sw.sortedobjs.patch
 Patch61: workspace.koheicsvimport.patch
@@ -1673,7 +1673,7 @@ cp -p %{SOURCE5} external/unowinreg/unow
 %patch55 -p1 -b .workspace.s390xport02.patch
 %patch56 -p1 -b .ooo108637.sfx2.uisavedir.patch
 %patch57 -p1 -b .ooo108846.sfx2.qstartfixes.patch
-%patch58 -p0 -b .ooo109009.sc.tooltipcrash.patch
+%patch58 -p0 -b .workspace.calc53.patch
 %patch59 -p0 -b .workspace.impress188.patch
 %patch60 -p1 -b .ooo95369.sw.sortedobjs.patch
 %patch61 -p1 -b .workspace.koheicsvimport.patch


--- openoffice.org-3.2.0.ooo109009.sc.tooltipcrash.patch DELETED ---



More information about the scm-commits mailing list