Forward port event handler fixes to trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
		@@ -45,6 +45,7 @@ protected :
 | 
			
		||||
 | 
			
		||||
    // contains the tag for the content (is different for password and non-password controls)
 | 
			
		||||
    OSType m_valueTag ;
 | 
			
		||||
    WXEVENTHANDLERREF    m_macTextCtrlEventHandler ;
 | 
			
		||||
public :
 | 
			
		||||
    ControlEditTextSelectionRec m_selection ;
 | 
			
		||||
};
 | 
			
		||||
 
 | 
			
		||||
@@ -44,6 +44,8 @@ public:
 | 
			
		||||
                const wxString& name = wxFrameNameStr);
 | 
			
		||||
 | 
			
		||||
    virtual ~wxTopLevelWindowMac();
 | 
			
		||||
    
 | 
			
		||||
    virtual bool Destroy();
 | 
			
		||||
 | 
			
		||||
    virtual wxPoint GetClientAreaOrigin() const;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,3 @@
 | 
			
		||||
#if __WXOSX_CARBON__
 | 
			
		||||
#if wxOSX_USE_CARBON
 | 
			
		||||
#include "wx/osx/carbon/uma.h"
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
@@ -468,7 +468,16 @@ bool wxWebKitCtrl::Create(wxWindow *parent,
 | 
			
		||||
 | 
			
		||||
wxWebKitCtrl::~wxWebKitCtrl()
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    MyFrameLoadMonitor* myFrameLoadMonitor = [m_webView frameLoadDelegate];
 | 
			
		||||
    MyPolicyDelegate* myPolicyDelegate = [m_webView policyDelegate];
 | 
			
		||||
    [m_webView setFrameLoadDelegate: nil];
 | 
			
		||||
    [m_webView setPolicyDelegate: nil];
 | 
			
		||||
    
 | 
			
		||||
    if (myFrameLoadMonitor)
 | 
			
		||||
        [myFrameLoadMonitor release];
 | 
			
		||||
        
 | 
			
		||||
    if (myPolicyDelegate)
 | 
			
		||||
        [myPolicyDelegate release];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ----------------------------------------------------------------------------
 | 
			
		||||
 
 | 
			
		||||
@@ -509,11 +509,12 @@ void wxMacUnicodeTextControl::InstallEventHandlers()
 | 
			
		||||
{
 | 
			
		||||
    ::InstallControlEventHandler( m_controlRef , GetwxMacUnicodeTextControlEventHandlerUPP(),
 | 
			
		||||
                                GetEventTypeCount(unicodeTextControlEventList), unicodeTextControlEventList, this,
 | 
			
		||||
                                NULL);
 | 
			
		||||
                                (EventHandlerRef*) &m_macTextCtrlEventHandler);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
wxMacUnicodeTextControl::~wxMacUnicodeTextControl()
 | 
			
		||||
{
 | 
			
		||||
    ::RemoveEventHandler((EventHandlerRef) m_macTextCtrlEventHandler);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void wxMacUnicodeTextControl::VisibilityChanged(bool shown)
 | 
			
		||||
 
 | 
			
		||||
@@ -87,6 +87,17 @@ wxTopLevelWindowMac::~wxTopLevelWindowMac()
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool wxTopLevelWindowMac::Destroy()
 | 
			
		||||
{
 | 
			
		||||
    // NB: this will get called during destruction if we don't do it now,
 | 
			
		||||
    // and may fire a kill focus event on a control being destroyed
 | 
			
		||||
#if wxOSX_USE_CARBON
 | 
			
		||||
    if (m_nowpeer->GetWXWindow())
 | 
			
		||||
        ClearKeyboardFocus( (WindowRef)m_nowpeer->GetWXWindow() );
 | 
			
		||||
#endif
 | 
			
		||||
    return wxTopLevelWindowBase::Destroy();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// ----------------------------------------------------------------------------
 | 
			
		||||
// wxTopLevelWindowMac maximize/minimize
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user