Daily Recurring Events need refresh to appear when created from DayView

Bug #1364653 reported by Jason
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Canonical System Image
Fix Released
High
Bill Filler
Ubuntu Calendar App
Fix Released
High
Renato Araujo Oliveira Filho
qtpim-opensource-src (Ubuntu)
Fix Released
High
Renato Araujo Oliveira Filho
qtpim-opensource-src (Ubuntu RTM)
Fix Released
Undecided
Unassigned

Bug Description

When I create a daily recurring event from the DayView that starts on that day, the EventBubble does not immediately appear on the current Day. I can swipe to go to future days, and the EventBubble appears there. If I swipe back to return to the original Day, or I go to a different view (MonthView, WeekView, etc.) the event appears.

Since the EventBubble appears after re-navigating to the page in any way, this appears to be a "refreshing" problem, where the DayView isn't updated after creating a recurring event.

Steps to Reproduce
--------------------------------
1) Open the Calendar App, and go to any day on the DayView.
2) Create a recurring event starting on that day, which re-occurs daily.
3) Save the new event and return to the DayView. The EventBubble should not appear on the DayView for the current Day.

Expected: The EventBubble should appear on the DayView page immediately after returning from creating the event.

A reproduction of this behavior can be seen at: https://www.youtube.com/watch?v=9NK9m8ZznrA&feature=youtu.be

Revision history for this message
Jason (gerlowskija) wrote :

I put debugging into EventListModel.qml to show when onModelChanged is triggered:

    onModelChanged: {
        console.log("We got some sort of change!");
        isLoading = false
        if(listeneres == undefined) {
            return
        }
        for (var i=0; i < listeners.length; ++i){
            (listeners[i])();
        }
    }

After adding a recurring event, I don't see the debug output. When I swipe to a different day in the future, I do see the output, and swiping back shows the day.

After adding a non-recurring event, I see the debug output immediately.

It looks to me like this is an issue with the underlying qtorganizer5-eds plugin/component, because model.saveItem() gets called in both cases, but the component responds differently in a way that it arguably shouldn't.

I tried to put some debugging in the C++ code for the component (I pulled it from qtorganizer5-eds, which I think is the right repo, but I'm not sure). But I'm having trouble building the repository on my 14.10 desktop. I get errors when running cmake (will paste in a subsequent comment since this one got pretty wordy). To be honest, I have to idea how to build rebuild a C++ plugin and run an app against the updated version.

Can anyone help me answer either of these two questions?
1) is qtorganizer5-eds the place to look for the C++ code that runs the event model in calendar-app?
2) Is there a special process for recompiling the plugin and testing apps against it?

Revision history for this message
Jason (gerlowskija) wrote :

CMake Warning at /usr/lib/x86_64-linux-gnu/cmake/Qt5Core/Qt5CoreMacros.cmake:273 (find_package):
  Could not find a package configuration file provided by "Qt5Organizer" with
  any of the following names:

    Qt5OrganizerConfig.cmake
    qt5organizer-config.cmake

  Add the installation prefix of "Qt5Organizer" to CMAKE_PREFIX_PATH or set
  "Qt5Organizer_DIR" to a directory containing one of the above files. If
  "Qt5Organizer" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  organizer/CMakeLists.txt:72 (qt5_use_modules)

CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt5Core/Qt5CoreMacros.cmake:275 (message):
  Can not use "Organizer" module which has not yet been found.
Call Stack (most recent call first):
  organizer/CMakeLists.txt:72 (qt5_use_modules)

-- Configuring incomplete, errors occurred!
See also "/home/jason/checkouts/qtorganizer5-eds/CMakeFiles/CMakeOutput.log".

Revision history for this message
Kunal Parmar (pkunal-parmar) wrote :

Hi Jason,

It looks like EDS problem, qtorganizer5-eds is right component, but I recommend you to talk to Renato first, he looks after EDS plugin. He should be able to help you.

Revision history for this message
Jason (gerlowskija) wrote :

