Now, on the active call screen, the user can see the numbers provided during the call,
which is useful when, for example, the user calls a call center.
* Removed call to abort() method in case
EnterNumberWindow's SwitchData handler
receives message that can't be handled,
what caused the phone to crash.
* Unify ApplicationCall window names
definitions.
* Code cleanup.
Fix of the issue that when trying to call empty
number when entering number via keypad
on main screen, popup 'Something went wrong'
would appear, while no action should
happen in such case.
Fix for inconsistent redirection to message threads list when pressing
BACK from sending message from Contact view. Also proveded mechanizm
to help switching back to previous App, when some App call window
from another App.
Fix for the loudspeaker becomes active again when a headset is unplugged
if it was on while the headset was connected to the phone.
Fix typo in Bluetooth in EventType enum.
Fix of the issue that connecting or
disconnecting BT device while call
was in progress resulted in no sound
being heard anywhere due to audio
routing being stopped when HFP device
disconnected.
Additionally minor code cleanup.
1. Implement partial refresh.
2. Implement refresh canceling mechanism.
3. Refactor some parts of the gui and display code.
ad 1.
- Detect parts of the screen changed since last update and merge them
into bigger regions. These regions defines parts of the context sent
to the display.
- Refresh the region covering all of the parts since this is the most
time consuming part and the size of the refreshed region doesn't
change the time much.
- Refresh the whole screen if deep refresh is requested and previously
fast refresh was used. This is needed to prevent unwanted artifacts
in some cases.
ad 2.
- Separate display update and refresh logic.
- Divide image display message handling into two handlers, one updating
and other one refreshing the screen.
- Add cancel refresh message and use it to cancel refresh during update.
- Store sum of refresh regions gathered during updates to refresh them
all at once at the end.
Reworked ending with sms is now reworked. Sms is send by call app,
application messages is only providing template text.
Also call hangup and sms send order is changed due to delays caused by
sending sms.
Call logic is now removed from call window and call app.
There was spaghetti logic mixed in window and app, now
call logic is based on notificatins from service cellular.
Make sure it is not possible to request a call twice.
Added new error windows for general call error and
no network connection.
Make sure there are no issues when call is requested
from external app e.g. from callog or phonebook.
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>
1. Prepare Pure and Bell specific `Application`
classes and add them to `app` target:
- `products/BellHybrid/apps/Application.cpp`
- `products/PurePhone/apps/Application.cpp`
2. Update `CMakeLists.txt` files.
3. Move `ApplicationBell` implementation to Bell-specific
`Application` class and remove `ApplicationBell` files.
4. Change Bell apps parent classes from `ApplicationBell`
to Bell-specific `Application` class.
5. Rename `Application` to `ApplicationCommon` in the rest of the files.
Refactored Audio settings API.
Moved phone modes logic from serivce audio to service clients level.
Removed redundant API.
Seprated API for vibration and sound enable/disable.
Fixed issues with vibrations logic.
Clean up propagation of headset keys events
Clean up volume control with headset keys
Update key mappings for simulator
Use headset OK key to answer/reject calls
Added Gui timer auto refresh window on count and additional
name based API to detach timer from window. Added
TimerIDGenerator and exception throw on creating user timer
with same name.
Fix for Call ended window displayed to shortly
Separted the logic of two gui timers in call window.
Removed redundant main window in call app
Refactored CallWindow interface