Daniel Gultsch
83e1d0d0a5
make checkmark icon more material
2020-01-05 13:30:26 +01:00
Anjan Momi
0ddfc51d6c
show number of participants in a MUC
...
fixes #3447
2020-01-05 11:22:39 +01:00
Anjan Momi
0315b3b5c2
added openstreetmap copyright notice to maps
...
fixes #3588
2020-01-04 20:44:05 +01:00
Daniel Gultsch
42d69fd5e3
don’t crash when long pressing invalid geo-uris
2019-12-30 00:23:44 +01:00
Daniel Gultsch
af3c106dc8
reset file to normal message when attempting re-download after delete
...
fixes : #3604
2019-12-30 00:14:55 +01:00
Daniel Gultsch
2b375877eb
extend omemo auto expiry to 42 days (6 weeks)
...
closes #3584
2019-12-29 15:34:06 +01:00
Daniel Gultsch
ed4a73e1c7
persist file size across aborts
...
fixes #3601
2019-12-26 19:01:01 +01:00
Daniel Gultsch
a60e29d4f4
removed c style array
2019-12-26 17:36:16 +01:00
Daniel Gultsch
9bcef7a8e7
display '#' in generated channel avatars
2019-12-22 19:30:58 +01:00
Daniel Gultsch
c898486534
add request package install permission
...
starting with api 26 an app needs to hold that permission to even show the app install screen
2019-12-22 18:19:05 +01:00
Marc Schink
5117956648
Add missing space in debug output
2019-12-21 13:16:22 +01:00
Marc Schink
92cf221a2b
Implement download resumption for OMEMO encrypted files
2019-12-21 13:16:18 +01:00
Marc Schink
cae124d93f
createOutputStream(): allow to disable decryption
2019-12-20 19:17:55 +01:00
Daniel Gultsch
ef98a24bf6
add .heic to list of known mime types
...
fixes #3598
2019-12-12 18:54:46 +01:00
Daniel Gultsch
8d245fc754
don’t use secure delete when migrating edit column
2019-12-08 11:33:09 +01:00
Daniel Gultsch
1dad17ada4
pulled translations from transifex
2019-12-08 11:32:09 +01:00
Daniel Gultsch
00361e1e3d
make + in e164 pattern not optional
2019-12-06 11:16:33 +01:00
Daniel Gultsch
4e66b25c11
pulled translations from transifex
2019-12-06 10:51:15 +01:00
Daniel Gultsch
a3d639747a
fixups for last commit
2019-12-05 14:03:54 +01:00
Daniel Gultsch
8263fb73e9
jingle ibb: wait to receive ibb
...
previously we signalled succesfull file reception after receiving enough bytes on ibb;
however that causes us to race with the session-info file hash. now the recipient will wait for
<close/> and the sender will make sure to send the session-info before sending close.
closes #3500
2019-12-05 13:28:14 +01:00
Daniel Gultsch
1cf7a2b832
pulled translations from transifex
2019-12-04 20:58:22 +01:00
Daniel Gultsch
8a5d658b2a
reduce cursor size back to 4m; now that the cause is fixed
2019-12-04 20:46:22 +01:00
Daniel Gultsch
cc79d8f6b3
properly restore LMC edits. switch to LMC v1.1
...
fixes #3566
closes #3592
2019-12-04 19:20:24 +01:00
Daniel Gultsch
b3c00d7163
use Base64.NO_WRAP instead of trim()
2019-12-04 17:35:06 +01:00
Daniel Gultsch
83520ad8e7
show jabber accounts from local address in Quicksy flavor
2019-12-02 13:50:58 +01:00
Daniel Gultsch
b135486bb4
prevent crash when deleting account on servers that don't support omemo
2019-12-02 13:21:18 +01:00
Daniel Gultsch
a99d7a7400
increase cursor window size on Android P when restoring messages
2019-12-02 13:20:53 +01:00
Daniel Gultsch
10c5d151d3
delete cached posh file after not being able to verify
2019-11-18 19:12:04 +01:00
Daniel Gultsch
eb943619af
do not crash when audio file reports zero length
2019-11-10 11:30:58 +01:00
Daniel Gultsch
97745bdfbe
prevent crash when counterpart in message was null
2019-11-10 11:30:31 +01:00
Daniel Gultsch
77a46063e2
pulled translations from transifex
2019-11-09 22:59:29 +01:00
Daniel Gultsch
79e174743e
check if sender is in contact list before accepting jingle file
2019-11-09 22:58:02 +01:00
Daniel Gultsch
8d6fdfbde7
disable local server disco on Quicksy flavor
2019-11-09 10:20:58 +01:00
Daniel Gultsch
f6724e405e
allow jingle state transition for fallback after proxy failure
2019-11-09 09:31:35 +01:00
Daniel Gultsch
79f8b3dad2
pulled translations from transifex
2019-11-08 22:37:09 +01:00
Daniel Gultsch
8e42d0d39c
make jingle state transitions less error prone
2019-11-08 22:27:14 +01:00
Daniel Gultsch
aa50f8da9d
move foreground setting and backup setting to main settings screen
2019-11-08 14:14:28 +01:00
Daniel Gultsch
7cc2478f5c
remove 'send indicate' setting and default to true
2019-11-08 12:23:06 +01:00
Daniel Gultsch
b320dea4d9
fixed spinning wheel when switching between local and jabber.network discovery
2019-11-08 12:18:39 +01:00
Daniel Gultsch
abc1cb5a89
remove 'indicate received' setting and default to true
2019-11-08 12:06:38 +01:00
Daniel Gultsch
333f629b32
clarify image compression setting
2019-11-08 11:54:03 +01:00
Daniel Gultsch
7f25d91d33
do not validate port if hostname is empty. closes #3578
2019-11-03 22:03:46 +01:00
Daniel Gultsch
f7b7464a65
fixed links in privacy warning in channel discovery. fixes #3577
2019-11-02 17:00:23 +01:00
Daniel Gultsch
07786d4576
optionally search local muc rooms instead of jabber.network
2019-11-02 09:43:37 +01:00
Daniel Gultsch
adfbe59e57
mark silent notifications as local only
...
this will prevent silent notifications (for example those supressed by grace
period) showing up on my smart watch
2019-11-01 11:03:58 +01:00
Daniel Gultsch
ecad9cbe3c
catch security exception when passing on share intent that didn’t give us permission
2019-11-01 10:40:17 +01:00
Daniel Gultsch
c83caad3f5
changed explanation for grace period
2019-10-26 14:11:14 +02:00
Daniel Gultsch
2bed0dad12
attempt to fix some rare crashes
2019-10-26 13:23:27 +02:00
Daniel Gultsch
db3ca3f165
store message bodies up to 1MB
2019-10-23 22:34:43 +02:00
Daniel Gultsch
ab516299e7
catch all exceptions when closing closable
2019-10-23 22:34:25 +02:00
Daniel Gultsch
2f59d66fd1
catch dead system exception when creating error notification
2019-10-23 22:33:51 +02:00
Daniel Gultsch
9bea8074ab
fixed loading channel results from cache
2019-10-11 19:39:45 +02:00
Daniel Gultsch
e0b5010f24
don’t mark pgp encrypted files received from dino as deleted
2019-10-11 15:37:41 +02:00
Daniel Gultsch
ddffe198c6
change background if no results found in channel search. fixes #3559
2019-10-10 12:54:43 +02:00
Daniel Gultsch
2ab65609e4
always show 'contact details' on avatar long press in non-anon
2019-10-09 20:40:56 +02:00
Daniel Gultsch
c21e9c22a7
pulled translations from transifex
2019-10-07 22:08:13 +02:00
Daniel Gultsch
8578af2b2b
flush on socks connection
2019-10-07 22:02:36 +02:00
Daniel Gultsch
799fffcb4a
Revert "pulled translations from transifex"
...
This reverts commit ea633f3d8f
.
2019-10-07 21:58:57 +02:00
Daniel Gultsch
79c3135b4d
properly guard bookmarks2 deletion
2019-10-07 13:49:39 +02:00
Daniel Gultsch
077e695f68
trigger omemo self healing for live msgs on server w/o MAM
2019-10-07 13:38:56 +02:00
Daniel Gultsch
cb3dc48d5a
pulled translations from transifex
2019-10-07 13:35:58 +02:00
Daniel Gultsch
4df8343b05
set autojoin=true after following invite
2019-10-07 09:51:03 +02:00
Daniel Gultsch
b96ef1e591
update ui after bookmark change
2019-10-07 09:37:12 +02:00
Daniel Gultsch
f530e395ca
bookmarks2. introduce #compat namespace
2019-10-07 09:37:12 +02:00
Daniel Gultsch
94c592f213
leave/join on bookmark modifactions
2019-10-07 09:37:12 +02:00
Daniel Gultsch
f26e0720c6
support for purge and delete
2019-10-07 09:37:12 +02:00
Daniel Gultsch
95bf66ca7d
Bookmarks2: support retraction
2019-10-07 09:37:12 +02:00
Daniel Gultsch
f1aa5f2cab
support for delete bookmarks2
2019-10-07 09:37:12 +02:00
Daniel Gultsch
6923b2898c
WIP Bookmarks 2 support
2019-10-07 09:37:12 +02:00
Daniel Gultsch
ea633f3d8f
pulled translations from transifex
2019-10-07 09:36:15 +02:00
Daniel Gultsch
781ec93154
pulled translations from transifex
2019-10-06 14:37:28 +02:00
ChaosKid42
af898b3bc4
LMC: find replacedMessages based on bare JID ( #3548 )
2019-10-05 20:18:42 +00:00
Daniel Gultsch
6155938623
show reason in error message
2019-10-05 22:14:38 +02:00
Daniel Gultsch
01fc78d2a5
disable context menu on failed jingle files. fixes #3556
2019-10-05 22:05:03 +02:00
Daniel Gultsch
d6835101b9
fixes for previous commit
2019-10-05 21:58:21 +02:00
Daniel Gultsch
7ce7a505a0
mark cancelled jingle ft as such on both sides
...
fixes #3554
2019-10-05 21:30:15 +02:00
Daniel Gultsch
6776603b90
fully read port in socks connection
...
incoming direct connections in receive mode wouldn’t clear the entire
destination from the input stream; thus adding a leading 0x00 to the file
fixes #3557
2019-10-03 20:47:31 +02:00
Daniel Gultsch
3d332f6f35
set shorter timeouts when using direct candidates
2019-10-03 09:37:01 +02:00
Marcin Mielniczuk
c7bbfaf061
Use a more meaningful name for old status ( #3552 )
2019-10-01 19:42:05 +00:00
Wiktor Kwapisiewicz
7c631c493a
Use dark navigation bar in QR scanner activity ( #3551 )
...
* Use dark navigation bar on dark theme
This approach uses `tools:targetApi` instead of separate theme file and
avoids lint errors.
* Use dark navigation bar in QR scanner activity
This is consistent with the black background that is already used in
that activity.
2019-10-01 14:44:53 +00:00
Daniel Gultsch
322352ccbf
use new jabber.search.network endpoint
2019-10-01 12:42:12 +02:00
Daniel Gultsch
37b87e18ee
fix NPE when using channel search and DOMAIN_LOCK closes #3458
2019-10-01 12:24:57 +02:00
Daniel Gultsch
f8bd4284a5
report not-acceptable on jingle errors
2019-10-01 11:31:15 +02:00
Daniel Gultsch
d2d9bbe3da
improved jingle debugging
2019-09-29 13:32:45 +02:00
Daniel Gultsch
aef394c9f0
ability to open files from media preview. fixes #3521
2019-09-29 02:00:06 +02:00
Daniel Gultsch
618d892ae7
account deletion: only attempt to delete omemo id when connected
2019-09-29 01:40:40 +02:00
Daniel Gultsch
7b160a358e
do not add 'quote' when sharing own msgs
2019-09-28 23:56:29 +02:00
Daniel Gultsch
863ac7f2e5
show resource prompt when sending uncompressed video
2019-09-28 23:56:02 +02:00
Daniel Gultsch
9276eff1db
delete omemo keys when deleting account
2019-09-28 21:52:07 +02:00
Daniel Gultsch
705f31518c
pulled translations from transifex
2019-09-28 10:37:21 +02:00
Daniel Gultsch
a3227caa37
pulled translations from transifex
2019-09-27 16:30:33 +02:00
Daniel Gultsch
11736ce48c
make list selection manager work with app compat
2019-09-26 23:47:55 +02:00
Daniel Gultsch
f9e1e856d2
Merge pull request #3546 from marcellippmann/master
...
Correct a small typo in Romanian translation
2019-09-25 19:19:33 +00:00
Daniel Gultsch
4dd4886758
pulled translations from transifex
2019-09-25 21:19:09 +02:00
Marcel Lippmann
e2886098fe
Correct a small typo in Romanian translation
2019-09-25 18:15:36 +02:00
Daniel Gultsch
6c5b71440f
channel search result long press to show join dialog
2019-09-24 17:29:34 +02:00
Daniel Gultsch
92e27a3649
pulled translations from transifex
2019-09-24 12:12:20 +02:00
Daniel Gultsch
75d35c357e
print emoji only status messages larger
2019-09-22 11:39:34 +02:00
Daniel Gultsch
426090c301
do not parse invites from type=groupchat
2019-09-22 10:00:09 +02:00
Daniel Gultsch
d2ef0728a3
pulled translations from transifex
2019-09-21 10:52:34 +02:00
Daniel Gultsch
3820950408
show context menu in channel search to share uri
2019-09-21 10:51:05 +02:00
Daniel Gultsch
ed46d12115
close correct socket after faulty jingle socks connection
2019-09-20 10:00:57 +02:00
Daniel Gultsch
abe01f18f2
improved logging for messages waiting for join
2019-09-19 10:00:50 +02:00
Daniel Gultsch
af74c3604c
fixed R8 weirdness
2019-09-18 11:04:36 +02:00
Daniel Gultsch
02351dc0fb
fixed direct invites after adhoc
2019-09-18 09:55:18 +02:00
Daniel Gultsch
4c92d1b755
cancel spinning wheel on muclumbus error
2019-09-18 09:17:47 +02:00
Daniel Gultsch
2ec1d0cc09
warn when using _only_ ambiguous cyrillic
2019-09-16 15:13:53 +02:00
Daniel Gultsch
d963d95e30
fixed some minor NPE
2019-09-16 14:20:15 +02:00
Daniel Gultsch
ab57c59838
clear notifications when deleting account
2019-09-15 12:23:56 +02:00
Daniel Gultsch
4cd652884c
do not finish or repair sessions for untrusted senders
...
finishing (sending a key transport message in response to pre key message) as
well as reparing sessions will leak resource and availability and might in
certain situations in group chat leak the Jabber ID.
Therefor we disable that. Leaking resource might not be considered harmful by
a lot of people however we have always doing similar things with receipts.
2019-09-15 11:49:58 +02:00
Daniel Gultsch
be4953b1e4
parse LMC 1.1
2019-09-13 16:38:15 +02:00
Daniel Gultsch
e395da18bf
when parsing omemo messages ensure we only find one element
2019-09-12 12:43:11 +02:00
Daniel Gultsch
a7c47a33fa
inherit language from parent message when finding localized body
2019-09-12 12:42:42 +02:00
Daniel Gultsch
9bf5fb98ac
show language in message bubble if multiple language variants were received
...
XML and by inheritence XMPP has the feature of transmitting multiple language
variants for the same content. This can be really useful if, for example, you
are talking to an automated system. A chat bot could greet you in your own
language.
On the wire this will usually look like this:
```xml
<message to="you">
<body>Good morning</body>
<body xml:lang="de">Guten Morgen</body>
</message>
```
However receiving such a message in a group chat can be very confusing and
potentially dangerous if the sender puts conflicting information in there and
different people get shown different strings.
Disabeling support for localization entirely isn’t an ideal solution as on
principle it is still a good feature; and other clients might still show a
localization even if Conversations would always show the default language.
So instead Conversations now shows the displayed language in a corner of the
message bubble if more than one translation has been received.
If multiple languages are received Conversations will attempt to find one in
the language the operating system is set to. If no such translation can be
found it will attempt to display the English string.
If English can not be found either (for example a message that only has ru and
fr on a phone that is set to de) it will display what ever language came first.
Furthermore Conversations will discard (not show at all) messages with with
multiple bodies of the same language. (This is considered an invalid message)
The lanuage tag will not be shown if Conversations received a single body in
a language not understood by the user. (For example operating system set to
'de' and message received with one body in 'ru' will just display that body as
usual.)
As a guide line to the user: If you are reading a message where it is important
that this message is not interpreted differently by different people (like a
vote (+1 / -1) in a chat room) make sure it has *no* language tag.
2019-09-12 10:12:51 +02:00
Daniel Gultsch
9273ba5653
pulled translations from transifex
2019-09-12 10:09:28 +02:00
Daniel Gultsch
a39fff5c8e
fixed 2 issues reported by new linter
2019-09-11 15:42:43 +02:00
Daniel Gultsch
24d1fc2bb5
pulled translations from transifex
2019-09-09 09:43:10 +02:00
Daniel Gultsch
8b69f8ae50
include ticker information in notification. fixes #3532
2019-09-08 17:58:15 +02:00
Daniel Gultsch
dd9777a6b7
do not include scope in ipv6 annoucment
2019-09-08 17:44:26 +02:00
Daniel Gultsch
9129c9acde
JET uses plain text file size
2019-09-06 13:11:37 +02:00
Daniel Gultsch
0e1c26c569
do not include link local in direct candidates
2019-09-05 13:17:45 +02:00
Daniel Gultsch
571c29f92a
make Tor connections work with direct TLS
2019-09-05 12:08:58 +02:00
Daniel Gultsch
7ec1b443ab
implemented support for for jingle encrypted transports (XEP-0396)
2019-09-04 16:14:01 +02:00
Daniel Gultsch
ff4d127b6f
use higher priority for proxy on receiving end
2019-09-02 08:51:50 +02:00
Daniel Gultsch
90e669313e
send fallback to ibb after proxy activation failed
2019-09-01 21:41:28 +02:00
Daniel Gultsch
10b1365264
also reply with direct connections on response
2019-09-01 20:42:07 +02:00
Daniel Gultsch
1c413edf06
bare minimum direct connections
2019-09-01 15:06:59 +02:00
Daniel Gultsch
783ed53d3a
order canditates by priority before attempting to connect
2019-09-01 11:34:36 +02:00
Daniel Gultsch
7d6bd540d9
version bump to 2.5.7 + changelog
2019-08-29 12:14:01 +02:00
Daniel Gultsch
e49473007e
fix russian localization ( #3526 )
2019-08-29 07:48:34 +00:00
Daniel Gultsch
ab86cc4689
pulled translations from transifex
2019-08-29 09:48:13 +02:00
Daniel Gultsch
29d0bed38b
when sharing text from Conversations to Conversations use quotes
2019-08-26 13:40:47 +02:00
Andrey Sokolov
c16438c475
fix russian localization
2019-08-25 12:46:09 +03:00
Daniel Gultsch
219ae65ef7
more ibb fixes (include sid in transport-accept)
2019-08-22 14:47:30 +02:00
Daniel Gultsch
2706deedbd
pulled translations from transifex
2019-08-22 10:01:02 +02:00
Daniel Gultsch
98eb49904c
fixed unlikely race between enabling carbons and discovering last MAM id
2019-08-22 09:57:39 +02:00
Daniel Gultsch
c84a89924e
include pgp sig and status in presence to non anon muc
2019-08-19 14:27:11 +02:00
Daniel Gultsch
f11adf4c02
do not put default nick into bookmark if none has been set before
2019-08-19 13:55:52 +02:00
Daniel Gultsch
8574bea280
pulled translations from transifex
2019-08-18 13:12:02 +02:00
Daniel Gultsch
fddd974412
do not put version info into disco
...
This will reduce traffic by limiting the variety of different caps version hashes.
It might also improve privacy by not leaking fdroid vs playstore vs self build information
2019-08-18 13:03:58 +02:00
Daniel Gultsch
daf7e6224f
fixed pgp decryption of automatically accepted jingle ft
2019-08-16 15:29:58 +02:00
Daniel Gultsch
d3ccba445a
increased reconnection interval after policy violation
2019-08-16 15:00:26 +02:00
Daniel Gultsch
9ea4f1534b
pulled translations from transifex
2019-08-16 14:12:13 +02:00
Daniel Gultsch
0770914edf
refactored filename and extension parsing
2019-08-16 14:09:42 +02:00
Daniel Gultsch
c039ffcf35
clean up logging
2019-08-14 18:44:57 +02:00
Daniel Gultsch
195988398e
removed dead code in location activity
2019-08-14 17:04:45 +02:00
Daniel Gultsch
e735be323e
catch npe on participants context menu
2019-08-14 17:04:31 +02:00
Daniel Gultsch
6e1394ab40
make config flag for leave before join
2019-08-14 12:04:27 +02:00
Daniel Gultsch
ed95dd64ad
create empty disco result on error to fire advance stream features event
2019-08-13 21:18:32 +02:00
Daniel Gultsch
ad15fb1721
pulled translations from transifex
2019-08-12 13:09:02 +02:00
Daniel Gultsch
0f18f16dc2
show scrollbars in muc user screen
2019-08-12 13:08:13 +02:00
Daniel Gultsch
8ac042418b
fixes #3514
2019-08-11 16:54:00 +02:00
Daniel Gultsch
1ff17fc3f0
catch more firebase library bugs
2019-08-06 15:04:59 +02:00
Daniel Gultsch
ffc16faf7b
pulled translations from transifex
2019-08-06 15:04:05 +02:00
Daniel Gultsch
011bdd8ef6
fixed send_multiple share intent with empty extras. fixes #3512
2019-08-05 21:32:20 +02:00
Daniel Gultsch
238df77a1e
catch IllegalArgumentException when reading backup file
2019-07-25 17:01:43 +02:00
Daniel Gultsch
4957e50ac4
disable spell checking on country drop down field in Quicksy
2019-07-23 17:49:33 +02:00
Daniel Gultsch
f597fc46da
implement time out for waiting on voice recording
2019-07-23 17:31:56 +02:00
Daniel Gultsch
1af52a7a30
made some quicksy registration errors more explicit
2019-07-23 15:25:50 +02:00
Daniel Gultsch
68a20ecf63
pulled translations from transifex
2019-07-23 08:37:39 +02:00
Daniel Gultsch
a4665d4657
made domain verifier case insensitive. fixes #3495
2019-07-20 17:51:37 +02:00
Daniel Gultsch
c87e43eb92
put initial xmpp uri into signup intent
2019-07-20 15:58:05 +02:00
Daniel Gultsch
c1589d76b5
resetToWaiting should include http uploaded files
2019-07-20 12:15:06 +02:00
Daniel Gultsch
f5be53d08a
jump into last field after re-enable pin entry
2019-07-20 12:14:33 +02:00
Daniel Gultsch
3837ec8122
do not include DNS servers from networks know to be inactive
...
* we still include DNS servers from VPNs because of edge cases where the XMPP server is hosted in the VPN
* on older Android versions we don’t know if a network is active or not (activeNetwork == null)
fixes #3465
2019-07-18 11:24:33 +02:00
Daniel Gultsch
6de6d054ac
catch fcm library bugs
2019-07-17 21:03:56 +02:00
Daniel Gultsch
d9f39df9c8
do password empty check in dialog not in restore backup service
2019-07-17 17:21:18 +02:00
Daniel Gultsch
cb1feab350
open backup files on view action
2019-07-17 11:32:56 +02:00
Daniel Gultsch
603e1b35a5
allow backup to be restored from selected file
2019-07-16 16:49:47 +02:00
Daniel Gultsch
b68851b719
create share button in backup done notification
2019-07-15 19:11:00 +02:00
Daniel Gultsch
97598c63dc
split on first dot when using domain instead of black listed local part
2019-07-15 19:09:53 +02:00
Daniel Gultsch
bc3e5f1dd4
muc message corrections only compare bare jid true counterpart
...
during live messages we only store the bare real jid; on muc catch up we might get the full jid
for that reason we only compare bare jids
2019-07-14 17:58:31 +02:00
Daniel Gultsch
719b35e431
prefer attachment in share intent if there is one
2019-07-14 16:39:09 +02:00
Daniel Gultsch
803334e42b
pulled translations from transifex
2019-07-14 16:38:56 +02:00
Daniel Gultsch
553b65ffcd
pulled translations from transifex
2019-07-11 08:14:07 +02:00
Daniel Gultsch
7e93c1021b
handle blocking and unblocking of full jids
2019-07-10 17:58:48 +02:00
Daniel Gultsch
c9bf1474e3
support status code 451 in quicksy registration
2019-07-04 19:35:03 +02:00
Daniel Gultsch
8138eb0346
use more default values in LocationActivity
...
fixes #3475
2019-07-04 18:17:16 +02:00
Daniel Gultsch
98c4e9056f
use helper method to close socket
2019-07-04 10:12:08 +02:00
Daniel Gultsch
e9099acd97
accept status code 201 for Quicksy registration
2019-07-03 18:01:46 +02:00
Daniel Gultsch
feba9a71ee
code clean up
2019-07-02 11:10:21 +02:00
Daniel Gultsch
8c526de0af
disable muc push on archive instead of leave
...
leave can be triggered on swipe and doesn’t mean we don’t want pushes
2019-07-01 14:35:00 +02:00
Daniel Gultsch
59a2f39b27
pulled translations from transifex
2019-07-01 11:17:27 +02:00
Daniel Gultsch
4f0214b477
check if activity is not null before using it to paint send button
2019-07-01 10:17:29 +02:00
Daniel Gultsch
7ec8f7952f
migrate copy ond write list to synchronized hashset for pending mucs
2019-06-30 21:57:37 +02:00
Daniel Gultsch
9f08a32ffb
include remote server errors in errors that should trigger a self ping
2019-06-30 20:08:28 +02:00
Daniel Gultsch
0ecdb43be6
rate limit muc pings / joins. never run two pings at same time
2019-06-30 19:54:07 +02:00
Daniel Gultsch
49224335fc
attempt to unregister when receiving push for channel no longer joined
...
when receiving a FCM push message for a channel the user is no longer in (this can happen when the disable command failed) an attempt will be made to explicitly unregister from the app server (which in turn will then send item-not-found on next push)
2019-06-26 17:40:12 +02:00
Daniel Gultsch
7809af9b57
implement FCM push for group chats
2019-06-25 18:15:51 +02:00
Daniel Gultsch
e467fe341e
implement client support for muc push
...
Staying connected to a MUC room hosted on a remote server can be challenging.
If a server reboots it will usually send a shut down notification to all
participants. However even if a client knows that a server was shut down it
doesn’t know when it comes up again. In some corner cases that shut down
notification might not even be delivered successfully leaving the client in a
state where it thinks it is connected but it really isn’t.
The possible work around implemented in this commit is to register the clients
full JID (user@domain.tld/Conversations.r4nd) as an App Server according to
XEP-0357 with the room. (Conversations checks for the push:0 namespace on the
room.)
After cycling through a reboot the first message send to a room will trigger
pubsub notifications to each registered full JID. This event will be used to
trigger a XEP-0410 ping and if necessary a subsequent rejoin of the MUC.
If the resource has become unavailable during down time of the MUC server the
user’s server will respond with an IQ error which in turn leads to the MUC
server disabling that push target.
Leaving a MUC will send a `disable` command. If sending that disable command
failed for some reason (network outage) and the client receives a pubsub
notification for a room it is no longer joined in it will respond with an
item-not-found IQ error which also disables subsequent pushes from the server.
Note: We 0410-ping before a join to avoid unnecessary full joins which can be
quite costly. Further client side optimazations will also surpress pings when
a ping is already in flight to further save traffic.
2019-06-24 18:16:06 +02:00
Daniel Gultsch
b6d059ed89
ping muc after receiving not-acceptable error
2019-06-18 18:40:16 +02:00
Daniel Gultsch
17c8bf3452
attempt to keep messages waiting until muc is connected
2019-06-18 18:09:44 +02:00
Daniel Gultsch
6862b60c3f
self ping (xep-0410) after receiving invite to muc
2019-06-18 13:20:24 +02:00
Daniel Gultsch
4c3cd89fe7
syntax clean up
2019-06-17 17:37:02 +02:00
Daniel Gultsch
782d889cc5
disallow subsequent session-accept
2019-06-17 09:51:49 +02:00
Daniel Gultsch
c1bdda0a9b
reenable http upload that got disabled in last commit
2019-06-17 08:33:19 +02:00
Daniel Gultsch
9fc1ead74f
use ibb if other party doesn’t annouce s5b feature
2019-06-16 22:57:10 +02:00
Daniel Gultsch
fe6c981ae2
accept direct ibb jingle offers
2019-06-16 21:23:18 +02:00
Daniel Gultsch
1cfba86aff
don’t crash when attempting to publish bookmarks while offline
2019-06-16 18:05:06 +02:00
Daniel Gultsch
52c0bf73a0
handle some rare npe
2019-06-16 18:04:43 +02:00
Daniel Gultsch
2fbd9e6744
MessageStyle notifications replace car extender
2019-06-16 16:02:22 +02:00
Daniel Gultsch
953307ca30
use socks instead of http proxy for http upload
...
http proxy doesn’t seem to work with onion v3
2019-06-16 15:06:34 +02:00
Daniel Gultsch
997f922401
put geo uri in attachment preview when shared
2019-05-28 22:32:42 +02:00
Daniel Gultsch
16ce476bbc
show negative max files size (unknown/unlimited) simply as available
2019-05-27 18:32:04 +02:00
Daniel Gultsch
9a8cc5b2e7
fixed some NPE
2019-05-22 23:58:39 +02:00
Daniel Gultsch
e5378df39c
synchronize around attributes in toContentValues()
2019-05-22 23:58:08 +02:00
Daniel Gultsch
c7bd635996
pulled translations from transifex
2019-05-22 17:32:14 +02:00
Daniel Gultsch
10653df164
show error messages in text layout not edittext
2019-05-22 17:31:11 +02:00
Daniel Gultsch
c965049605
handle invalid canditates in jingle
2019-05-22 17:30:51 +02:00
Daniel Gultsch
132f81df23
double check that activity is not null in updateSend button
2019-05-22 17:30:04 +02:00
Daniel Gultsch
a909e1a7cf
fixed NPE in channel discovery after race to create menu
2019-05-22 17:29:27 +02:00
Daniel Gultsch
5bedde7913
run postDelayed in background thread
2019-05-08 14:11:28 +02:00
Daniel Gultsch
6785d8c69f
set volume control channel to media volume / default. fixes #3451
2019-05-08 14:11:06 +02:00
Daniel Gultsch
8736db3bc4
pulled translations from transifex
2019-05-03 10:48:51 +02:00
Daniel Gultsch
ba327d8512
set own omemo devices to inactive after 14 days of inactivity; was 7 days
2019-05-03 10:48:33 +02:00
Daniel Gultsch
82dcae59e3
added language tag in channel search results
2019-05-02 20:09:43 +02:00
Daniel Gultsch
818f2ab61c
fixed rare NPE cause by race
2019-05-02 20:09:16 +02:00
Daniel Gultsch
3d208e6e34
pulled translations from transifex
2019-05-01 19:11:37 +02:00
Daniel Gultsch
61604dedea
jingle: send canditate error before fallback
2019-04-30 11:23:15 +02:00
Daniel Gultsch
73d66fd703
go forward through cursor in message restore
...
We have seen some weird CursorIndexNotFoundException that we were unable to reproduce.
We assume that going forward (moveToNext()) through the cursor instead of (moveToPrevious() fixes that issue
2019-04-30 10:45:28 +02:00
af8a524db1
137d48810d
Make use of Namespace.REGISTER constant ( #3446 )
2019-04-29 07:51:46 +00:00
Daniel Gultsch
a99d65d7d4
pulled translations from transifex
2019-04-29 09:44:52 +02:00
ialokim
15791b732c
fix export error for non-unicode numbers ( #3444 )
2019-04-28 10:46:49 +00:00
Daniel Gultsch
ed8c5ec7f5
pulled translations from transifex
2019-04-27 15:24:43 +02:00
Daniel Gultsch
7c35f28633
do not synchronize twice when adding status and date bubbles
2019-04-27 15:24:37 +02:00
Daniel Gultsch
bcab77a044
wait with presence selection until attachment commit
2019-04-27 14:41:43 +02:00
Daniel Gultsch
b2ea91909b
introduced type private_file_message to handle attachments in PMs. fixes #3372
2019-04-27 11:46:43 +02:00
Daniel Gultsch
b55d4bc62f
do not jump out of whispher mode when selecting attach
2019-04-26 17:53:00 +02:00
Daniel Gultsch
5e30d97439
fixed ui glitch when displaying PM hint over attachments
2019-04-26 17:15:03 +02:00
Daniel Gultsch
dc70b7e28a
add bookmark when clicking on channel search result
2019-04-26 12:26:49 +02:00
Daniel Gultsch
76fb17c972
add contact dialog: warn on suspicious addresses
2019-04-26 12:05:52 +02:00
Daniel Gultsch
c4348e92e8
pulled translations from transifex
2019-04-26 11:20:33 +02:00
Daniel Gultsch
d2c9ce7bf0
store correcting message in db
2019-04-26 11:18:16 +02:00
Daniel Gultsch
ef555063d9
rename new welcome resource
2019-04-26 11:18:04 +02:00
Daniel Gultsch
8a1a9f4f55
put PM hint above edittext. fixes #3432
2019-04-26 10:23:26 +02:00
Daniel Gultsch
182a81e3ef
only show opened FAB when some accounts are enabled
2019-04-26 09:30:38 +02:00
Daniel Gultsch
6704db21fb
added Tor support to channel search
2019-04-25 21:10:50 +02:00
Daniel Gultsch
9db1c10f45
open FAB when no contacts or bookmarks are found
2019-04-25 19:52:42 +02:00
Daniel Gultsch
7b61bb9841
rework welcome screens to split use existing account / create new
...
closes #3440
2019-04-25 19:01:34 +02:00
Daniel Gultsch
a04b7a1c0f
keyboard event callbacks shoud run on ui thread. fixes #3441
2019-04-25 12:27:38 +02:00
Daniel Gultsch
ff84ee6964
cache channel search results
2019-04-24 13:25:54 +02:00
Daniel Gultsch
1857fe9e0d
moved layout files from conversations flavor to main
2019-04-22 13:16:49 +02:00
Daniel Gultsch
2fa687b8ae
refactor muc search to use http
2019-04-22 13:00:45 +02:00
Daniel Gultsch
a0f88aa9b4
implement channel discovery over jabber.search.network
2019-04-22 10:42:21 +02:00
Daniel Gultsch
7a825231fb
run keyboard listeners on background executor
2019-04-17 18:25:21 +02:00
Daniel Gultsch
39bc067405
execute some dismiss error notification and reset error in background
2019-04-17 12:49:36 +02:00
Daniel Gultsch
98734353aa
pulled translations from transifex
2019-04-17 09:56:09 +02:00
Daniel Gultsch
d04e2e99f3
use mediated invite on reinvite if user is not member
2019-04-11 08:57:20 +02:00
Daniel Gultsch
bf7d50692c
use styled warning for message error. fixes #3428
2019-04-08 16:32:41 +02:00
Daniel Gultsch
c6df5191ab
pulled translations from transifex
2019-03-24 20:07:38 +01:00
Daniel Gultsch
d390345073
show max file upload size in server info
2019-03-23 07:27:03 +01:00
Daniel Gultsch
6322d4c077
renamed button in recording dialog to 'attach'
2019-03-23 07:26:29 +01:00
Daniel Gultsch
74301831d2
do sent/received correct based on true counterpart introduces in f406631512
only for type=groupchat
2019-03-15 12:46:27 +01:00
Daniel Gultsch
46596e8652
fix backup creation for older installations
...
if your Conversations installation is older than December 2016 (version 1.15.0) the backup would
include historic data that a current installation is not able to read on restore.
This commits excludes that data from the backup.
If you had problems importing the backup you need to create a new backup after this patch
2019-03-07 09:08:37 +01:00
Daniel Gultsch
a9b0e13179
fixed syntax errors in french translations
2019-03-03 08:52:05 +01:00
Daniel Gultsch
ec0b9b9a72
pulled translations from transifex
2019-03-03 08:35:20 +01:00
Daniel Gultsch
c7dea9dded
fixed security exception when attempting to display image in notification
2019-03-03 08:32:54 +01:00
Daniel Gultsch
875f0b9943
find activity even if wrapped in context wrapper. fixes #3396
2019-03-03 08:31:46 +01:00
Daniel Gultsch
f406631512
double check that muc message is ours if true jid is known
2019-03-02 08:36:36 +01:00
Daniel Gultsch
a29a5fd491
copy intent extras in eventreceiver
2019-02-27 14:16:26 +01:00
Daniel Gultsch
417a6e8307
use proper theme in restore activity. fixes #3389
2019-02-25 20:26:52 +01:00
Daniel Gultsch
24a51d8715
do null check before splitting error message for processing
2019-02-23 10:24:08 +01:00
Daniel Gultsch
895a140ec5
pulled translations from transifex
2019-02-22 15:05:50 +01:00
Daniel Gultsch
b4b4950a75
s/Jabber ID/XMPP address/
...
There are countless arguments on both sides of the Jabber ID vs XMPP address
debate which makes deciding between them a really tough decision.
Pro Jabber ID
* Jabber is easier pronounce
* We have always called it Jabber
* Jabber is more recognizable (This claim can not be backed up by Google Trends)
* Jabber ID has a nicer typography
Pro XMPP address
* People like the term address. People also liked 'Chat address' or
'Conversations address'. Address is also used in Email address or other
protocols. Even if people don’t understand the 'XMPP' part of the term they
might understand the 'address' part and know what is going on.
* While people might have heard of Jabber rather than XMPP; people have heard
of it in the 00s and associate it with something old. Depending on the
target audience this is a good thing. And people who value sustainability
know what XMPP is anyway.
* Jabber is a Cisco product. If we were to succeed in making 'Jabber' cool
again we don’t want to share that success with Cisco. What has Cisco ever
done for us? Aside from providing us with a venue for the XSF summit. And
building nice aqueducts.
* The Cisco owned trademark is a damocles sword. While the XSF technically
has the right to hand out sublicenses to use the term this can be a lengthy
process. And automated filter system that for example monitor Google Play
store descriptions don’t care that the XSF has the rights or that the terms
of use are more nuanced. They just see a trademark and reject the
publication. And we all know how impossible it is to speak to an actual
human at Google.
2019-02-21 11:29:05 +01:00
Daniel Gultsch
d95b904b5b
show file too large instead of generic delivery failed
2019-02-20 21:44:06 +01:00
Daniel Gultsch
3fabb52293
after switching from forced foreground to foreground notification needs update
2019-02-16 11:58:16 +01:00
Daniel Gultsch
905d2ab432
explicitly set profile+level for encoder
...
some modern Androids (namely my Xiaomi Mi A1 after the update to Andorid 9) seem to require that
2019-02-16 11:40:51 +01:00
Daniel Gultsch
bd5b8aff78
fixed typo. s/exits/exists/
2019-02-15 20:35:32 +01:00
Daniel Gultsch
cdaa61b6a3
fixed broken nl translation string for quicksy. good thing we have travis
2019-02-15 14:26:13 +01:00
Daniel Gultsch
a658eb2d4b
pulled translations from transifex
2019-02-15 14:13:11 +01:00
Daniel Gultsch
f26a57ced4
fixed regression of search hint not updating in StartConversation screen
2019-02-15 14:07:39 +01:00
Daniel Gultsch
6b5e81df49
allow filtering in participant view. fixes #3371
2019-02-15 14:00:42 +01:00
Daniel Gultsch
5f543e8314
show notification when backup is done
2019-02-15 13:17:49 +01:00
Daniel Gultsch
d79768e923
do not show 'manage permissions' submenu when only 'remove from room' is visible
2019-02-15 09:57:58 +01:00
Daniel Gultsch
766cb8c088
extend max label size slightly
2019-02-10 20:07:57 +01:00
Daniel Gultsch
bebce313b2
print available stream features / mechanisms on incompat server
2019-02-09 20:21:29 +01:00
Daniel Gultsch
ef09b0ab1a
use the term channel in destroy dialog
2019-02-08 13:46:33 +01:00
Daniel Gultsch
310362130f
catch activity not found when trying to open contact app
2019-02-07 21:39:30 +01:00
Daniel Gultsch
bfaf10aa72
brought back 'moderated' config in advanced mode
2019-02-07 18:11:21 +01:00
Daniel Gultsch
b648c482f3
allow corrections in all mucs
2019-02-07 18:11:07 +01:00
Daniel Gultsch
ad64058d25
hide lock icon in channels; modify muc user context
2019-02-07 13:18:42 +01:00
Daniel Gultsch
b6a501d24b
rights managment in muc
2019-02-06 23:47:29 +01:00
Daniel Gultsch
32ef3755e2
show different room settings for channels and groups
2019-02-06 18:29:07 +01:00
Daniel Gultsch
2b913f367d
provide the same fab submenu for both tabs. rename tab to bookmark
2019-02-06 14:45:51 +01:00
Daniel Gultsch
179beb15e0
fix xmpp uri links that have a aditional chars after join
...
for example xmpp:foo@bar.tld?join,
2019-01-31 13:59:41 +01:00
Daniel Gultsch
e0965a2bf2
remove warning messages for kick after ban failing. on modern servers ban is enough to also kick
2019-01-28 10:52:35 +01:00
Daniel Gultsch
b30fb46c85
make sure that http upload/download is not startetd multiple times
2019-01-28 10:39:01 +01:00
Daniel Gultsch
0898783309
schedule another ping 30s after connectivity_change
2019-01-27 20:54:45 +01:00
Daniel Gultsch
8bc9f9a7c8
fixed context menu on self contact
2019-01-27 18:57:41 +01:00
Daniel Gultsch
2bc9fdf5d3
show sub menu fabs for create group chats. fixes #2950
2019-01-27 16:35:55 +01:00
Daniel Gultsch
20e731c956
show context menu when long pressing own account picture
2019-01-27 11:38:20 +01:00
Daniel Gultsch
2f3ccb5f90
changed order of users and media in muc details
2019-01-27 10:32:27 +01:00
Daniel Gultsch
b532f5ed1f
add context menu for muc user adapter
2019-01-26 20:31:52 +01:00
Daniel Gultsch
b9c4309a28
refactored group chat members into seperate screen
2019-01-25 17:58:23 +01:00
Licaon_Kter
0ba3f31cbc
Fix type in presence ( #3357 )
2019-01-25 13:39:36 +00:00
Daniel Gultsch
7f170276a9
refactored avatar workers into single class
2019-01-25 10:07:02 +01:00
Daniel Gultsch
18807305c1
do not require starttls when connecting over to .onion domain
2019-01-25 08:48:46 +01:00
Daniel Gultsch
8fbe445c99
scan all files in case some files were previously marked as deleted by accident
2019-01-24 15:03:58 +01:00
Daniel Gultsch
04d1b92a79
make bitmap worker task static; migrate conversation list row to binder
2019-01-24 12:27:57 +01:00
Daniel Gultsch
11e0ff4006
show spinning wheel in restore backup activity
2019-01-23 19:13:04 +01:00
Daniel Gultsch
a32bb652f7
always show number of connected accounts in foreground notification. fixes #3352
2019-01-23 17:07:14 +01:00
Daniel Gultsch
2e0db4dcda
do not show installed accounts in restore view
2019-01-23 12:45:15 +01:00
Daniel Gultsch
18982174ce
ask for permissions before opening restore backup. use insert or ignore for messages
2019-01-23 11:20:36 +01:00
Daniel Gultsch
c9fc40dfe5
WIP backup & restore
2019-01-22 19:25:45 +01:00
Daniel Gultsch
a0be2dc54f
updated readme
2019-01-21 11:55:52 +01:00
Daniel Gultsch
55ae07fd93
pulled translations from transifex
2019-01-19 21:14:23 +01:00
Daniel Gultsch
83c3258dd7
properly jump out of connection loop on state changing errors
2019-01-19 11:47:21 +01:00
Daniel Gultsch
dcdf340a41
normalize nicks before getting them from bookmarks or pep
2019-01-19 11:42:57 +01:00
Daniel Gultsch
14c8d4ce0d
pulled translations from transifex
2019-01-18 12:52:13 +01:00
Daniel Gultsch
477f2d34f3
use clear top flag in shortcut intent
2019-01-18 12:28:35 +01:00
Daniel Gultsch
a53774bc6d
resend presence to muc avatar update. fixes #3175
2019-01-17 17:55:47 +01:00
Daniel Gultsch
e714d7cd29
null checks when deleting old files
...
fixes #3345
2019-01-17 11:56:34 +01:00
Daniel Gultsch
0d497fdda9
pulled translations from transifex
2019-01-14 23:52:51 +01:00
Daniel Gultsch
61e21c302e
pulled translations from transifex
2019-01-13 22:19:33 +01:00
Daniel Gultsch
caf5fcad88
fixed enabled accounts check in onCreate
2019-01-13 22:18:32 +01:00
Daniel Gultsch
ce8c7d887d
pulled translations from transifex
2019-01-13 17:04:11 +01:00
Daniel Gultsch
526c2637c1
provide Set as Profile intent. fixes #2594
2019-01-13 15:28:24 +01:00
Daniel Gultsch
004411cf51
force foreground service during onCreate()
...
creating / upgrading the database and reading accounts can be expensive
and will otherwise trigger an AN
2019-01-13 11:27:16 +01:00
Daniel Gultsch
d02fd73af8
explicitly start service (instead of just bind) service from contact chooser
2019-01-13 09:42:44 +01:00
Daniel Gultsch
67fddd1654
fix manual location correcting / fab not showing up on 4.4
...
fixes #3097
2019-01-12 21:08:17 +01:00
Daniel Gultsch
ba34561235
ignore code block start in message preview. fixes #3124
2019-01-12 14:26:33 +01:00
Daniel Gultsch
e5a200481c
pulled translations from transifex
2019-01-12 10:51:10 +01:00
Daniel Gultsch
c5e35dc4b3
extend open with to audio files
2019-01-12 10:29:41 +01:00
Daniel Gultsch
918b3223b3
stop file watching when service has been destroyed
2019-01-12 10:21:21 +01:00
Daniel Gultsch
d2b8134cdf
check if we have storage permission before marking a file as deleted on resend
2019-01-12 10:09:45 +01:00
Daniel Gultsch
e9bf2b464c
explicitly set type=images for all media with an image mime type
...
this is in preperation to be able to query the database for all images
2019-01-12 09:01:35 +01:00
Daniel Gultsch
9efb3c6dc6
synchronize around notification update from corrected messages
2019-01-12 08:55:46 +01:00
Daniel Gultsch
91db13b01b
format phone number with narrow non-breaking space
2019-01-11 18:06:11 +01:00
Daniel Gultsch
6ecf6f1149
make contact chooser (direct sharing) smart about sharing text in groups when http is not available
2019-01-11 17:45:18 +01:00
Daniel Gultsch
8124b24479
maintain order of conversations in share with dialog
2019-01-11 17:19:54 +01:00
Daniel Gultsch
c11dd71510
fixed regression that hid enter jid button in block list view
2019-01-11 14:49:03 +01:00
Daniel Gultsch
ce22954830
put resources that mention the app name into quicksy build flavor
2019-01-11 13:37:53 +01:00
Daniel Gultsch
a38cd88702
offer 'open with' in context menu for geo uris
2019-01-11 10:13:25 +01:00
Daniel Gultsch
394e252777
support enter/done key in create contact & join dialogs
2019-01-10 22:09:20 +01:00
Daniel Gultsch
7cabb2c377
check if encrypted pgp file get deleted
2019-01-10 21:24:24 +01:00
Daniel Gultsch
8ab4ca7138
fixed downloading of deleted files
2019-01-10 21:23:53 +01:00
Daniel Gultsch
a644b40c3e
don’t check if files exists when loading attachments
2019-01-10 17:43:09 +01:00
Daniel Gultsch
52afcac230
mark deleted files in database and not query them when querying for media
2019-01-10 14:52:27 +01:00
Daniel Gultsch
bec1b6798c
updated copyright hint
2019-01-09 20:10:06 +01:00
Daniel Gultsch
89cf20139d
pulled translations from transifex
2019-01-09 19:38:33 +01:00
Daniel Gultsch
459db1a0a3
ignore startService failure
...
some nokia devices with Android 9 fail to start the service from the activity sometimes. since this is probably a race it should be save to ignore this
2019-01-09 18:30:28 +01:00
Daniel Gultsch
25856992d1
remove deprecated instanceIdService
2019-01-09 17:37:52 +01:00
Daniel Gultsch
a15c50a15f
added avatar to 'me' in notifications
2019-01-09 16:26:20 +01:00
Daniel Gultsch
96e3546904
put images into MessageStyle notifications
2019-01-09 12:47:09 +01:00
Daniel Gultsch
c4539b8583
use bitmap instead of URI for avatars in notification. fixes #3310
2019-01-09 09:03:33 +01:00
Daniel Gultsch
a963ef8453
pulled translations from transifex
2019-01-09 09:02:54 +01:00
Licaon_Kter
2e0bee17ea
Consistency fix - group chat ( #3337 )
2019-01-08 08:04:18 +00:00
Daniel Gultsch
46eb1212f1
fix import after osmdroid update
2019-01-06 10:13:31 +01:00
Daniel Gultsch
dac088428c
handle decrypting/encrypting of omemo messages with duplicate device ids
2019-01-05 15:34:19 +01:00
Daniel Gultsch
136d1e1905
added work around to create 'actions' from nova launcher
...
fixes #3331
2019-01-05 10:31:13 +01:00