summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2012-03-29 09:25:43 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2012-06-15 16:05:16 +1000
commitb0e3c8f97809c8e323783ded0d308c6f0b7729ff (patch)
treed88b767f98f85eea5844a3d732e22dad102ce492
parent9624f4e2ba7d1973813de066806eed108748a53a (diff)
Split initializing one axis label out into a helper function
We need this for mixed axis devices. No functional changes. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
-rw-r--r--src/evdev.c29
1 files changed, 18 insertions, 11 deletions
diff --git a/src/evdev.c b/src/evdev.c
index 000eccc..df85c9f 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -122,6 +122,8 @@ static int EvdevOpenDevice(InputInfoPtr pInfo);
static void EvdevCloseDevice(InputInfoPtr pInfo);
static void EvdevInitAxesLabels(EvdevPtr pEvdev, int mode, int natoms, Atom *atoms);
+static void EvdevInitOneAxisLabel(EvdevPtr pEvdev, int axis,
+ const char **labels, int label_idx, Atom *atoms);
static void EvdevInitButtonLabels(EvdevPtr pEvdev, int natoms, Atom *atoms);
static void EvdevInitProperty(DeviceIntPtr dev);
static int EvdevSetProperty(DeviceIntPtr dev, Atom atom,
@@ -2719,9 +2721,23 @@ static const char *btn_labels[][16] = {
}
};
-static void EvdevInitAxesLabels(EvdevPtr pEvdev, int mode, int natoms, Atom *atoms)
+static void EvdevInitOneAxisLabel(EvdevPtr pEvdev, int axis,
+ const char **labels, int label_idx, Atom *atoms)
{
Atom atom;
+
+ if (pEvdev->axis_map[axis] == -1)
+ return;
+
+ atom = XIGetKnownProperty(labels[label_idx]);
+ if (!atom) /* Should not happen */
+ return;
+
+ atoms[pEvdev->axis_map[axis]] = atom;
+}
+
+static void EvdevInitAxesLabels(EvdevPtr pEvdev, int mode, int natoms, Atom *atoms)
+{
int axis;
const char **labels;
int labels_len = 0;
@@ -2741,16 +2757,7 @@ static void EvdevInitAxesLabels(EvdevPtr pEvdev, int mode, int natoms, Atom *ato
/* Now fill the ones we know */
for (axis = 0; axis < labels_len; axis++)
- {
- if (pEvdev->axis_map[axis] == -1)
- continue;
-
- atom = XIGetKnownProperty(labels[axis]);
- if (!atom) /* Should not happen */
- continue;
-
- atoms[pEvdev->axis_map[axis]] = atom;
- }
+ EvdevInitOneAxisLabel(pEvdev, axis, labels, axis, atoms);
}
static void EvdevInitButtonLabels(EvdevPtr pEvdev, int natoms, Atom *atoms)