Commit Graph

121045 Commits

Author SHA1 Message Date
Bobby Holley
6ccfc2d64b Bug 821850 - Tests. r=bz 2013-02-08 14:24:22 +00:00
Bobby Holley
0a9cda6738 Bug 821850 - Clone XBL into the XBL scope's compartment. r=bz 2013-02-08 14:24:22 +00:00
Bobby Holley
dc7e7a50d2 Bug 821850 - Dynamically waive Xray for field access by XBL script on bound nodes. r=bz 2013-02-08 14:24:22 +00:00
Bobby Holley
4b306e73c6 Bug 821850 - Expose XBL members via Xray wrappers. r=bz 2013-02-08 14:24:21 +00:00
Bobby Holley
e47fde05d0 Bug 821850 - Add API to lookup implementation members on XBL bindings. r=bz 2013-02-08 14:24:21 +00:00
Bobby Holley
8d1e313928 Bug 821850 - Make XBL prototype setup tamper-proof for Xrays. r=bz
We make the class object readonly/non-configurable, as well as all the properties
and methods on the class object.
2013-02-08 14:24:21 +00:00
Bobby Holley
2eef2f91f9 Bug 821850 - Unwrap |callee| before passing it to InstallXBLField. r=bz
InstallXBLField knows how to handle cross-compartment |callee|. However,
The current value will always be wrapped. We need to unwrap said wrappers,
otherwise we'll end up with objects that aren't functions.
2013-02-08 14:24:21 +00:00
Bobby Holley
85c0f5cf46 Bug 821850 - Install XBL field accessors on prototype objects at setup time, and nuke XBLResolve. r=bz 2013-02-08 14:24:21 +00:00
Bobby Holley
c6479a3444 Bug 821850 - Hoist Field machinery into nsXBLProtoImplField. r=bz
This is a pure cut/paste except for removing |static| from XBLResolve.
XBLResolve will go away soon, so there's no need to put it in a header.
2013-02-08 14:24:21 +00:00
Bobby Holley
f1ce397128 Bug 821850 - Remove unused arguments from InstallMember and simplify calling convention. r=bz
Let's just pass a JSContext and do Requests/Compartments in the caller.
2013-02-08 14:24:21 +00:00
Bobby Holley
3d089c3644 Bug 821850 - Store a strong ref to the JSClass in nsXBLBinding. r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
8dfc5ae9df Bug 821850 - Make DoInitJSClass unconditionally fill in aClassObject. r=bz
Right now, DoInitJSClass only returns non-null if the class object is new
(and thus needs to have members installed on it). The code then goes and
unconditionally tries to install the members, null-checking and aborting
each time.

Instead, let's use an explicit boolean and one early return. This lets us
get a reference to our JSClass no matter what, which we need.
2013-02-08 14:24:20 +00:00
Bobby Holley
b3559180d2 Bug 821850 - Remove bogus comment/check and replace with an assert. r=bz
This confused me, because fields are, in fact, exposed via the prototype
via the complicated two-step solution defined in InstallField. As it turns
out, CompilePrototypeMembers throws if mClassObject ends up null.
2013-02-08 14:24:20 +00:00
Bobby Holley
698846e095 Bug 821850 - Pass nsXBLBinding instead of nsIContent during implementation installation. r=bz
This lets us hook up the binding to the JSClass.
2013-02-08 14:24:20 +00:00
Bobby Holley
1e85810762 Bug 821850 - Let nsExpandedPrincipal through CheckFunctionAccess. r=bz
Otherwise the whole method borks when it discovers that the principal doesn't
have a URI.
2013-02-08 14:24:20 +00:00
Bobby Holley
34890dad66 Bug 821850 - Clean up security wrappers for NAC. r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
4b6b3faf6a Bug 821850 - Check for XBL scopes in nsContentUtils::IsCallerXBL(). r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
23776a5404 Bug 821850 - Add infrastructure for lazily-created XBL scopes. r=bz 2013-02-08 14:24:19 +00:00
Bobby Holley
c1612afa13 Bug 821850 - Make XBL-in-content tests Xray-safe. r=bz
We use XPCNativeWrapper.unwrap rather than .wrappedJSObject so that the tests
are agnostic to whether there's an Xray wrapper or not.

I converted test_tree_column_reorder.xul into a chrome test because it does
all sorts of crazy introspection on the binding, and it really should be
a chrome test anyway.
2013-02-08 14:24:19 +00:00
Bobby Holley
518a586d4b Bug 821850 - Don't rewrap |this| in nativeCall. r=jorendorff
This generally works with membrane semantics, but breaks when same-compartment
security wrappers are involved. In particular, when Field{Getter,Setter} live
in the XBL scope and operate on NAC via nativeCall, the this object can't be
rewrapped, because otherwise a SOW will appear and break everything.

