Mac reports it better :
Looks like it is happening in the same place on both... and kind of looks like a problem with wxPropgrid more than anything - but you never knows.
One thing on Mac, in fdcnv.bmx, in the OnKeyDown and OnKeyUp handlers, you event.Skip(), which the property editor doesn't like - ie. it's almost impossible to edit text. Commenting it out fixes that.
On an efficiency note, when the mouse is not over the canvas, does the canvas really need to be redrawing as often? Perhaps you could disable the timer when the mouse leaves? OnPaint() should still catch required refreshes.
Unless of course you are animating stuff in there? :-)
0 frydesigner.debug 0x001c2b78 wxPGProperty::GetEditorClass() const + 36 1 frydesigner.debug 0x001c8377 wxPropertyGrid::OnCustomEditorEvent(wxCommandEvent&) + 427 2 frydesigner.debug 0x001c859a wxPropertyGrid::ProcessEvent(wxEvent&) + 54 3 frydesigner.debug 0x00422d9c wxEvtHandler::ProcessEvent(wxEvent&) + 108 4 frydesigner.debug 0x003aa74e wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) + 46 5 frydesigner.debug 0x00396c52 wxWindowBase::TryParent(wxEvent&) + 98 6 frydesigner.debug 0x00422dac wxEvtHandler::ProcessEvent(wxEvent&) + 124 7 frydesigner.debug 0x00396c52 wxWindowBase::TryParent(wxEvent&) + 98 8 frydesigner.debug 0x00422dac wxEvtHandler::ProcessEvent(wxEvent&) + 124 9 frydesigner.debug 0x0039b2e3 wxWindowBase::SendDestroyEvent() + 67 10 frydesigner.debug 0x00306e48 wxWindow::~wxWindow() + 40 11 frydesigner.debug 0x002f41b4 wxTextCtrl::~wxTextCtrl() + 148 12 frydesigner.debug 0x001d078c wxPropertyGrid::DoSelectProperty(wxPGProperty*, unsigned int) + 106 13 frydesigner.debug 0x001d3466 wxPropertyGridState::PrepareToAddItem(wxPGProperty*, wxPGProperty*) + 278 14 frydesigner.debug 0x001d3700 wxPropertyGridState::DoInsert(wxPGProperty*, int, wxPGProperty*) + 60 15 frydesigner.debug 0x001ca0c9 wxPropertyContainerMethods::AppendIn(wxPGPropArgCls const&, wxPGProperty*) + 67 16 frydesigner.debug 0x001b14e6 bmx_wxpropertygrid_appendin + 46 ...
Looks like it is happening in the same place on both... and kind of looks like a problem with wxPropgrid more than anything - but you never knows.
One thing on Mac, in fdcnv.bmx, in the OnKeyDown and OnKeyUp handlers, you event.Skip(), which the property editor doesn't like - ie. it's almost impossible to edit text. Commenting it out fixes that.
On an efficiency note, when the mouse is not over the canvas, does the canvas really need to be redrawing as often? Perhaps you could disable the timer when the mouse leaves? OnPaint() should still catch required refreshes.
Unless of course you are animating stuff in there? :-)