On Mon, Oct 29, 2018 at 5:32 PM Dirk Hohndel <[email protected]> wrote:

>
> On Oct 29, 2018, at 8:17 AM, Miika Turkia <[email protected]> wrote:
>
> On Mon, Oct 29, 2018 at 4:34 PM Dirk Hohndel <[email protected]> wrote:
>
>>
>> > On Oct 28, 2018, at 9:40 PM, Miika Turkia <[email protected]>
>> wrote:
>> >
>> > I have tried to implement copy-paste functionality for the
>> Subsurface-mobile. The current branch (mobile-copy) seems to be working but
>> when re-opening Subsurface, nothing has been saved. So what is the trick to
>> actually save data when using QML? So far, I have tried to mark the
>> divelist changed and manually save to cloud, and what not, but am I
>> manipulating wrong data or what, as nothing seems to actually save what I
>> have changed?
>>
>> Call QMLManager::changesNeedSaving()
>> The problem is that right now on Android we only save the changes locally
>> and the logic that we had in place to save them to the cloud when the app
>> switches to the background may no longer be working.
>> But at least this function should get them saved to the local git repo
>>
>
> I am calling that, but still nothing gets saved. Not locally and not on
> cloud.
>
>
> That's strange, because that function calls mark_divelist_changed(true) -
> so anything that is in the divelist should be saved to the local repo.
>
> After you call that function, what is added to your log?
> asked to save changes but no unsaved changes
> or
> save operation in progress already
> would explain why nothing gets saved.
> Otherwise you should get a "Save changes to local cache".
> And then there are a bunch more possible reasons why it wouldn't update
> things - look at the awkwardly named "loadDivesWithValidCredentials()"
> function (which is, in fact, where we save things...)
>

Log seems like everything gets saved:
---8<---
INFO: "14.123: Save changes to local cache"
INFO: "14.127: Synchronising data file"
INFO: "14.128: Preparing to save data"
INFO: "14.129: Start saving data"
INFO: "14.130: Start saving dives"
INFO: "14.132: Done creating local cache"
 ---8<---

Anyway, it seems to be that Linus' hint of calling invalidate_dive_cache()
did the trick.

tnx
miika
_______________________________________________
subsurface mailing list
[email protected]
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface

Reply via email to