[-]
[+]
|
Changed |
_service:tar_git:harbour-ambience-tohkbd2.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-ambience-tohkbd2.spec
^
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -6,7 +6,7 @@
<service name="tar_git">
<param name="url">https://github.com/kimmoli/tohkbd2.git</param>
<param name="branch">master</param>
- <param name="revision">92bd953a9b60d2c95229bcc706c36f9e45d7c37a</param>
+ <param name="revision">c03fd9904936ffa69948a8da21b9eac727bed1a6</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-ambience-tohkbd2-0.1.7.3.tar.bz2/daemon/src/keymapping.cpp
^
|
@@ -19,6 +19,8 @@
ctrlDown = false;
altDown = false;
symDown = false;
+
+ _prevScanCode = 0;
}
/* REV 2 Keyboard mapping
@@ -161,7 +163,7 @@
if (keyIsPressed)
{
keyIsPressed = false;
- _prevInputReport.clear();
+ _prevScanCode = 0;
emit keyReleased();
}
return;
@@ -169,12 +171,14 @@
/* Check the last usage code in report */
+ char irLast = ir.at(ir.length()-1);
+
if (!symPressed) /* Without SYM modifier */
{
int i = 0;
while (lut_plain[i])
{
- if (ir.at(ir.length()-1) == lut_plain[i])
+ if (irLast == lut_plain[i])
{
retKey.append(qMakePair(lut_plain[i+1], lut_plain[i+2]));
break;
@@ -187,7 +191,7 @@
int i = 0;
while (lut_sym[i])
{
- if (ir.at(ir.length()-1) == lut_sym[i])
+ if (irLast == lut_sym[i])
{
retKey.append(qMakePair(lut_sym[i+1], lut_sym[i+2]));
break;
@@ -197,11 +201,11 @@
}
/* If key is changed on the fly without break... emit released */
- if (keyIsPressed && !_prevInputReport.isEmpty() && !retKey.empty())
+ if (keyIsPressed && _prevScanCode > 0 && !retKey.empty())
{
- if (_prevInputReport != ir)
+ if (_prevScanCode != irLast)
emit keyReleased();
- if (_prevInputReport == ir)
+ if (_prevScanCode == irLast)
return;
}
@@ -211,7 +215,7 @@
if (keyIsPressed)
emit keyPressed(retKey);
- _prevInputReport = ir;
+ _prevScanCode = irLast;
}
void keymapping::releaseStickyModifiers()
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-ambience-tohkbd2-0.1.7.3.tar.bz2/daemon/src/keymapping.h
^
|
@@ -51,7 +51,7 @@
bool symDown;
bool symWasHeldDown;
- QByteArray _prevInputReport;
+ char _prevScanCode;
};
|