Hi!
I'd like to know also if the problem is in Keymapping or in is some platform/vm/whatever other issue on keyboard handling. Actually, pharo messes up with <ctrl> normally, since it is not broadly used :).
Ben, can you debug a bit?
Add the following lines on InputEventSensor>>#processEvent::
"Finally keyboard" type = EventTypeKeyboard ifTrue: [ "Sswap ctrl/alt keys if neeeded" * (evt at: 5) = 2 "if it is ctrl" ifTrue: [ Transcript show: 'Before: ', (evt asString);cr] .* KeyDecodeTable at: {evt at: 3. evt at: 5} ifPresent: [:a | evt at: 3 put: a first; at: 5 put: a second]. * (evt at: 5) = 2 "if it is ctrl" ifTrue: [ Transcript show: 'After: ', (evt asString);cr] .* "Update state for polling calls" modifiers := evt at: 5. ^evt].
press ctrl-shift-space and send me the output transcript :).
BTW, if the problem is this f*** KeyDecodeTable, we have removed it in pharo 2.0, for the next generation :). Guille
On Wed, May 23, 2012 at 9:05 PM, Tudor Girba tudor@tudorgirba.com wrote:
Hi,
Perhaps the problem is with keymapping. I work on Mac.
Please try to use: GLMWatcherWindow uniqueInstance toggleOpen
This is what essentially gets triggered by the keymapping definition from: GLMWatcherWindow class>>buildKeymapsOn:
Please let me know if it works.
Cheers, Doru
On 23 May 2012, at 19:08, Ben Coman wrote:
Yes. Ctrl+Shift+Space has no response. Else I would not have reported
it :)
btw my platform is Windows 7.
Tudor Girba wrote:
Did you press Ctrl+Shift+Space?
This should open/close the Watcher.
Cheers, Doru
On 23 May 2012, at 17:21, Ben Coman wrote:
Tudor Girba wrote:
Hi,
I enhanced Glamour with a first version of a Watcher browser that
offers a behavior similar to Quick Preview on Mac.
For example, if you run the code below in a Moose image, and then
press Ctrl+Shift+Space you will get a preview of source code in a window floating above the current one. See the attachment.
| browser | browser := GLMTabulator new. browser column: #methods. browser transmit to: #methods; andShow: [:a | a list display:
#methods; format: #selector ].
browser transmit from: #methods; toWatcher; andShow: [:a | a
smalltalkCode
smalltalkClass: [ :method | method methodClass ]; display: [:method | method getSource ] ]. browser openOn: GLMBrowser
To get it 100% useable I would need help with some Morphic magic:
- to make the Watcher window not appear in the taskbar
- to make the rendering of Watcher happen in another thread so that
it does not block the current UI
Cheers, Doru
This does not work for me out of the box with a fresh Moose 4.7
downloaded this evening. There is no response when clicking on the method list.
I see in GLMMorphicWatcherRender>>actOnMatchingPresentationsChanged
that you use you have [ GLMWatcherWindow uniqueInstance ] and a stab in the dark is that something broke since your uniqueInstance was created. I wonder your example still works for you after [ GLMWatcherWindow reset ].
In any case, I got it partially working with the following (likely
inappropriate) hack...
GLMMorphicWatcherRenderer>>actOnMatchingPresentationsChanged:
anAnnouncement
"whenever a relevant pane changes its presentations, we override the contents from the GLMWatcherWindow" | window | window := GLMWatcherWindow uniqueInstance. window contentsMorph removeAllMorphs; addMorph: (self renderObject: anAnnouncement pane) fullFrame: (LayoutFrame fractions: (0@0 corner: 1@1)) . window openInWorld.
Clicking in turn on several methods shows each in the single Glamorous
Watcher. However Glamorous Watcher keeps repositioning on top of the Glamorous Browser.
cheers -ben _______________________________________________ Moose-dev mailing list
Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"Every successful trip needs a suitable vehicle."
Moose-dev mailing list
Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
If you can't say why something is relevant, it probably isn't.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev