summaryrefslogtreecommitdiff
path: root/www/firefox-esr/files/patch-ff-437142
diff options
context:
space:
mode:
Diffstat (limited to 'www/firefox-esr/files/patch-ff-437142')
-rw-r--r--www/firefox-esr/files/patch-ff-437142116
1 files changed, 0 insertions, 116 deletions
diff --git a/www/firefox-esr/files/patch-ff-437142 b/www/firefox-esr/files/patch-ff-437142
deleted file mode 100644
index 52cf69679265..000000000000
--- a/www/firefox-esr/files/patch-ff-437142
+++ /dev/null
@@ -1,116 +0,0 @@
---- .pc/437142_backport_att350047.patch/layout/base/nsCSSFrameConstructor.cpp 2009-01-26 12:09:32.000000000 +0100
-+++ layout/base/nsCSSFrameConstructor.cpp 2009-01-26 12:10:17.000000000 +0100
-@@ -9902,17 +9902,19 @@ nsCSSFrameConstructor::ContentRemoved(ns
- nsFrameManager *frameManager = mPresShell->FrameManager();
- nsPresContext *presContext = mPresShell->GetPresContext();
- nsresult rv = NS_OK;
-
- // Find the child frame that maps the content
- nsIFrame* childFrame;
- mPresShell->GetPrimaryFrameFor(aChild, &childFrame);
-
-- if (! childFrame) {
-+ if (!childFrame || childFrame->GetContent() != aChild) {
-+ // XXXbz the GetContent() != aChild check is needed due to bug 135040.
-+ // Remove it once that's fixed.
- frameManager->ClearUndisplayedContentIn(aChild, aContainer);
- }
-
- // When the last item is removed from a select,
- // we need to add a pseudo frame so select gets sized as the best it can
- // so here we see if it is a select and then we get the number of options
- if (aContainer && childFrame) {
- nsCOMPtr<nsIDOMHTMLSelectElement> selectElement = do_QueryInterface(aContainer);
-@@ -9991,17 +9993,19 @@ nsCSSFrameConstructor::ContentRemoved(ns
- // First update the containing blocks structure by removing the
- // existing letter frames. This makes the subsequent logic
- // simpler.
- RemoveLetterFrames(presContext, mPresShell, frameManager,
- containingBlock);
-
- // Recover childFrame and parentFrame
- mPresShell->GetPrimaryFrameFor(aChild, &childFrame);
-- if (!childFrame) {
-+ if (!childFrame || childFrame->GetContent() != aChild) {
-+ // XXXbz the GetContent() != aChild check is needed due to bug 135040.
-+ // Remove it once that's fixed.
- frameManager->ClearUndisplayedContentIn(aChild, aContainer);
- return NS_OK;
- }
- parentFrame = childFrame->GetParent();
-
- #ifdef NOISY_FIRST_LETTER
- printf(" ==> revised parentFrame=");
- nsFrame::ListTag(stdout, parentFrame);
-@@ -10502,16 +10506,24 @@ nsCSSFrameConstructor::ProcessRestyledFr
- }
-
- index = count;
- while (0 <= --index) {
- nsIFrame* frame;
- nsIContent* content;
- nsChangeHint hint;
- aChangeList.ChangeAt(index, frame, content, hint);
-+ if (frame && frame->GetContent() != content) {
-+ // XXXbz this is due to image maps messing with the primary frame map.
-+ // See bug 135040. Remove this block once that's fixed.
-+ frame = nsnull;
-+ if (!(hint & nsChangeHint_ReconstructFrame)) {
-+ continue;
-+ }
-+ }
-
- // skip any frame that has been destroyed due to a ripple effect
- if (frame) {
- nsresult res;
-
- propTable->GetProperty(frame, nsLayoutAtoms::changeListProperty, &res);
-
- if (NS_PROPTABLE_PROP_NOT_THERE == res)
-@@ -10567,16 +10579,21 @@ nsCSSFrameConstructor::ProcessRestyledFr
- return NS_OK;
- }
-
- void
- nsCSSFrameConstructor::RestyleElement(nsIContent *aContent,
- nsIFrame *aPrimaryFrame,
- nsChangeHint aMinHint)
- {
-+ if (aPrimaryFrame && aPrimaryFrame->GetContent() != aContent) {
-+ // XXXbz this is due to image maps messing with the primary frame mapping.
-+ // See bug 135040. We can remove this block once that's fixed.
-+ aPrimaryFrame = nsnull;
-+ }
- #ifdef ACCESSIBILITY
- nsIAtom *prevRenderedFrameType = nsnull;
- if (mPresShell->IsAccessibilityActive()) {
- prevRenderedFrameType = GetRenderedFrameType(aPrimaryFrame);
- }
- #endif
- if (aMinHint & nsChangeHint_ReconstructFrame) {
- RecreateFramesForContent(aContent);
---- .pc/437142_backport_att350047.patch/layout/generic/nsImageMap.cpp 2009-01-26 12:09:32.000000000 +0100
-+++ layout/generic/nsImageMap.cpp 2009-01-26 12:10:17.000000000 +0100
-@@ -895,16 +895,22 @@ nsImageMap::AddArea(nsIContent* aArea)
- return NS_ERROR_OUT_OF_MEMORY;
-
- //Add focus listener to track area focus changes
- nsCOMPtr<nsIDOMEventReceiver> rec(do_QueryInterface(aArea));
- if (rec) {
- rec->AddEventListenerByIID(this, NS_GET_IID(nsIDOMFocusListener));
- }
-
-+
-+ // This is a nasty hack. It needs to go away: see bug 135040. Once this is
-+ // removed, the code added to nsCSSFrameConstructor::RestyleElement,
-+ // nsCSSFrameConstructor::ContentRemoved (both hacks there), and
-+ // nsCSSFrameConstructor::ProcessRestyledFrames to work around this issue can
-+ // be removed.
- mPresShell->FrameManager()->SetPrimaryFrameFor(aArea, mImageFrame);
- aArea->SetMayHaveFrame(PR_TRUE);
- NS_ASSERTION(aArea->MayHaveFrame(), "SetMayHaveFrame failed?");
-
- area->ParseCoords(coords);
- mAreas.AppendElement(area);
- return NS_OK;
- }