Calendar bug for disabled calendars in 3.4 ea

REPRODUCIBILITY (% or how often): 100
HARDWARE (Jolla1, Tablet, XA2,…): X10 and X10plus
REGRESSION: (compared to previous public release: Yes, No, ?):


disabled (sub)calendars with exchange and caldav always reappear again randomly or after sync. I need to disable them often, even without restart


I can confirm that this applies to disabled Google calendars on XA2 as well, so most likely it’s platform independent and applies to any remote calendar.

The calendars become enabled again every time the account is synced.

I can confirm this for personal Outlook account in XA2

May I ask more specifically what do you mean by disabled ? Is this:

  • you have several calendars in the the account setting page, and you uncheck one of them,
  • or you uncheck the calendar switch in the services section in the account setting page,
  • or you disable the account itself with the combobox at the top of the account setting page ?

I would like to investigate this because with @flypig we have change part of this code to solve the issue of alarm ringing for disabled accounts.

Additionally, may I ask what you mean by “reappear again” ? When you uncheck a calendar in the account setting page, the calendar is not synced anymore, but it is still visible. If you want to hide it from the calendar app, go to this app, and choose “manage calendars” in the pulley menu. Uncheck the calendar there to toggle its visibility.

1 Like

I go to the calendar app
I swipe down, I choose manage calendars (Kalender verwalten) and deselect some calendars
after the next sync they are selected again.
see screenshots after / before calendar sync.


Ok, thank, got it. One more question if you don’t mind ? They are Exchange calendars, right ? Does it happen also for CalDAV ?

I’ll look at it and give you feedback.

Yes, one is a office 365 exchange account. Another one is a business account. I can use with exchange, showing the same issue. Mailbox can also be accessed by caldav. I just set it up with calDav, and did some testing. seems like there is no issue. So I guess the issue is exchange exclusive. Thanks for looking into it.

I quickly grepped in the code for setIsVisible() which is the KCalCore method to change the visibility of a calendar, in the CalDAV sync plugin and Google sync plugin, without finding it. That’s why I was asking, indeed. The exchange code is closed source sadly, as far as I know. So I cannot check myself. I’ll ask @flypig or Chris Adams, if they could give a look when they have time.


I can confirm this for Google Calendar as well and it’s not a regression. This was also the problem on the previous release. Seems the sync breaks at some point and sets all calendars active again (and the duplicates, other issue, start to reappear).

1 Like

Well, I think I found the reason for this, or at least a reason introduced in 3.4.0. To avoid alarms ringing for disabled calendars (in the sense of accounts) as it happened previously, we linked the alarm to the visibility of the calendar only. And we setup a binding between account status and visibility. This binding is supposed to be triggered on every status change of the account, but it’s actually not the case. It is firing every time a setting is changed in the account… I need to discuss with @flypig of this, maybe tomorrow if he has time on IRC #SailfishOS channel.


That sounds good; I’ll follow along with your discussions with Chris until the topic comes up.

1 Like