Skip to content

Commit e2bc2d4

Browse files
committed
Fixed the issue with number-pad enter key; support shift-NP enter
1 parent dbf11b7 commit e2bc2d4

File tree

2 files changed

+6
-9
lines changed

2 files changed

+6
-9
lines changed

keyboardv1/keyboardv1.ino

+4-2
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ int numLockTable[256];
9898

9999
/* Send a key chord over the USB. */
100100
void sendChar(byte key) {
101-
// TEMPORARY
102101
if (key == VG_F6 + VG_CTRL + VG_SHIFT) { // 246
103102
// Toggles the keyboard-iness
104103
setUseSerialLibrary(!useSerialLibrary);
@@ -108,6 +107,9 @@ void sendChar(byte key) {
108107
if (numLock) {
109108
translated = numLockTable[key];
110109
}
110+
if (useSerialLibrary) {
111+
Serial.print("Before: "); Serial.print(key); Serial.print(" after: "); Serial.println(translated);
112+
}
111113

112114
// Figure out what to do with the key
113115
// * If "next is alt", send this char as alt
@@ -170,7 +172,7 @@ void sendChar(byte key) {
170172
}
171173

172174
void pressKey(int translated, byte key) {
173-
byte rawCode = (translated & 0xff);
175+
byte rawCode = (byte) (translated & 0xff);
174176
if (useSerialLibrary) {
175177
if ((translated & CTRL_MOD) == CTRL_MOD) {
176178
Serial.print("ctrl+");

keyboardv1/setup.ino

+2-7
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ void setupTable() {
5151
setupKeyWModifiers(VG_RIGHT, KEY_RIGHT_ARROW);
5252

5353
translationTable[VG_NP_ENTER] = KEY_RETURN;
54-
translationTable[VG_NP_ENTER + VG_SHIFT] = KEY_RETURN;
54+
translationTable[VG_NP_ENTER + VG_SHIFT] = SHIFT_MOD + KEY_RETURN;
5555

5656
// Numlock off: cursor keys:
5757
translationTable[VG_NP_0] = KEY_INSERT;
@@ -96,11 +96,6 @@ void setupTable() {
9696
}
9797

9898
// Numlock overrides:
99-
100-
// Not sure why I needed these...
101-
numLockTable[VG_NP_ENTER] = KEY_RETURN;
102-
numLockTable[VG_NP_ENTER + VG_SHIFT] = KEY_RETURN;
103-
10499
numLockTable[VG_NP_0] = '0';
105100
numLockTable[VG_NP_1] = '1';
106101
numLockTable[VG_NP_2] = '2';
@@ -113,7 +108,7 @@ void setupTable() {
113108
numLockTable[VG_NP_9] = '9';
114109
numLockTable[VG_NP_DOT] = '.';
115110

116-
numLockTable[VG_NP_0 + VG_CTRL] = CTRL_MOD + '0';
111+
// For future me: np0 + ctrl returns the same code as np0
117112
numLockTable[VG_NP_1 + VG_CTRL] = CTRL_MOD + '1';
118113
numLockTable[VG_NP_2 + VG_CTRL] = CTRL_MOD + '2';
119114
numLockTable[VG_NP_3 + VG_CTRL] = CTRL_MOD + '3';

0 commit comments

Comments
 (0)