diff options
| author | Remi Collet <fedora@famillecollet.com> | 2011-12-22 16:49:48 +0100 | 
|---|---|---|
| committer | Remi Collet <fedora@famillecollet.com> | 2011-12-22 16:49:48 +0100 | 
| commit | 2e5013b06612bcfdf8050c569cd9f12a758e8fa4 (patch) | |
| tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /revert-562138.patch | |
| parent | 5f139fd8d735a957395c0d01bcc835271d80999f (diff) | |
clean
Diffstat (limited to 'revert-562138.patch')
| -rw-r--r-- | revert-562138.patch | 290 | 
1 files changed, 0 insertions, 290 deletions
| diff --git a/revert-562138.patch b/revert-562138.patch deleted file mode 100644 index cc97d00..0000000 --- a/revert-562138.patch +++ /dev/null @@ -1,290 +0,0 @@ -See https://bugzilla.mozilla.org/show_bug.cgi?id=562138#c8 - -# HG changeset patch -# User Markus Stange <mstange@themasta.com> -# Date 1296111298 -3600 -# Node ID 433f39574cd72d30e47e6500fad52a0398753367 -# Parent  f948c56cb86f83354f0bd9d579cd51167464b4f2 -Backed out changeset f948c56cb86f (bug 562138 part 2) because it depends on changeset 44c42d8b8d08 which is going to be backed out. - -diff --git a/widget/src/cocoa/nsCocoaWindow.h b/widget/src/cocoa/nsCocoaWindow.h ---- a/widget/src/cocoa/nsCocoaWindow.h -+++ b/widget/src/cocoa/nsCocoaWindow.h -@@ -291,17 +291,16 @@ public: -     NS_IMETHOD ResetInputState(); -      -     NS_IMETHOD BeginSecureKeyboardInput(); -     NS_IMETHOD EndSecureKeyboardInput(); -  -     static void UnifiedShading(void* aInfo, const CGFloat* aIn, CGFloat* aOut); -  -     void SetPopupWindowLevel(); --    PRBool IsVisible(); -  -     PRBool IsChildInFailingLeftClickThrough(NSView *aChild); -     PRBool ShouldFocusPlugin(); -  -     NS_IMETHOD         ReparentNativeWidget(nsIWidget* aNewParent); - protected: -  -   nsresult             CreateNativeWindow(const NSRect &aRect, -@@ -335,14 +334,13 @@ protected: -   PRInt32              mShadowStyle; -   NSUInteger           mWindowFilter; -  -   PRPackedBool         mWindowMadeHere; // true if we created the window, false for embedding -   PRPackedBool         mSheetNeedsShow; // if this is a sheet, are we waiting to be shown? -                                         // this is used for sibling sheet contention only -   PRPackedBool         mFullScreen; -   PRPackedBool         mModal; --  PRPackedBool         mIsShowing;      // PR_TRUE during a Show(PR_TRUE) call. -  -   PRInt32              mNumModalDescendents; - }; -  - #endif // nsCocoaWindow_h_ -diff --git a/widget/src/cocoa/nsCocoaWindow.mm b/widget/src/cocoa/nsCocoaWindow.mm ---- a/widget/src/cocoa/nsCocoaWindow.mm -+++ b/widget/src/cocoa/nsCocoaWindow.mm -@@ -143,17 +143,16 @@ nsCocoaWindow::nsCocoaWindow() - , mSheetWindowParent(nil) - , mPopupContentView(nil) - , mShadowStyle(NS_STYLE_WINDOW_SHADOW_DEFAULT) - , mWindowFilter(0) - , mWindowMadeHere(PR_FALSE) - , mSheetNeedsShow(PR_FALSE) - , mFullScreen(PR_FALSE) - , mModal(PR_FALSE) --, mIsShowing(PR_FALSE) - , mNumModalDescendents(0) - { -  - } -  - void nsCocoaWindow::DestroyNativeWindow() - { -   NS_OBJC_BEGIN_TRY_ABORT_BLOCK; -@@ -528,30 +527,24 @@ void* nsCocoaWindow::GetNativeData(PRUin -       break; -   } -  -   return retVal; -  -   NS_OBJC_END_TRY_ABORT_BLOCK_NSNULL; - } -  --PRBool --nsCocoaWindow::IsVisible() --{ --  NS_OBJC_BEGIN_TRY_ABORT_BLOCK_RETURN; -- --  return [mWindow isVisible] || mSheetNeedsShow || mIsShowing; -- --  NS_OBJC_END_TRY_ABORT_BLOCK_RETURN(PR_FALSE); --} -- - NS_IMETHODIMP nsCocoaWindow::IsVisible(PRBool & aState) - { --  aState = IsVisible(); -+  NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT; -+ -+  aState = ([mWindow isVisible] || mSheetNeedsShow); -   return NS_OK; -+ -+  NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT; - } -  - NS_IMETHODIMP nsCocoaWindow::SetModal(PRBool aState) - { -   // This is used during startup (outside the event loop) when creating -   // the add-ons compatibility checking dialog and the profile manager UI; -   // therefore, it needs to provide an autorelease pool to avoid cocoa -   // objects leaking. -@@ -626,42 +619,29 @@ NS_IMETHODIMP nsCocoaWindow::SetModal(PR -  - // Hide or show this window - NS_IMETHODIMP nsCocoaWindow::Show(PRBool bState) - { -   NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT; -  -   // We need to re-execute sometimes in order to bring already-visible -   // windows forward. --  if (!bState && !IsVisible()) -+  if (!mSheetNeedsShow && !bState && ![mWindow isVisible]) -     return NS_OK; -  -   nsIWidget* parentWidget = mParent; -   nsCOMPtr<nsPIWidgetCocoa> piParentWidget(do_QueryInterface(parentWidget)); -   NSWindow* nativeParentWindow = (parentWidget) ? -     (NSWindow*)parentWidget->GetNativeData(NS_NATIVE_WINDOW) : nil; -  -   if (bState && !mBounds.IsEmpty()) { --    // IsVisible can be entered from inside this method, for example through --    // synchronous painting. Unfortunately, at that point [mWindow isVisible] --    // still returns NO, so we use mIsShowing to tell us that we should return --    // true from IsVisible anyway. --    mIsShowing = PR_TRUE; -- --    if (mPopupContentView) { --      // Ensure our content view is visible. We never need to hide it. --      mPopupContentView->Show(PR_TRUE); --    } -- -     if (mWindowType == eWindowType_sheet) { -       // bail if no parent window (its basically what we do in Carbon) --      if (!nativeParentWindow || !piParentWidget) { --        mIsShowing = PR_FALSE; -+      if (!nativeParentWindow || !piParentWidget) -         return NS_ERROR_FAILURE; --      } -  -       NSWindow* topNonSheetWindow = nativeParentWindow; -        -       // If this sheet is the child of another sheet, hide the parent so that -       // this sheet can be displayed. Leave the parent mSheetNeedsShow alone, -       // that is only used to handle sibling sheet contention. The parent will -       // return once there are no more child sheets. -       PRBool parentIsSheet = PR_FALSE; -@@ -744,17 +724,16 @@ NS_IMETHODIMP nsCocoaWindow::Show(PRBool -     } -     else { -       [mWindow setAcceptsMouseMovedEvents:YES]; -       NS_OBJC_BEGIN_TRY_LOGONLY_BLOCK; -       [mWindow makeKeyAndOrderFront:nil]; -       NS_OBJC_END_TRY_LOGONLY_BLOCK; -       SendSetZLevelEvent(); -     } --    mIsShowing = PR_FALSE; -   } -   else { -     // roll up any popups if a top-level window is going away -     if (mWindowType == eWindowType_toplevel || mWindowType == eWindowType_dialog) -       RollUpPopups(); -  -     // now get rid of the window/sheet -     if (mWindowType == eWindowType_sheet) { -@@ -850,16 +829,19 @@ NS_IMETHODIMP nsCocoaWindow::Show(PRBool -       if ([mWindow isKindOfClass:[PopupWindow class]] && -           [(PopupWindow*) mWindow isContextMenu]) { -         [[NSDistributedNotificationCenter defaultCenter] -           postNotificationName:@"com.apple.HIToolbox.endMenuTrackingNotification" -                         object:@"org.mozilla.gecko.PopupWindow"]; -       } -     } -   } -+   -+  if (mPopupContentView) -+      mPopupContentView->Show(bState); -  -   return NS_OK; -  -   NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT; - } -  - struct ShadowParams { -   float standardDeviation; - - -# HG changeset patch -# User Markus Stange <mstange@themasta.com> -# Date 1296111382 -3600 -# Node ID 2cfc443d28ee87835e17b665d41be3a6fb0dca23 -# Parent  44c42d8b8d087ed22c02ffe90f7d23f84ee8abbb -Backed out changeset 44c42d8b8d08 (bug 562138 part 1) because it caused bug 627824 and bug 628861. - -diff --git a/view/src/nsView.cpp b/view/src/nsView.cpp ---- a/view/src/nsView.cpp -+++ b/view/src/nsView.cpp -@@ -433,63 +433,51 @@ nsIntRect nsIView::CalcWidgetBounds(nsWi - void nsView::DoResetWidgetBounds(PRBool aMoveOnly, -                                  PRBool aInvalidateChangedSize) { -   // The geometry of a root view's widget is controlled externally, -   // NOT by sizing or positioning the view -   if (mViewManager->GetRootView() == this) { -     return; -   } -    --  NS_PRECONDITION(mWindow, "Why was this called??"); -- -   nsIntRect curBounds; -   mWindow->GetBounds(curBounds); -  -   nsWindowType type; -   mWindow->GetWindowType(type); -  -   if (curBounds.IsEmpty() && mDimBounds.IsEmpty() && type == eWindowType_popup) { -     // Don't manipulate empty popup widgets. For example there's no point -     // moving hidden comboboxes around, or doing X server roundtrips -     // to compute their true screen position. This could mean that WidgetToScreen -     // operations on these widgets don't return up-to-date values, but popup -     // positions aren't reliable anyway because of correction to be on or off-screen. -     return; -   } -  -+  NS_PRECONDITION(mWindow, "Why was this called??"); -+ -   nsIntRect newBounds = CalcWidgetBounds(type); -  -   PRBool changedPos = curBounds.TopLeft() != newBounds.TopLeft(); -   PRBool changedSize = curBounds.Size() != newBounds.Size(); -  --  PRBool curVisibility; --  mWindow->IsVisible(curVisibility); --  PRBool newVisibility = IsEffectivelyVisible(); -- --  if (curVisibility && !newVisibility) { --    mWindow->Show(PR_FALSE); --  } -- -   // Child views are never attached to top level widgets, this is safe. -   if (changedPos) { -     if (changedSize && !aMoveOnly) { -       mWindow->Resize(newBounds.x, newBounds.y, newBounds.width, newBounds.height, -                       aInvalidateChangedSize); -     } else { -       mWindow->Move(newBounds.x, newBounds.y); -     } -   } else { -     if (changedSize && !aMoveOnly) { -       mWindow->Resize(newBounds.width, newBounds.height, aInvalidateChangedSize); -     } // else do nothing! -   } -- --  if (!curVisibility && newVisibility) { --    mWindow->Show(PR_TRUE); --  } - } -  - void nsView::SetDimensions(const nsRect& aRect, PRBool aPaint, PRBool aResizeWidget) - { -   nsRect dims = aRect; -   dims.MoveBy(mPosX, mPosY); -  -   // Don't use nsRect's operator== here, since it returns true when -@@ -511,17 +499,23 @@ void nsView::NotifyEffectiveVisibilityCh - { -   if (!aEffectivelyVisible) -   { -     DropMouseGrabbing(); -   } -  -   if (nsnull != mWindow) -   { --    ResetWidgetBounds(PR_FALSE, PR_TRUE, PR_FALSE); -+    if (aEffectivelyVisible) -+    { -+      DoResetWidgetBounds(PR_FALSE, PR_TRUE); -+      mWindow->Show(PR_TRUE); -+    } -+    else -+      mWindow->Show(PR_FALSE); -   } -  -   for (nsView* child = mFirstChild; child; child = child->mNextSibling) { -     if (child->mVis == nsViewVisibility_kHide) { -       // It was effectively hidden and still is -       continue; -     } -     // Our child is visible if we are - - | 
