Commit graph

487 commits

Author SHA1 Message Date
Daniel Gultsch 00c062a0c8 fixed media preview for file types other than images 2018-09-12 14:37:41 +02:00
Daniel Gultsch be4c6bc2ca speed up DNS
run queries in parallel
decrease timeout
do not fall back to google
2018-09-08 11:30:20 +02:00
Daniel Gultsch 676d31f606 initial work toward api 26+
* introduce notification channels
* always use foreground service on 26+
2018-09-05 21:37:12 +02:00
Daniel Gultsch 268fcd3838 disabled by default variant of XEP-0392 2018-08-19 22:33:20 +02:00
Daniel Gultsch f93cb8ede1 Revert "Patterns: attempt at fixing complex xmpp URIs (typically xmpp:#mychan%irc.server@xmpp.server.tld?join) (#3115)"
This reverts commit a4004904fe.
2018-07-22 22:42:35 +02:00
Romain DEP a4004904fe Patterns: attempt at fixing complex xmpp URIs (typically xmpp:#mychan%irc.server@xmpp.server.tld?join) (#3115) 2018-07-16 20:50:23 +02:00
Daniel Gultsch 1cc3f5bed7 make xmppuri deal with null input 2018-07-06 20:16:04 +02:00
Daniel Gultsch 0fffc7a1ac restart file observer when permisson are granted 2018-06-24 20:54:01 +02:00
Daniel Gultsch e8a1f069c2 reset subject and name on empty 2018-06-24 16:33:15 +02:00
Daniel Gultsch 4c9e331e01 save name instead of subject in bookmark 2018-06-24 16:17:20 +02:00
Daniel Gultsch b0e1b5b02d refined create conference dialog 2018-06-24 11:23:10 +02:00
Daniel Gultsch 9cc22ce992 introduced build flavor to build w/o emoji compat 2018-06-21 14:26:25 +02:00
Daniel Gultsch 17db77ed5d Merge branch 'trailing_url_slash' of https://github.com/klonfish/Conversations into klonfish-trailing_url_slash 2018-06-11 16:19:51 +02:00
Klaus 30e5f9b290 fix geo uri regex (fix #3050) (#3071)
- only match valid float numbers
- match uri with parameter
2018-06-10 18:53:07 +02:00
Daniel Gultsch fd7a5c605a Do not use TLS_FALLBACK_SCSV
closes #2937

Thanks to @tmolitor-stud-tu for explaining the situation in
https://github.com/guardianproject/NetCipher/pull/74
2018-05-26 10:22:44 +02:00
Daniel Gultsch 4626bdf8d8 show p1s3 attchments with download button 2018-05-25 13:18:25 +02:00
Daniel Gultsch 70d95c7903 upload files using p1s3 - sending part 2018-05-25 12:24:23 +02:00
Daniel Gultsch 3be3bfb492 make file observer listen for moves 2018-05-20 16:19:23 +02:00
Daniel Gultsch 2230d5a42c do not save draft if message is completly empty and fixed appending shared text 2018-05-19 14:30:42 +02:00
Daniel Gultsch 9ef2d32a3e changed jid of push server 2018-05-12 17:23:37 +02:00
klonfish 41760b40ef Improved URL matching
URLs with trailing special chars (e.g. slash, minus, ...) should now be
matched correctly, even when followed by a non-url char
2018-05-10 20:55:05 +02:00
Daniel Gultsch e84a65bc86 do not load conversations with null jid 2018-05-09 11:09:01 +02:00
Daniel Gultsch ffe610f961 max out emoji enlargment at 42 emojis 2018-05-09 09:07:26 +02:00
Daniel Gultsch 13d6885883 split heighlights by special characters. fixes #3007 2018-05-07 11:14:33 +02:00
Daniel Gultsch 7ca719b8be apply styling helper to conversation overview 2018-05-06 11:22:20 +02:00
Daniel Gultsch 8cd222b046 XmppUri code cleanup 2018-05-04 22:07:00 +02:00
Daniel Gultsch 77fc8d2d9e encode and decode % and # in invite links 2018-05-04 12:18:31 +02:00
Daniel Gultsch 9b73029267 copy jabber id and web url via context menu 2018-05-04 11:39:03 +02:00
Daniel Gultsch 96224c0fc6 filter sequences of more than 3 ltr-rtl 2018-05-04 10:11:24 +02:00
Daniel Gultsch 2b492a1fba remove " from fts queries 2018-05-03 19:09:19 +02:00
Daniel Gultsch 5e1cbf8514 only highlight alphanumeric chars 2018-05-03 13:57:13 +02:00
Daniel Gultsch 9625f191c3 hide treatAsDownloadable in search results 2018-05-02 12:14:24 +02:00
Daniel Gultsch d8439c72fd fixed display in internal map 2018-05-01 14:32:55 +02:00
Daniel Gultsch 949b77c353 make show location depend on plugin setting 2018-05-01 12:55:11 +02:00
Daniel Gultsch 8e17fa285d allow use of share location plugin with setting 2018-05-01 12:03:35 +02:00
Daniel Gultsch 303cc89b61 persist search across device rotations 2018-05-01 10:33:21 +02:00
Daniel Gultsch 2505ac8b77 only search text messages 2018-05-01 09:58:43 +02:00
Daniel Gultsch 438ae34988 fixed search term parser for empty terms 2018-04-30 17:37:39 +02:00
Daniel Gultsch 27f31446c0 search term parsing + highlighting 2018-04-30 17:09:55 +02:00
Daniel Gultsch b5c60ee779 changed accent color back to blue 2018-04-30 15:17:21 +02:00
Daniel Gultsch 287c416dac hard code ogg + audio/ mime type to oga 2018-04-29 15:19:13 +02:00
Daniel Gultsch 3011f875eb highlight search term in search results 2018-04-28 23:50:35 +02:00
Daniel Gultsch 6712a2d91f added search result context menu + date separators 2018-04-28 16:32:23 +02:00
Daniel Gultsch 120f7453e5 use GIF to describe gifs instead of image 2018-04-26 21:21:00 +02:00
Daniel Gultsch e6feb91390 properly cancel pending searchs and scroll to bottom after refresh 2018-04-26 17:02:31 +02:00
Daniel Gultsch 35020702fb very much unoptimized search functionality 2018-04-26 13:22:31 +02:00
Daniel Gultsch 2f974c3eb2 integrate voice recorder 2018-04-22 20:31:37 +02:00
Daniel Gultsch 1118c4450b fix text size in snackbars 2018-04-21 20:38:14 +02:00
Daniel Gultsch 406a5a10f9 removed 'received' prefix from description 2018-04-16 09:55:16 +02:00
Daniel Gultsch 4a706aad03 catch dead object exceptions when acquiring wake locks 2018-04-15 18:31:58 +02:00
Daniel Gultsch be5e39a440 get real file name for files shared from Conversations 2018-04-15 17:10:50 +02:00
Daniel Gultsch afb7c0592b display avatar in groups 2018-04-14 17:54:04 +02:00
Daniel Gultsch aff2b33e27 load currently open conversation faster 2018-04-11 18:07:40 +02:00
Daniel Gultsch edfe4a0ccd fixed mixing symbols and letters in unicode detector on pre N 2018-04-11 09:26:56 +02:00
Daniel Gultsch ceac602185 fixed some dark theme issues in message view. fixes #2939 2018-04-05 07:40:54 +02:00
Daniel Gultsch bda95bc571 make error message for 'not encrypted for this device' 2018-04-04 18:21:22 +02:00
Daniel Gultsch 8b70d945cc made font size selectable 2018-04-01 21:37:21 +02:00
Daniel Gultsch 0f97b44e9f increased LruCache for unicode script detection 2018-03-19 13:32:32 +01:00
Daniel Gultsch ba91fe2698 run roster sync in replacing task manager 2018-03-18 16:46:50 +01:00
Daniel Gultsch 182b4c08b5 fixed crash in MessageAdapter caused by empty xmpp: uri 2018-03-16 12:29:11 +01:00
Daniel Gultsch 9a7f3ec742 create interface for onBackendConnected 2018-03-13 22:44:08 +01:00
Daniel Gultsch 8dc17a96ba fixed rare crash on jolla devices 2018-03-12 15:59:35 +01:00
Daniel Gultsch 4bb45996c5 return contact and account.getServer() as String 2018-03-11 12:13:56 +01:00
Daniel Gultsch fe338a540a make unicode detector work on labels 2018-03-09 21:39:10 +01:00
Daniel Gultsch e2e5c04ef7 detect irregular unicode in domain part 2018-03-08 22:02:19 +01:00
Daniel Gultsch 7ae3bdd3c6 use scripts instead of blocks on Android >= N 2018-03-08 20:45:30 +01:00
Daniel Gultsch 6944c12186 display irregular unicode code points 2018-03-08 14:02:48 +01:00
Daniel Gultsch 52135625d8 do not enable encryption for bug reports 2018-03-07 22:30:36 +01:00
Daniel Gultsch 1accf9d961 migrate to xmpp-addr 2018-03-07 22:30:36 +01:00
Daniel Gultsch 89992f541c calculate automatic timeout labels dynamically 2018-03-07 22:30:36 +01:00
Daniel Gultsch c1c314f47a delegate mime type from intent 2018-03-07 22:30:36 +01:00
Daniel Gultsch bd2417e792 fixed openDialogs call when poping back stack 2018-03-07 22:30:35 +01:00
Daniel Gultsch dfb4e4eb46 integrate qr code scanner. temporarily break omemo activity scan 2018-03-07 22:30:35 +01:00
Daniel Gultsch 8d9d96d4e1 vastly untested refactor. pushing for backup purposes 2018-03-07 22:30:34 +01:00
Daniel Gultsch bf6b54a7aa get rid of OTR 2018-03-07 22:30:34 +01:00
Daniel Gultsch 63c4fe6f02 do not use pop up menus for encryption and attachment selection 2018-03-07 22:30:33 +01:00
Daniel Gultsch f81fbb36f1 migrated alert dialogs to app compat 2018-03-07 22:30:33 +01:00
Daniel Gultsch 63cd8e5981 added config param to use a random resource at every bind 2018-02-24 20:47:02 +01:00
Marc Schink c7d2b65982 XmppUri: Add toString() method 2018-02-14 17:03:43 +01:00
Christoph Scholz 9360f5c960 allow roster action with name 2018-02-12 20:00:42 +01:00
Daniel Gultsch eed2d93145 integrate intent integrator to finish activity when needed 2018-02-12 11:22:51 +01:00
Daniel Gultsch f828b89cbd skip empty srv records 2018-02-10 12:16:18 +01:00
Daniel Gultsch bcd00bb517 discover file extension in original filename from pgp 2018-01-29 01:40:02 +01:00
Daniel Gultsch e62b0ca320 fix NPE when writing Resolver.Result to disk 2018-01-22 23:20:58 +01:00
Daniel Gultsch 78c5c508b3 permanently cache last resolver result 2018-01-21 20:41:30 +01:00
Marc Schink 0fac4be94d XmppUri: Parse 'message action' query 2017-12-13 21:16:31 +01:00
Daniel Gultsch 665c5da8ae fix xmpp uri regression 2017-12-08 18:44:08 +01:00
Daniel Gultsch 172d249369 initialize emoji helper in StartConversationActivity 2017-12-08 18:43:58 +01:00
Daniel Gultsch cdee6523e4 fix XmppUri for empty uris 2017-12-08 14:24:26 +01:00
Georg Lukas d96180f0ee XEP-0393: fix off-by-one error in block detector ('`ii`ii') 2017-12-07 14:48:41 +01:00
Daniel Gultsch a4b44ee730 Styler: do not style across multiple messages 2017-12-06 16:58:08 +01:00
Daniel Gultsch 5885bc7f25 show warning when opening invalid jid 2017-12-05 17:29:05 +01:00
Daniel Gultsch b5fe8789e9 Refined avatar generation a bit 2017-12-05 14:15:10 +01:00
Daniel Gultsch 9869310699 avoid some false positive quotes 2017-12-04 16:50:15 +01:00
Daniel Gultsch 333e7a6510 deduplicate read markers if one with real jid is found 2017-11-23 18:19:05 +01:00
Daniel Gultsch d7c5937c20 process emoji charsequence instead of using EmojiTextView 2017-11-22 21:17:38 +01:00
Daniel Gultsch 03c34649b4 shorten >4 names to a, b, c +n more 2017-11-22 17:57:28 +01:00
Daniel Gultsch 28e005f926 send and show read markers in private, non-anonymous groups 2017-11-20 11:26:20 +01:00
Daniel Gultsch 5e15c48206 refactore phone helper to ignore security exception 2017-11-17 10:28:51 +01:00
Daniel Gultsch 013822fe82 excute db read and writes on different threads 2017-11-16 15:53:03 +01:00
Daniel Gultsch 8e4440a49a fixed ImStyleParser to not style '**test**' 2017-11-14 17:57:22 +01:00
Daniel Gultsch a6d1559755 styler: ignore closing keyword when preceded by whitespace 2017-11-10 20:19:22 +01:00
Daniel Gultsch d6eb08e0ed catch rare exception when transforming download uri to real path 2017-11-10 20:18:09 +01:00
Daniel Gultsch e9587f73ce styling: introduce support for code blocks 2017-11-07 23:28:14 +01:00
Daniel Gultsch 2e3b5de6b6 do not quote quotes 2017-11-07 22:22:28 +01:00
Daniel Gultsch 49b4153fb5 make keyword styling work in quotes 2017-11-07 13:23:49 +01:00
Daniel Gultsch 22c37bd430 changed text styling to keep the keyword 2017-11-06 23:44:00 +01:00
Daniel Gultsch 894ffc6488 ExceptionHelper: code clean up 2017-11-06 14:20:58 +01:00
Daniel Gultsch aa10b9ff05 code refactoring to provide shorter account enabled check 2017-11-06 13:57:25 +01:00
Daniel Gultsch ebd3330037 changed preview alpha to 0.6f 2017-11-06 12:17:43 +01:00
Daniel Gultsch c262cd5d6e support for basic IM styling 2017-11-05 21:34:40 +01:00
Daniel Gultsch 3205d763cf MessageAdapter: Display emojis slightly larger in text 2017-10-28 13:15:31 +02:00
Daniel Gultsch aeec76d68b Resolver: active network gets high priority 2017-10-28 13:12:11 +02:00
Daniel Gultsch 4d0986ee91 Resolver: Only prefer VPN connections when network is active 2017-10-27 21:57:31 +02:00
Daniel Gultsch 08aad7d0aa black list certain local parts and show domain instead 2017-10-27 15:46:12 +02:00
Daniel Gultsch 6713431986 Emoticons: support subdivision-flags 2017-09-30 18:58:35 +02:00
Daniel Gultsch 39a54838fa Emoticons: detect keycaps 2017-09-30 17:38:48 +02:00
Daniel Gultsch 014052b991 added a few codepoints with emoji variants 2017-09-30 01:18:08 +02:00
Daniel Gultsch f53e44a291 refactor emoji detector and fix fitzpatrick followed by zwj 2017-09-29 23:27:08 +02:00
Daniel Gultsch f0e48c8af5 use own algorithm to count emoji instead of using emoji-java 2017-09-29 22:56:17 +02:00
Daniel Gultsch e5becc2e12 slightly refactor dns resolver 2017-09-21 21:46:11 +02:00
Daniel Gultsch 881d4ad5b7 give exec resolver a lower priority over reflection. fixes #2629 2017-09-21 10:31:21 +02:00
Daniel Gultsch 20b14091d6 play audio files inline 2017-09-20 15:35:35 +02:00
Daniel Gultsch 0603378c75 show permanent notification while transcoding video 2017-09-18 17:56:25 +02:00
Daniel Gultsch cce5a7b39f parse jid from CN in client certs if nothing else is available 2017-08-07 16:02:48 +02:00
Daniel Gultsch 490115d20e do not run file observer on hidden directories 2017-08-05 19:12:44 +02:00
Daniel Gultsch 911e392006 update mini dns 2017-08-05 15:17:10 +02:00
Daniel Gultsch c3cbb21133 cache some information generated from body like isEmojiOnly, fileParams and isGeoUri 2017-08-03 13:24:41 +02:00
Daniel Gultsch 225cca4566 provide extra 'network is unreachable' account state 2017-08-02 18:58:51 +02:00
Daniel Gultsch 82c5924434 display messages that only contain emoji slightly larger 2017-07-30 22:04:58 +02:00
Daniel Gultsch e11277c70f use base64 instead of base36 when creating random strings 2017-07-30 11:39:47 +02:00
Daniel Gultsch 91119ab691 add reminder to remove minidns workarounds once those are fixed 2017-07-14 09:09:26 +02:00
Daniel Gultsch 7623accfd5 prefer DNS servers from VPNs 2017-07-12 22:19:45 +02:00
Daniel Gultsch 19c1484053 catch runtime exceptions from minidns 2017-07-11 23:24:09 +02:00
Daniel Gultsch c5824a3b2a catch all exceptions around minidns :( 2017-07-10 12:33:04 +02:00
Daniel Gultsch abf84e065d made DNSEC hostname validation opt-in 2017-07-10 09:59:25 +02:00
Daniel Gultsch da00a58902 work around idn short comings in minidns 2017-07-10 08:50:01 +02:00
Daniel Gultsch 7cbef529ae resolve non-srv domains in resolver class as well
this allows us to prefer ipv4
2017-07-10 08:49:22 +02:00
Daniel Gultsch c400f74918 prefer ipv4 over ipv6 2017-07-09 19:05:23 +02:00
Daniel Gultsch 67bc032ccc fixed fallback to normal DNS query after DNSSEC failed 2017-07-09 18:03:26 +02:00
Daniel Gultsch ef980ff5cf show date separators. fixes #2271 2017-07-04 11:01:20 +02:00
Daniel Gultsch c85b3bbacc revised resolver strategy 2017-06-26 14:03:38 +02:00
Daniel Gultsch 6dad1c0dde refactored resolver to fall back to DNS and use reliable method 2017-06-25 22:46:56 +02:00
Daniel Gultsch 4faf0f2ec9 use ResolverApi.reliable(..) 2017-06-25 19:30:03 +02:00
Daniel Gultsch 2c5250a82c new resolver fall back to normal dns if dnssec verfication fails 2017-06-25 18:35:40 +02:00
Daniel Gultsch 14fd41cd7f fixed patterns source code url 2017-06-25 12:03:26 +02:00
Daniel Gultsch 3c90dbe723 fixed ip reporting for dns look ups 2017-06-22 00:09:59 +02:00
Daniel Gultsch 2e380ed792 upgrade minidns. refactored dns utils 2017-06-21 23:28:01 +02:00
Daniel Gultsch 24768d051d upgrade to signal-protocol-java. thanks @ysangkok
fixes #1384
closes #2509
2017-06-18 16:36:30 +02:00
Daniel Gultsch 6c34763d32 transform aesgcm:// links back to https:// before connecting through Tor
fixes #2444
2017-04-16 08:44:26 +02:00
Daniel Gultsch bf07196707 don't count >number% as quote 2017-04-13 17:29:11 +02:00
Daniel Gultsch 0904ba42f8 use async message loading only when called from UI 2017-04-13 00:12:23 +02:00
cijo-saju 3467a67e75 Removed unused imports from entire project. 2017-04-12 20:24:36 +05:30
Daniel Gultsch e98f7e57b0 be more careful with corner cases when mentioning multiple people 2017-04-07 19:47:33 +02:00
Daniel Gultsch cc1aa9e431 exclude >= from being recognized as quote 2017-04-07 14:30:30 +02:00
Daniel Gultsch 99565a6876 treat URL as file if URL is in oob or contains key 2017-04-05 22:35:42 +02:00
Daniel Gultsch 26badb7f4c send urls pointing to pgp encrypted files directly in body+oob 2017-04-05 21:01:29 +02:00
Daniel Gultsch 401329caaa use aesgcm:// uri scheme for omemo encrypted http upload 2017-04-05 18:46:56 +02:00
Daniel Gultsch 2302122d8e made a few exceptions to quote parser for emoticons and quotes 2017-03-26 12:29:12 +02:00
Daniel Gultsch 76b9010c39 rework last activity logic to something that should work pretty well in Conversations only enviroments 2017-03-20 17:58:58 +01:00
Daniel Gultsch 1fd3bbfe25 display chat states in conferences 2017-03-09 10:58:44 +01:00
Daniel Gultsch 8ca16a6f63 do not interpret grin >< as quote 2017-03-08 20:21:04 +01:00
Daniel Gultsch 58595fccfe show icons in pop menu with reflection. imagespan was not centred vertically 2017-03-03 12:26:33 +01:00
Daniel Gultsch c740386297 rename the Xmlns class to Namespace 2017-03-01 13:01:46 +01:00
Daniel Gultsch ea1e28267b bump mam namespace to :2 2017-03-01 12:50:58 +01:00
Daniel Gultsch 1f4c5ff97c properly trim() incoming imto: uris 2017-02-27 22:48:25 +01:00
licaon-kter d3dd80eec9 Fix a typo in legacy 2017-02-19 15:47:57 +02:00
Daniel Gultsch caa16a8517 experimental mam legacy compat layer 2017-02-15 16:42:35 +01:00
Daniel Gultsch b90a1fe1db bump mam namespace 2017-02-14 17:19:45 +01:00
Daniel Gultsch 6fc67d9a60 catch all throwables when working with content provider to retrieve mime 2017-02-07 10:19:45 +01:00
Daniel Gultsch 96a6460744 don't quote text when '>' is followed by numeber 2017-01-21 11:07:23 +01:00
Daniel Gultsch b19572ba8c use 7.1 web url pattern matching on old platforms as well. fixes #2228 2017-01-09 17:58:11 +01:00
Daniel Gultsch 39c8867ed7 add more punctuations to message preview 2017-01-06 20:56:44 +01:00
Michael Eden 5a670c88b0 Do not compress GIFs, allow GBoard to send GIFs 2017-01-01 16:16:35 -05:00
Daniel Gultsch 28c64c2bd1 skip empty lines in message preview. prevents indexoutofbounds exception 2016-12-23 21:19:11 +01:00
Daniel Gultsch b011d46ff2 don't show quoted text in message preview 2016-12-20 16:35:08 +01:00
Daniel Gultsch 56991bbaeb add omemo fingerprints to web links as well 2016-12-03 13:37:26 +01:00
Daniel Gultsch 6e289b8738 show warning dialog beforing verifying keys via a link 2016-12-03 13:19:56 +01:00
Daniel Gultsch bbe01c9a6a add support for body paramater in xmpp uri 2016-11-28 15:09:02 +01:00
Daniel Gultsch 07fe434cc7 added share button to account details 2016-11-22 22:31:46 +01:00
Daniel Gultsch 64e8035f6d introduced custom tls socket factory to make tls1.2 work for http connections 2016-11-20 00:39:01 +01:00
Daniel Gultsch 99a41265b8 lower casing fingerprints when parsing URI 2016-11-18 13:02:33 +01:00
Daniel Gultsch 211354ee26 put omemo fingerprint in own uri (qr code / nfc) 2016-11-17 22:28:45 +01:00
Daniel Gultsch 7e2e42cb11 parse omemo fingerprints from uris 2016-11-17 20:09:42 +01:00
Daniel Gultsch e84af51272 distinguish between general i/o error and write exception when copying files 2016-11-15 15:43:04 +01:00
Daniel Gultsch 1a57599da2 lower case incoming dns records 2016-11-08 10:14:34 +01:00
Daniel Gultsch 07a71d312a extracting stanza-id where by=account 2016-10-31 12:07:08 +01:00
Daniel Gultsch 5a73a6b139 fixed account hash calculation 2016-10-07 14:54:06 +02:00
Daniel Gultsch 40e5090bdd issue ping after push was received 2016-10-06 18:09:55 +02:00
Daniel Gultsch bb48f67a30 always use ipv4 localhost for Orbot connections 2016-09-27 11:44:50 +02:00
Daniel Gultsch badc97e280 don't simply ignore null in message body but try to avoid it 2016-09-18 22:15:02 +02:00
Daniel Gultsch 7bdd4166c0 catch all throwables when loading contacts 2016-09-17 11:31:35 +02:00
Daniel Gultsch ab63dba8aa deal with null bodys in message preview 2016-09-15 18:51:51 +02:00
Daniel Gultsch 2e4713897d offer quick reply on android N 2016-08-25 17:30:44 +02:00
Daniel Gultsch eb8b6165d7 be more careful in recursive file observer. limit depth 2016-08-13 12:35:10 +02:00
Daniel Gultsch 0e96e0a796 show identity type for device selection 2016-07-28 22:58:37 +02:00
Daniel Gultsch 89a05265ea refactored deleted file detection to monitor entire sd card. fixes #1968 2016-07-23 16:12:45 +02:00
Daniel Gultsch 85c82d9b3b remove ascii control chars when creating xml 2016-06-19 00:07:15 +02:00
Daniel Gultsch 71e9117176 opt-in to send last userinteraction in presence 2016-06-04 16:16:14 +02:00
Daniel Gultsch add8e2cb74 don't replace \n\t\r 2016-06-01 09:04:08 +02:00