https://forum.world.st/Alt-tab-between-windows-tp4826593p4826722.html
well... you hit one of our weaker spots :)
Keybindings are not in his best shape, but:
- Actually, alt+tab is already set to "switch window" activity. The problem is that does not work all the time (for example, it does not work on Playground).
- This is because there are some hardcoded logic there, who we are removing slowly from the system (some of those parts have more than 15yrs since they come from before Pharo has born).
- Someone (probably in a failed attempt to fix the playground, or the hardcodes) forget a halt in the method who creates a new preview window... so even if you reach that part of the system, you will have a debugger. Of course, you will be able to restore correct behaviour by just removing the breakpoint, but that will not correct the fact "switch windows" will not be available everywhere.
In any case, we are moving out this hardcode stuff, and you can check all currently available settings going to **World Menu/System/Keymap Browser** (they are a lot, we are also playing with ideas on how to show better this combinations... emacs style, popup notifications, etc.)
Esteban
ps: I will like to have a solution for this, if anyone can help a bit in this area… but it has to be a solution using the keybindings framework. I will deny integration to any hardcoded solution :)
does not work for me in macos. Ctrl+left/right is reserved by MACOS for switching workspaces but even other key combinations i tried do not work at all. Alt+Tab is also reserved in macos.
On Sat, May 16, 2015 at 9:14 AM Carlo <
[hidden email]> wrote:
Hi
See my earlier email was bounced.
...
Ok, hacked and debugged my pharo 4 image and I've got ctrl- left or right working on my mac.
Two changes needed
TaskListMorph>>keyStroke: event needs to change as per below to add the ctrl left or right.
TaskListMorph>>keyStroke: event
"Process keys to switch task."
event keyCharacter = Character escape ifTrue: [^self delete].
event anyModifierKeyPressed ifFalse: [^self done].
event keyString = '<Ctrl-left>' ifTrue: [^self selectPreviousTask].
event keyString = '<Ctrl-right>' ifTrue: [^self selectNextTask].
event keyString = '<Opt-Shift-tab>' ifTrue: [^self selectPreviousTask].
event keyString = '<Opt-tab>' ifTrue: [^self selectNextTask]
Then TaskListMorph>>isNavigationEvent: aKeyboardEvent needs to change as per below:
isNavigationEvent: aKeyboardEvent
| validCombos |
validCombos := Array with: Character tab alt with: Character tab alt shift with: Character arrowLeft ctrl with: Character arrowRight ctrl .
^ validCombos contains: [:each | each = aKeyboardEvent asKeyCombination].
Ctrl-left or Ctrl-right works, and again you need to press any key to select the window on preview.
Cheers
I'd be totally cool with Alt-Left/Right. I just want *something* so I don't have to lift my hand just to switch from e.g. Browser to Playground and back.