Commit graph

831 commits

Author SHA1 Message Date
ganfra
88fb9667a3 Timeline: continue fixing issues + read marker 2019-09-18 20:21:42 +02:00
ganfra
3066d5f303 Timeline\ReadMarker: continue fixing issues 2019-09-17 19:38:05 +02:00
Benoit Marty
9bf484cf1e Create a Failure to handle cancellation, and use it to ignore cancellation on room search 2019-09-17 14:55:48 +02:00
Benoit Marty
4453f0ced9
Merge pull request #560 from vector-im/feature/no_network
Display a "No network" banner when the device has no network
2019-09-17 14:40:42 +02:00
Benoit Marty
25e9a179d2 SyncThread: Fix issue when network is back and the app was in background: do not restart the thread 2019-09-17 14:26:30 +02:00
Benoit Marty
73ec0f5a83 NetworkConnectivityChecker: filter onConnected callbacks (several callback if Wifi and LTE is connected)
Also do not use merlinsBeard.isConnected, which return trus even if there is no internet access (ex: with Wifi hotspot)
2019-09-17 14:22:08 +02:00
Benoit Marty
695d8cce00 Display a no network indicator when there is no network (#559) 2019-09-17 10:59:58 +02:00
Benoit Marty
07e99901e1 SecretStoringUtils -> move to internal package 2019-09-17 10:38:37 +02:00
Benoit Marty
ced72aff4f Revert change done to save alias for the client 2019-09-17 10:32:09 +02:00
Benoit Marty
384dd100e9 Daggerization and Kotlinification of SecretStoringUtils 2019-09-16 19:19:14 +02:00
Benoit Marty
1ba8a58219 Cleanup SecretStoringUtils, and delete keys when user signs out 2019-09-16 18:29:06 +02:00
ganfra
69fb7bdf95 Timeline\Read marker: continue fixing potential issues 2019-09-16 18:14:41 +02:00
Benoit Marty
c8010561fc Rework on sign out task 2019-09-16 17:45:26 +02:00
Benoit Marty
1f127335bc Daggerization of RealmKeysUtils 2019-09-16 15:50:56 +02:00
Benoit Marty
138a210a73 Dagger: Screen component now exposes ActiveSessionHolder instead of Session 2019-09-16 14:43:39 +02:00
Benoit Marty
ca6bcde82d Re add the remove CurlLoggingInterceptor 2019-09-16 14:43:08 +02:00
ganfra
5d6d0202a9 Timeline: try to fix some issues with permalink [WIP] 2019-09-14 14:11:41 +02:00
Benoit Marty
3e6b65e174 Handle M_CONSENT_NOT_GIVEN error (#64) 2019-09-13 18:21:56 +02:00
Benoit Marty
137dcab734 Curl login interceptor now log the AT (on debug mode) 2019-09-13 16:20:19 +02:00
Benoit Marty
5fbd271b1c Login: add SSO support 2019-09-13 15:19:45 +02:00
Benoit Marty
db8ea0f5e8 Login: check login flow - step 1 2019-09-13 11:08:54 +02:00
ganfra
f4ab770be9 Merge branch 'develop' into feature/read_marker 2019-09-12 17:24:50 +02:00
Benoit Marty
012840abba Progress in initial sync dialog is decreasing for a step and should not (#532) 2019-09-05 18:14:05 +02:00
Benoit Marty
a5975a099e Cleanup and document DefaultInitialSyncProgressService 2019-09-05 17:23:09 +02:00
Benoit Marty
38da4b9ee5 Cleanup and document DefaultInitialSyncProgressService 2019-09-05 17:02:03 +02:00
Benoit Marty
242e60fcaa Rename CryptoManager to DefaultCryptoService 2019-09-05 16:14:34 +02:00
Benoit Marty
a23be05cbf Better type 2019-09-05 16:04:41 +02:00
Benoit Marty
ed39b02924 Avoid using keyword for variable names 2019-09-05 16:04:41 +02:00
Benoit Marty
fe931b5361
Merge pull request #418 from Dominaezzz/kotlinify-1
Some more kotlinification
2019-09-05 16:02:30 +02:00
Benoit Marty
90d9cd0587
Merge pull request #416 from Dominaezzz/kt-remove_java_util
Remove most usages of the java.util package
2019-09-05 15:33:03 +02:00
Benoit Marty
47d22a3d5e Import translation from Riot and MatrixSDK 2019-08-30 11:21:43 +02:00
Valere
1b394527b6 cleaning + code review 2019-08-28 10:22:51 +02:00
Valere
825760d17e Fix / regression on e2e reply and edit of reply 2019-08-27 17:05:04 +02:00
ganfra
51a4c93676 Read markers: continue working on ui 2019-08-23 16:54:32 +02:00
ganfra
d8f449388c Read marker: start working on it (no UI) 2019-08-20 18:30:24 +02:00
ganfra
5402902bc2 Merge branch 'develop' into feature/di_clean 2019-08-19 15:04:26 +02:00
ganfra
fd74e3dfb1 Read receipts: clean code after review 2019-08-19 14:08:15 +02:00
ganfra
e0628da1cb Dagger: use AssistedInjectModule for viewModel + use AssistedFactory for room dependencies 2019-08-14 19:09:56 +02:00
ganfra
501474b720 Fix code quality issues 2019-08-14 14:53:40 +02:00
ganfra
d3827b8673 Read receipts: branch settings to show/hide them 2019-08-14 10:51:09 +02:00
ganfra
25a4240a5a Merge branch 'develop' into feature/timeline_read_receipts 2019-08-13 15:16:10 +02:00
ganfra
06dcf75a32 Read receipts: fix not appearing RR 2019-08-13 12:06:49 +02:00
ganfra
21deb2551d Read receipts: handle read receipts set on filtered events + let BottomSheet takes a snapshot instead of being live. 2019-08-12 17:59:07 +02:00
ganfra
70639f180c Read receipts: add read receipts bottom sheet 2019-08-08 19:59:20 +02:00
ganfra
c313ce78cb Read receipts: sort descending by timestamp 2019-08-08 17:49:50 +02:00
ganfra
39f58d048b Read receipts: fix dummy being overrided 2019-08-08 17:49:31 +02:00
Benoit Marty
eaf6a9923a Cancel sync request on pause and timeout to 0 after pause (#404) 2019-08-08 16:04:53 +02:00
ganfra
d98567045c Read receipts: use a simpler strategy when it's initialSync 2019-08-08 15:03:36 +02:00
ganfra
b4ce8748cb First step in handling read receipts 2019-08-08 14:32:11 +02:00
ganfra
7fef063e15
Merge pull request #468 from vector-im/feature/fix_realm_issues
Feature/fix realm issues
2019-08-07 18:05:06 +02:00
Benoit Marty
24f391dac0
Merge pull request #467 from vector-im/feature/playstore_crash
Feature/playstore crash
2019-08-07 17:10:49 +02:00
Benoit Marty
81c7f694d6 Import Strings form Riot 2019-08-07 16:10:50 +02:00
Benoit Marty
9f53406e99 Fix crash (KotlinNullPointerException) observed on PlayStore 2019-08-07 13:35:44 +02:00
Benoit Marty
20437446b4 Add "View Edit History" item in the message bottom sheet (#401) 2019-08-07 13:05:22 +02:00
Benoit Marty
af1e81f65e Remove unused react native lib, and ensure dependencies lib are explicitly declared 2019-08-07 11:53:59 +02:00
ganfra
0949d29f9c Let TimelineEvent be queried by SendState 2019-08-07 10:54:54 +02:00
ganfra
7f09e64d63 Fix timeline forward loader showing when sending events 2019-08-07 09:59:37 +02:00
ganfra
585f0ba4b7 Add an identifier method on ChunkEntity 2019-08-06 21:32:45 +02:00
ganfra
245fbe86d9 Get enum safe with realm entities 2019-08-06 21:32:40 +02:00
Dominic Fischer
456908c851
Merge branch 'develop' into kt-remove_java_util 2019-08-06 18:27:39 +01:00
Benoit Marty
7a6fc4936b Start chain: create extension 2019-08-06 18:15:15 +02:00
Benoit Marty
d82fd10f3b Start chain: add missing cases 2019-08-06 18:15:15 +02:00
Benoit Marty
4009f2c176 Add comment to explain why we use a AlwaysSuccessfulWorker 2019-08-06 18:15:15 +02:00
Benoit Marty
15c4b03340 Event: do not display sendState in View Source and cleanup the class 2019-08-06 18:14:24 +02:00
Benoit Marty
357123743f Search firstIndexOf, because server url can contains port (This is what JS does, but Riot Android is also bugged) 2019-08-06 18:14:24 +02:00
Benoit Marty
acae0fad3e Better private method name 2019-08-06 18:14:24 +02:00
Benoit Marty
4deb7eb865 Javadoc for NoMerger 2019-08-06 18:14:24 +02:00
Benoit Marty
f910cd6f97 More robust SDK: retry only when on failure 2019-08-06 18:14:24 +02:00
Benoit Marty
652ac81fa1 simple code 2019-08-06 18:14:24 +02:00
Benoit Marty
c0b94f4111 Typo 2019-08-06 18:14:24 +02:00
Benoit Marty
1462fa0484 Simple code 2019-08-06 18:14:24 +02:00
Benoit Marty
dafdc1d3ad Cleaner API 2019-08-06 18:07:35 +02:00
ganfra
dae8b5c196
Merge pull request #460 from vector-im/feature/fix_cancellations
Feature/fix cancellations
2019-08-06 18:06:05 +02:00
Dominic Fischer
215324a03e Some kotlinification
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-08-06 11:36:39 +01:00
ganfra
d3ce4c491c Clean code after review 2019-08-06 11:45:06 +02:00
Benoit Marty
ed6d28bd3b
Merge pull request #417 from Dominaezzz/kt-opt
Some optimisations
2019-08-06 11:42:07 +02:00
Benoit Marty
c2e053b62b
Merge pull request #414 from Dominaezzz/kt-leak
Fix potential resource leak
2019-08-06 11:39:51 +02:00
Benoit Marty
c450849cc3
Merge pull request #425 from Cadair/patch-1
Fix reply fallback prefix
2019-08-06 11:23:37 +02:00
ganfra
fe884dba2d Update CHANGES.md and fix code quality 2019-08-05 20:28:50 +02:00
ganfra
3fa4dbaa25 Make async transaction working with suspend method 2019-08-05 20:17:59 +02:00
ganfra
4a74f58516 Task: use a builder with DSL and introduce Constraints (only boolean connectedToNetwork at the moment) 2019-08-05 20:17:36 +02:00
ganfra
c413321a22 Remove unnecessary code and fix signout 2019-08-02 13:15:56 +02:00
ganfra
d696bd2830 Send worker: let LIMIT_EXCEEDED error to be retry 2019-08-02 11:36:32 +02:00
ganfra
a2b6bd0f62 Fix network reconnection with sync 2019-08-02 11:35:58 +02:00
ganfra
9cc922a8a2 Optimize imports 2019-08-02 11:35:27 +02:00
ganfra
fd09a1224e Remove Try from suspending functions 2019-08-01 17:15:17 +02:00
ganfra
77c4355aed Merge branch 'develop' into feature/room_update 2019-07-31 14:27:12 +02:00
ganfra
1a92562182 Clean code after review 2019-07-31 14:06:10 +02:00
ganfra
95089b91b8 UserAccountData: optimize helper and clean code. 2019-07-30 21:41:29 +02:00
ganfra
eb446d7b49 Fix code quality issues 2019-07-30 21:20:30 +02:00
ganfra
dc4786ecf0 Room upgrade: add rx flux and handle failures more precisely 2019-07-30 19:13:09 +02:00
Stuart Mumford
90fad23493
Fix reply fallback prefix
Plain text reply fallback should be prefixed with "> " not ">" (as per spec).

Signed-off-by: Stuart Mumford <stuart@cadair.com>
2019-07-30 12:09:29 -04:00
Valere
000db4b192 Basic Message Failure support + Resend (text only)
+ clean worker inputs when starting new independent task in unique queue
2019-07-30 17:53:43 +02:00
ganfra
ef6c1cfc63 RoomSummaryUpdater: remove unused params 2019-07-30 17:37:16 +02:00
ganfra
4b4156996d User Account Data: fix sync issues with direct invites 2019-07-30 17:32:31 +02:00
Valere
087cc0e6e3
Merge pull request #448 from danteissaias/develop
Fix #447
2019-07-30 17:07:22 +02:00
ganfra
f4df27c2dc Merge branch 'develop' into feature/room_update 2019-07-30 15:51:56 +02:00
ganfra
ab25980c4e
Merge pull request #437 from vector-im/feature/create_direct_room
Feature/create direct room
2019-07-30 15:13:30 +02:00
Dante Issaias
2763fbb496
fix #447
Signed-off-by: Dante Issaias <dante.issaias@gmail.com>
2019-07-30 13:57:04 +01:00
ganfra
6deba31111 Direct room: finally use PagedList as we can get a lot of users in DB. 2019-07-30 14:51:14 +02:00
ganfra
65f0af918f Remove default identity server as we don't use it. 2019-07-29 18:26:26 +02:00
ganfra
ac38a6461c Tombstone : handle joining viaserver params 2019-07-26 19:17:12 +02:00
ganfra
9a1e16a170 Tombstone : add notification area and handle links 2019-07-26 14:51:14 +02:00
ganfra
9e5c70dda3 Room update: start handling tombstone and room create events [WIP] 2019-07-25 19:34:39 +02:00
ganfra
76a9625f25 Direct chat : finalize flow 2019-07-25 16:34:27 +02:00
ganfra
507bc2f622 UserEntity: fix not inserted at all 2019-07-23 21:31:58 +02:00
ganfra
125eacb20b Direct messages: try to handle selecting/deselecting users (WIP) 2019-07-23 19:53:47 +02:00
Valere
3aea0a50ca
Merge branch 'develop' into feature/pending_edits_ux 2019-07-22 23:53:16 +02:00
ganfra
151ae7f4dd Direct chat: handle user account data 2019-07-22 18:58:55 +02:00
Dominic Fischer
a34b053efe Some optimisations
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-21 23:35:38 +01:00
Dominic Fischer
02e342849f Remove most usages of the java.util package
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-21 23:23:56 +01:00
Dominic Fischer
b59017938b Fix potential leak
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-21 19:11:53 +01:00
ganfra
2c81e41288 Merge branch 'develop' into feature/create_direct_room 2019-07-19 18:18:22 +02:00
ganfra
cb44ab547c Create direct room: almost finished, still need to handle showing selected users in search field 2019-07-19 18:12:42 +02:00
Benoit Marty
6d01a570fd Clear notification for a room left on another client 2019-07-19 16:44:30 +02:00
Valere
40a68c3e9f Show pending edits by fading the event body #193
+ Fix issues with edits local echo management in aggregation
2019-07-19 16:13:35 +02:00
ganfra
cb274d6a33 Add some cancelable on service methods and start branching Rx 2019-07-19 11:21:16 +02:00
ganfra
001603cf9a Create direct room: add filtering and enhance design a bit 2019-07-18 17:42:22 +02:00
Valere
d87ee32422
Merge pull request #384 from vector-im/feature/edit_e2e
Feature/edit e2e
2019-07-18 16:44:44 +02:00
Benoit Marty
e218691bf2 Import strings and translation from Riot 2019-07-18 14:25:34 +02:00
Benoit Marty
d48ae967bd Remove dead code 2019-07-18 11:11:42 +02:00
Benoit Marty
0afde3b021 Rename class member for code clarity 2019-07-18 11:07:09 +02:00
ganfra
4341b0d0f5 Merge branch 'develop' into feature/create_direct_room 2019-07-18 09:47:25 +02:00
Valere
51fdccb393 cleaning 2019-07-18 09:29:27 +02:00
ganfra
7e3b300130 Fix sync state progress bar 2019-07-17 19:45:35 +02:00
ganfra
838003b68a Create direct room: start creating all the required stuff 2019-07-17 18:30:14 +02:00
Valere
7d41352918 Fix / edit reply was quoting wrong text
+ e2e reply of edit
2019-07-17 16:46:56 +02:00
Valere
077396a832 E2E replies
+ Edit History / support e2e and use original event
2019-07-17 16:20:12 +02:00
Benoit Marty
32b79bd50e Remove extra space around userId 2019-07-17 15:13:12 +02:00
Benoit Marty
844f6d16a4 Code quality 2019-07-17 15:05:29 +02:00
Benoit Marty
fc9ef579ca
Merge pull request #381 from vector-im/feature/room_members_perf
Feature/room members perf
2019-07-17 15:01:06 +02:00
ganfra
2948018453 Clean code after review 2019-07-17 14:56:00 +02:00
Benoit Marty
173452d38c
Merge pull request #367 from Dominaezzz/kotlinify-3
Some more kotlinification.
2019-07-17 14:38:16 +02:00
Benoit Marty
927cd7285d
Merge pull request #378 from vector-im/feature/fix_sync_thread_wrong_autostart
Fix / SyncThread was started in background
2019-07-17 14:32:19 +02:00
Benoit Marty
8e78d8a58d
Merge pull request #380 from vector-im/feature/rs_crash_steve
Fix a crash in notificationwhen display name is empty
2019-07-17 14:22:45 +02:00
Benoit Marty
477920f411 Add some comment 2019-07-17 14:14:02 +02:00
Valere
87de7bd3e6 fix lint code quality 2019-07-17 11:41:14 +02:00
ganfra
b7e0b400fb Timeline : set bigger initial load size 2019-07-16 17:48:32 +02:00
ganfra
a8f06f609b Use latest retrofit version to properly cancel requests
Fix cancelation requests
2019-07-16 17:46:52 +02:00
ganfra
d469299f42 RoomMembers: should fix state events issues 2019-07-16 17:46:52 +02:00
Benoit Marty
45f7d3e9c4 Kotlin style 2019-07-16 15:59:08 +02:00
Benoit Marty
0f7a56d005 Use Session.myUserId whereas it's possible 2019-07-16 15:54:00 +02:00
Valere
63d2861bc8 Fix / SyncThread was started in background
Upon reception of a push, is the session is instantiated the sync thread was starting to loop
2019-07-16 15:44:08 +02:00
Valere
c6fd625761 code review 2019-07-16 14:56:16 +02:00
Valere
d8092abc4e fix / strip reply prefix on history 2019-07-16 14:39:46 +02:00
Valere
6effb90361 Fix / edit of reply and edit of edit of reply 2019-07-16 14:39:05 +02:00
Valere
25f1d21bc7 Edit history
Get history from API


cleaning


Updated change log


Missing copyrights


Code review


cleaning
2019-07-15 14:57:12 +02:00
Dominic Fischer
1822fc4fbb Some more kotlinification
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-13 15:35:10 +01:00
Dominic Fischer
e6dd1fbfec Use GlobalScope instead of temp scope
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-13 15:18:16 +01:00
ganfra
9182f2ce4e RoomMembers/User : get a better and faster handling (still need to fix one small issue) 2019-07-12 13:59:37 +02:00
Benoit Marty
34d14eb304 Fix regression on permalink click 2019-07-12 13:51:37 +02:00
ganfra
10e4d0190f Try to insert users directly to see if perfs are better [WIP] 2019-07-11 18:55:13 +02:00
ganfra
252b2ea30a
Merge pull request #334 from vector-im/feature/general_perf
Feature/general perf
2019-07-11 15:52:00 +02:00
ganfra
f493ce44f2 RealmLiveEntity: passes the results and changeSet instead of filtering as it's more efficient 2019-07-11 15:30:01 +02:00
Benoit Marty
c4c5069ee5
Merge pull request #332 from vector-im/feature/login_warning
Improve login screen
2019-07-11 15:25:11 +02:00
Benoit Marty
9e3d29b7d7 Create a TimeOutInterceptor to set specific timeout on some request: login and sync (Fixes #170) 2019-07-11 15:16:25 +02:00
Benoit Marty
80a61cf6b5 Improve dependency download safe path 2019-07-11 14:03:20 +02:00
Benoit Marty
65e123d87f Split long lines 2019-07-11 13:32:28 +02:00
Valere
d0b145d031 Edit emote 2019-07-11 12:29:02 +02:00
ganfra
1b95336ad3 EventEntity|TimelineEventEntity : remove UUID as primary key and use auto-incremented Long 2019-07-11 10:25:30 +02:00
ganfra
f007fb04b8 Timeline: clean listeners 2019-07-11 10:25:30 +02:00
ganfra
141434e8f8 Try getting things off the main thread 2019-07-11 10:25:30 +02:00
ganfra
b8669d5ed2 Sync: use a single threaded executor to ensure we have only one sync at a time 2019-07-11 10:23:24 +02:00
Benoit Marty
7a08a11b19 Fix compilation of test 2019-07-10 18:17:03 +02:00
Valere
54b1d18812 Merge remote-tracking branch 'origin/feature/clean' into feature/clean 2019-07-10 18:07:03 +02:00
Valere
3aa30e5f15 Fix reply of reply 2019-07-10 18:06:44 +02:00
Benoit Marty
794fd650a4 Mutualize code, and also, when replying to an edited event, use the last text in the reply prefix content 2019-07-10 17:37:22 +02:00
Benoit Marty
06699eaefc Cleaner code 2019-07-10 14:40:08 +02:00
Benoit Marty
e5082f662c Fix actually done TODO 2019-07-10 14:19:59 +02:00
Benoit Marty
e6409d4c60 Create a common canReact() method 2019-07-10 12:10:55 +02:00
Benoit Marty
1918302297 Reply with formatted content 2019-07-10 11:29:47 +02:00
Benoit Marty
92e3a02389 Create data class instead of Pair 2019-07-10 10:34:32 +02:00
Benoit Marty
0a54801fcc Code clarity 2019-07-10 10:16:21 +02:00
Benoit Marty
228ee52563 Remove extra space in <mx-reply> 2019-07-10 10:07:45 +02:00
Benoit Marty
e6c74dc1fe Convert a Task to a ConfigurableTask without parameter 2019-07-09 18:41:08 +02:00
Benoit Marty
fe82ad2002 Format 2019-07-09 18:31:04 +02:00
Benoit Marty
f66739491a
Merge pull request #321 from vector-im/feature/workManager_clean
Fix bug on WorkManager: clean by tag
2019-07-09 18:30:07 +02:00
Benoit Marty
c5dc9d4a9a Fix test 2019-07-09 18:29:32 +02:00
Valere
8f858f8119 Fix / line too long 2019-07-09 18:20:00 +02:00
Benoit Marty
6e036c24b8 Make the test be runnable 2019-07-09 18:14:58 +02:00
Benoit Marty
5e832e07cd Code cleanup 2019-07-09 18:04:19 +02:00
Benoit Marty
e9700e04d8 Move method to JsonCanonicalizer and fix test compilation 2019-07-09 18:04:19 +02:00
Benoit Marty
c19b1f917f Javadoc 2019-07-09 18:04:19 +02:00
Benoit Marty
4281b5967a Create object for work constraint 2019-07-09 18:04:19 +02:00
Benoit Marty
aa743d8469 Ensure we do not cancel Work from other lib or SDK client 2019-07-09 18:04:19 +02:00
Valere
a09850b16c
Merge pull request #316 from vector-im/feature/initial_sync_progress
Feature/initial sync progress
2019-07-09 17:58:24 +02:00
Valere
6cb94dd4d6 Fine tune task weights + more measure 2019-07-09 17:42:53 +02:00
Benoit Marty
34ac987494 Cleanup 2019-07-09 16:36:46 +02:00
Benoit Marty
ffe0b9712c Convert file to Kotlin 2019-07-09 15:50:15 +02:00
Benoit Marty
d92c090c30 Code quality: HashMap / HashSet 2019-07-09 15:40:49 +02:00
Valere
1a4157a663 review 2019-07-09 15:38:44 +02:00
Valere
4aae1f78d8 moved new strings + @StringRes annotation 2019-07-09 15:38:44 +02:00
Valere
8159a52bd7 cleaning 2019-07-09 15:38:44 +02:00
Valere
95d83db90c WIP 2019-07-09 15:38:44 +02:00
Benoit Marty
e80473903e Code quality: import static 2019-07-09 15:35:27 +02:00
Benoit Marty
d08778c674 Code quality: equalTo 2019-07-09 15:33:31 +02:00
Benoit Marty
0919b9460d Code quality: split long lines 2019-07-09 15:26:32 +02:00
Benoit Marty
66a018c79e Code quality: trim() 2019-07-09 15:11:20 +02:00
Benoit Marty
9a4eb8e9a4 add getFileUrl extension 2019-07-09 15:03:21 +02:00
Benoit Marty
058e7153a1 Fix bug 2019-07-09 15:03:21 +02:00