6cb8a44
A bit more perpy
Stephen Paul Weber created
6cb8a44
A bit more perpy
Stephen Paul Weber created
cd153c6
Fix icon on old android
Stephen Paul Weber created
47125d1
Merge branch 'muc-kicked-technical-reasons' of https://github.com/Zash/Conversations
* 'muc-kicked-technical-reasons' of https://github.com/Zash/Conversations: Add handling of status code 333
Stephen Paul Weber created
dea5a9f
Unified Start Conversation activity
Show chatrooms and contacts together in one list and search searches both of them.
Stephen Paul Weber created
153028f
Merge branch 'feature/missed_call_notifications' of https://github.com/dmitry-markin/Conversations
* 'feature/missed_call_notifications' of https://github.com/dmitry-markin/Conversations: Fix: show missed call notification if ringing timeout is reached Add missed call notification icon Missed call notifications
Stephen Paul Weber created
69c1f7d
Merge commit 'refs/pull/4095/head' of github.com:iNPUTmice/Conversations
* github.com:iNPUTmice/Conversations: Change string format Add timestamp for all calls
Stephen Paul Weber created
930c053
Merge branch 'alwaysbatterydeopt' of https://github.com/licaon-kter/Conversations
* 'alwaysbatterydeopt' of https://github.com/licaon-kter/Conversations: Here too Show battery dialogue always
Stephen Paul Weber created
3720786
fix ice candidate sending when different credentials are used
Daniel Gultsch created
1f772df
remove security check that ensures rtp connection was properly finished
this only causes race conditions
Daniel Gultsch created
d311e39
code clean up
Daniel Gultsch created
9b6a570
bump agp
Daniel Gultsch created
751206a
Unify phone number normalization with Quicksy
Uses phone location and libphonenumber to normalize.
Stephen Paul Weber created
d375262
Passing through initializing -> inititalized -> dialling more stable
Rather than starting right at dialling, which seemed to cause sometimes delays in the in call screen appearing and also a different behaviour when a post dial string was present, passing through all the states with some time in between seems to result in a more stable and consistent UX with no change to functionality.
Stephen Paul Weber created
6bff870
Merge branch 'more-tags'
* more-tags: Default dynamic tags to on Display phone number type/label as a tag where relevant Show dynamic tag "Android" when item is in Android contacts only
Stephen Paul Weber created
4465bf5
Merge branch 'dialler-integration-permissions'
* dialler-integration-permissions: Ask user for microphone permission from dialler integration
Stephen Paul Weber created
f94c4a2
Add more OMEMO exceptions
Stephen Paul Weber created
5852eb7
Better defaults
Stephen Paul Weber created
5c2594d
Default dynamic tags to on
Stephen Paul Weber created
dd7618a
Display phone number type/label as a tag where relevant
Stephen Paul Weber created
4aa433c
Show dynamic tag "Android" when item is in Android contacts only
Stephen Paul Weber created
be1fcfe
store encrypted pgp files in private cache dir
Daniel Gultsch created
a3085fb
do not restart wakelock if activity is finishing
Daniel Gultsch created
35c54f0
delete pre lolipop weOwnFile()
Daniel Gultsch created
48f8c1a
use try with resources. remove unused methods
Daniel Gultsch created
3534c61
rename version suffix to playstore/free
Daniel Gultsch created
ad49393
bump appcompat, migrate to emoji2 and get rid of emoji flavor
Daniel Gultsch created
4129ca6
fix rare npe
Daniel Gultsch created
0b47053
store recordings and documents in their respective folders
Daniel Gultsch created
d2cc566
Use cheogram icon for notification bar
Stephen Paul Weber created
2019c05
Merge branch 'gateway-icon'
* gateway-icon: Show gateway avatar on in call screen
Stephen Paul Weber created
8c08dee
Ask user for microphone permission from dialler integration
We can't ask them for it directly. The library I am using here will first check if the permission is already granted. If so onPermissionGranted will fire and we will start the call. If not, the Connection will be created in a dialling state and a notification will appear saying that the app needs additional permissions. Once the user taps the notification they will then be asked to allow microphone access. If they say yes, the call will proceed. If they deny, the call will terminate.
Stephen Paul Weber created
ce9547d
Show gateway avatar on in call screen
Stephen Paul Weber created
4b0ea5c
Need to sync also when gateways change
Stephen Paul Weber created
8a046bb
Merge branch 'pstn-gateway-can-call'
* pstn-gateway-can-call: PSTN gateways contacts can do voice calls
Stephen Paul Weber created
f3fb32a
Merge branch 'sync-tel-contacts'
* sync-tel-contacts: Sync system contacts by phone number
Stephen Paul Weber created
8386fbe
Merge branch 'dialer-integration-2'
* dialer-integration-2: Mostly rewrite dialler integration Much prettier calling account
Stephen Paul Weber created
3f4d9b7
Sync system contacts by phone number
Using the same logic as Quicksy, but not submitting to an API just assume that tel@pstn-or-sms-gateway is a valid Jabber ID. Does not add to roster or reveal presence or send anything to a server, just affects local UI.
Stephen Paul Weber created
c03a8b7
write photos to DCIM/Camera
Daniel Gultsch created
282109d
add openkeychain to queries
Daniel Gultsch created
a620cb1
PSTN gateways contacts can do voice calls
If we are in a fallback situation (no presence) then always allow AUDIO if domain matches a known PSTN gateway.
Stephen Paul Weber created
6168029
Mostly rewrite dialler integration
Doing it properly this time. No Intent, no popping a second activity, just instrument the call into the Android UI. This turned out to be a bit easier than expected. The ConnectionService does indeed run inside our app process everywhere it matters, so we can reuse the machinery from elsewhere to get a reference to XmppConnectionService. Asking JingleConnectionManager to send propose is enough to kick off all audio, etc. Put in a guard that the JingleConnectionManager expects so that we won't try to start a call if isBusy is true (that is, if another call is in progress), and just return a failed connection BUSY in that case. Added a flag to XmppConnectionService that we set when using the dialler integration so it will temporarily ignore phone call state and not hang itself up. The app still shows a separate call notification, so you see two in-call notifications. You can also go into the app during the call and manually pull up the call UI there. If you do anything in either call UI it will work and sync state, so that's not dangerous just perhaps odd. Kept the connection address as a tel: for contact integration in the call history, but use our normalized version now instead of whatever we got raw from the system. Add support for post-dial DTMF including 2-second pause with comma and manual-length user-intervention pause with semicolon. Dial with 100ms break between tones. Doing no break at all mostly works in practise, but not for two identical tones in a row, this seems to be enough in my tests. When using a post-dial string from contacts the UI shows more/different state than it should and at least in my emulator plays a different ringback tone for one ring before switching. Very odd, as though it's partially ignoring our Connection object's settings. Audio routing has not been tested yet (for speakerphone, bluetooth, etc).
Stephen Paul Weber created
6fb465f
don’t query packages before attaching something
Daniel Gultsch created
2cc49e5
bump targetSdk
Daniel Gultsch created
d6be6dd
use full file name for all new files
Daniel Gultsch created
8abacd2
use new storage location for backup and recordings
Daniel Gultsch created
6061761
rename method that expand filename
Daniel Gultsch created
c0d30fd
Much prettier calling account
Register the service avatar, perpy background for call UI, and split the User's JID into the headline with the service JID (eg "cheogram.com") only shown in short description.
Stephen Paul Weber created
120406c
Totally optional sentry
Stephen Paul Weber created
b3ccb21
Optional sentry support
Stephen Paul Weber created
6d44d44
Put more info in the exception for debugging the common crash
Stephen Paul Weber created