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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox