Closed Bug 401693 Opened 17 years ago Closed 17 years ago

Today pane not updated on Mac OS X after hibernation

Categories

(Calendar :: Lightning Only, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: stephan.schaefer, Assigned: dbo)

Details

Attachments

(1 file, 1 obsolete file)

The same scenario as in bug 357079 but this time on Mac OS X. To put my Mac into hibernation I used the deepsleep widget, available from http://deepsleep.free.fr/
Flags: wanted-calendar0.8+
Not going to happen for 0.8.
Flags: wanted-calendar0.8+ → wanted-calendar0.8-
Flags: wanted-calendar0.8- → wanted-calendar0.9+
I see a broken refreshUIBits(); there's an error calling <http://mxr.mozilla.org/mozilla1.8/source/calendar/lightning/content/messenger-overlay-sidebar.js#298>, i.e. Error: Assert failed: TypeError: getMinimonth().refreshDisplay is not a function 1: [chrome://calendar/content/calUtils.js:1377] ASSERT 2: [chrome://lightning/content/messenger-overlay-sidebar.js:301] refreshUIBits 3: [chrome://calendar/content/calendar-views.js:383] anonymous 4: [null:0] null Source File: chrome://calendar/content/calUtils.js Line: 1381 which breaks the refreshing code (including agenda) and causes no further refresh timer to be installed. Moreover on startup I see: Error: document.getElementById("agenda-panel").isVisible is not a function Source File: chrome://calendar/content/today-pane.js Line: 60 Error: getMinimonth().selectDate is not a function Source File: chrome://calendar/content/calendar-views.js Line: 523
Attached patch code changes (obsolete) (deleted) — Splinter Review
More: The midnight timer as well as wake_notification is correctly fired on Mac.
This was actually almost exactly the fix that I had in mind because according to Stephan it only occured after the weekend where his notebook was hibernated for more than one day. To make the issue perfect we could still query if the todaypane has really been in "Shows-Today-mode" which is not considered in Daniels fix - but maybe this is not necessary or even desired.
I kind of wonder why refreshDisplay is not a function? It is defined as a method in resources/content/datetimepickers/minimonth.xml:327
seems my build is trashed
Attached patch patch (deleted) — Splinter Review
- assures the timer are set again for next update - updates today pane date regardless what date is shown - adds 10 secs after sleep/hibernate wakeup, so network could refresh
Assignee: nobody → daniel.boelzle
Attachment #319401 - Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #319540 - Flags: review?(Berend.Cornelius)
>- // update the unifinder >- refreshEventTree(); >+ // update the unifinder >+ refreshEventTree(); >+ } catch (exc) { >+ ASSERT(false, exc); >+ } You could of course also add these changes to the according function in "calendar/resources/content/calendar.js" so it will be available in Sunbird too but on the other hand I am expecting the refrehsUIBits functions to be consolidated in the near future anyway. Patch looks good.
Comment on attachment 319540 [details] [diff] [review] patch r=berend based on my previous comments
Attachment #319540 - Flags: review?(Berend.Cornelius) → review+
Did that and checked in on HEAD and MOZILLA_1_8_BRANCH => FIXED.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Target Milestone: --- → 0.9
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: