An apparatus for detecting user three-dimensional gestures comprising: a control circuit and a memory configured to run an application using one or more gestures as input; a touch-sensitive display for sensing two-dimensional gestures in a two-dimensional plane; a first three-dimensional gesture sensor for sensing a user's hand movement in front of and relative to the touch-sensitive display; at least a second three-dimensional gesture sensor (153, 154) for sensing the user's hand movement in front of and relative to the touch-sensitive display, the first and the at least second three-dimensional gesture sensors (152, 153, 154) being non-contact three-dimensional gesture sensors employing differing gesture-sensing modalities; wherein the control circuit is operably coupled to the first and the at least second three-dimensional gesture sensors (152, 153, 154) and is configured to use each of the first and the at least second three-dimensional gesture sensors (152, 153, 154) to detect a portion, but only a portion, of a current three-dimensional gesture, characterised in that the control circuit is further configured to switch between the first three-dimensional gesture sensor and the at least second three-dimensional gesture sensor (153, 154) while in the process of detecting a current three-dimensional gesture of the user's hand and to remove power from the first three-dimensional gesture sensor or from the at least second three-dimensional gesture sensor (153, 154), wherein the switch is based on each of: remaining predictable portions of the currently detected three-dimensional gesture; and a combination of sensing accuracy, power consumption and computational intensity. a control circuit and a memory configured to run an application using one or more gestures as input; a touch-sensitive display for sensing two-dimensional gestures in a two-dimensional plane; a first three-dimensional gesture sensor for sensing a user's hand movement in front of and relative to the touch-sensitive display; at least a second three-dimensional gesture sensor (153, 154) for sensing the user's hand movement in front of and relative to the touch-sensitive display, the first and the at least second three-dimensional gesture sensors (152, 153, 154) being non-contact three-dimensional gesture sensors employing differing gesture-sensing modalities; wherein the control circuit is operably coupled to the first and the at least second three-dimensional gesture sensors (152, 153, 154) and is configured to use each of the first and the at least second three-dimensional gesture sensors (152, 153, 154) to detect a portion, but only a portion, of a current three-dimensional gesture, characterised in that the control circuit is further configured to switch between the first three-dimensional gesture sensor and the at least second three-dimensional gesture sensor (153, 154) while in the process of detecting a current three-dimensional gesture of the user's hand and to remove power from the first three-dimensional gesture sensor or from the at least second three-dimensional gesture sensor (153, 154), wherein the switch is based on each of: remaining predictable portions of the currently detected three-dimensional gesture; and a combination of sensing accuracy, power consumption and computational intensity. remaining predictable portions of the currently detected three-dimensional gesture; and a combination of sensing accuracy, power consumption and computational intensity.