Issue 6656 in pharo: Move all shortcuts handling to Keymapping

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

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #20 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

I have a problem with the following code, in

KMDispatcher>>dispatchKeystroke: aKeyEvent
...
        [ aKeyEvent wasHandled not and: [ currentTarget notNil ] ]
                whileTrue: [
                        currentTarget dispatch: KMBuffer uniqueInstance buffer.
                        currentTarget := currentTarget ownerTarget.
                ].
...

The call to owner can be nice for some use case, but it's also very tricky  
if the original target wants to do something with the keystroke without  
labelling it as a shortcut. Well, have to live with it, I guess.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #21 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Name:  
SLICE-Issue-6656-Move-all-shortcuts-handling-to-Keymapping-ThierryGoubier.8
Author: ThierryGoubier
Time: 15 September 2012, 12:30:46.184 pm
UUID: 27101f4f-5d90-48a3-bbdb-6ebde3ee5f04
Ancestors:  
SLICE-Issue-6656-Move-all-shortcuts-handling-to-Keymapping-ThierryGoubier.7
Dependencies: Keymapping-Core-ThierryGoubier.139,  
Spec-Core-ThierryGoubier.60, Spec-Examples-ThierryGoubier.11,  
Spec-Widgets-ThierryGoubier.66, CI-Core-ThierryGoubier.40,  
Morphic-ThierryGoubier.1239, Spec-Tools-ThierryGoubier.55,  
Text-ThierryGoubier.25

PluggableTreeMorph free of Morphic shortcuts.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #22 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

As of current Pharo 2.0 and this slice, it looks fairly stable and doesn't  
change much the keyboard behavior of the apps present (Browser, Nautilus)  
except in my test image. It's now just a matter of going through all  
keyboard interested morphs one by one and moving the shortcut and keystroke  
handling code to Keymapping.

Name:  
SLICE-Issue-6656-Move-all-shortcuts-handling-to-Keymapping-ThierryGoubier.10
Author: ThierryGoubier
Time: 15 September 2012, 11:05:08.238 pm
UUID: c0794f31-0b3a-4f14-bd02-4a0b96d2a8bf
Ancestors:  
SLICE-Issue-6656-Move-all-shortcuts-handling-to-Keymapping-ThierryGoubier.9
Dependencies: Keymapping-Core-ThierryGoubier.140,  
Spec-Core-ThierryGoubier.60, Spec-Examples-ThierryGoubier.12,  
Spec-Widgets-ThierryGoubier.66, CI-Core-ThierryGoubier.40,  
Morphic-ThierryGoubier.1240, Spec-Tools-ThierryGoubier.55,  
Text-ThierryGoubier.26, Polymorph-Widgets-ThierryGoubier.696

Wohoo! Tab and Ctrl+Tab navigation works. Should really remove the  
forcusOrder thing in Spec.
Start of a Vim-like switching as a Spec example.
PluggableButtonMorph free of Morphic key handling code.

Redone: bug in RPackage : didn't notice an overriden method was erased.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #23 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Now waiting for a review :)




_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #24 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Name:  
SLICE-Issue-6656-Move-all-shortcuts-handling-to-Keymapping-ThierryGoubier.11
Author: ThierryGoubier
Time: 17 September 2012, 10:46:49.116 pm
UUID: 65145fc3-8fe9-4067-822c-25383f80fd34
Ancestors:  
SLICE-Issue-6656-Move-all-shortcuts-handling-to-Keymapping-ThierryGoubier.10
Dependencies: Keymapping-Core-ThierryGoubier.141,  
Spec-Core-ThierryGoubier.61, Spec-Examples-ThierryGoubier.13,  
Spec-Widgets-ThierryGoubier.67, CI-Core-ThierryGoubier.41,  
Morphic-ThierryGoubier.1240, Spec-Tools-ThierryGoubier.56,  
Text-ThierryGoubier.26, Polymorph-Widgets-ThierryGoubier.696,  
NautilusRefactoring-ThierryGoubier.45, Spec-Builder-ThierryGoubier.12,  
Keymapping-Tests-ThierryGoubier.64

- Removed all focusOrder stuff from Spec and Spec users
-- Left a shim to redirect to Morph when needed.
- Started to look into Keymapping-Tests failures
-- All failures are exercising the #deprecated staticTargets


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #25 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Ok, I'm reviewing it. It's a big big slice, kind of scary...

So far I loaded it (via merge) and Spotlight is not working any more in  
latest 2.0 :/


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #26 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Ahh that's because static shortcuts were removed... I think first we have  
to provide global shortcuts in a nice way.

Still working on it


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo
Updates:
        Cc: [hidden email] [hidden email]

Comment #27 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

I've commited a new version of the slice restoring static keymaps.

@Ben, can you have a look at the slice too to check the Spec stuff?

@Thierry, let's try to make slices a bit smaller, because otherwise it is  
death to read and see if its ok! :D


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #28 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Maybe just adding a global shortcut keymap in PasteUpMorph would be  
enough ? The keymapping dispatch code propagate all along the ownership  
chain in Morphic.



_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #29 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Reintegrating static targets will break the navigation among morphs.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #30 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Why? I put static targets with lower priority...

How can I test that navigation?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #31 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

@Guillermo, do you want me to create new slices for each subset ?

i.e. create an issue for each subset, like Tools, Morphic, Spec, Keymapping.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #32 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

To test the navigation,

Open Browser or Nautilus, and try to tab among morphs inside (or ctrl+tab).


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #33 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Ok, enabling static targets makes some morphs not in focus able to match  
keys.

If, by chance and a static target, a PanelMorph or a TransformMorph is the  
one handling navigateFocusForward, it bugs (it loops forever between one or  
two morphs).


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #34 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Make sure you have KMLog setDebug :)

I changed the log format to try to see cases where the Morph matching was  
not the one with the focus.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #35 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

Oh yes,

both I and Sean have a problem with static targets; it mess up any attempt  
at fine control of shortcuts over a given Morph, and forced both of us to  
write subclasses of KMDispatcher to handle that.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #36 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

I can't reproduce that case, and I don't finish to understand when a  
PanelMorph or TransformMorph should be handling navigateFocusForward...

In that case we should make #navigateFocusForward properly, don't we?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #37 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

To enable Spotlight, it's enough to do :

ActiveWorld attachKeymapCategory: #Spotlight

¡Works without static targets!

_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #38 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

But a serious global shortcut mechanism should modify the way shortcuts are  
looked up:

1) Global shortcuts should be handled first, and then
2) The lookup is started at the morph where the event was received

But ok, your solution works :P.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 6656 in pharo: Move all shortcuts handling to Keymapping

pharo

Comment #39 on issue 6656 by [hidden email]: Move all shortcuts  
handling to Keymapping
http://code.google.com/p/pharo/issues/detail?id=6656

navigateFocusForward works perfectly, to the condition that :

- the morph calling navigateFocusForward has the focus.

As is the slice, all morphs with focus have a keymap trapping tab, and  
ctrl-tab (for text editor).

If you re-enabled static targets, can you check that all shortcuts on  
PluggableTextMorph do what you expect ?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
123