Opened 21 months ago

Last modified 11 hours ago

#15115 reopened defect

wxComboBox drop down list disappears when any event is processed

Reported by: bartvanstiphout Owned by:
Priority: normal Milestone:
Component: wxOSX-Cocoa Version: 2.9.5
Keywords: wxCombobox difficult Cc: mrspoek@…
Blocked By: Blocking:
Patch: yes

Description

If a wxComboBox is showing the drop down list and a wxDatagramSocket sends a packet using SendTo, the drop down list disappears.

OSX 10.7.5
wxOSX Cocoa 2.9.4

Attachments (1)

15115.patch download (2.8 KB) - added by sbrowne 11 hours ago.

Download all attachments as: .zip

Change History (8)

comment:1 Changed 21 months ago by vadz

  • Keywords difficult added; sendto removed
  • Status changed from new to confirmed
  • Summary changed from wxComboBox drop down list disappears on wxDatagramSocket::Sendto to wxComboBox drop down list disappears when any event is processed

I can confirm the bug, although it has nothing to do with the sockets, it seems like the drop down is closed whenever any event is processed, see this thread. Unfortunately it looks like it's a problem at OS X level so I have no idea if it can be fixed in wxOSX.

comment:2 Changed 18 months ago by SC

  • Resolution set to fixed
  • Status changed from confirmed to closed

(In [74186]) guarding open combo box against AppDefined NSEvents issued by wxEventLoop::WakeUp, fixes #15115

comment:3 Changed 18 months ago by SC

(In [74187]) guarding open combo box against AppDefined NSEvents issued by wxEventLoop::WakeUp, fixes #15115

comment:4 Changed 17 months ago by Spoek

  • Cc mrspoek@… added
  • Resolution fixed deleted
  • Status changed from closed to reopened
  • Version changed from 2.9.4 to 2.9.5

It seems the fix is only working when you click the drop box down with the mouse. If you press cursor down whilst being in the textbox part, the drop down list opens, but closes immediatly on an event like doing an cursor down (trying to scroll down the list).

comment:5 Changed 15 hours ago by sbrowne

Note this also affects programmatically opening up the drop down via the new Popup() function which makes it incredibly annoying to use wxGridCellChoiceEditors. I eventually inherited from wxGridCellChoiceEditor and if !m_allowOthers I use a wxChoice instead to work around the issue.

I can confirm that this is also the case in 3.0.2. I'm glad I found this ticket because it was driving me nuts and I couldn't for the life of me figure out the actual cause and why I didn't hit it in the sample code.

comment:6 Changed 14 hours ago by sbrowne

I just looked at the revisions above and it should be pretty easy fix the last two scenarios mentioned. I'll test that out and attach a patch if it works.

Changed 11 hours ago by sbrowne

comment:7 Changed 11 hours ago by sbrowne

  • Patch set

See the attached patch which I've tested and fixes all 3 scenarios. I basically just used the same code from r74186 and r74187 except I moved the OSXUseLowLevelWakeup(false) call into the comboBoxWillDismiss handler so it will catch all 3 paths.

Note: See TracTickets for help on using tickets.