git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40589
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
{
wxWindow* winFocused = ::wxWindow::FindFocus();
{
wxWindow* winFocused = ::wxWindow::FindFocus();
- wxWindow* popup = m_combo->GetPopupControl();
+ wxWindow* popup = m_combo->GetPopupControl()->GetControl();
wxWindow* winpopup = m_combo->GetPopupWindow();
if (
wxWindow* winpopup = m_combo->GetPopupWindow();
if (
wxLongLong t = ::wxGetLocalTimeMillis();
int evtType = event.GetEventType();
wxLongLong t = ::wxGetLocalTimeMillis();
int evtType = event.GetEventType();
+#if !USE_TRANSIENT_POPUP
+ if ( m_isPopupShown &&
+ ( evtType == wxEVT_LEFT_DOWN || evtType == wxEVT_RIGHT_DOWN ) )
+ {
+ HidePopup();
+ return true;
+ }
+#endif
+
//
// Generate our own double-clicks
// (to allow on-focus dc-event on double-clicks instead of triple-clicks)
//
// Generate our own double-clicks
// (to allow on-focus dc-event on double-clicks instead of triple-clicks)
// Destroy popup window and the child control
void wxComboCtrlBase::DestroyPopup()
{
// Destroy popup window and the child control
void wxComboCtrlBase::DestroyPopup()
{
if ( m_popup )
m_popup->RemoveEventHandler(m_popupExtraHandler);
delete m_popupExtraHandler;
if ( m_popup )
m_popup->RemoveEventHandler(m_popupExtraHandler);
delete m_popupExtraHandler;
delete m_popupInterface;
if ( m_winPopup )
delete m_popupInterface;
if ( m_winPopup )