It's not ideal to hardcode the index of |this|, but there's not really a great
alternative. IIUC the layout isn't changing any time soon, and this code will
hopefully be short-lived anyway, since SCSWs are on their way out.
2013-02-08 14:24:19 +00:00
Bobby Holley
bae9282c5c Bug 821850 - Properly propagate |strict| in JSObject::deleteByValue. r=jorendorff 2013-02-08 14:24:19 +00:00
Kartikaya Gupta
340661f4dc Bug 777468 - Move ownership of TouchEventHandler from LayerView to JavaPanZoomController. r=Cwiiis
This patch has a bunch of semi-independent changes that unfortunately
couldn't be split apart without introducing hacks to make stuff build
on the intermediate patches. The main changes are:
- Moving TouchEventHandler from LayerView to JavaPanZoomController
- Registering the touch interceptor on the LayerView rather than the
  TouchEventHandler
- Moving the Tab:HasTouchListener handler from GeckoApp to JPZC

The net effect of all of this is that the TouchEventHandler is hidden
behind the PanZoomController interface and not accessible to GeckoApp
or GeckoAppShell.

Additionally, some of the JPZC methods were renamed from onXXX to
handleXXX to maintain the convention that onXXX methods are "interface"
methods (i.e. exposed to arbitrary other code) whereas handleXXX
methods are private/package and should only be called in very specific
ways.
2013-02-08 09:13:09 -05:00
Kartikaya Gupta
5eeb9c6f6a Bug 777468 - Rename PanZoomController to JavaPanZoomController and extract a new PanZoomController interface. r=Cwiiis
--HG--
rename : mobile/android/base/gfx/PanZoomController.java => mobile/android/base/gfx/JavaPanZoomController.java
2013-02-08 09:12:59 -05:00
Kartikaya Gupta
8edd8b627e Bug 777468 - Move mobile/android/base/ui/* to mobile/android/base/gfx/. r=Cwiiis
--HG--
rename : mobile/android/base/ui/Axis.java => mobile/android/base/gfx/Axis.java
rename : mobile/android/base/ui/PanZoomController.java => mobile/android/base/gfx/PanZoomController.java
rename : mobile/android/base/ui/PanZoomTarget.java => mobile/android/base/gfx/PanZoomTarget.java
rename : mobile/android/base/ui/SimpleScaleGestureDetector.java => mobile/android/base/gfx/SimpleScaleGestureDetector.java
rename : mobile/android/base/ui/SubdocumentScrollHelper.java => mobile/android/base/gfx/SubdocumentScrollHelper.java
2013-02-08 09:11:43 -05:00
Kartikaya Gupta
5b302ab8f2 Bug 777468 - Remove unneeded dependency on PanZoomController. r=Cwiiis 2013-02-08 09:11:37 -05:00
Alan Huang
42a6d75810 Bug 839312 - Specify gonk low-memory-killer priorityClasses in the correct order and fix typo in b2g.js which was preventing us from giving the kernel one of the necessary priority classes. r=jlebar 2013-02-08 14:09:26 +00:00
Ms2ger
e4b5abdd5a Merge 2013-02-08 14:38:27 +01:00
Ms2ger
381c260bc3 Backout changeset 3f192cae69e2 for test_keycodes.xul oranges. 2013-02-08 14:37:37 +01:00
Rafael Ávila de Espíndola
1822adbdcf Bug 839039 - Fix copy and paste. r=vladan. 2013-02-08 08:37:02 -05:00
Ms2ger
e3c2a6ec01 Bug 839179 - Part c: Add a test for HTMLButtonElement attributes reflection; r=bz 2013-02-08 13:50:30 +01:00
Ms2ger
cc7807ddbe Bug 839179 - Part b: Move HTMLButtonElement to Paris bindings; r=bz 2013-02-08 13:50:30 +01:00
Ms2ger
37b271ffe4 Bug 839179 - Part a: Rename nsHTMLButtonElement to mozilla::dom::HTMLButtonElement; r=bz
--HG--
rename : content/html/content/src/nsHTMLButtonElement.cpp => content/html/content/src/HTMLButtonElement.cpp
rename : content/html/content/src/nsHTMLButtonElement.cpp => content/html/content/src/HTMLButtonElement.h
2013-02-08 13:50:30 +01:00
Ms2ger
cd09e995c7 Bug 839053 - Part c: Add a test for HTMLLinkElement attributes reflection; r=bz
--HG--
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_link_attributes_reflection.html
2013-02-08 13:50:30 +01:00
Ms2ger
c26449c818 Bug 839053 - Part b: Move HTMLLinkElement to Paris bindings; r=bz 2013-02-08 13:50:30 +01:00
Ms2ger
473c834f8d Bug 839053 - Part a: Rename nsHTMLLinkElement to mozilla::dom::HTMLLinkElement; r=bz
--HG--
rename : content/html/content/src/nsHTMLLinkElement.cpp => content/html/content/src/HTMLLinkElement.cpp
rename : content/html/content/src/nsHTMLLinkElement.cpp => content/html/content/src/HTMLLinkElement.h
2013-02-08 13:50:30 +01:00
Boris Zbarsky
29957b7b8b Bug 839116 part 3. Add tests for HTMLSharedElement attribute reflection. r=ms2ger
--HG--
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_base_attributes_reflection.html
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_dir_attributes_reflection.html
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_html_attributes_reflection.html
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_param_attributes_reflection.html
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_q_attributes_reflection.html
2013-02-08 12:20:11 +00:00
Boris Zbarsky
96a978de51 Bug 839116 part 2. Convert HTMLSharedElement to WebIDL. r=ms2ger
--HG--
rename : dom/webidl/HTMLLIElement.webidl => dom/webidl/HTMLBaseElement.webidl
rename : dom/webidl/HTMLLIElement.webidl => dom/webidl/HTMLDirectoryElement.webidl
rename : dom/webidl/HTMLLIElement.webidl => dom/webidl/HTMLHeadElement.webidl
rename : dom/webidl/HTMLLIElement.webidl => dom/webidl/HTMLHtmlElement.webidl
rename : dom/webidl/HTMLLIElement.webidl => dom/webidl/HTMLParamElement.webidl
rename : dom/webidl/HTMLLIElement.webidl => dom/webidl/HTMLQuoteElement.webidl
2013-02-08 12:20:11 +00:00
Boris Zbarsky
4a140aa268 Bug 839116 part 1. Rename nsHTMLSharedElement to HTMLSharedElement. r=ms2ger
--HG--
rename : content/html/content/src/nsHTMLSharedElement.cpp => content/html/content/src/HTMLSharedElement.cpp
rename : content/html/content/src/nsHTMLSharedElement.cpp => content/html/content/src/HTMLSharedElement.h
2013-02-08 12:20:11 +00:00
Boris Zbarsky
24d9f6a70b Bug 836850. Allow a single C++ class to implement multiple WebIDL interfaces. r=peterv
--HG--
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_dl_attributes_reflection.html
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_ul_attributes_reflection.html
2013-02-08 12:20:11 +00:00
Ben Turner
f6f1ac3cc1 Bug 839117 - 'Don't allow a leaking memory reporter to hang workers'. r=jlebar. 2013-02-08 03:50:00 -08:00
Dão Gottwald
cfd8d6306c Bug 825804 - Popup notifications and notification bars shouldn't persist across page reloads. r=gavin 2013-02-08 13:15:46 +01:00
Masatoshi Kimura
62d87c38b8 Bug 827032 - Enable FAIL_ON_WARNINGS on MSVC in netwerk/. r=jduell 2013-02-08 20:49:30 +09:00
Masatoshi Kimura
321e0e3862 Bug 830665 - Use the latest JS version by default in XUL. r=jonas 2013-02-08 20:49:28 +09:00
Ed Morley
487f745d57 Merge mozilla-central to mozilla-inbound 2013-02-08 11:17:50 +00:00
Ed Morley
a94fd53e44 Merge mozilla-inbound to mozilla-central 2013-02-08 11:00:58 +00:00
Panos Astithas
68b972aee6 Merge m-c to fx-team 2013-02-08 11:44:11 +02:00
Anton Kovalyov
d689d5f639 Bug 830664, Disallow multiple profiles to run in the same time, r=robcee 2013-02-07 13:22:48 -08:00
Anton Kovalyov
2057987ef8 Bug 837735 - Replace Cleopatra progress strings with 'Loading profile...', r=robcee 2013-02-07 13:02:38 -08:00
Anton Kovalyov
0a4193cf74 Bug 830668 - Add a keyboard shortcut for the Profiler, r=robcee 2013-02-07 11:09:55 -08:00
Phil Ringnalda
5a711e4b72 Merge m-c to fx-team
--HG--
rename : content/media/webaudio/AudioEventTimeline.h => content/media/AudioEventTimeline.h
2013-02-07 07:16:22 -08:00