[Libreoffice-commits] core.git: vcl/headless vcl/inc
Noel Grandin
noel at peralex.com
Fri Oct 2 01:20:41 PDT 2015
vcl/headless/svpframe.cxx | 18 +++++++++++++++++-
vcl/headless/svpinst.cxx | 13 +++++++++++++
vcl/inc/headless/svpframe.hxx | 5 +++++
vcl/inc/headless/svpinst.hxx | 4 ++++
vcl/inc/unx/salframe.h | 8 ++++----
5 files changed, 43 insertions(+), 5 deletions(-)
New commits:
commit a65636c59d7d6c036eb8ae0dee76671198408107
Author: Noel Grandin <noel at peralex.com>
Date: Fri Oct 2 10:09:26 2015 +0200
fix Android and KDE build
after commit 837f171810a95a1d87907dd08d67e969276f0559
"loplugin:unusedmethods in vcl"
Change-Id: Idd4603f34891950940a77efa30b9ee70f35d7533
diff --git a/vcl/headless/svpframe.cxx b/vcl/headless/svpframe.cxx
index 74ec326..4d4a225 100644
--- a/vcl/headless/svpframe.cxx
+++ b/vcl/headless/svpframe.cxx
@@ -39,7 +39,6 @@ SvpSalFrame* SvpSalFrame::s_pFocusFrame = NULL;
#endif
#ifndef IOS
-
namespace {
/// Decouple SalFrame lifetime from damagetracker lifetime
struct DamageTracker : public basebmp::IBitmapDeviceDamageTracker
@@ -48,9 +47,26 @@ namespace {
virtual void damaged( const basegfx::B2IBox& ) const SAL_OVERRIDE {}
};
}
+#endif
+#ifdef ANDROID
+void SvpSalFrame::enableDamageTracker( bool bOn )
+{
+ if( m_bDamageTracking == bOn )
+ return;
+ if( m_aFrame.get() )
+ {
+ if( m_bDamageTracking )
+ m_aFrame->setDamageTracker( basebmp::IBitmapDeviceDamageTrackerSharedPtr() );
+ else
+ m_aFrame->setDamageTracker(
+ basebmp::IBitmapDeviceDamageTrackerSharedPtr( new DamageTracker ) );
+ }
+ m_bDamageTracking = bOn;
+}
#endif
+
SvpSalFrame::SvpSalFrame( SvpSalInstance* pInstance,
SalFrame* pParent,
sal_uLong nSalFrameStyle,
diff --git a/vcl/headless/svpinst.cxx b/vcl/headless/svpinst.cxx
index 978a455..bcecfac 100644
--- a/vcl/headless/svpinst.cxx
+++ b/vcl/headless/svpinst.cxx
@@ -125,6 +125,19 @@ void SvpSalInstance::PostEvent(const SalFrame* pFrame, ImplSVEvent* pData, sal_u
Wakeup();
}
+#ifdef ANDROID
+bool SvpSalInstance::PostedEventsInQueue()
+{
+ bool result = false;
+ if( osl_acquireMutex( m_aEventGuard ) )
+ {
+ result = m_aUserEvents.size() > 0;
+ osl_releaseMutex( m_aEventGuard );
+ }
+ return result;
+}
+#endif
+
void SvpSalInstance::deregisterFrame( SalFrame* pFrame )
{
m_aFrames.remove( pFrame );
diff --git a/vcl/inc/headless/svpframe.hxx b/vcl/inc/headless/svpframe.hxx
index 5a82c07..74efe19 100644
--- a/vcl/inc/headless/svpframe.hxx
+++ b/vcl/inc/headless/svpframe.hxx
@@ -125,6 +125,11 @@ public:
virtual void UnionClipRegion( long nX, long nY, long nWidth, long nHeight ) SAL_OVERRIDE;
virtual void EndSetClipRegion() SAL_OVERRIDE;
+#ifdef ANDROID
+ // If enabled we can get damage notifications for regions immediately rendered to ...
+ void enableDamageTracker( bool bOn = true );
+#endif
+
/*TODO: functional implementation */
virtual void SetScreenNumber( unsigned int nScreen ) SAL_OVERRIDE { (void)nScreen; }
virtual void SetApplicationID(const OUString &rApplicationID) SAL_OVERRIDE { (void) rApplicationID; }
diff --git a/vcl/inc/headless/svpinst.hxx b/vcl/inc/headless/svpinst.hxx
index 8c76636..e33527f 100644
--- a/vcl/inc/headless/svpinst.hxx
+++ b/vcl/inc/headless/svpinst.hxx
@@ -99,6 +99,10 @@ public:
void PostEvent(const SalFrame* pFrame, ImplSVEvent* pData, sal_uInt16 nEvent);
+#ifdef ANDROID
+ bool PostedEventsInQueue();
+#endif
+
void StartTimer( sal_uLong nMS );
void StopTimer();
void Wakeup();
diff --git a/vcl/inc/unx/salframe.h b/vcl/inc/unx/salframe.h
index 8820ccd..5ae4a4a 100644
--- a/vcl/inc/unx/salframe.h
+++ b/vcl/inc/unx/salframe.h
@@ -181,12 +181,12 @@ public:
::Window GetForeignParent() const { return mhForeignParent; }
::Window GetStackingWindow() const { return mhStackingWindow; }
long Close() const { return CallCallback( SALEVENT_CLOSE, 0 ); }
- sal_uIntPtr GetStyle() const { return nStyle_; }
+ sal_uIntPtr GetStyle() const { return nStyle_; }
- Cursor GetCursor() const { return hCursor_; }
- bool IsCaptured() const { return nCaptured_ == 1; }
+ Cursor GetCursor() const { return hCursor_; }
+ bool IsCaptured() const { return nCaptured_ == 1; }
#if !defined(__synchronous_extinput__)
- void HandleExtTextEvent (XClientMessageEvent *pEvent);
+ void HandleExtTextEvent (XClientMessageEvent *pEvent);
#endif
bool IsOverrideRedirect() const;
bool IsChildWindow() const { return (nStyle_ & (SAL_FRAME_STYLE_PLUG|SAL_FRAME_STYLE_SYSTEMCHILD)) != 0; }
More information about the Libreoffice-commits
mailing list