From: Denis Kenzior <denkenz@gmail.com>
To: ofono@ofono.org
Subject: Re: [PATCH 1/2] stk: Expose icon IDs on D-Bus.
Date: Wed, 13 Oct 2010 09:34:14 -0500 [thread overview]
Message-ID: <4CB5C366.5020005@gmail.com> (raw)
In-Reply-To: <1286461206-4446-1-git-send-email-andrew.zaborowski@intel.com>
[-- Attachment #1: Type: text/plain, Size: 6875 bytes --]
Hi Andrew,
On 10/07/2010 09:20 AM, Andrzej Zaborowski wrote:
> Update the docs to match the properties in stk.c.
> ---
> doc/stk-api.txt | 16 ++++++-
> src/stk.c | 112 ++++++++++++++++++++++++++++++++++---------------------
> src/stkagent.c | 41 ++++++++++++--------
> src/stkagent.h | 34 +++++++++-------
> 4 files changed, 125 insertions(+), 78 deletions(-)
This patch no longer applies, can you please rebase it?
Also, please split up this patch up some more.
>
> diff --git a/doc/stk-api.txt b/doc/stk-api.txt
> index f5b9ebc..c29872a 100644
> --- a/doc/stk-api.txt
> +++ b/doc/stk-api.txt
> @@ -55,23 +55,33 @@ Signals PropertyChanged(string property, variant value)
> Signal is emitted whenever a property has changed.
> The new value is passed as the signal argument.
>
> -Properties string IdleText
> +Properties string IdleModeText
This is a bug fix, and should be in a separate patch.
>
> Contains the text to be used when the home screen is
> - idle. This text is set by the SIM and can be changed
> + idle. This text is set by the SIM and can change
> at any time.
Squash this into the patch above.
>
> + byte IdleModeIcon
> +
> + Contains the identifier of the icon accompanying
> + the idle mode text.
> +
> array{struct{string, byte}} MainMenu
>
> Contains the items that make up the main menu. This
> is populated by the SIM when it sends the Setup Menu
> Proactive Command. The main menu is always available,
> - but its contents can be changed at any time.
> + but its contents can be changed at any time. Each
> + item contains the item label and icon identifier.
>
> string MainMenuTitle
>
> Contains the title of the main menu.
>
> + string MainMenuIcon
> +
> + Contains the identifier of the icon for the main menu.
> +
> array{byte} Icons
>
Rest should be in a separate doc update patch.
> Contains the identifiers of all available icons for
> diff --git a/src/stk.c b/src/stk.c
> index 84a22c9..7aa2ea6 100644
> --- a/src/stk.c
> +++ b/src/stk.c
> @@ -72,6 +72,7 @@ struct ofono_stk {
> guint remove_agent_source;
> struct extern_req *extern_req;
> char *idle_mode_text;
> + struct stk_icon_id idle_mode_icon;
Idle Mode Icon and Main Menu Icon support should be in a separate patch.
> struct timeval get_inkey_start_ts;
> };
>
> @@ -256,19 +257,28 @@ void __ofono_cbs_sim_download(struct ofono_stk *stk, const struct cbs *msg)
> }
>
> static struct stk_menu *stk_menu_create(const char *title,
> - const struct stk_text_attribute *title_attr, GSList *items,
> + const struct stk_text_attribute *title_attr,
> + const struct stk_icon_id *icon, GSList *items,
> const struct stk_item_text_attribute_list *item_attrs,
> + const struct stk_item_icon_id_list *item_icon_ids,
> int default_id, gboolean soft_key, gboolean has_help)
> {
> struct stk_menu *ret = g_new(struct stk_menu, 1);
> + unsigned int len = g_slist_length(items);
> GSList *l;
> int i;
>
> DBG("");
>
> + if (item_attrs && item_attrs->len && item_attrs->len != len * 4)
> + goto error;
> +
> + if (item_icon_ids && item_icon_ids->len && item_icon_ids->len != len)
> + goto error;
> +
> ret->title = g_strdup(title ? title : "");
> - ret->icon_id = 0;
> - ret->items = g_new0(struct stk_menu_item, g_slist_length(items) + 1);
> + memcpy(&ret->icon, icon, sizeof(ret->icon));
> + ret->items = g_new0(struct stk_menu_item, len + 1);
> ret->default_item = -1;
> ret->soft_key = soft_key;
> ret->has_help = has_help;
> @@ -278,12 +288,18 @@ static struct stk_menu *stk_menu_create(const char *title,
>
> ret->items[i].text = g_strdup(item->text);
> ret->items[i].item_id = item->id;
> + if (item_icon_ids && item_icon_ids->len)
> + ret->items[i].icon_id = item_icon_ids->list[i];
>
> if (item->id == default_id)
> ret->default_item = i;
> }
>
> return ret;
> +
> +error:
> + g_free(ret);
> + return NULL;
> }
This part should be in a separate patch
<snip>
> @@ -381,7 +409,8 @@ static void dict_append_menu(DBusMessageIter *dict, struct stk_menu *menu)
> 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,
> + const struct stk_icon_id *icon)
stk_alpha_id_set changes should be in a separate patch ;)
<snip>
>
> - if (!stk->pending_cmd->send_sms.alpha_id ||
> - !stk->pending_cmd->send_sms.alpha_id[0])
> - return;
> -
This part does not look related to icon ids at all. Please break it out
into a separate patch.
> stk_alpha_id_unset(stk);
> }
>
> @@ -684,9 +713,7 @@ static void send_sms_submit_cb(gboolean ok, void *data)
> return;
> }
>
> - if (stk->pending_cmd->send_sms.alpha_id &&
> - stk->pending_cmd->send_sms.alpha_id[0])
> - stk_alpha_id_unset(stk);
> + stk_alpha_id_unset(stk);
Same comment as above.
<snip>
> @@ -1628,9 +1662,7 @@ static void send_ussd_callback(int error, int dcs, const unsigned char *msg,
> enum sms_charset charset;
> unsigned char no_cause[] = { 0x00 };
>
> - if (stk->pending_cmd->send_ussd.alpha_id &&
> - stk->pending_cmd->send_ussd.alpha_id[0])
> - stk_alpha_id_unset(stk);
> + stk_alpha_id_unset(stk);
And here as well.
> @@ -1834,9 +1865,7 @@ static void send_dtmf_cancel(struct ofono_stk *stk)
> stk->respond_on_exit = FALSE;
> stk->extern_req->cancelled = TRUE;
>
> - if (stk->pending_cmd->send_dtmf.alpha_id &&
> - stk->pending_cmd->send_dtmf.alpha_id[0])
> - stk_alpha_id_unset(stk);
> + stk_alpha_id_unset(stk);
And here
> }
>
> static void dtmf_sent_cb(const struct ofono_error *error, void *user_data)
> @@ -1855,9 +1884,7 @@ static void dtmf_sent_cb(const struct ofono_error *error, void *user_data)
>
> stk->respond_on_exit = FALSE;
>
> - if (stk->pending_cmd->send_dtmf.alpha_id &&
> - stk->pending_cmd->send_dtmf.alpha_id[0])
> - stk_alpha_id_unset(stk);
> + stk_alpha_id_unset(stk);
And here
<snip>
> struct stk_menu {
> char *title;
> - uint8_t icon_id;
> + struct stk_icon_id icon;
> struct stk_menu_item *items;
> int default_item;
> gboolean soft_key;
The stk menu patches should be in a separate patch.
> @@ -77,45 +77,49 @@ int stk_agent_request_selection(struct stk_agent *agent,
> int timeout);
>
> int stk_agent_display_text(struct stk_agent *agent, const char *text,
> - uint8_t icon_id, ofono_bool_t urgent,
> + const struct stk_icon_id *icon,
> + ofono_bool_t urgent,
<snip>
The stkagent changes should be in a separate patch...
Regards,
-Denis
prev parent reply other threads:[~2010-10-13 14:34 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-07 14:20 [PATCH 1/2] stk: Expose icon IDs on D-Bus Andrzej Zaborowski
2010-10-07 14:20 ` [PATCH 2/2] stk: Apply STK text attributes as html Andrzej Zaborowski
2010-10-13 14:34 ` Denis Kenzior [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4CB5C366.5020005@gmail.com \
--to=denkenz@gmail.com \
--cc=ofono@ofono.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.