mIRC Home    About    Download    Register    News    Help

Print Thread
Page 2 of 2 1 2
Joined: Jan 2012
Posts: 299
Fjord artisan
Offline
Fjord artisan
Joined: Jan 2012
Posts: 299
I tried to recreate speed typing of this character using a script because I don't have one on my keyboard:

Code
alias test {
  if (!$window(@test)) .window -Cde2 @test 0 0 700 500
  .editbox @test $+($editbox(@test),$chr(233))
  if ($len($editbox(@test)) > 250) { echo @test $editbox(@test) | halt }
  .timerTEST -m 1 1 test
}

But the problem could not be identified, all letters are displayed as they should. And in general, I don't find any problems with typing letters in the beta version.
It looks like to recreate this problem, I need a Portuguese keyboard model similar to yours, if it is keyboard related of course, or more like some kind of glitch due to typing speed on such a keyboard model.


Last edited by Epic; 11/10/20 06:59 PM.

🌐 http://forum.epicnet.ru 📜 irc.epicnet.ru 6667 #Code | mIRC scripts, help, discuss, examples
Joined: Jul 2014
Posts: 308
TECO Online OP
Pan-dimensional mouse
OP Online
Pan-dimensional mouse
Joined: Jul 2014
Posts: 308
Originally Posted by Epic
I tried to recreate the speed dial of this simbol through a script:

Code
alias test {
  if (!$window(@test)) .window -Cde2 @test 0 0 700 500
  .editbox -f @test $+($editbox(@test),$chr(233))
  if ($len($editbox(@test)) > 250) { echo @test $editbox(@test) | halt }
  .timerTEST -m 1 1 test
}

But the problem could not be identified, all letters are displayed as they should.
It looks like to recreate this problem, I need a Portuguese keyboard model similar to yours, if it is keyboard related of course, or more like some kind of glitch due to typing speed on such a keyboard model.


If the problem was with the keyboard, then this flaw would also be identified in beta version 7.63.416. The problem is in the last beta version of the internal changes that were made and that only programmers know what they are.
If there was a problem with the keyboard then on Windows 10 Notepad, Firefox and Microsoft Word, it would also detect the same flaw and I only detected that flaw in mIRC 7.63.956

Last edited by TECO; 11/10/20 06:15 PM.

TECO
irc.PTirc.org (Co-Admin)
Joined: Dec 2002
Posts: 5,411
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 5,411
Quote
If the problem was with the keyboard, then this flaw would also be identified in beta version 7.63.416.

Thanks for the feedback.

So we've established that you are seeing this issue in custom @windows in v7.63 as well. The reason it affects non-custom windows in the latest beta is that the on KEYDOWN/UP/CHAR events were enabled for all windows.

It is very likely due to the way ToUnicode() handles dead keys. However, it is odd that I, and other users, have not been able to reproduce the issue. I am also using Windows 10 Pro, English, and have tested with different keyboard languages/layouts.

And as you are not seeing the issue in other applications, it is not likely to be a keyboard driver issue. That said, if you happen to have another keyboard lying around... does it behave the same way?

I will be making a change to the way ToUnicode() is called that prevents it from affecting keyboard states, an option that Microsoft added to ToUnicode() in Windows 10 1607.

Let's see how that works out in the next beta.

Joined: Jul 2014
Posts: 308
TECO Online OP
Pan-dimensional mouse
OP Online
Pan-dimensional mouse
Joined: Jul 2014
Posts: 308
Originally Posted by Khaled
And as you are not seeing the issue in other applications, it is not likely to be a keyboard driver issue. That said, if you happen to have another keyboard lying around... does it behave the same way?

I'll try to get another keyboard to see if the problem persists.


TECO
irc.PTirc.org (Co-Admin)
Joined: Jul 2014
Posts: 308
TECO Online OP
Pan-dimensional mouse
OP Online
Pan-dimensional mouse
Joined: Jul 2014
Posts: 308
I managed to get another keyboard and the problem remains the same.


TECO
irc.PTirc.org (Co-Admin)
Joined: Dec 2002
Posts: 5,411
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 5,411
Thanks for the feedback on the beta I sent you.

It looks like the only solution to this is to use the new ToUnicode() flag that works on WIndows 10 build 1607 and onwards.

The issue is due to the way ToUnicode() affects the keyboard state when dead characters are processed and has been present in all previous versions of WIndows. Microsoft finally resolved the issue by adding the flag in Windows 10 build 1607.

mIRC uses ToUnicode() in the on KEYDOWN event to determine the character (as opposed to the key press) that will be generated, so that it is available in the event. Unfortunately, there is no way to resolve the ToUnicode() issue in this context. There are many posts on stackoverflow and in Microsoft blogs that suggest solutions but none of them actually work in all keyboard layout/language/device contexts. The only solution is the flag in Windows 10 build 1607. This will be enabled in the next beta.

The usage share of pre-Windows 10 versions of Windows is around 25%, so this would affect quite a few users. Because of this, I will also be reverting the change in the last beta that enabled on KEYDOWN/KEYUP/CHAR in all windows. It will be once again limited to custom @windows.

Page 2 of 2 1 2

Link Copied to Clipboard