Closed Bug 1683326 Opened 5 years ago Closed 4 years ago

No auto-scroll when creating event via dragging in calendar tab

Categories

(Calendar :: Calendar Frontend, defect)

Thunderbird 78
defect

Tracking

(thunderbird_esr91+ fixed, thunderbird95+ fixed)

RESOLVED FIXED
96 Branch
Tracking Status
thunderbird_esr91 + fixed
thunderbird95 + fixed

People

(Reporter: MozBug20, Assigned: henry-x)

References

Details

Attachments

(2 files)

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:83.0) Gecko/20100101 Firefox/83.0

Steps to reproduce:

Try to create an event in calendar tab by dragging from start time down. When bottom of window is reached, no auto-scroll occurs as in earlier versions, but instead selected rectangle for new event disappears.

Actual results:

No event created. Selected rectangle disappears.

Expected results:

View should auto-scroll down to allow creating event with end time out of view.

For further actual results also see related bug 1683328

In the console I get:

Uncaught TypeError: can't access property "hashId", item is undefined
mSelectedItems chrome://calendar/content/calendar-multiday-base-view.js:1509
doDeleteItem chrome://calendar/content/calendar-multiday-base-view.js:1508
get chrome://global/content/customElements.js:696
onModifyItem chrome://calendar/content/calendar-base-view.js:77
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onModifyItem resource:///modules/CalCompositeCalendar.jsm:50
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onModifyItem resource:///modules/CalICSCalendar.jsm:869
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
modifyItem resource:///modules/CalMemoryCalendar.jsm:274
processQueue resource:///modules/CalICSCalendar.jsm:558
modifyItem resource:///modules/CalICSCalendar.jsm:495
doTransaction resource:///modules/CalTransactionManager.jsm:137
createAndCommitTxn resource:///modules/CalTransactionManager.jsm:25
doTransaction chrome://calendar/content/calendar-item-editing.js:669
modifyOccurrence chrome://calendar/content/calendar-views-utils.js:97
stopEditing chrome://calendar/content/calendar-editable-item.js:428
onkeypress chrome://calendar/content/calendar-editable-item.js:269
addEventNameTextboxListener chrome://calendar/content/calendar-editable-item.js:266
connectedCallback chrome://calendar/content/calendar-multiday-view.js:334
relayout chrome://calendar/content/calendar-event-column.js:637
mEventMapTimeout chrome://calendar/content/calendar-event-column.js:457
setTimeout handler*addEvent chrome://calendar/content/calendar-event-column.js:457
doAddItem chrome://calendar/content/calendar-multiday-base-view.js:1490
get chrome://global/content/customElements.js:696
onAddItem chrome://calendar/content/calendar-base-view.js:62
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onAddItem resource:///modules/CalCompositeCalendar.jsm:46
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onAddItem resource:///modules/CalICSCalendar.jsm:866
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
adoptItem resource:///modules/CalMemoryCalendar.jsm:174
addItem resource:///modules/CalMemoryCalendar.jsm:112
processQueue resource:///modules/CalICSCalendar.jsm:553
adoptItem resource:///modules/CalICSCalendar.jsm:482
addItem resource:///modules/CalICSCalendar.jsm:475
doTransaction resource:///modules/CalTransactionManager.jsm:133
createAndCommitTxn resource:///modules/CalTransactionManager.jsm:25
doTransaction chrome://calendar/content/calendar-item-editing.js:669
createNewEvent chrome://calendar/content/calendar-views-utils.js:42
onEventSweepMouseUp chrome://calendar/content/calendar-event-column.js:1632
connectedCallback chrome://calendar/content/calendar-event-column.js:128
calendar-multiday-base-view.js:1509:9
mSelectedItems chrome://calendar/content/calendar-multiday-base-view.js:1509
filter self-hosted:238
doDeleteItem chrome://calendar/content/calendar-multiday-base-view.js:1508
get chrome://global/content/customElements.js:696
onModifyItem chrome://calendar/content/calendar-base-view.js:77
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onModifyItem resource:///modules/CalCompositeCalendar.jsm:50
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onModifyItem resource:///modules/CalICSCalendar.jsm:869
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
modifyItem resource:///modules/CalMemoryCalendar.jsm:274
processQueue resource:///modules/CalICSCalendar.jsm:558
modifyItem resource:///modules/CalICSCalendar.jsm:495
doTransaction resource:///modules/CalTransactionManager.jsm:137
createAndCommitTxn resource:///modules/CalTransactionManager.jsm:25
doTransaction chrome://calendar/content/calendar-item-editing.js:669
modifyOccurrence chrome://calendar/content/calendar-views-utils.js:97
stopEditing chrome://calendar/content/calendar-editable-item.js:428
onkeypress chrome://calendar/content/calendar-editable-item.js:269
(Async: EventHandlerNonNull)
addEventNameTextboxListener chrome://calendar/content/calendar-editable-item.js:266
connectedCallback chrome://calendar/content/calendar-multiday-view.js:334
relayout chrome://calendar/content/calendar-event-column.js:637
mEventMapTimeout chrome://calendar/content/calendar-event-column.js:457
(Async: setTimeout handler)
addEvent chrome://calendar/content/calendar-event-column.js:457
doAddItem chrome://calendar/content/calendar-multiday-base-view.js:1490
get chrome://global/content/customElements.js:696
onAddItem chrome://calendar/content/calendar-base-view.js:62
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onAddItem resource:///modules/CalCompositeCalendar.jsm:46
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
onAddItem resource:///modules/CalICSCalendar.jsm:866
notify resource:///modules/calendar/utils/calDataUtils.jsm:38
notify resource:///modules/calendar/utils/calDataUtils.jsm:65
adoptItem resource:///modules/CalMemoryCalendar.jsm:174
addItem resource:///modules/CalMemoryCalendar.jsm:112
processQueue resource:///modules/CalICSCalendar.jsm:553
adoptItem resource:///modules/CalICSCalendar.jsm:482
addItem resource:///modules/CalICSCalendar.jsm:475
doTransaction resource:///modules/CalTransactionManager.jsm:133
createAndCommitTxn resource:///modules/CalTransactionManager.jsm:25
doTransaction chrome://calendar/content/calendar-item-editing.js:669
createNewEvent chrome://calendar/content/calendar-views-utils.js:42
onEventSweepMouseUp chrome://calendar/content/calendar-event-column.js:1632
(Async: EventListener.handleEvent)
connectedCallback chrome://calendar/content/calendar-event-column.js:128

