untypeable key combination

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
21 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: untypeable key combination

Nicolai Hess
Now I  think I solved the issue.
At least, if you remove a class from the system that defined a keymapping, there is
no reference to an obsolete class anymore.

background:
the keymap registration works in three steps:
1. collect methods with pragma <keymap>
2. build the registration items with one builder-instance (this builder collects the items too).
3. register all of the collected items.

my change is at the third step, instead of working on the collection of the builder, I make
a copy and remove all items from the builder. That way the builder does not hold a reference to the
shortcut items after they went to the registry.



nicolai


2015-06-01 22:16 GMT+02:00 Nicolai Hess <[hidden email]>:


2015-06-01 22:06 GMT+02:00 Eliot Miranda <[hidden email]>:


On Sat, May 30, 2015 at 8:20 AM, Nicolai Hess <[hidden email]> wrote:


2015-05-30 16:01 GMT+02:00 Sean P. DeNigris <[hidden email]>:
Nicolai Hess wrote
> I don't fully understand what to change.

If Spur will be ready for the next release, why don't we just wait...

I would like to better understand what is the problem and I am sure
there is some kind of software pattern to prevent this
circular reference situation.

Yes, they're called ephemerons.  Read the Wikipedia page and the paper.  They explain things well.  http://en.wikipedia.org/wiki/Ephemeron

Yes now I understand why ephemerons can solve this issue.
But what I was thinking of is, maybe we don't need this circular reference for our keymapping registry, it looks like some the references only
there because we need this information during building the keymap but not afterwards.


 
 


 



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/untypeable-key-combination-tp4794607p4829511.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.





--
best,
Eliot


12