commit ec169fd1c28b2ba3b6b6fc7e7123e9d27516dd5f
Author: Simon Howard <fraggle@gmail.com>
AuthorDate: Thu Jan 13 20:34:55 2011 +0000
Commit: Simon Howard <fraggle@gmail.com>
CommitDate: Thu Jan 13 20:34:55 2011 +0000
In configuration files, use the scan code for right shift, not left
shift, to match Vanilla (thanks AlexXav).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2238
---
NEWS | 2 ++
setup/configfile.c | 14 ++++++++++++--
src/m_config.c | 14 ++++++++++++--
3 files changed, 26 insertions(+), 4 deletions(-)
diff --git a/NEWS b/NEWS
index c5a4cfaa..56f71593 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,8 @@
Bugs fixed:
* Menu navigation when using joystick/joypad (thanks AlexXav).
+ * For configuration file value for shift keys, use scan code for
+ right shift, not left shift (thanks AlexXav).
1.5.0 (2011-01-02):
diff --git a/setup/configfile.c b/setup/configfile.c
index c4e8a408..c7109739 100644
--- a/setup/configfile.c
+++ b/setup/configfile.c
@@ -417,8 +417,18 @@ static void SaveDefaultCollection(default_collection_t *collection)
v = * (int *) defaults[i].location;
- if (defaults[i].untranslated
- && v == defaults[i].original_translated)
+ if (v == KEY_RSHIFT)
+ {
+ // Special case: for shift, force scan code for
+ // right shift, as this is what Vanilla uses.
+ // This overrides the change check below, to fix
+ // configuration files made by old versions that
+ // mistakenly used the scan code for left shift.
+
+ v = 54;
+ }
+ else if (defaults[i].untranslated
+ && v == defaults[i].original_translated)
{
// Has not been changed since the last time we
// read the config file.
diff --git a/src/m_config.c b/src/m_config.c
index 332b8b95..04d0a963 100644
--- a/src/m_config.c
+++ b/src/m_config.c
@@ -1217,8 +1217,18 @@ static void SaveDefaultCollection(default_collection_t *collection)
v = * (int *) defaults[i].location;
- if (defaults[i].untranslated
- && v == defaults[i].original_translated)
+ if (v == KEY_RSHIFT)
+ {
+ // Special case: for shift, force scan code for
+ // right shift, as this is what Vanilla uses.
+ // This overrides the change check below, to fix
+ // configuration files made by old versions that
+ // mistakenly used the scan code for left shift.
+
+ v = 54;
+ }
+ else if (defaults[i].untranslated
+ && v == defaults[i].original_translated)
{
// Has not been changed since the last time we
// read the config file.