Blocks: 1683328
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → henry
Status: NEW → ASSIGNED

It seems that setupMagicScroll is broken https://searchfox.org/comm-central/rev/bc0b58e63e7fc62dd4c7c0adb83d1a2732719600/calendar/base/content/calendar-multiday-view.js#973

I'll just create a new method to do the same thing once I finish bug 1738689

(In reply to Henry Wilkes [:henry] from comment #3)

It seems that setupMagicScroll is broken https://searchfox.org/comm-central/rev/bc0b58e63e7fc62dd4c7c0adb83d1a2732719600/calendar/base/content/calendar-multiday-view.js#973

I'll just create a new method to do the same thing once I finish bug 1738689

Actually, the fix for the magic scroll is quite simple. I might revise the method again though.

Pushed by geoff@darktrojan.net:
https://hg.mozilla.org/comm-central/rev/954c06bf686f
Fix multiday auto-scroll. r=darktrojan

Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 96 Branch

Comment on attachment 9249197 [details]
Bug 1683326 - Fix multiday auto-scroll. r=darktrojan

[Approval Request Comment]
Regression caused by (bug #):
User impact if declined: Multiday-view auto-scroll does not work.
Testing completed (on c-c, etc.): No
Risk to taking this patch (and alternatives if risky): Low risk. One line fix.

Attachment #9249197 - Flags: approval-comm-beta?

Comment on attachment 9249197 [details]
Bug 1683326 - Fix multiday auto-scroll. r=darktrojan

[Triage Comment]
Approved for beta

Attachment #9249197 - Flags: approval-comm-beta? → approval-comm-beta+

Patch moved to calendar-event-column.js in absence of bug 1731209 for esr91.

Comment on attachment 9252066 [details] [diff] [review]
bug1683326-esr91.patch

[Approval Request Comment]
Regression caused by (bug #):
User impact if declined: Multiday-view auto-scroll does not work.
Testing completed (on c-c, etc.): No
Risk to taking this patch (and alternatives if risky): Low risk. One line fix.

Attachment #9252066 - Flags: approval-comm-esr91?

Comment on attachment 9252066 [details] [diff] [review]
bug1683326-esr91.patch

[Triage Comment]
Approved for esr91

Attachment #9252066 - Flags: approval-comm-esr91? → approval-comm-esr91+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: