Add TurnOffRequest class for parsing voice touch turn off command.
When outputEvent type is turnOffRequest, do deactivate and deinitialize mmi
Change-Id: Id6153298db45652627d6e23b45898d4da8e521b4
[DllImport(Libraries.Mmi, EntryPoint = "mmi_activate_input_event")]
internal static extern MmiError MmiActivateInputEvent(int input_event_type);
+ [DllImport(Libraries.Mmi, EntryPoint = "mmi_deactivate_input_event")]
+ internal static extern MmiError MmiDeactivateInputEvent(int input_event_type);
+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
internal delegate void MMIResult(IntPtr user_data, int input_event_type, IntPtr result_out);
}
window.SetAcceptFocus(false);
window.SetInputRegion(new Rectangle(0, 0, 0, 0));
- mVoiceTouchMmiManager = new VoiceTouchMmiManager();
+ mVoiceTouchMmiManager = VoiceTouchMmiManager.Instance;
mVtObject = new VoiceTouchEventManager();
mVoiceTouchViewManager = VoiceTouchViewManager.Instance;
public const string UI_OBJECT_RESULT_BY_GRID = "showGrids";
public const string REJECT = "reject";
public const string ERROR = "error";
+ public const string TURN_OFF_REQUEST = "turnOffRequest";
public string previousTooltipType = "None";
protected VoiceTouchViewManager mVoiceTouchViewManager = VoiceTouchViewManager.Instance;
+ protected VoiceTouchMmiManager mVoiceTouchMmiManager = VoiceTouchMmiManager.Instance;
public void VoiceTouchResult(object sender, SetResultEventArgs e)
{
case ERROR:
mVoiceTouchViewManager.ShowAsrFinalResult(voiceTouchResult.error.reason);
return;
+ case TURN_OFF_REQUEST:
+ mVoiceTouchMmiManager.VoiceTouchDeactivate();
+ mVoiceTouchMmiManager.VoiceTouchMmiDeinitialize();
+ return;
default:
Tizen.Log.Error(LogTag, "No Matched outputEvent type.");
return;
MMI_INPUT_EVENT_TYPE_VOICE_RECOGNITION
};
+ private static VoiceTouchMmiManager instance = null;
private MMIResult _resultDelegate;
private event EventHandler<SetResultEventArgs> _mmiResultVoiceTouch;
+ private int _input_event_type;
+ public static VoiceTouchMmiManager Instance
+ {
+ get
+ {
+ if (instance == null)
+ {
+ instance = new VoiceTouchMmiManager();
+ }
+ return instance;
+ }
+ }
public void VoiceTouchMmiIinitialize()
{
Tizen.Log.Debug(LogTag, "Enter Init");
Tizen.Log.Error(LogTag, "Activate InputEvent with error " + error);
//throw ExceptionFactory.CreationException(error);
}
+ _input_event_type = input_event_type;
+ return 0;
+ }
+
+ public int VoiceTouchDeactivate()
+ {
+ MmiError error = MmiDeactivateInputEvent(_input_event_type);
+ if (error != MmiError.None)
+ {
+ Tizen.Log.Error(LogTag, "Deactivate InputEvent with error " + error);
+ //throw ExceptionFactory.CreationException(error);
+ }
+ _input_event_type = 0;
return 0;
}
public ASRResult asrFinalResult;
public Reject reject;
public Error error;
+ public TurnOffRequest turnOffRequest;
}
class UiClickableObject
{
public string reason;
public int timestamp;
}
+ class TurnOffRequest
+ {
+ public int timestamp;
+ }
}
\ No newline at end of file