--- src/voicecall.c | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/src/voicecall.c b/src/voicecall.c index 97fc36b..da42fac 100644 --- a/src/voicecall.c +++ b/src/voicecall.c @@ -354,6 +354,7 @@ static void append_voicecall_properties(struct voicecall *v, const char *name; ofono_bool_t mpty; dbus_bool_t emergency_call; + dbus_bool_t tty; status = call_status_to_string(call->status); @@ -391,6 +392,9 @@ static void append_voicecall_properties(struct voicecall *v, ofono_dbus_dict_append(dict, "Multiparty", DBUS_TYPE_BOOLEAN, &mpty); + tty = call->tty; + ofono_dbus_dict_append(dict, "TextTelephony", DBUS_TYPE_BOOLEAN, &tty); + if (v->message) ofono_dbus_dict_append(dict, "Information", DBUS_TYPE_STRING, &v->message); @@ -675,6 +679,21 @@ static void voicecall_emit_multiparty(struct voicecall *call, gboolean mpty) &val); } +static void voicecall_set_call_tty(struct voicecall *call, gboolean tty) +{ + if (call->call->tty != tty) { + DBusConnection *conn = ofono_dbus_get_connection(); + const char *path = voicecall_build_path(call->vc, call->call); + dbus_bool_t val = tty; + + call->call->tty = tty; + ofono_dbus_signal_property_changed(conn, path, + OFONO_VOICECALL_INTERFACE, + "TextTelephony", + DBUS_TYPE_BOOLEAN, &val); + } +} + static void voicecall_set_call_status(struct voicecall *call, int status) { DBusConnection *conn = ofono_dbus_get_connection(); @@ -1924,6 +1943,7 @@ void ofono_voicecall_notify(struct ofono_voicecall *vc, if (l) { DBG("Found call with id: %d", call->id); + voicecall_set_call_tty(l->data, call->tty); voicecall_set_call_status(l->data, call->status); voicecall_set_call_lineid(l->data, &call->phone_number, call->clip_validity); -- 1.7.0.4 _______________________________________________ ofono mailing list ofono@ofono.org http://lists.ofono.org/listinfo/ofono