Closed Bug 56651 Opened 25 years ago Closed 25 years ago

Tree items disappear after collapsing and expanding

Categories

(Core :: XUL, defect, P3)

x86
Windows 98
defect

Tracking

()

VERIFIED DUPLICATE of bug 56310

People

(Reporter: bugzilla, Assigned: hyatt)

Details

Overview Description: I need to get out more, because not too many other people would notice this. Steps to Reproduce: 1) Resize your prefs dialog such that the tree is just big enough to contain all of the categories in their collapsed state without needing to have scrollbars (I'll attach a screenshot) **Collapse all the categories BEFORE resizing the dialog** 2) Double click on Navigator to expand it. 3) Double click on Navigator again to collapse it. Actual Results: Tree items disappear; in a debug build, I get an assertion. Reproducibility: 100% win98se new trunk build, Classic (if directions are followed exactly) Additional Information: The assertion I get in the debug build is: ###!!! ASSERTION: Disaster! Content not contained in our tree! : 'currContent.get() == mContent', file C:\mozilla\layout\xul\base\src\nsXULTree OuterGroupFrame.cpp, line 755 Stack trace: KERNEL32! bff768a0() XPCOM! 100193d4() nsXULTreeOuterGroupFrame::ConstructContentChain(nsIContent * 0x00000000) line 755 + 42 bytes nsXULTreeOuterGroupFrame::InternalPositionChanged(nsXULTreeOuterGroupFrame * const 0x02a68a2c, int 1, int 5) line 679 nsXULTreeOuterGroupFrame::ScrollToIndex(int 0) line 1160 nsXULTreeGroupFrame::OnContentRemoved(nsIPresContext * 0x01474760, nsIFrame * 0x02a85ecc, int 1) line 484 nsCSSFrameConstructor::ContentRemoved(nsCSSFrameConstructor * const 0x01475cd0, nsIPresContext * 0x01474760, nsIContent * 0x0340a8f0, nsIContent * 0x03409cb0, int 1) line 9217 nsCSSFrameConstructor::RecreateFramesForContent(nsIPresContext * 0x01474760, nsIContent * 0x03409cb0) line 11133 + 28 bytes nsCSSFrameConstructor::AttributeChanged(nsCSSFrameConstructor * const 0x01475cd0, nsIPresContext * 0x01474760, nsIContent * 0x03409cb0, int 0, nsIAtom * 0x01a74830, int 5) line 10002 + 16 bytes StyleSetImpl::AttributeChanged(StyleSetImpl * const 0x01475d90, nsIPresContext * 0x01474760, nsIContent * 0x03409cb0, int 0, nsIAtom * 0x01a74830, int -1) line 1195 PresShell::AttributeChanged(PresShell * const 0x01475958, nsIDocument * 0x014714f0, nsIContent * 0x03409cb0, int 0, nsIAtom * 0x01a74830, int -1) line 4267 + 57 bytes nsXULDocument::AttributeChanged(nsXULDocument * const 0x014714f0, nsIContent * 0x03409cb0, int 0, nsIAtom * 0x01a74830, int -1) line 1652 nsXULElement::UnsetAttribute(nsXULElement * const 0x03409cb0, int 0, nsIAtom * 0x01a74830, int 1) line 3008 nsXULElement::RemoveAttribute(nsXULElement * const 0x03409cb4, const basic_nsAReadableString<unsigned short> & {...}) line 1270 + 31 bytes ElementRemoveAttribute(JSContext * 0x01454b20, JSObject * 0x02a0da98, unsigned int 1, long * 0x02a10954, long * 0x007aaab0) line 290 + 19 bytes js_Invoke(JSContext * 0x01454b20, unsigned int 1, unsigned int 0) line 790 + 23 bytes js_Interpret(JSContext * 0x01454b20, long * 0x007ab5c0) line 2589 + 15 bytes js_Invoke(JSContext * 0x01454b20, unsigned int 1, unsigned int 2) line 807 + 13 bytes js_InternalInvoke(JSContext * 0x01454b20, JSObject * 0x02a0dfb0, long 44097496, unsigned int 0, unsigned int 1, long * 0x007ab758, long * 0x007ab6e8) line 879 + 20 bytes JS_CallFunctionValue(JSContext * 0x01454b20, JSObject * 0x02a0dfb0, long 44097496, unsigned int 1, long * 0x007ab758, long * 0x007ab6e8) line 3193 + 31 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x014533e0, void * 0x02a0dfb0, void * 0x02a0dfd8, unsigned int 1, void * 0x007ab758, int * 0x007ab754, int 0) line 907 + 33 bytes nsJSEventListener::HandleEvent(nsIDOMEvent * 0x039201e4) line 154 + 64 bytes nsXBLPrototypeHandler::ExecuteHandler(nsXBLPrototypeHandler * const 0x037ba920, nsIDOMEventReceiver * 0x0340a8f8, nsIDOMEvent * 0x039201e4) line 315 DoMouse(nsIAtom * 0x027ca370, nsIXBLPrototypeHandler * 0x037ba920, nsIDOMEvent * 0x039201e4, nsIDOMEventReceiver * 0x0340a8f8) line 103 nsXBLMouseHandler::MouseClick(nsIDOMEvent * 0x039201e4) line 118 + 34 bytes nsEventListenerManager::HandleEvent(nsIPresContext * 0x01474760, nsEvent * 0x007acca8, nsIDOMEvent * * 0x007acbc4, nsIDOMEventTarget * 0x0340a8f8, unsigned int 2, nsEventStatus * 0x007acfc8) line 865 + 23 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x0340a8f0, nsIPresContext * 0x01474760, nsEvent * 0x007acca8, nsIDOMEvent * * 0x007acbc4, unsigned int 2, nsEventStatus * 0x007acfc8) line 3301 nsXULElement::HandleDOMEvent(nsXULElement * const 0x03409cb0, nsIPresContext * 0x01474760, nsEvent * 0x007acca8, nsIDOMEvent * * 0x007acbc4, unsigned int 2, nsEventStatus * 0x007acfc8) line 3318 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x03409c30, nsIPresContext * 0x01474760, nsEvent * 0x007acca8, nsIDOMEvent * * 0x007acbc4, unsigned int 2, nsEventStatus * 0x007acfc8) line 3318 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x03409b60, nsIPresContext * 0x01474760, nsEvent * 0x007acca8, nsIDOMEvent * * 0x007acbc4, unsigned int 1, nsEventStatus * 0x007acfc8) line 3318 + 39 bytes PresShell::HandleEventInternal(nsEvent * 0x007acca8, nsIView * 0x00000000, unsigned int 1, nsEventStatus * 0x007acfc8) line 4888 + 47 bytes PresShell::HandleEventWithTarget(PresShell * const 0x01475950, nsEvent * 0x007acca8, nsIFrame * 0x02a56230, nsIContent * 0x03409b60, unsigned int 1, nsEventStatus * 0x007acfc8) line 4869 + 22 bytes nsEventStateManager::CheckForAndDispatchClick(nsEventStateManager * const 0x034f97c0, nsIPresContext * 0x01474760, nsMouseEvent * 0x007ad0d8, nsEventStatus * 0x007acfc8) line 1861 + 61 bytes nsEventStateManager::PostHandleEvent(nsEventStateManager * const 0x034f97c8, nsIPresContext * 0x01474760, nsEvent * 0x007ad0d8, nsIFrame * 0x02a56230, nsEventStatus * 0x007acfc8, nsIView * 0x037d2c30) line 935 + 28 bytes PresShell::HandleEventInternal(nsEvent * 0x007ad0d8, nsIView * 0x037d2c30, unsigned int 1, nsEventStatus * 0x007acfc8) line 4908 + 43 bytes PresShell::HandleEvent(PresShell * const 0x01475954, nsIView * 0x037d2c30, nsGUIEvent * 0x007ad0d8, nsEventStatus * 0x007acfc8, int 1, int & 1) line 4823 + 25 bytes nsView::HandleEvent(nsView * const 0x037d2c30, nsGUIEvent * 0x007ad0d8, unsigned int 28, nsEventStatus * 0x007acfc8, int 1, int & 1) line 379 nsViewManager2::DispatchEvent(nsViewManager2 * const 0x014741f0, nsGUIEvent * 0x007ad0d8, nsEventStatus * 0x007acfc8) line 1439 HandleEvent(nsGUIEvent * 0x007ad0d8) line 68 nsWindow::DispatchEvent(nsWindow * const 0x037d13e4, nsGUIEvent * 0x007ad0d8, nsEventStatus & nsEventStatus_eIgnore) line 682 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x007ad0d8) line 703 nsWindow::DispatchMouseEvent(unsigned int 301, nsPoint * 0x00000000) line 3895 + 21 bytes ChildWindow::DispatchMouseEvent(unsigned int 301, nsPoint * 0x00000000) line 4105 nsWindow::ProcessMessage(unsigned int 514, unsigned int 0, long 1310747, long * 0x007ad454) line 2965 + 24 bytes nsWindow::WindowProc(HWND__ * 0x00000278, unsigned int 514, unsigned int 0, long 1310747) line 951 + 27 bytes KERNEL32! bff7363b() KERNEL32! bff94407() 007a84da() I see all kinds of weird/quirky behavior when the tree is this small and needs scrollbars and I start expanding and collapsing categories, like freezes or disappearing items. I'll file separate bugs only when I get separate assertions.
cc'ing bryner
*** This bug has been marked as a duplicate of 56310 ***
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → DUPLICATE
Verifying as a duplicate of 56310 'Collapsing server causes all tree rows to disappear'
Status: RESOLVED → VERIFIED
Component: XP Toolkit/Widgets: Trees → XUL
QA Contact: jrgmorrison → xptoolkit.widgets
You need to log in before you can comment on or make changes to this bug.