[nemo-qml-plugin-calendar] Base excluded notebook on mkcal notebook visibility, don't list notebook for disabled services.
Let's restart with the two first stages:
- stage 1, make mkcal update alarms on every notebook change of visibility
- stage 2, add in contactsd a listener on account change to update notebook visibility according to account or service enable status
This is supposed to be done now.
The third stage is bringing the following changes:
- use notebook visibility for notebook display in the calendar UI. Previously this was done by a crafted QSettings. The API is not changed though, and the calendar app is still displaying the visible calendars in the setting page according to
excludedNotebooks(), and update this visiblity by calling
setExcludedNotebooks()on page poping. For backward compatibility, if a notebook is visible in mkcal, the QSetting overrides this value in
- don't list notebooks from a disabled account / service. Previously this was done by the visible property of a notebook.
Now the current issues that need to be addressed:
- it seems that Google calendar is not saving the
syncProfile()property of a notebook, that I'm using to match notebook <-> account service. It will have to be added.
- I still have warnings in console of calendar app when removing the visibility a calendar, like
[W] unknown:0 - CalendarEvent* CalendarManager::eventObject(const QString&, const KDateTime&) No event with uid "6db51290-f217-4fe7-aa15-91c72d407ebd" "" , returning empty event
I need to understand why it's like that.
Besides that, it seems to work. But it requires further testing, of course.