[Chandler-dev] Re: Fwd: Build failed on molokini-osx
D John Anderson
john at osafoundation.org
Fri Dec 7 19:59:49 PST 2007
Hi Robin:
It looks like the tests are still failing on Tiger -- but in different
ways. Some of them look like a selection in a TextCtrl is getting lost
or set incorrectly. Do you think wx is still responsible for these
failures?
John
On Dec 7, 2007, at 10:17 AM, Robin Dunn wrote:
> [ redirecting to chandler-dev]
>
> Robin Dunn wrote:
>> D John Anderson wrote:
>>> It looks like RenameAndNewEvent is finding a new bug on the non-
>>> leopard tinderboxes:
>>>
>>> AssertionError: event 110 -- widget CalendarLocationAEEditControl
>>> value, "locationt" doesn´t match the value when the script was
>>> recorded: "t"
>>>
>>> Here's what's happening: The calendar location field is shown in
>>> the detail view just below the title in a calendar event. When you
>>> begin editing it, it's normally selected and displays the text
>>> "location". So typically when you type a character, e.g. "t", it
>>> should replace the text "location" with "t". In this case it
>>> doesn't, after the character is typed it displays "locationt"
>>> instead of "t".
>>>
>>> I suspect that the recent wx is the most likely thing that might
>>> cause this bug. I don't have a non-leopard MacOS to test on so I'm
>>> not going to be able to easily track down the problem.
>>>
>> Here is a workaround. I still haven't narrowed down the wx change
>> that might have an effect like this.
>
> [...old patch cut...]
>
> That fix actually caused a different test to fail, so I've now got a
> better workaround/fix that I'll check-in after I am able to run the
> tests on Leopard.
>
> Basically the wx change that caused this problem was that the old
> way that focus events were handled in wx could cause a crash on
> Leopard in certain situations, so Stefan changed it to use a new
> notification added to Leopard, and it ended up being better anyway
> since it works more like focus events on wxMac and wxGTK do. Since
> pre-Leopard systems don't have this new notification Stefan added
> code to emulate it for those systems. He says that there are likely
> minor differences in sequence of events between Leopard and pre-
> Leopard, and I think that this test case is probably falling into
> that crack. So using a CallAfter works around that difference by
> delaying the setting of the selection until everything else is done.
>
> There is another bit of functionality here that can sometimes get in
> the way, and may also be part of this particular problem. The
> native widget used for the wx.TextCtrl on Mac does not maintain its
> selection when it doesn't have the focus, so wxMac does it itself,
> and restores the old selection (if any) when the widget gets the
> focus. Since the Chandler code is optionally doing a SelectAll in
> the click or focus events it may be that wxMac comes back around
> after that point and resets the selection to the previous values
> (nothing selected.)
>
> --
> Robin Dunn
> Software Craftsman
> http://wxPython.org Java give you jitters? Relax with wxPython!
>
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> Open Source Applications Foundation "chandler-dev" mailing list
> http://lists.osafoundation.org/mailman/listinfo/chandler-dev
More information about the chandler-dev
mailing list