vcl/inc/salinst.hxx | 2 -- vcl/inc/unx/salinst.h | 1 - vcl/source/app/salvtables.cxx | 2 -- vcl/unx/generic/app/salinst.cxx | 6 ------ vcl/unx/generic/dtrans/X11_selection.cxx | 25 +++++++++++-------------- vcl/unx/generic/dtrans/X11_selection.hxx | 2 +- 6 files changed, 12 insertions(+), 26 deletions(-)
New commits: commit 0ad0de61cf106e3d9bcde7017d7961a4a0b83902 Author: Michael Weghorn <[email protected]> AuthorDate: Fri Jul 4 18:06:31 2025 +0200 Commit: Michael Weghorn <[email protected]> CommitDate: Sat Jul 5 07:46:03 2025 +0200 gen: Make DropTarget members private ... and use the getters instead of accessing them directly from outside. Change-Id: I7d83b1681007feb90f5a747b9b8b7a98d12b3318 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187417 Reviewed-by: Michael Weghorn <[email protected]> Tested-by: Jenkins diff --git a/vcl/unx/generic/dtrans/X11_selection.cxx b/vcl/unx/generic/dtrans/X11_selection.cxx index 0ba104070d94..770845c7adb6 100644 --- a/vcl/unx/generic/dtrans/X11_selection.cxx +++ b/vcl/unx/generic/dtrans/X11_selection.cxx @@ -2156,8 +2156,8 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) } #endif - if( it != m_aDropTargets.end() && it->second.m_pTarget->m_bActive && - m_bDropWaitingForCompletion && m_aDropEnterEvent.data.l[0] ) + if (it != m_aDropTargets.end() && it->second.m_pTarget->isActive() + && m_bDropWaitingForCompletion && m_aDropEnterEvent.data.l[0]) { bHandled = true; OSL_FAIL( "someone forgot to call dropComplete ?" ); @@ -2168,10 +2168,9 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) aGuard.reset(); } - if( it != m_aDropTargets.end() && - it->second.m_pTarget->m_bActive && - ( m_aDropEnterEvent.data.l[0] == None || ::Window(m_aDropEnterEvent.data.l[0]) == aSource ) - ) + if (it != m_aDropTargets.end() && it->second.m_pTarget->isActive() + && (m_aDropEnterEvent.data.l[0] == None + || ::Window(m_aDropEnterEvent.data.l[0]) == aSource)) { if( rMessage.message_type == m_nXdndEnter ) { @@ -2526,7 +2525,7 @@ void SelectionManager::sendDropPosition( bool bForce, Time eventTime ) m_aDropTargets.find( m_aDropWindow ); if( it != m_aDropTargets.end() ) { - if( it->second.m_pTarget->m_bActive ) + if (it->second.m_pTarget->isActive()) { int x, y; ::Window aChild; @@ -2794,7 +2793,8 @@ bool SelectionManager::handleDragEvent( XEvent const & rMessage ) { if( it != m_aDropTargets.end() ) { - if( it->second.m_pTarget->m_bActive && m_nUserDragAction != DNDConstants::ACTION_NONE && m_bLastDropAccepted ) + if (it->second.m_pTarget->isActive() + && m_nUserDragAction != DNDConstants::ACTION_NONE && m_bLastDropAccepted) { bHandled = true; int x, y; @@ -3145,7 +3145,7 @@ void SelectionManager::updateDragWindow( int nX, int nY, ::Window aRoot ) m_aDropProxy = aNewProxy != None ? aNewProxy : m_aDropWindow; it = m_aDropTargets.find( m_aDropWindow ); - if( it != m_aDropTargets.end() && ! it->second.m_pTarget->m_bActive ) + if (it != m_aDropTargets.end() && !it->second.m_pTarget->isActive()) m_aDropProxy = None; if( m_aDropProxy != None && xListener.is() ) diff --git a/vcl/unx/generic/dtrans/X11_selection.hxx b/vcl/unx/generic/dtrans/X11_selection.hxx index 0f96f7f271a6..fb5fb8dbd7ad 100644 --- a/vcl/unx/generic/dtrans/X11_selection.hxx +++ b/vcl/unx/generic/dtrans/X11_selection.hxx @@ -65,7 +65,6 @@ namespace x11 { class DropTarget : public ::cppu::WeakComponentImplHelper<css::datatransfer::dnd::XDropTarget, css::lang::XServiceInfo> { - public: ::osl::Mutex m_aMutex; bool m_bActive; sal_Int8 m_nDefaultActions; @@ -75,6 +74,7 @@ namespace x11 { ::std::vector< css::uno::Reference< css::datatransfer::dnd::XDropTargetListener > > m_aListeners; + public: DropTarget(); virtual ~DropTarget() override; commit d322dc328b99bd7cfa96e65b5818948ab223ceb8 Author: Michael Weghorn <[email protected]> AuthorDate: Fri Jul 4 16:52:37 2025 +0200 Commit: Michael Weghorn <[email protected]> CommitDate: Sat Jul 5 07:45:55 2025 +0200 vcl: Move SalInstance::GetConnectionIdentifier logic to only caller The default implementation returns an empty string and the X11SalInstance::GetConnectionIdentifier override was also only used in one place, namely SelectionManager::initialize. Move the logic directly there instead and drop the extra conversions between const char*, OUString and OString (assuming it wasn't needed to change the encoding, but only done because SalInstance::GetConnectionIdentifier returned a OUString). Change-Id: I3b4af8caace4df7e3bbe998ff6e2124a0fdceab7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187407 Tested-by: Jenkins Reviewed-by: Michael Weghorn <[email protected]> diff --git a/vcl/inc/salinst.hxx b/vcl/inc/salinst.hxx index bc2e350df175..d94843d7f44b 100644 --- a/vcl/inc/salinst.hxx +++ b/vcl/inc/salinst.hxx @@ -186,8 +186,6 @@ public: bool CallEventCallback(const void* pEvent); - virtual OUString GetConnectionIdentifier(); - // dtrans implementation virtual css::uno::Reference<css::datatransfer::clipboard::XClipboard> CreateClipboard(const css::uno::Sequence<css::uno::Any>& i_rArguments); diff --git a/vcl/inc/unx/salinst.h b/vcl/inc/unx/salinst.h index b77c89976f69..9fa93a7c5730 100644 --- a/vcl/inc/unx/salinst.h +++ b/vcl/inc/unx/salinst.h @@ -76,7 +76,6 @@ public: virtual bool AnyInput( VclInputFlags nType ) override; virtual bool IsMainThread() const override { return true; } - virtual OUString GetConnectionIdentifier() override; void SetLib( SalXLib *pXLib ) { mpXLib = pXLib; } virtual void AfterAppInit() override; diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 4bc1989c4966..ebfce424463f 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -166,8 +166,6 @@ bool SalInstance::CallEventCallback(const void* pEvent) return m_pEventInst.is() && m_pEventInst->dispatchEvent(pEvent); } -OUString SalInstance::GetConnectionIdentifier() { return OUString(); } - bool SalInstance::DoExecute(int&) { // can't run on system event loop without implementing DoExecute and DoQuit diff --git a/vcl/unx/generic/app/salinst.cxx b/vcl/unx/generic/app/salinst.cxx index 61c091a2d015..445dc8b89b59 100644 --- a/vcl/unx/generic/app/salinst.cxx +++ b/vcl/unx/generic/app/salinst.cxx @@ -193,12 +193,6 @@ bool X11SalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents) return mpXLib->Yield( bWait, bHandleAllCurrentEvents ); } -OUString X11SalInstance::GetConnectionIdentifier() -{ - static const char* pDisplay = getenv( "DISPLAY" ); - return pDisplay ? OUString::createFromAscii(pDisplay) : OUString(); -} - SalFrame *X11SalInstance::CreateFrame( SalFrame *pParent, SalFrameStyleFlags nSalFrameStyle ) { SalFrame *pFrame = new X11SalFrame( pParent, nSalFrameStyle ); diff --git a/vcl/unx/generic/dtrans/X11_selection.cxx b/vcl/unx/generic/dtrans/X11_selection.cxx index b9cbb39c392a..0ba104070d94 100644 --- a/vcl/unx/generic/dtrans/X11_selection.cxx +++ b/vcl/unx/generic/dtrans/X11_selection.cxx @@ -343,11 +343,8 @@ void SelectionManager::initialize() if( m_pDisplay ) return; - const OUString aUDisplay = ImplGetSVData()->mpDefInst->GetConnectionIdentifier(); - - OString aDisplayName( OUStringToOString( aUDisplay, RTL_TEXTENCODING_ISO_8859_1 ) ); - - m_pDisplay = XOpenDisplay( aDisplayName.isEmpty() ? nullptr : aDisplayName.getStr()); + static const char* pDisplay = getenv("DISPLAY"); + m_pDisplay = XOpenDisplay(pDisplay); if( !m_pDisplay ) return;
