[BUG;Workaround] "Fix" breaks, at least, BitEditor

Stefan Matthias Aust sma at 3plus4.de
Mon Mar 13 22:42:03 UTC 2000


At 12:22 12.03.00 -0500, you wrote:
>The fixes fixes fix has a bug!

I'm sorry to hear this.

>The changeset breaks almost every system window.  After filing in, I 
>can no longer reliably mouse to a menu in a browser pane (the 
>scrollbar widget disappears just as I mouse to it).

I just filed-in the code into a clean 2.8a #1919 image.  It took a while to
load while the Controller class hierarchy was recompiled.  It also asked
whether I really want to move YellowButtonMessages to undeclared and I agreed.

But for me it works.

>I'm still quite sure I don't understand the problem here.
>
>Perhaps we should get down to first principles before chasing more 
>bugs.  What, precisely, was the bug you were trying to fix?

If you call the method I mentioned (I unfortunately forgot to mention that
it was a class method) and then try to open the text pane's menu, you'll
get an error.

I fixed that but that broke the BitEditor and the FormEditor class.

This was because all three classes use the same method
MouseMenuController>>yellowButtonActivity, but with PopupMenu and
SelectionMenu instances and these classes aren't compatible.

>I really don't see any conceptual problem problem with having a Menu 
>class hierarchy beginning with PopUpMenu, providing core [...]

It's not a problem of the PopupMenu hierarchy but of senders of these menu
instances.  The original code assumes PopupMenus but with the exception of
BitEditor and FormEditor all other controllers assume SelectionMenu
instances.  Most controllers use their own yellowButtonActivity.  Not so
the FillInTheBlankController.

Andrew, if my code breaks your system, could you please give me a hint what
fails so that we can work on a solution?  Did you tried to file in the code
into a fresh image?

bye
--
Stefan Matthias Aust  //  Bevor wir fallen, fallen wir lieber auf.





More information about the Squeak-dev mailing list