lists.torproject.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

tbb-commits

Thread Start a new thread
Download
Threads by month
  • ----- 2025 -----
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
tbb-commits@lists.torproject.org

August 2014

  • 3 participants
  • 290 discussions
[tor-browser/esr24] Bug 967354 - Fix incorrect usage of UpdateWebGLErrorAndClearGLError(); r=jgilbert, a=lmandel
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 82ea333beb3423b8aaaca2998b111a6308ed197a Author: Dan Glastonbury <dglastonbury(a)mozilla.com> Date: Thu May 29 08:42:40 2014 +1000 Bug 967354 - Fix incorrect usage of UpdateWebGLErrorAndClearGLError(); r=jgilbert, a=lmandel --HG-- extra : histedit_source : ef735c5d9e83cddd2312f58fa41baf330a162f0f --- content/canvas/src/WebGLContext.cpp | 12 +++++---- content/canvas/src/WebGLContext.h | 4 +-- content/canvas/src/WebGLContextGL.cpp | 48 ++++++++++++++++++++++----------- 3 files changed, 41 insertions(+), 23 deletions(-) diff --git a/content/canvas/src/WebGLContext.cpp b/content/canvas/src/WebGLContext.cpp index 323e2b4..91d8d99 100644 --- a/content/canvas/src/WebGLContext.cpp +++ b/content/canvas/src/WebGLContext.cpp @@ -1367,14 +1367,16 @@ WebGLContext::PresentScreenBuffer() return true; } -void +bool WebGLContext::DummyFramebufferOperation(const char *info) { WebGLenum status = CheckFramebufferStatus(LOCAL_GL_FRAMEBUFFER); - if (status == LOCAL_GL_FRAMEBUFFER_COMPLETE) - return; - else - return ErrorInvalidFramebufferOperation("%s: incomplete framebuffer", info); + if (status == LOCAL_GL_FRAMEBUFFER_COMPLETE) { + return true; + } else { + ErrorInvalidFramebufferOperation("%s: incomplete framebuffer", info); + return false; + } } // We use this timer for many things. Here are the things that it is activated for: diff --git a/content/canvas/src/WebGLContext.h b/content/canvas/src/WebGLContext.h index 3c7054e..e8e55db 100644 --- a/content/canvas/src/WebGLContext.h +++ b/content/canvas/src/WebGLContext.h @@ -200,7 +200,7 @@ public: const char *ErrorName(GLenum error); bool IsTextureFormatCompressed(GLenum format); - void DummyFramebufferOperation(const char *info); + bool DummyFramebufferOperation(const char *info); WebGLTexture *activeBoundTextureForTarget(WebGLenum target) { return target == LOCAL_GL_TEXTURE_2D ? mBound2DTextures[mActiveTexture] @@ -970,7 +970,7 @@ protected: gfxImageSurface **imageOut, WebGLTexelFormat *format); - void CopyTexSubImage2D_base(WebGLenum target, + bool CopyTexSubImage2D_base(WebGLenum target, WebGLint level, WebGLenum internalformat, WebGLint xoffset, diff --git a/content/canvas/src/WebGLContextGL.cpp b/content/canvas/src/WebGLContextGL.cpp index ec37391..6b4c77b 100644 --- a/content/canvas/src/WebGLContextGL.cpp +++ b/content/canvas/src/WebGLContextGL.cpp @@ -722,7 +722,7 @@ WebGLContext::ColorMask(WebGLboolean r, WebGLboolean g, WebGLboolean b, WebGLboo gl->fColorMask(r, g, b, a); } -void +bool WebGLContext::CopyTexSubImage2D_base(WebGLenum target, WebGLint level, WebGLenum internalformat, @@ -741,15 +741,17 @@ WebGLContext::CopyTexSubImage2D_base(WebGLenum target, const char *info = sub ? "copyTexSubImage2D" : "copyTexImage2D"; if (!ValidateLevelWidthHeightForTarget(target, level, width, height, info)) { - return; + return false; } MakeContextCurrent(); WebGLTexture *tex = activeBoundTextureForTarget(target); - if (!tex) - return ErrorInvalidOperation("%s: no texture is bound to this target"); + if (!tex) { + ErrorInvalidOperation("%s: no texture is bound to this target"); + return false; + } if (CanvasUtils::CheckSaneSubrectSize(x, y, width, height, framebufferWidth, framebufferHeight)) { if (sub) @@ -766,13 +768,15 @@ WebGLContext::CopyTexSubImage2D_base(WebGLenum target, uint32_t texelSize = 0; if (!ValidateTexFormatAndType(internalformat, LOCAL_GL_UNSIGNED_BYTE, -1, &texelSize, info)) - return; + return false; CheckedUint32 checked_neededByteLength = GetImageSize(height, width, texelSize, mPixelStoreUnpackAlignment); - if (!checked_neededByteLength.isValid()) - return ErrorInvalidOperation("%s: integer overflow computing the needed buffer size", info); + if (!checked_neededByteLength.isValid()) { + ErrorInvalidOperation("%s: integer overflow computing the needed buffer size", info); + return false; + } uint32_t bytesNeeded = checked_neededByteLength.value(); @@ -782,8 +786,10 @@ WebGLContext::CopyTexSubImage2D_base(WebGLenum target, // contents of a texture allocated with nullptr data. // Hopefully calloc will just mmap zero pages here. void *tempZeroData = calloc(1, bytesNeeded); - if (!tempZeroData) - return ErrorOutOfMemory("%s: could not allocate %d bytes (for zero fill)", info, bytesNeeded); + if (!tempZeroData) { + ErrorOutOfMemory("%s: could not allocate %d bytes (for zero fill)", info, bytesNeeded); + return false; + } // now initialize the texture as black @@ -820,6 +826,8 @@ WebGLContext::CopyTexSubImage2D_base(WebGLenum target, if (!sub) ReattachTextureToAnyFramebufferToWorkAroundBugs(tex, level); + + return true; } void @@ -917,15 +925,19 @@ WebGLContext::CopyTexImage2D(WebGLenum target, if (sizeMayChange) { UpdateWebGLErrorAndClearGLError(); - CopyTexSubImage2D_base(target, level, internalformat, 0, 0, x, y, width, height, false); + } + + bool ok = CopyTexSubImage2D_base(target, level, internalformat, 0, 0, x, y, width, height, false); + if (!ok) + return; + + if (sizeMayChange) { GLenum error = LOCAL_GL_NO_ERROR; UpdateWebGLErrorAndClearGLError(&error); if (error) { GenerateWarning("copyTexImage2D generated error %s", ErrorName(error)); return; } - } else { - CopyTexSubImage2D_base(target, level, internalformat, 0, 0, x, y, width, height, false); } tex->SetImageInfo(target, level, width, height, internalformat, type); @@ -1007,7 +1019,7 @@ WebGLContext::CopyTexSubImage2D(WebGLenum target, if (!mBoundFramebuffer->CheckAndInitializeRenderbuffers()) return ErrorInvalidFramebufferOperation("copyTexSubImage2D: incomplete framebuffer"); - return CopyTexSubImage2D_base(target, level, format, xoffset, yoffset, x, y, width, height, true); + CopyTexSubImage2D_base(target, level, format, xoffset, yoffset, x, y, width, height, true); } @@ -3405,8 +3417,10 @@ WebGLContext::ReadPixels(WebGLint x, WebGLint y, WebGLsizei width, // Now that the errors are out of the way, on to actually reading // If we won't be reading any pixels anyways, just skip the actual reading - if (width == 0 || height == 0) - return DummyFramebufferOperation("readPixels"); + if (width == 0 || height == 0) { + DummyFramebufferOperation("readPixels"); + return; + } if (CanvasUtils::CheckSaneSubrectSize(x, y, width, height, framebufferWidth, framebufferHeight)) { // the easy case: we're not reading out-of-range pixels @@ -3428,7 +3442,8 @@ WebGLContext::ReadPixels(WebGLint x, WebGLint y, WebGLsizei width, || y+height <= 0) { // we are completely outside of range, can exit now with buffer filled with zeros - return DummyFramebufferOperation("readPixels"); + DummyFramebufferOperation("readPixels"); + return; } // compute the parameters of the subrect we're actually going to call glReadPixels on @@ -4574,6 +4589,7 @@ WebGLContext::CompressedTexImage2D(WebGLenum target, WebGLint level, WebGLenum i return; } + MakeContextCurrent(); gl->fCompressedTexImage2D(target, level, internalformat, width, height, border, byteLength, view.Data()); tex->SetImageInfo(target, level, width, height, internalformat, LOCAL_GL_UNSIGNED_BYTE);
1 0
0 0
[tor-browser/esr24] Bug 1015636 - Check if PDF Viewer embed overlay has valid state. r=johns, a=dveditz
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 57d9a8971efde965d1313c6bbb7ab98cd5f4e44e Author: Yury Delendik <ydelendik(a)mozilla.com> Date: Fri May 30 18:03:05 2014 -0500 Bug 1015636 - Check if PDF Viewer embed overlay has valid state. r=johns, a=dveditz --- browser/extensions/pdfjs/components/PdfRedirector.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/browser/extensions/pdfjs/components/PdfRedirector.js b/browser/extensions/pdfjs/components/PdfRedirector.js index 4a08ec2..2758ffe 100644 --- a/browser/extensions/pdfjs/components/PdfRedirector.js +++ b/browser/extensions/pdfjs/components/PdfRedirector.js @@ -60,6 +60,10 @@ function getObjectUrl(window) { } // Checking if overlay is a proper PlayPreview overlay. + if (element.displayedType !== element.TYPE_NULL || + element.pluginFallbackType !== element.PLUGIN_PLAY_PREVIEW) { + return null; // invalid plugin element overlay state + } for (var i = 0; i < element.children.length; i++) { if (element.children[i] === containerElement) { return null; // invalid plugin element overlay
1 0
0 0
[tor-browser/esr24] No bug, Automated HSTS preload list update from host bld-linux64-spot-326 - a=hsts-update
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 9fca388d6ff39694480dbb2f356fd6f3f97d190d Author: ffxbld <none@none> Date: Sat May 31 03:13:45 2014 -0700 No bug, Automated HSTS preload list update from host bld-linux64-spot-326 - a=hsts-update --- security/manager/boot/src/nsSTSPreloadList.errors | 7 ++++--- security/manager/boot/src/nsSTSPreloadList.inc | 8 ++++++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/security/manager/boot/src/nsSTSPreloadList.errors b/security/manager/boot/src/nsSTSPreloadList.errors index 831c969..f04dcfb 100644 --- a/security/manager/boot/src/nsSTSPreloadList.errors +++ b/security/manager/boot/src/nsSTSPreloadList.errors @@ -10,6 +10,7 @@ api.simple.com: did not receive HSTS header apis.google.com: did not receive HSTS header app.lookout.com: could not connect to host appengine.google.com: did not receive HSTS header +appseccalifornia.org: could not connect to host bassh.net: did not receive HSTS header bcrook.com: max-age too low: 86400 betnet.fr: could not connect to host @@ -24,10 +25,10 @@ checkout.google.com: did not receive HSTS header chrome-devtools-frontend.appspot.com: did not receive HSTS header chrome.google.com: did not receive HSTS header cloud.google.com: did not receive HSTS header -cloudns.com.au: could not connect to host code.google.com: did not receive HSTS header codereview.chromium.org: did not receive HSTS header crate.io: did not receive HSTS header +crbug.com: did not receive HSTS header crowdcurity.com: did not receive HSTS header crypto.is: did not receive HSTS header csawctf.poly.edu: did not receive HSTS header @@ -101,7 +102,7 @@ simon.butcher.name: max-age too low: 2629743 sites.google.com: did not receive HSTS header sol.io: could not connect to host souyar.de: could not connect to host -souyar.net: did not receive HSTS header +souyar.net: could not connect to host souyar.us: could not connect to host spreadsheets.google.com: did not receive HSTS header square.com: did not receive HSTS header @@ -115,7 +116,6 @@ talk.google.com: did not receive HSTS header talkgadget.google.com: did not receive HSTS header translate.googleapis.com: did not receive HSTS header uprotect.it: could not connect to host -usaa.com: did not receive HSTS header wallet.google.com: did not receive HSTS header webmail.mayfirst.org: did not receive HSTS header wepay.com: max-age too low: 2592000 @@ -126,6 +126,7 @@ www.elanex.biz: did not receive HSTS header www.gmail.com: did not receive HSTS header www.googlemail.com: did not receive HSTS header www.greplin.com: could not connect to host +www.intercom.io: did not receive HSTS header www.jitsi.org: did not receive HSTS header www.lastpass.com: did not receive HSTS header www.ledgerscope.net: did not receive HSTS header diff --git a/security/manager/boot/src/nsSTSPreloadList.inc b/security/manager/boot/src/nsSTSPreloadList.inc index 8266427..d2f42c6 100644 --- a/security/manager/boot/src/nsSTSPreloadList.inc +++ b/security/manager/boot/src/nsSTSPreloadList.inc @@ -8,7 +8,7 @@ /*****************************************************************************/ #include "mozilla/StandardInteger.h" -const PRTime gPreloadListExpirationTime = INT64_C(1411812354538000); +const PRTime gPreloadListExpirationTime = INT64_C(1412417180147000); class nsSTSPreload { @@ -122,6 +122,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "mailbox.org", false }, { "makeyourlaws.org", true }, { "manage.zenpayroll.com", false }, + { "manageprojects.com", true }, { "manager.linode.com", false }, { "matteomarescotti.name", true }, { "mattmccutchen.net", true }, @@ -187,11 +188,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "surkatty.org", true }, { "tent.io", true }, { "therapynotes.com", false }, + { "tinfoilsecurity.com", false }, { "torproject.org", false }, { "twitter.com", false }, { "ubertt.org", true }, + { "usaa.com", false }, { "vmoagents.com", false }, { "w-spotlight.appspot.com", true }, + { "waveapps.com", true }, { "webfilings-eu-mirror.appspot.com", true }, { "webfilings-eu.appspot.com", true }, { "webfilings-mirror-hrd.appspot.com", true }, @@ -225,7 +229,6 @@ static const nsSTSPreload kSTSPreloadList[] = { { "www.gov.uk", false }, { "www.grc.com", false }, { "www.heliosnet.com", true }, - { "www.intercom.io", false }, { "www.irccloud.com", false }, { "www.linode.com", false }, { "www.lookout.com", false }, @@ -238,6 +241,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "www.simbolo.co.uk", false }, { "www.simple.com", false }, { "www.therapynotes.com", false }, + { "www.tinfoilsecurity.com", false }, { "www.torproject.org", false }, { "www.twitter.com", false }, { "www.usaa.com", false },
1 0
0 0
[tor-browser/esr24] Bug 991981 - Followup fix for ESR24 to properly init TypedArray structs using the provided obj in the constructor, rather than requiring Init to be called after construction. r=bz, a=bustage
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit f7c724ad36208605421c24caac2ef8eef7b0860e Author: Jeff Walden <jwalden(a)mit.edu> Date: Mon Jun 2 17:45:05 2014 -0700 Bug 991981 - Followup fix for ESR24 to properly init TypedArray structs using the provided obj in the constructor, rather than requiring Init to be called after construction. r=bz, a=bustage --- dom/bindings/TypedArray.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dom/bindings/TypedArray.h b/dom/bindings/TypedArray.h index c7c2bbd..62343c2 100644 --- a/dom/bindings/TypedArray.h +++ b/dom/bindings/TypedArray.h @@ -24,12 +24,12 @@ template<typename T, void GetLengthAndData(JSObject*, uint32_t*, T**)> struct TypedArray_base { TypedArray_base(JSObject* obj) - : mObj(obj), + : mObj(NULL), mData(NULL), mLength(0), mComputed(false) { - MOZ_ASSERT(obj != NULL); + Init(obj); } private:
1 0
0 0
[tor-browser/esr24] Automated checkin: version bump for thunderbird 24.6.0 release. DONTBUILD CLOSED TREE a=release
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 24cd7f96ff69515d7519f3907cca2dee6919224e Author: tbirdbld <none@none> Date: Fri Jun 6 12:35:54 2014 -0400 Automated checkin: version bump for thunderbird 24.6.0 release. DONTBUILD CLOSED TREE a=release --- config/milestone.txt | 2 +- js/src/config/milestone.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/milestone.txt b/config/milestone.txt index c9dc647..71e3ef9 100644 --- a/config/milestone.txt +++ b/config/milestone.txt @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -24.6.0esrpre +24.6.0 diff --git a/js/src/config/milestone.txt b/js/src/config/milestone.txt index c9dc647..71e3ef9 100644 --- a/js/src/config/milestone.txt +++ b/js/src/config/milestone.txt @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -24.6.0esrpre +24.6.0
1 0
0 0
[tor-browser/esr24] Bug 991981 - Replace a few C++11 static_asserts with MOZ_STATIC_ASSERT -- can't use the other on this branch. r=trivial, a=bustage
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 155c4c79792c997b8d707d9a1a110ace6dd02881 Author: Jeff Walden <jwalden(a)mit.edu> Date: Mon Jun 2 17:45:14 2014 -0700 Bug 991981 - Replace a few C++11 static_asserts with MOZ_STATIC_ASSERT -- can't use the other on this branch. r=trivial, a=bustage --- content/base/src/WebSocket.cpp | 4 ++-- content/base/src/nsDOMDataChannel.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/content/base/src/WebSocket.cpp b/content/base/src/WebSocket.cpp index 2953aa3..1388884 100644 --- a/content/base/src/WebSocket.cpp +++ b/content/base/src/WebSocket.cpp @@ -1223,7 +1223,7 @@ WebSocket::Send(ArrayBuffer& aData, aData.ComputeLengthAndData(); - static_assert(sizeof(*aData.Data()) == 1, "byte-sized data required"); + MOZ_STATIC_ASSERT(sizeof(*aData.Data()) == 1, "byte-sized data required"); uint32_t len = aData.Length(); char* data = reinterpret_cast<char*>(aData.Data()); @@ -1240,7 +1240,7 @@ WebSocket::Send(ArrayBufferView& aData, aData.ComputeLengthAndData(); - static_assert(sizeof(*aData.Data()) == 1, "byte-sized data required"); + MOZ_STATIC_ASSERT(sizeof(*aData.Data()) == 1, "byte-sized data required"); uint32_t len = aData.Length(); char* data = reinterpret_cast<char*>(aData.Data()); diff --git a/content/base/src/nsDOMDataChannel.cpp b/content/base/src/nsDOMDataChannel.cpp index a7f4d93..bfc6e2c 100644 --- a/content/base/src/nsDOMDataChannel.cpp +++ b/content/base/src/nsDOMDataChannel.cpp @@ -294,7 +294,7 @@ nsDOMDataChannel::Send(ArrayBuffer& aData, ErrorResult& aRv) aData.ComputeLengthAndData(); - static_assert(sizeof(*aData.Data()) == 1, "byte-sized data required"); + MOZ_STATIC_ASSERT(sizeof(*aData.Data()) == 1, "byte-sized data required"); uint32_t len = aData.Length(); char* data = reinterpret_cast<char*>(aData.Data()); @@ -310,7 +310,7 @@ nsDOMDataChannel::Send(ArrayBufferView& aData, ErrorResult& aRv) aData.ComputeLengthAndData(); - static_assert(sizeof(*aData.Data()) == 1, "byte-sized data required"); + MOZ_STATIC_ASSERT(sizeof(*aData.Data()) == 1, "byte-sized data required"); uint32_t len = aData.Length(); char* data = reinterpret_cast<char*>(aData.Data());
1 0
0 0
[tor-browser/esr24] Backed out changeset 6402fb9a21cb (bug 995603) for causing bug 1021815. a=abillings
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 1b9259cf6ad5f15be9f3ae54e54205743bab6bc1 Author: Ryan VanderMeulen <ryanvm(a)gmail.com> Date: Mon Jun 9 14:42:40 2014 -0400 Backed out changeset 6402fb9a21cb (bug 995603) for causing bug 1021815. a=abillings --- content/events/src/nsContentEventHandler.cpp | 25 ++------ content/events/src/nsContentEventHandler.h | 2 +- widget/cocoa/nsChildView.mm | 79 +++++++++++++++++--------- widget/cocoa/nsCocoaWindow.h | 3 + widget/cocoa/nsCocoaWindow.mm | 30 ++++++++++ 5 files changed, 93 insertions(+), 46 deletions(-) diff --git a/content/events/src/nsContentEventHandler.cpp b/content/events/src/nsContentEventHandler.cpp index e989535..8b151cb 100644 --- a/content/events/src/nsContentEventHandler.cpp +++ b/content/events/src/nsContentEventHandler.cpp @@ -44,8 +44,11 @@ nsContentEventHandler::nsContentEventHandler( } nsresult -nsContentEventHandler::InitBasic() +nsContentEventHandler::InitCommon() { + if (mSelection) + return NS_OK; + NS_ENSURE_TRUE(mPresShell, NS_ERROR_NOT_AVAILABLE); // If text frame which has overflowing selection underline is dirty, @@ -55,24 +58,11 @@ nsContentEventHandler::InitBasic() // Flushing notifications can cause mPresShell to be destroyed (bug 577963). NS_ENSURE_TRUE(!mPresShell->IsDestroying(), NS_ERROR_FAILURE); - return NS_OK; -} - -nsresult -nsContentEventHandler::InitCommon() -{ - if (mSelection) { - return NS_OK; - } - - nsresult rv = InitBasic(); - NS_ENSURE_SUCCESS(rv, rv); - nsCopySupport::GetSelectionForCopy(mPresShell->GetDocument(), getter_AddRefs(mSelection)); nsCOMPtr<nsIDOMRange> firstRange; - rv = mSelection->GetRangeAt(0, getter_AddRefs(firstRange)); + nsresult rv = mSelection->GetRangeAt(0, getter_AddRefs(firstRange)); // This shell doesn't support selection. if (NS_FAILED(rv)) return NS_ERROR_NOT_AVAILABLE; @@ -870,13 +860,10 @@ nsContentEventHandler::OnQueryCharacterAtPoint(nsQueryContentEvent* aEvent) nsresult nsContentEventHandler::OnQueryDOMWidgetHittest(nsQueryContentEvent* aEvent) { - NS_ASSERTION(aEvent, "aEvent must not be null"); - - nsresult rv = InitBasic(); + nsresult rv = Init(aEvent); if (NS_FAILED(rv)) return rv; - aEvent->mSucceeded = false; aEvent->mReply.mWidgetIsHit = false; NS_ENSURE_TRUE(aEvent->widget, NS_ERROR_FAILURE); diff --git a/content/events/src/nsContentEventHandler.h b/content/events/src/nsContentEventHandler.h index 1624d35..4c4f492 100644 --- a/content/events/src/nsContentEventHandler.h +++ b/content/events/src/nsContentEventHandler.h @@ -66,7 +66,7 @@ protected: nsresult Init(nsQueryContentEvent* aEvent); nsresult Init(nsSelectionEvent* aEvent); - nsresult InitBasic(); + // InitCommon() is called from each Init(). nsresult InitCommon(); public: diff --git a/widget/cocoa/nsChildView.mm b/widget/cocoa/nsChildView.mm index 6ced313..aef01c7 100644 --- a/widget/cocoa/nsChildView.mm +++ b/widget/cocoa/nsChildView.mm @@ -2790,32 +2790,6 @@ NSEvent* gLastDragMouseDownEvent = nil; return mIsPluginView; } -- (NSView *)hitTest:(NSPoint)aPoint -{ - NSView* target = [super hitTest:aPoint]; - if ((target == self) && [self isPluginView] && mGeckoChild) { - nsAutoRetainCocoaObject kungFuDeathGrip(self); - - NSPoint cocoaLoc = [[self superview] convertPoint:aPoint toView:self]; - cocoaLoc.y = nsCocoaUtils::FlippedScreenY(cocoaLoc.y); - nsIntPoint widgetLoc = mGeckoChild->CocoaPointsToDevPixels(cocoaLoc) - - mGeckoChild->WidgetToScreenOffset(); - - nsQueryContentEvent hitTest(true, NS_QUERY_DOM_WIDGET_HITTEST, - mGeckoChild); - hitTest.InitForQueryDOMWidgetHittest(widgetLoc); - // This might destroy our widget. - mGeckoChild->DispatchWindowEvent(hitTest); - if (!mGeckoChild) { - return nil; - } - if (hitTest.mSucceeded && !hitTest.mReply.mWidgetIsHit) { - return nil; - } - } - return target; -} - // Are we processing an NSLeftMouseDown event that will fail to click through? // If so, we shouldn't focus or unfocus a plugin. - (BOOL)isInFailingLeftClickThrough @@ -4939,12 +4913,65 @@ static int32_t RoundUp(double aDouble) return !mGeckoChild->DispatchWindowEvent(geckoEvent); } +// Don't focus a plugin if the user has clicked on a DOM element above it. +// In this case the user has actually clicked on the plugin's ChildView +// (underneath the non-plugin DOM element). But we shouldn't allow the +// ChildView to be focused. See bug 627649. +- (BOOL)currentEventShouldFocusPlugin +{ + if (!mGeckoChild) + return NO; + + NSEvent* currentEvent = [NSApp currentEvent]; + if ([currentEvent type] != NSLeftMouseDown) + return YES; + + nsAutoRetainCocoaObject kungFuDeathGrip(self); + + // hitTest needs coordinates in device pixels + NSPoint eventLoc = nsCocoaUtils::ScreenLocationForEvent(currentEvent); + eventLoc.y = nsCocoaUtils::FlippedScreenY(eventLoc.y); + nsIntPoint widgetLoc = mGeckoChild->CocoaPointsToDevPixels(eventLoc) - + mGeckoChild->WidgetToScreenOffset(); + + nsQueryContentEvent hitTest(true, NS_QUERY_DOM_WIDGET_HITTEST, mGeckoChild); + hitTest.InitForQueryDOMWidgetHittest(widgetLoc); + // This might destroy our widget (and null out mGeckoChild). + mGeckoChild->DispatchWindowEvent(hitTest); + if (!mGeckoChild) + return NO; + if (hitTest.mSucceeded && !hitTest.mReply.mWidgetIsHit) + return NO; + + return YES; +} + +// Don't focus a plugin if we're in a left click-through that will fail (see +// [ChildView isInFailingLeftClickThrough] above). +- (BOOL)shouldFocusPlugin:(BOOL)getFocus +{ + if (!mGeckoChild) + return NO; + + nsCocoaWindow* windowWidget = mGeckoChild->GetXULWindowWidget(); + if (windowWidget && !windowWidget->ShouldFocusPlugin()) + return NO; + + if (getFocus && ![self currentEventShouldFocusPlugin]) + return NO; + + return YES; +} + // Returns NO if the plugin shouldn't be focused/unfocused. - (BOOL)updatePluginFocusStatus:(BOOL)getFocus { if (!mGeckoChild) return NO; + if (![self shouldFocusPlugin:getFocus]) + return NO; + if (mPluginEventModel == NPEventModelCocoa) { nsPluginEvent pluginEvent(true, NS_PLUGIN_FOCUS_EVENT, mGeckoChild); NPCocoaEvent cocoaEvent; diff --git a/widget/cocoa/nsCocoaWindow.h b/widget/cocoa/nsCocoaWindow.h index dc5994671..ac434e0 100644 --- a/widget/cocoa/nsCocoaWindow.h +++ b/widget/cocoa/nsCocoaWindow.h @@ -316,6 +316,9 @@ public: void SetPopupWindowLevel(); + bool IsChildInFailingLeftClickThrough(NSView *aChild); + bool ShouldFocusPlugin(); + NS_IMETHOD ReparentNativeWidget(nsIWidget* aNewParent); protected: diff --git a/widget/cocoa/nsCocoaWindow.mm b/widget/cocoa/nsCocoaWindow.mm index b435155..b95c072 100644 --- a/widget/cocoa/nsCocoaWindow.mm +++ b/widget/cocoa/nsCocoaWindow.mm @@ -2051,6 +2051,36 @@ void nsCocoaWindow::SetPopupWindowLevel() } } +bool nsCocoaWindow::IsChildInFailingLeftClickThrough(NSView *aChild) +{ + if ([aChild isKindOfClass:[ChildView class]]) { + ChildView* childView = (ChildView*) aChild; + if ([childView isInFailingLeftClickThrough]) + return true; + } + NSArray* subviews = [aChild subviews]; + if (subviews) { + NSUInteger count = [subviews count]; + for (NSUInteger i = 0; i < count; ++i) { + NSView* aView = (NSView*) [subviews objectAtIndex:i]; + if (IsChildInFailingLeftClickThrough(aView)) + return true; + } + } + return false; +} + +// Don't focus a plugin if we're in a left click-through that will +// fail (see [ChildView isInFailingLeftClickThrough]). Called from +// [ChildView shouldFocusPlugin]. +bool nsCocoaWindow::ShouldFocusPlugin() +{ + if (!mWindow || IsChildInFailingLeftClickThrough([mWindow contentView])) + return false; + + return true; +} + NS_IMETHODIMP nsCocoaWindow::NotifyIME(NotificationToIME aNotification) {
1 0
0 0
[tor-browser/esr24] Bug 1019003 - ESR24 backport of a visibility warning-fix. r=trivial, a=sledru
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 9f3393850cc61bb2118ec3c3eedb0f74abb1d473 Author: Jeff Walden <jwalden(a)mit.edu> Date: Mon Jun 9 12:57:47 2014 -0700 Bug 1019003 - ESR24 backport of a visibility warning-fix. r=trivial, a=sledru --- js/src/jstypedarray.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/src/jstypedarray.cpp b/js/src/jstypedarray.cpp index a78edd4..735c608 100644 --- a/js/src/jstypedarray.cpp +++ b/js/src/jstypedarray.cpp @@ -3480,7 +3480,7 @@ const JSFunctionSpec _typedArray::jsfuncs[] = { \ return obj; \ return NULL; \ } \ - JS_FRIEND_DATA(const js::Class* const) js::detail::Name ## ArrayClassPtr = \ + const js::Class* const js::detail::Name ## ArrayClassPtr = \ &js::TypedArray::classes[TypedArrayTemplate<NativeType>::ArrayTypeID()]; IMPL_TYPED_ARRAY_JSAPI_CONSTRUCTORS(Int8, int8_t)
1 0
0 0
[tor-browser/esr24] Automated checkin: version bump for thunderbird 24.6.0 release. DONTBUILD CLOSED TREE a=release
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit b430d8339816354d5f08b4c5bf83c66d5cf21931 Author: tbirdbld <none@none> Date: Tue Jun 10 02:55:05 2014 -0400 Automated checkin: version bump for thunderbird 24.6.0 release. DONTBUILD CLOSED TREE a=release --- config/milestone.txt | 2 +- js/src/config/milestone.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/milestone.txt b/config/milestone.txt index c9dc647..71e3ef9 100644 --- a/config/milestone.txt +++ b/config/milestone.txt @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -24.6.0esrpre +24.6.0 diff --git a/js/src/config/milestone.txt b/js/src/config/milestone.txt index c9dc647..71e3ef9 100644 --- a/js/src/config/milestone.txt +++ b/js/src/config/milestone.txt @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -24.6.0esrpre +24.6.0
1 0
0 0
[tor-browser/esr24] Bug 1022785 - Disable android snippets for reftests/crashtests/jsreftests. r=jmaher, a=test-only
by mikeperry@torproject.org 29 Aug '14

29 Aug '14
commit 91405b0182327da5f5cb302fab885f09481431c3 Author: Nathan Froyd <froydnj(a)mozilla.com> Date: Mon Jun 9 13:37:21 2014 -0400 Bug 1022785 - Disable android snippets for reftests/crashtests/jsreftests. r=jmaher, a=test-only --- js/src/tests/user.js | 2 ++ layout/tools/reftest/runreftest.py | 3 +++ 2 files changed, 5 insertions(+) diff --git a/js/src/tests/user.js b/js/src/tests/user.js index 694d4d0..d106db4 100755 --- a/js/src/tests/user.js +++ b/js/src/tests/user.js @@ -29,3 +29,5 @@ user_pref("security.turn_off_all_security_so_that_viruses_can_take_over_this_com user_pref("toolkit.telemetry.enabled", false); user_pref("browser.safebrowsing.enabled", false); user_pref("browser.safebrowsing.malware.enabled", false); +user_pref("browser.snippets.enabled", false); +user_pref("browser.snippets.syncPromo.enabled", false); diff --git a/layout/tools/reftest/runreftest.py b/layout/tools/reftest/runreftest.py index 2bb3d11..c16955a 100644 --- a/layout/tools/reftest/runreftest.py +++ b/layout/tools/reftest/runreftest.py @@ -77,6 +77,9 @@ class RefTest(object): # Likewise for safebrowsing. prefsFile.write('user_pref("browser.safebrowsing.enabled", false);\n') prefsFile.write('user_pref("browser.safebrowsing.malware.enabled", false);\n') + # And for snippets. + prefsFile.write('user_pref("browser.snippets.enabled", false);\n') + prefsFile.write('user_pref("browser.snippets.syncPromo.enabled", false);\n') for v in options.extraPrefs: thispref = v.split("=")
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • ...
  • 29
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.