Iscaro [Tue, 28 Aug 2012 17:41:20 +0000 (14:41 -0300)]
RC.c
Now supports hangup and answer DBus methods and sends a signal if
a new call is added or removed
Iscaro [Fri, 31 Aug 2012 17:36:21 +0000 (14:36 -0300)]
Tizen status/notification bar will no longer block our dialer.
Gustavo Sverzut Barbieri [Thu, 30 Aug 2012 00:12:42 +0000 (21:12 -0300)]
callscreen: fix keypad when there are 2 calls.
Before the top call was always the active, the second was alway
held. During keypad operation we hide the held, making enough room for
keypad. Not anymore and the keypad was overlapping with the second
call.
Now the keyboard size is reduced in height to make it fit.
Gustavo Sverzut Barbieri [Wed, 29 Aug 2012 23:51:35 +0000 (20:51 -0300)]
main screen: voicemail blocker should only block its button area.
it was not setting its position, defaulting to the whole screen and
that was making the GUI unusable when the voicemail interface is not
available (such as HFP).
Iscaro [Tue, 28 Aug 2012 11:56:49 +0000 (08:56 -0300)]
Contacts-Tizen.c: Load the tizen's contacts UG async.
When the phone starts, the contacts service usually isn't up. So
a timer was added to keep trying to connect to the service.
Iscaro [Thu, 23 Aug 2012 17:25:49 +0000 (14:25 -0300)]
RC changes
If OFONO voice interface isn't up and the user request a dial we will store
this dial request and process it when the voice interface is online.
Iscaro [Mon, 13 Aug 2012 19:52:59 +0000 (16:52 -0300)]
Integration with tizen contacts
Gustavo Sverzut Barbieri [Mon, 27 Aug 2012 17:54:19 +0000 (14:54 -0300)]
callscreen: just allow SwapCalls if active or held.
It was not breaking as ofono did the right thing, but let's not even
try to do this (it could be done while dialing a second call).
Gustavo Sverzut Barbieri [Mon, 27 Aug 2012 07:17:43 +0000 (04:17 -0300)]
callscreen: do not show time for calls other than active or held.
Gustavo Sverzut Barbieri [Mon, 27 Aug 2012 06:58:06 +0000 (03:58 -0300)]
rewrite callscreen.
The initial version was not good and were written before we had full
understanding of lifetime and state changes of calls, multi-party and
others.
The new version is simpler and achives the following design goals:
- calls should not change order in the GUI;
- held calls should show elapsed time as well.
Gustavo Sverzut Barbieri [Fri, 24 Aug 2012 06:15:43 +0000 (03:15 -0300)]
ofono: only issue "call added" after properties were populated.
This allow us to decide better where to place the call once we get its
creation signal, not having to rely on following "call changed".
_ofono_dial_reply() was also changed so it does not call _call_add()
with NULL properties anymore, instead it creates the call instance,
adds to the hash and register a pending_dial to be dispatched when the
CallAdded signal is captured. This way we have all the properties as
usual.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 16:12:50 +0000 (13:12 -0300)]
multiparty: fixed font size for conference contact.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 16:12:22 +0000 (13:12 -0300)]
callscreen: clip keypad animation to not show below hangup button.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 16:04:16 +0000 (13:04 -0300)]
callscreen: uniform waiting and incoming call look.
The designer said they should look the same and cover the whole
screen, blocking events going to the elements below it.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 15:02:28 +0000 (12:02 -0300)]
callscreen: remove swap and contacts, make 1x4 grid and different swap action.
Bug #24 complains about the useless behavior of "contacts" button,
since it's duplicating the "add call". To solve it we're removing that
button and also the "swap", reducing from 6 to 4 buttons.
The swap action is now available by clicking the held call. It will
activate that call, which should still be obvious.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 14:45:15 +0000 (11:45 -0300)]
rc: allow specify different DBus service name at command line.
this allows one to run multiple instances of the dialer on the same
machine for demo purposes.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 13:52:03 +0000 (10:52 -0300)]
configure.ac: remove enable maintainer mode.
this just causes trouble to people that are updating code without
--enable-maintainer-mode.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 13:51:37 +0000 (10:51 -0300)]
include utils.h to use new dial() helper.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 10:11:51 +0000 (07:11 -0300)]
callscreen: hide "held" (2nd call) if it's the only call.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 09:54:03 +0000 (06:54 -0300)]
utils: add dial() and unify simple dialing and error handling.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 09:45:46 +0000 (06:45 -0300)]
more friendly error messages.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 09:16:08 +0000 (06:16 -0300)]
Implement full USSD support.
This commit covers network and user originated USSD communication,
with support to response or just informative messages.
Gustavo Sverzut Barbieri [Tue, 21 Aug 2012 02:58:10 +0000 (23:58 -0300)]
gui: add editable entry support to simple popup.
This refactors the internal popup to keep a context and store the
entry and message, as well as a button. The logic is now changed to
evaluate the context whenever there is at least a message or an entry.
Dismiss button also uses the buttons_set() infra, which will delete
previous buttons if any.
Gustavo Sverzut Barbieri [Mon, 20 Aug 2012 15:01:23 +0000 (12:01 -0300)]
Leave SupplementaryServices/USSD validation to oFono.
According to Denis the rules are fairly complex and the check for a
trailing '#' is not valid. For instance the short strings (1-2
numbers) are valid USSD.
To solve this, always call oFono and let it reply if it was recognized
or not.
Gustavo Sverzut Barbieri [Mon, 20 Aug 2012 14:58:10 +0000 (11:58 -0300)]
bugfix: do not set popup elements if it ss_initiate was canceled.
If we cancel ofono_ss_initiate() then we'll still have
_ss_initiate_reply() called, but with an empty popup since it was
deleted by the dismiss button.
Gustavo Sverzut Barbieri [Mon, 20 Aug 2012 14:34:14 +0000 (11:34 -0300)]
keypad: supplementary services may take long, show loading dialog.
We show a dialog without a message until
SupplementaryServices.Initiate() returns.
Dialogs without message will show loading animation.
The dialog is hold hidden a bit before it's shown. The issue is if
SupplementaryServices.Initiate() fails due NotRecognized or
InvalidFormat. Those are fast and we fallback to Dial()... in this
case we delete the popup and the resulting user interface is a quick
show-hide, which is annoying.
Gustavo Sverzut Barbieri [Mon, 20 Aug 2012 14:13:32 +0000 (11:13 -0300)]
ofono: fix error to enum parse.
We must account the ".Error." as well. Don't know how we did not
noticed it so far.
Gustavo Sverzut Barbieri [Sun, 19 Aug 2012 15:15:22 +0000 (12:15 -0300)]
new popup that fits better our theme.
the new popup can have 2 buttons, with different classes (dialer or
dialer-caution).
While there is no content, it will show a loading animation.
Gustavo Sverzut Barbieri [Mon, 13 Aug 2012 21:40:11 +0000 (18:40 -0300)]
voicemail support.
Gustavo Sverzut Barbieri [Mon, 13 Aug 2012 21:09:59 +0000 (18:09 -0300)]
ofono: export current api available for modem.
Gustavo Sverzut Barbieri [Mon, 13 Aug 2012 21:04:44 +0000 (18:04 -0300)]
ofono: notify after modem properties get reply for interfaces.
Gustavo Sverzut Barbieri [Mon, 13 Aug 2012 21:03:46 +0000 (18:03 -0300)]
ofono: notify of modem changed only once at the end.
whenever we receive batch of update, just notify it at the end, not
after every property is updated.
Gustavo Sverzut Barbieri [Mon, 13 Aug 2012 20:29:04 +0000 (17:29 -0300)]
theme cleanup
- icon names changed to "ico_<SPECIFIER>.png"
- icons are now square, at 170x170, not with padding (240x170) anymore.
- pressed icons removed, the invert effect is enough (saves space)
Gustavo Sverzut Barbieri [Mon, 13 Aug 2012 16:37:37 +0000 (13:37 -0300)]
remove unused images.
Gustavo Sverzut Barbieri [Sun, 12 Aug 2012 00:32:11 +0000 (21:32 -0300)]
ofono: implement USSD infrastructure.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 23:42:36 +0000 (20:42 -0300)]
ofono: add infra for voice mail (message waiting)
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 23:41:48 +0000 (20:41 -0300)]
ofono: improve debug for call volume handling.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 22:06:19 +0000 (19:06 -0300)]
multiparty: show time since multiparty was created.
Before we were using one of the calls start time, no specific call,
just one that we had.
Now we remember the time when the multiparty was created and show it
instead, as requested by Marcel Holtmann.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 22:05:51 +0000 (19:05 -0300)]
theme: change 'on hold' to 'On Hold'
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 22:05:12 +0000 (19:05 -0300)]
theme: fix multiparty-list item height.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 21:52:35 +0000 (18:52 -0300)]
usability: do not return to callscreen if the call was disconnected.
if we receive a "calls changed" but the changed call was a
disconnection, then we should just ignore it.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 20:41:38 +0000 (17:41 -0300)]
implement button to show contacts from callscreen.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 20:36:40 +0000 (17:36 -0300)]
fix warning: unused parameter ‘reason’
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 20:35:35 +0000 (17:35 -0300)]
callscreen: use ReleaseAndAnswer just when there is active call.
Otherwise, if there is a Held call, we must call Hangup directly.
Fixes #23 (Hangup call turns into swap calls)
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 13:57:25 +0000 (10:57 -0300)]
ofono: use ReleaseAndSwap
new method "ReleaseAndSwap()" is all we need for our phone hangup
button. It will handle multiparty and regular calls, hangs up the
active call (regular or multiparty) and then activate the held call.
If there was no held, it works as well.
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 00:11:49 +0000 (21:11 -0300)]
rename "held" to "on hold"
Gustavo Sverzut Barbieri [Sat, 11 Aug 2012 00:06:47 +0000 (21:06 -0300)]
README: add contacts db info
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:56:16 +0000 (20:56 -0300)]
history: fix ellipsis position for long names.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:54:30 +0000 (20:54 -0300)]
example/contacts.csv: provide long name by default.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:53:55 +0000 (20:53 -0300)]
keypad: better align of name-type of contacts.
provide the "name - type" from C, then use it alternatively.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:43:44 +0000 (20:43 -0300)]
contacts: expose full name as well, for themes that may want to use it.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:43:17 +0000 (20:43 -0300)]
contacts: minor bugfix on string manipulation.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:37:29 +0000 (20:37 -0300)]
optimize lists rendering.
homogeneous list are faster to handle.
Text fit is an expensive operation. Do not use it for possibly long lists.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:30:46 +0000 (20:30 -0300)]
contacts: rename "name" to "first_name", and add explit getters.
we've created it with just "name", then we split in a very hackish
way. Make it more sane now:
- first name: comes from DB
- last name: comes from DB
- full name: created on the fly, when needed. cached.
all the getters return references to internal stringshares.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:17:38 +0000 (20:17 -0300)]
history: optimize contact lookup, cache matches.
- do not search too often (1 second interval);
- remember contact if found;
- listen to contact changes, see if it's still valid for that number;
- listen to contact deletion, remove local cache.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 23:16:07 +0000 (20:16 -0300)]
contacts: save and notifications.
- expose some setters.
- notify of changed contact info, at once (in an idler).
- delayed save of files (in a poller)
- use backup if no dabase.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 21:26:52 +0000 (18:26 -0300)]
improve handling of strptime.
previously we've noticed strptime() was not working, but the culprit
is actually mktime() that resets the tm_gmtoff field.
Save this field and remove the custom parse of GMT offset.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 21:07:48 +0000 (18:07 -0300)]
contacts: add some safety checks.
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 20:58:48 +0000 (17:58 -0300)]
contacts: add example CSV and eet generator.
Simple script to get a CSV and generate the EET. It should be easy to
have most addressbooks to generate this, or use OpenOffice to do so.
Iscaro [Fri, 10 Aug 2012 17:48:29 +0000 (14:48 -0300)]
Several changes in the contacts layout tab and accross the App.
And now we have a contact bar separator like the iphone's.
Iscaro [Thu, 9 Aug 2012 14:10:34 +0000 (11:10 -0300)]
elm.text.number and elm.text.name were overlaping each other. Now it's fixed.
Iscaro [Thu, 9 Aug 2012 11:47:29 +0000 (08:47 -0300)]
The contacts' eet now has support to last name for a person. Also the layout
now shows the last name and image contact was set.
Iscaro [Wed, 8 Aug 2012 21:00:03 +0000 (18:00 -0300)]
Contact tab layout and contact details layout changed
Iscaro [Wed, 8 Aug 2012 17:02:33 +0000 (14:02 -0300)]
Added a new theme for elm_button, it is used in the contact details.
Iscaro [Wed, 8 Aug 2012 12:28:50 +0000 (09:28 -0300)]
Now all the phone is integrated with contacts. So now it's possible to
see the contact's name when you receive a call, history and etc.
Iscaro [Fri, 3 Aug 2012 14:33:57 +0000 (11:33 -0300)]
Contacts UI and infrastructure.
TODO: Change the default elm_button style
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 19:38:33 +0000 (16:38 -0300)]
Do not insert '-' separator if the previous number is '+'.
Fixes #22 (Funny display of - separator in call display with + numbers)
Gustavo Sverzut Barbieri [Fri, 10 Aug 2012 19:29:33 +0000 (16:29 -0300)]
ofono: work around strptime() issue.
strptime() will ignore '%z' for timezone. Then we must parse this
ourselves and fix the date accordingly.
time() is local, then we must convert the parsed time to it as well.
Fixes #14 (Active call should show current duration)
Gustavo Sverzut Barbieri [Tue, 7 Aug 2012 19:49:53 +0000 (16:49 -0300)]
history: implement deletion of items.
now we can delete individual items or clear everything.
Gustavo Sverzut Barbieri [Tue, 7 Aug 2012 13:53:26 +0000 (10:53 -0300)]
history updater: improve algorithm and document constants.
* increase minimum update interval to 30 seconds.
* break when update_threshold constant is reached.
* documented constants and their reasoning.
Gustavo Sverzut Barbieri [Mon, 6 Aug 2012 16:45:51 +0000 (13:45 -0300)]
history: start/stop time update poller when needed.
If the window is unfocused or the history list is hidden, do not keep
the poller running and draining battery.
If window is focused and object is visible, then start the poller and
update the list immediately. (avoid updating too often, 1.0s is the
current threshold).
Gustavo Sverzut Barbieri [Mon, 6 Aug 2012 01:01:23 +0000 (22:01 -0300)]
theme: allow specify different theme at command line.
-H/--theme and the path or file name.
Gustavo Sverzut Barbieri [Mon, 6 Aug 2012 00:48:27 +0000 (21:48 -0300)]
theme: start to specify sizes as macros, add smaller resolution.
It's not complete, particularly "call" is not close to good at
"sd". Marina should review the sizes and we should create macros to
remaining sizes.
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 21:32:34 +0000 (18:32 -0300)]
do not ask confirmation to do hangup or private chat in multiparty
Fixes #2 (Non intuitive Private Chat and Hangup buttons in conference)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 21:24:07 +0000 (18:24 -0300)]
improve pressed state of multiparty details button.
Fixes #15 (Conference icon should not invert on pressing)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 21:14:34 +0000 (18:14 -0300)]
multiparty can have private chat only if there is no held calls.
Before we were disabling private chat only if the conference itself
were held, but we cannot start a private chat from an active
conference if there was some held call.
Fixes #13 (Private Chat only possible if no held calls)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 19:07:03 +0000 (16:07 -0300)]
Do not automatically SwapCalls on local hangup of active call.
Fixes #11 (Waiting call + Hangup and Answer turns into held
call). Leaves code and TODO so we can get back to this.
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 18:58:00 +0000 (15:58 -0300)]
history: dial should not interfere with keypad
use ofono to dial directly, do not use keypad function.
Fixes #10 (Call from history should go back to history)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 18:46:47 +0000 (15:46 -0300)]
improve date formatting.
For dates over a week, show the locale date representation.
This allows us to skip updating those items.
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 18:20:16 +0000 (15:20 -0300)]
history: try to recover by reusing items stored in log.
if application shutdowns with ongoing calls, they will be stored to
EET, on restart it will try to recover items from log by using line_id
and and start time.
For calls that were not completed, this will not work as Call.StarTime
just exist for active or held calls.
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 17:57:16 +0000 (14:57 -0300)]
history: use call start time if available
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 15:28:57 +0000 (12:28 -0300)]
update history times.
some time strings are formatted relatively, they should be updated
timely so they are correct.
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 14:57:27 +0000 (11:57 -0300)]
just hide held if it was not a conference.
otherwise there are other held calls, and we must keep it visible in
the GUI.
Fixes #7 (Wrong display after remote hangup of call in held conference)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 14:38:26 +0000 (11:38 -0300)]
Reset number on dial.
Fixes #6 (No reset of number input after dial)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 14:20:25 +0000 (11:20 -0300)]
Hide keypad on hangup.
Whenever the active peer is disconnected (local or remote), we must
hide the keypad.
Fixes #12 (Show keypad + Hangup interaction)
Gustavo Sverzut Barbieri [Sun, 5 Aug 2012 13:40:21 +0000 (10:40 -0300)]
For conferences, just display "Conference" as name.
Before we were joining all participants names/numbers as a name,
making the string unmanageable. Make it a fixed string, user can see
conference participants by clicking the specific button.
Fixes bug #4 (Display of conference participants)
NOTE: need designer review.
Gustavo Sverzut Barbieri [Sat, 4 Aug 2012 22:34:57 +0000 (19:34 -0300)]
multiparty details should support long numbers and names.
if name or number are too long, reduce font size up to 30px and if
it's not enough, add ellipsis (right of name, left of numbers)
Fixes bug #5 (Display of long numbers in conference window)
Gustavo Sverzut Barbieri [Sat, 4 Aug 2012 22:24:47 +0000 (19:24 -0300)]
show multiparty details for held conferences as well.
It's the same thing as regular multiparty details, but there is no
"private chat" action.
Fixes bug #3 (Conference window only for active call).
Gustavo Sverzut Barbieri [Fri, 3 Aug 2012 20:11:33 +0000 (17:11 -0300)]
history: show item selection.
edje group "elm/layout/dialer/history/img" became just an event area,
no visuals in there. This was done so we can change the arrow color
class when item is selected.
added scripts to control selected and missed states.
Gustavo Sverzut Barbieri [Fri, 3 Aug 2012 20:11:00 +0000 (17:11 -0300)]
history: unselect item after the click action is done.
Gustavo Sverzut Barbieri [Fri, 3 Aug 2012 19:40:13 +0000 (16:40 -0300)]
history: improve visibility of items.
* new items get visible
* after initial populate, show the first item
Iscaro [Fri, 3 Aug 2012 18:53:14 +0000 (15:53 -0300)]
Now when you click in a entry on the history log a call will be made.
Gustavo Sverzut Barbieri [Fri, 3 Aug 2012 19:02:00 +0000 (16:02 -0300)]
history: refactor data model.
* remember call direction (incoming or outgoing)
* remember call complete (active or held)
* save calls on exit, even if call was not completed.
* optimize call_info search, use call and pointer comparison
* fix: during runtime, prepend genlist items, as done with call log
* fix: when no call log can be loaded, use the calloc()ed pointer.
Gustavo Sverzut Barbieri [Fri, 3 Aug 2012 17:12:25 +0000 (14:12 -0300)]
multiple improvements to history look and feel.
* history.c, scroller.edc (from multiparty-list.edc): use scroller
theme for genlist similar to multiparty details.
* history.c: history formats line_id using phone_format() function.
* history-bg.edc: smaller buttons for "All" and "Missed", with text
centered (no subtitle).
* history-bg.edc: lists will go up to the scroller (rel1).
* history.edc: list items are bigger (120px), allowing more space
between items. Fixed positioning of time and type parts.
Iscaro [Thu, 2 Aug 2012 17:59:39 +0000 (14:59 -0300)]
Added EET_COMPRESSION_DEFAULT constant in case our target is a Tizen device
Iscaro [Thu, 2 Aug 2012 13:59:28 +0000 (10:59 -0300)]
Adding time contants at date_format().
Iscaro [Wed, 1 Aug 2012 13:30:25 +0000 (10:30 -0300)]
Changing the way that we store the history log.
Guilherme Iscaro [Fri, 27 Jul 2012 11:47:39 +0000 (08:47 -0300)]
Changing default layout of the history UI.
Gustavo Sverzut Barbieri [Mon, 30 Jul 2012 22:00:37 +0000 (19:00 -0300)]
ofono callbacks: do not automatically free callbacks on shutdown.
This will help in two fronts:
- spot leaks with valgrind, since screens that do not release will show there.
- avoid warnings from screens deleting it with their _on_del()
Gustavo Sverzut Barbieri [Mon, 30 Jul 2012 21:56:56 +0000 (18:56 -0300)]
ofono callbacks: rename lists for shorter and better names.
the prefix "ofono_callback_" and suffix "_list" were not helping,
actually they were adding noise which made lines longer and harder to
read. Change to just "cbs_" prefix.