2010/1/15 Simon Denier <Simon.Denier@inria.fr>

On 15 janv. 2010, at 21:20, Mariano Martinez Peck wrote:



On Fri, Jan 15, 2010 at 5:55 PM, Romain Robbes <romain.robbes@gmail.com> wrote:
yes it has overrides ...

that's because as far as I know, there's no keyboard shortcut management facility
in Pharo. If there was one, I suppose Algernon and WorkingSet would coexist.


So...all your overrides are due to the shortcuts?�� I think it is not fear to "forbid" a package to be included in a Dev image if we don't provide from the core a way to manage shortcuts. So:

1) Or we let this projects to be installed in the Dev image

2) We fix the problem with the shortcuts.

Romain: can you tell us where exactly the problem is ? maybe someone can give you a hand.


Taking a look at that, there are 2 overrides in WorkingSet


How did you detect that ?


PasteupMorph>>keystrokeInWorld:
but the diff is the same with my default version! So it can be removed

HandMorph>>sendKeyboardEvent:
which is the real conflicting method

Looking at it, there are 3 different versions, the default one, one from WorkingSet and one from Algernon. On the plus sign, it's quite easy to merge the last two and make WorkingSet works together with Algernon.


But the one from Algernon is actually the worst way to patch things, because it is all in a changeset which is encoded in binary format (see ConfigurationOfAlgernons>>multipleFocusHolderCs :(

It adds an instance variable to HandMorph and overrides two methods in HandMorph. Of course you cant see it at first since these are hidden in the binary changeset :(

'''From Squeak3.7gamma of ''''17 July 2004'''' [latest update: #5985] on 9 August 2004 at 7:56:10 pm''!
"Change Set: MultipleFocusHolder-hpt
Date: 9 August 2004
Author: Hernan Tylim

This changesets does the simplest modifications to HandMorph for it to support various focus holders.

The important changes are:

* addiionalKeyboardFocuses instance variable was added with its getter and setter methods.

* HandMorph>>sendKeyboardEvent: was changed to traverse the list of keyboard focus holders and call HandMorph>>sendEvent:focus:clear: to each one of them.

* HandMorph>>sendEvent:focus:clear: was changed to preserve the ''wasHandled'' status of the event, before that info were lost because the Event instance were copied before passed to the Morph.�
"!

The comment itself is misleading, it overrides�sendFocusEvent:to:clear:, not�sendEvent:focus:clear:�



Impressive. You should be a detective :)

I feel much less keen to include Algernon now that I have seen that.


Yes, me too. Completely.






Cheers

Mariano


� � � �Romain


On Jan 15, 2010, at 6:49 AM, Damien Cassou wrote:

> 2010/1/15 Mariano Martinez Peck <marianopeck@gmail.com>:
>> Thanks Damien. I did that, run the load of both projects but none of them
>> warn me.
>>
>> Are you sure they have overrides?
>
> I'm sure that WorkingSet has overrides, my detection code is probably
> not correct.
>
> --
> Damien Cassou
> http://damiencassou.seasidehosting.st
>
> "Lambdas are relegated to relative obscurity until Java makes them
> popular by not having them." James Iry
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project@lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
Romain Robbes
http://www.inf.unisi.ch/phd/robbes


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
�Simon




_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project