mirror of git://git.sysmocom.de/ofono
stk: Make the stk properties not optional
This commit is contained in:
parent
8820e18b53
commit
2059fd289a
51
src/stk.c
51
src/stk.c
|
@ -389,27 +389,6 @@ static void emit_menu_changed(struct ofono_stk *stk)
|
||||||
g_dbus_send_message(conn, signal);
|
g_dbus_send_message(conn, signal);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dict_append_menu(DBusMessageIter *dict, struct stk_menu *menu)
|
|
||||||
{
|
|
||||||
DBusMessageIter entry;
|
|
||||||
const char *key = "MainMenu";
|
|
||||||
|
|
||||||
ofono_dbus_dict_append(dict, "MainMenuTitle",
|
|
||||||
DBUS_TYPE_STRING, &menu->title);
|
|
||||||
|
|
||||||
ofono_dbus_dict_append(dict, "MainMenuIcon",
|
|
||||||
DBUS_TYPE_BYTE, &menu->icon.id);
|
|
||||||
|
|
||||||
dbus_message_iter_open_container(dict, DBUS_TYPE_DICT_ENTRY,
|
|
||||||
NULL, &entry);
|
|
||||||
|
|
||||||
dbus_message_iter_append_basic(&entry, DBUS_TYPE_STRING, &key);
|
|
||||||
|
|
||||||
append_menu_items_variant(&entry, menu->items);
|
|
||||||
|
|
||||||
dbus_message_iter_close_container(dict, &entry);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void stk_alpha_id_set(struct ofono_stk *stk, const char *text)
|
static void stk_alpha_id_set(struct ofono_stk *stk, const char *text)
|
||||||
{
|
{
|
||||||
/* TODO */
|
/* TODO */
|
||||||
|
@ -427,7 +406,10 @@ static DBusMessage *stk_get_properties(DBusConnection *conn,
|
||||||
DBusMessage *reply;
|
DBusMessage *reply;
|
||||||
DBusMessageIter iter;
|
DBusMessageIter iter;
|
||||||
DBusMessageIter dict;
|
DBusMessageIter dict;
|
||||||
const char *idle_mode_text;
|
DBusMessageIter entry;
|
||||||
|
const char *key = "MainMenu";
|
||||||
|
const char *str;
|
||||||
|
unsigned char icon;
|
||||||
|
|
||||||
reply = dbus_message_new_method_return(msg);
|
reply = dbus_message_new_method_return(msg);
|
||||||
if (!reply)
|
if (!reply)
|
||||||
|
@ -439,17 +421,26 @@ static DBusMessage *stk_get_properties(DBusConnection *conn,
|
||||||
OFONO_PROPERTIES_ARRAY_SIGNATURE,
|
OFONO_PROPERTIES_ARRAY_SIGNATURE,
|
||||||
&dict);
|
&dict);
|
||||||
|
|
||||||
idle_mode_text = stk->idle_mode_text ? stk->idle_mode_text : "";
|
str = stk->idle_mode_text ? stk->idle_mode_text : "";
|
||||||
ofono_dbus_dict_append(&dict, "IdleModeText",
|
ofono_dbus_dict_append(&dict, "IdleModeText", DBUS_TYPE_STRING, &str);
|
||||||
DBUS_TYPE_STRING, &idle_mode_text);
|
|
||||||
|
|
||||||
if (stk->idle_mode_icon.id)
|
icon = stk->idle_mode_icon.id;
|
||||||
ofono_dbus_dict_append(&dict, "IdleModeIcon", DBUS_TYPE_BYTE,
|
ofono_dbus_dict_append(&dict, "IdleModeIcon", DBUS_TYPE_BYTE, &icon);
|
||||||
&stk->idle_mode_icon.id);
|
|
||||||
|
|
||||||
if (stk->main_menu)
|
str = stk->main_menu ? stk->main_menu->title : "";
|
||||||
dict_append_menu(&dict, stk->main_menu);
|
ofono_dbus_dict_append(&dict, "MainMenuTitle", DBUS_TYPE_STRING, &str);
|
||||||
|
|
||||||
|
icon = stk->main_menu ? stk->main_menu->icon.id : 0;
|
||||||
|
ofono_dbus_dict_append(&dict, "MainMenuIcon", DBUS_TYPE_BYTE, &icon);
|
||||||
|
|
||||||
|
dbus_message_iter_open_container(&dict, DBUS_TYPE_DICT_ENTRY,
|
||||||
|
NULL, &entry);
|
||||||
|
dbus_message_iter_append_basic(&entry, DBUS_TYPE_STRING, &key);
|
||||||
|
|
||||||
|
append_menu_items_variant(&entry,
|
||||||
|
stk->main_menu ? stk->main_menu->items : NULL);
|
||||||
|
|
||||||
|
dbus_message_iter_close_container(&dict, &entry);
|
||||||
dbus_message_iter_close_container(&iter, &dict);
|
dbus_message_iter_close_container(&iter, &dict);
|
||||||
|
|
||||||
return reply;
|
return reply;
|
||||||
|
|
Loading…
Reference in New Issue