Split module-utils into smaller components for better dependency
management. Fix many dependencies throughout the project.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
ApplicationDesktop start was slowed down by two synchronous DB calls:
-get unread threads count
-get unread calls count
Both were replaced with asynch versions.
New cmd mechanism implementation of CLCC parser.
Unit tests implementation for the parser.
Refactor of searching for active outgoing call
in service cellular.
Use phone number instead of contact number to identify a message thread
to allow having multiple threads for a contact if contact has multiple
numbers.
Introduce a new way to handle query responses allowing to deal with
races:
- bind reponse with request,
- handle responses with an observer-like interface.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Introduced format aware phone number comparison to allow improved
matching phone numbers with contacts.
Phone numbers are also displayed formatted on a phonebook/calllog
list view and on detailed contact info view.
Entered and e164 number are verified to match each other during
processing db request.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Fix empty calllog title when number comes in national format. The
problem was caused by:
1. making assumption that every number from cellular network comes in
e164 format which is not true,
2. using e164 number when looking for contact matching calllog entry
without checking if e164 exists for calllog entry.
Fix problem by:
a.d.1 - replacing `PhoneNumber::viewFromE164` with less strict
`PhoneNumber::Parse` method which basically is a convenience method
which creates `PhoneNumber` entity and uses it to create a `View`.
a.d.2 - instead of fetching e164 directly introduce `getNonEmpty` method
of a View, which returns e164 number if it is present and entered number
otherwise.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
* [EGD-3188] new sms window - fix layout and functionalities
* [EGD-3188] sending sms from calllog and phonebook
* [EGD-3188] aborting the incoming call via sending sms template
Unufy sms ui common actions to use libphone number only
added default option to contactrecrord::getformattedname method
* [EGD-3188] fix for siwtching back from sms template window when the call is aborted
* [EGD-3188] PR fixes
Use specialized class to to pass phone number between apps and services
instead of ambigious std::string. Introduced class (utils::PhoneNumber)
wraps calls to libphonenumber providing more convienient interface.
However using libphonenumber directly may be resource hungry in terms
of stack, heap and cpu usage, so helper class has been introduced to
pass information about phone numbers (utils::PhoneNumber::View). It is
designed to maintain integrity thus can be created from an instance of
utils::PhoneNumber only or moved/copied to.
Add new field to the calllog db holding e164 formatted number. Both
entered and e164 numbers will be needed to be able to match with
contacts correctly.
Add constexpr information about country codes (utils::country).
* [EGD-2513] new API to create temparary contact entry if cannot be found
Calllog should search for contact.
* [EGD-2513] #pragma once in all headers file in module-db
* [EGD-2513] new constructor for CalllogRecord
* [EGD-2513] contact recognition for calllog DB API
* [EGD-2513] clean up
* [EGD-2513] displaying name and surname call and calllog
* [EGD-2513] enum instead bool
* [EGD-2513] fix in remporary contact creation
* [fix][EGD-2513] missing c_str
* [fix][EGD-2513] minor fixes in documentation
* [EGD-2513] unified entry read state for both sms and calllog dbs
* [EGD-2513] calllog db documentation
* [EGD-2513] code reviex fixed in ContactRecord
* [EGD-2420] tokenizer refactoring
new class CellularCall
* [EDG-2420] new file added
* [EGD-2420] fixed include
* [EGD-2420] added new ModemCall type and its usage in Sevice Cellular.
missing dep in module-cellular.
Fix in tokenizer.
* [EGD-2420] get calllogrecordID one adding new entry to DB
number as contact name
* [EGD-2420] fixes at DB level api for update and delete
Outgoing call seems to add proper calllog entries now
* [EGD-2420][fix] fix for HF during call before full modem init
* [EGD-2420] incoming and missed calls are handled
code clean-up
* [EGD-2420] ModemCall::to_string
* [EGD-2420] added proper exceptions
* [EGD-2420] minor clean up
* [EGD-2420] split string with multichar delimiter
* [EGD-2420] done some TODOs
* [EGD-2420] PR fixes
* [EGD-2420] separation between cellularcall and cellularservice
PR fixes
* [EGD-2420] duration based on timestamp instead of timer
* [EGD-2420] new to_strings
* [EGD-2420] fixes after rebase
* [EGD-2420] operator<<
* [EGD-2420] changed split params
* [EGD-2420] changed returned db id
* [EGD-2420] comment with explantaion