Commit Graph

121044 Commits

Author SHA1 Message Date
Bobby Holley
14d553647e Bug 821850 - Clone XBL into the XBL scope's compartment. r=bz 2013-02-08 14:24:22 +00:00
Bobby Holley
a9cbc7eea3 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
2be0c8d31e Bug 821850 - Expose XBL members via Xray wrappers. r=bz 2013-02-08 14:24:21 +00:00
Bobby Holley
54afaf16b6 Bug 821850 - Add API to lookup implementation members on XBL bindings. r=bz 2013-02-08 14:24:21 +00:00
Bobby Holley
ca473ac78b 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
28c75be525 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
fdf4f109ca 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
98ba7459d0 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
a332edb8a1 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
61955f5559 Bug 821850 - Store a strong ref to the JSClass in nsXBLBinding. r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
43ec35d571 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
d82e69a6ff 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
d9a73ac04a 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
a2d9d906cb 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
fd02fd27ef Bug 821850 - Clean up security wrappers for NAC. r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
032bee38ff Bug 821850 - Check for XBL scopes in nsContentUtils::IsCallerXBL(). r=bz 2013-02-08 14:24:20 +00:00
Bobby Holley
b757981155 Bug 821850 - Add infrastructure for lazily-created XBL scopes. r=bz 2013-02-08 14:24:19 +00:00
Bobby Holley
966a177f72 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
4bbdcf29e8 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
c7dd1dee85 Bug 821850 - Properly propagate |strict| in JSObject::deleteByValue. r=jorendorff 2013-02-08 14:24:19 +00:00
Kartikaya Gupta
88dcc6657a 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
1a5dcc2958 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
4dcacbb416 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
0e704cf5cf Bug 777468 - Remove unneeded dependency on PanZoomController. r=Cwiiis 2013-02-08 09:11:37 -05:00
Alan Huang
9c9c1cdb68 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
55dfbe1249 Merge 2013-02-08 14:38:27 +01:00
Ms2ger
7249bc8130 Backout changeset 3f192cae69e2 for test_keycodes.xul oranges. 2013-02-08 14:37:37 +01:00
Rafael Ávila de Espíndola
c24d916a01 Bug 839039 - Fix copy and paste. r=vladan. 2013-02-08 08:37:02 -05:00
Ms2ger
6d9d74a796 Bug 839179 - Part c: Add a test for HTMLButtonElement attributes reflection; r=bz 2013-02-08 13:50:30 +01:00
Ms2ger
937b64f610 Bug 839179 - Part b: Move HTMLButtonElement to Paris bindings; r=bz 2013-02-08 13:50:30 +01:00
Ms2ger
2568e4de7e 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
70df75e865 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
e21a8a0da7 Bug 839053 - Part b: Move HTMLLinkElement to Paris bindings; r=bz 2013-02-08 13:50:30 +01:00
Ms2ger
e0c0e44fa1 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
4efaec5eec 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
e4c3c27ffc 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
fa4dfeaaed 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
beb028cc97 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
29991ebc53 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
dcff7dfbbd 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
35136d8877 Bug 827032 - Enable FAIL_ON_WARNINGS on MSVC in netwerk/. r=jduell 2013-02-08 20:49:30 +09:00
Masatoshi Kimura
495d1799b6 Bug 830665 - Use the latest JS version by default in XUL. r=jonas 2013-02-08 20:49:28 +09:00
Ed Morley
edcc415426 Merge mozilla-central to mozilla-inbound 2013-02-08 11:17:50 +00:00
Ed Morley
279d0e9c48 Merge mozilla-inbound to mozilla-central 2013-02-08 11:00:58 +00:00
Panos Astithas
0966001d52 Merge m-c to fx-team 2013-02-08 11:44:11 +02:00
Anton Kovalyov
718dfde61f Bug 830664, Disallow multiple profiles to run in the same time, r=robcee 2013-02-07 13:22:48 -08:00
Anton Kovalyov
69f6fa6a7f Bug 837735 - Replace Cleopatra progress strings with 'Loading profile...', r=robcee 2013-02-07 13:02:38 -08:00
Anton Kovalyov
7261f779c6 Bug 830668 - Add a keyboard shortcut for the Profiler, r=robcee 2013-02-07 11:09:55 -08:00
Phil Ringnalda
45dc3fd24c 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
Ryan VanderMeulen
8ef102a10d Merge the last PGO green inbound changeset to m-c. 2013-02-07 09:55:08 -05:00