Hi,
In regards to alt-a problem.
It turns out that right als (Alt Gr) is a key which simulates
Ctrl+Left Alt. See history section in
http://en.wikipedia.org/wiki/AltGr_key . Now, the code you pointed me
to:

} else if (keyCode == Keyboard.KeyCode.A
   && Keyboard.isPressed(commandModifier)) { ...

checks if a is pressed and if command key is pressed -> on windows
commandModifier is set to Modifier.CTRL inside Platform class. The
problem is that  Keyboard.isPressed checks using bitmask, so it
retruns true for the "Ctrl+Left Alt" case which Alt Gr generates. I
think it should check if CTRL is the only modifier pressed at the
moment. Also, pressing for example CTRL+SHIFT+A renders the same
results as CTRL+A while inside native apps (tested on chrome address
bar and notepad) CTRL+SHIFT+A combination does nothing.



W dniu 25 lipca 2010 01:46 użytkownik Kamil T. <[email protected]> napisał:
> Hi,
> Just by holding CTRL I've got breakpoint with keyCode 17, keyLocation
> LEFT,  if I hold right alt, the breakpoint is hit two times, first
> with with keyCode 17, keyLocation LEFT, then with with keyCode 18,
> keyLocation RIGHT.  Looks like if I also have 'a' pressed, then I have
> two different messages, ctrl+a followed by right alt  + a.
>
> Tried this on ubuntu - behaves normally. I'm clueless.
>
>
> W dniu 24 lipca 2010 19:42 użytkownik Greg Brown <[email protected]> napisał:
>> Try setting a breakpoint in TerraTextInputSkin#keyPressed() at line 1230:
>>
>> ...
>> } else if (keyCode == Keyboard.KeyCode.A
>>    && Keyboard.isPressed(commandModifier)) { ...
>>
>>
>> On Jul 24, 2010, at 11:21 AM, Kamil T. wrote:
>>
>>> Looks like alt+a is generating selection, when i press it, i have
>>> selectionLength set to full text width, selectionStart set to 0,  in
>>> the TextInput.insert(String text) function  delete(false) is called
>>> which clears the values (it is the 366th line in the TextInput class).
>>> I don't know where put breakpoint to see where selection is generated,
>>> maybe it confuses alt-a with ctrl-a (select all)?
>>>
>>> regards
>>> Kamil
>>>
>>>
>>> W dniu 24 lipca 2010 16:36 użytkownik Greg Brown <[email protected]> napisał:
>>>> I'm using J6u20 as well, so it is probably not related to the JRE version.
>>>>
>>>> Any chance you could try to step through the code to see where it is 
>>>> failing?
>>>>
>>>> On Jul 24, 2010, at 10:30 AM, Kamil T. wrote:
>>>>
>>>>> Hi,
>>>>> Thank you for fast answer.
>>>>> I'm using latest stable version from the website - 1.5.
>>>>>
>>>>> java:
>>>>> Java Plug-in 1.6.0_20
>>>>> Using JRE version 1.6.0_20-b02 Java HotSpot(TM) Client VM
>>>>>
>>>>>
>>>>> Windows 7 64bit - ultimate
>>>>>
>>>>> Strange, I was able to reproduce this behavior also inside Kitchen
>>>>> Sink demo. TextArea behaves in the same way for me.
>>>>> Could it be because of java version?
>>>>>
>>>>> br
>>>>> Kamil
>>>>>
>>>>>
>>>>>
>>>>> W dniu 24 lipca 2010 16:13 użytkownik Greg Brown <[email protected]> 
>>>>> napisał:
>>>>>> What Pivot version are you using? In 1.5 and above, I am able to copy 
>>>>>> the string "łóżźć" into a TextInput, select the text using the mouse, 
>>>>>> and use Command-C (Mac shortcut) to copy it without error. I can also 
>>>>>> use the Alt-A combination without a problem: I entered and copied this 
>>>>>> text from the Kitchen Sink demo (using the Polish Pro keyboard 
>>>>>> mappings): "Pivotą".
>>>>>>
>>>>>> I was also unable to reproduce the problem in Windows XP. Could there 
>>>>>> possibly be some other problem?
>>>>>>
>>>>>> Greg
>>>>>>
>>>>>> On Jul 24, 2010, at 9:34 AM, Kamil T. wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> My application uses Polish special characters and it looks like Pivot
>>>>>>> has some problems with them.
>>>>>>>
>>>>>>> In TextInput component, if I write there some special chars,
>>>>>>> copy/paste functionality stops working:
>>>>>>> if I write  "łóżźć" inside TextInput, then select text using mouse, if
>>>>>>> I press Ctrl+C I get:
>>>>>>>
>>>>>>>
>>>>>>> java.lang.IndexOutOfBoundsException
>>>>>>>       at org.apache.pivot.wtk.text.TextNode.getRange(TextNode.java:255)
>>>>>>>       at 
>>>>>>> org.apache.pivot.wtk.TextInput.getSelectedText(TextInput.java:603)
>>>>>>>       at org.apache.pivot.wtk.TextInput.copy(TextInput.java:438)
>>>>>>>       at 
>>>>>>> org.apache.pivot.wtk.skin.terra.TerraTextInputSkin.keyPressed(TerraTextInputSkin.java:1249)
>>>>>>>       at 
>>>>>>> org.apache.pivot.wtk.Component$ComponentKeyListenerList.keyPressed(Component.java:514)
>>>>>>>       at org.apache.pivot.wtk.Component.keyPressed(Component.java:2656)
>>>>>>>       at 
>>>>>>> org.apache.pivot.wtk.ApplicationContext$DisplayHost.processKeyEvent(ApplicationContext.java:1217)
>>>>>>>       at java.awt.Component.processEvent(Unknown Source)
>>>>>>>       at 
>>>>>>> org.apache.pivot.wtk.ApplicationContext$DisplayHost.processEvent(ApplicationContext.java:655)
>>>>>>>       at java.awt.Component.dispatchEventImpl(Unknown Source)
>>>>>>>       at java.awt.Component.dispatchEvent(Unknown Source)
>>>>>>>       at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
>>>>>>>       at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown 
>>>>>>> Source)
>>>>>>>       at 
>>>>>>> java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
>>>>>>>       at 
>>>>>>> java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
>>>>>>>       at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown 
>>>>>>> Source)
>>>>>>>       at java.awt.Component.dispatchEventImpl(Unknown Source)
>>>>>>>       at java.awt.Component.dispatchEvent(Unknown Source)
>>>>>>>       at java.awt.EventQueue.dispatchEvent(Unknown Source)
>>>>>>>       at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown 
>>>>>>> Source)
>>>>>>>       at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown 
>>>>>>> Source)
>>>>>>>       at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown 
>>>>>>> Source)
>>>>>>>       at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>>>>>       at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>>>>>       at java.awt.EventDispatchThread.run(Unknown Source)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Other issue I have is with polish special character "ą" - it's  made
>>>>>>> using right alt+a on the polish programmer keyboard setting. The
>>>>>>> result is that the char is not appended to the text but it replaces
>>>>>>> the whole TextInput text content,   "some text" + (alt+a) -> "ą"
>>>>>>>
>>>>>>>
>>>>>>> It's critical for me to get it fixed...
>>>>>>>
>>>>>>> best regards
>>>>>>> Kamil Toszek
>>>>>>
>>>>>>
>>>>
>>>>
>>
>>
>

Reply via email to