To follow up on this, I was able to get qtorganizer-eds building from source locally. This let me add my own debugging/tweaks to investigate the bug.

That said, I still haven't really been able to find the code related to triggering the onModelChanged event from the qtorganizer-eds side of things. So I haven't made much progress on this.

Revision history for this message
Kunal Parmar (pkunal-parmar) wrote :

Hi Jason,

EDS is just plugin for Organizer Model.
What I know is Qt's Organizer model will call certain API from plug in, which means EDS. and Then call provide necessary signal to client like calendar.

To understand how mode refresh is called, I think you will need to go though Qt' Organizer model's code.

Mihir Soni (mihirsoni)
Changed in ubuntu-calendar-app:
status: New → Confirmed
Revision history for this message
Gary.Wang (gary-wzl77) wrote :

The reason why the modelChange was not triggered in such case is that for occurrence cases, Pim(Organizer model) trigger modelChange signal only if event id is null , however eds plugin sets event id for occurrence event which cause this bug occurs. Same case for removing occurrence event.

Enclose pls find the patch.

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "fix-occurrence.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in qtorganizer5-eds (Ubuntu):
status: New → Confirmed
Revision history for this message
Sebastien Bacher (seb128) wrote :

Renato, could you review the patch there?

Changed in qtorganizer5-eds (Ubuntu):
assignee: nobody → Renato Araujo Oliveira Filho (renatofilho)
Bill Filler (bfiller)
Changed in ubuntu-calendar-app:
assignee: nobody → Renato Araujo Oliveira Filho (renatofilho)
importance: Medium → High
Changed in qtorganizer5-eds (Ubuntu):
importance: Undecided → High
tags: added: recurrence
Bill Filler (bfiller)
Changed in ubuntu-calendar-app:
milestone: none → 0.5
Changed in qtpim-opensource-src (Ubuntu):
status: New → In Progress
assignee: nobody → Renato Araujo Oliveira Filho (renatofilho)
importance: Undecided → High
no longer affects: qtorganizer5-eds (Ubuntu)
Bill Filler (bfiller)
Changed in ubuntu-calendar-app:
status: Confirmed → In Progress
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

This bug was fixed in the package qtpim-opensource-src 5.0~git20140515~29475884-0ubuntu11.1~overlay6 in https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/stable-phone-overlay

---------------

qtpim-opensource-src (5.0~git20140515~29475884-0ubuntu11.1~overlay6) vivid; urgency=medium

  * debian/patches/fix_recurrence_events.patch:
    - Fix issues related to repeating events (LP: #1546466) (LP: #1500192)
      (LP: #1455864) (LP: #1535207) (LP: #1471588) (LP: #1364653)
      (LP: #1473685) (LP: #1447930)

 -- Timo Jyrinki <email address hidden> Thu, 17 Mar 2016 14:17:52 +0000

Changed in qtpim-opensource-src (Ubuntu RTM):
status: New → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qtpim-opensource-src - 5.0~git20140515~29475884-0ubuntu20

---------------
qtpim-opensource-src (5.0~git20140515~29475884-0ubuntu20) xenial; urgency=medium

  * debian/patches/fix_recurrence_events.patch:
    - Fix issues related to repeating events (LP: #1546466) (LP: #1500192)
      (LP: #1455864) (LP: #1535207) (LP: #1471588) (LP: #1364653)
      (LP: #1473685) (LP: #1447930)

 -- Timo Jyrinki <email address hidden> Thu, 17 Mar 2016 14:16:49 +0000

Changed in qtpim-opensource-src (Ubuntu):
status: In Progress → Fix Released
Changed in canonical-devices-system-image:
status: New → Fix Committed
status: Fix Committed → In Progress
importance: Undecided → High
assignee: nobody → Bill Filler (bfiller)
milestone: none → ww08-2016
Bill Filler (bfiller)
Changed in ubuntu-calendar-app:
status: In Progress → Fix Committed
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Changed in ubuntu-calendar-app:
status: Fix Committed → Fix Released
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.