Commit Graph

100 Commits

Author SHA1 Message Date
Boris Zbarsky
9523850626 Bug 996831. Add a ToJSValue overload for nsresult, to allow rejecting promises from C++ more easily. r=bholley 2014-04-16 15:13:41 -04:00
Boris Zbarsky
4ad64a690c Bug 994453 part 1. Factor out the to-JS conversions from Promise.h into mozilla::dom::ToJSValue methods. r=bholley
Apart from moving the methods, I made the following changes:

1)  Renamed them to ToJSValue.
2)  Inlined the boolean overload.
3)  Added overloads that take integer types.
4)  Changed the order of the aCx and aArgument arguments so aCx comes first.
5)  Renamed "abv" to "obj" in the typed array overload.
2014-04-10 14:57:07 -04:00
Boris Zbarsky
7eca30f98c Bug 991080. Add an overload of Promise::ArgumentToJSValue that lets callers pass in an nsTArray to MaybeResolve() a promise with a JS array. r=khuey 2014-04-10 00:58:43 -04:00
Boris Zbarsky
a0bb95a823 Bug 993889 part 1. Remove "scope" argument from nsContentUtils::WrapNative. r=bholley 2014-04-10 00:58:41 -04:00
Andrea Marchesini
2029b0f60f Bug 974893 - Remove EnterCompartment and keep the global with the value in Promise, r=bz 2014-04-09 09:30:24 +01:00
Ed Morley
937b351273 Backed out changeset 7fa9564a2486 (bug 974893) for build failures 2014-04-09 09:08:39 +01:00
Andrea Marchesini
726b941dd1 Bug 974893 - Remove EnterCompartment and keep the global with the value in Promise, r=bz 2014-04-09 08:32:46 +01:00
Boris Zbarsky
33e4783558 Bug 991742 part 10. Remove the "aScope" argument from the Promise ArgumentToJSValue() methods. r=bholley 2014-04-08 18:27:19 -04:00
Boris Zbarsky
feebd363fb Bug 991742 part 9. Remove the "scope" argument of WrapNewBindingObject. r=bholley 2014-04-08 18:27:19 -04:00
Boris Zbarsky
79dab91ff6 Bug 991742 part 8. Remove the "aScope" argument of WebIDL/nsWrapperCache WrapObject() methods. r=bholley
This patch was mostly generated with the following command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e '/WrapObject(JSContext/ {; N; s/\(WrapObject(JSContext *\* *a\{0,1\}[Cc]x\),\n\{0,1\} *JS::Handle<JSObject\*> a\{0,1\}[sS]cope/\1/ ; }' -i ""

and then reverting the changes that made to
dom/bindings/BindingUtils.h, since those WrapObject methods are not
the ones we're trying to change here, plus a bunch of manual fixups
for cases that this command did not catch (including all the callsites
of WrapObject()).
2014-04-08 18:27:18 -04:00
Nikhil Marathe
7300c8e659 Bug 956197 - Tests to check Promises can accept iterators. r=bz
--HG--
extra : amend_source : 7989612b44c67393de7f74fdd0054587722cc79a
2014-03-28 08:17:53 -07:00
Yuan Xulei
d9264c3059 Bug 934368 - Extend Promise#MaybeResolve to receive boolean value. r=smaug 2014-02-26 16:18:34 +08:00
Yuan Xulei
9d543fd864 Bug 910412 - Implement |getRoot|, |createDirectory| and |get| for Directory. r=dhylands, r=smaug 2014-03-05 11:25:40 +08:00
Nikhil Marathe
1b94bf3a95 Bug 967005 - Report rejected promises when worker stops running. r=bent
--HG--
extra : rebase_source : 3f569387061151b1afb5f09a8d1ca04e85e376e1
2014-03-12 07:31:03 -07:00
Wes Kocher
7bce447ef8 Backed out changeset 716ba77a9d0a (bug 967005) for ASAN m-4 failures 2014-03-11 17:23:35 -07:00
Nikhil Marathe
d2b78e0431 Bug 967005 - Report rejected promises when worker stops running. r=bent 2014-03-11 16:10:41 -07:00
Ryan VanderMeulen
a154cec3e0 Backed out 5 changesets (bug 910412) for intermittent crash whack-a-mole.
Backed out changeset e3eb9463b3e1 (bug 910412)
Backed out changeset d5863d302bde (bug 910412)
Backed out changeset 422b66d4b1ca (bug 910412)
Backed out changeset 3431d59d752e (bug 910412)
Backed out changeset b1c0310cdac1 (bug 910412)
2014-03-11 12:17:03 -04:00
Richard Barnes
6de821884f Bug 978435 - Add ArgumentToJSVal overload for typed arrays. r=bz 2014-03-10 08:55:46 -04:00
Yuan Xulei
d0efc292f4 Bug 910412 - Implement |getRoot|, |createDirectory| and |get| for Directory. r=dhylands, r=smaug 2014-03-05 11:25:40 +08:00
Kyle Huey
006d532a8a Bug 974120: Add helpers for using Promse::MaybeResolve/MaybeReject from C++. r=bz
Using JSAPI is tedious and error-prone.  It's much better to handle that once in the Promise code and allow callers to pass C++ objects.
2014-02-25 13:34:55 -08:00
Boris Zbarsky
7ee245a69d Bug 970764. Remove support for non-optional "any" arguments values, since "any" needs to be able to include undefined anyway. Have "any" arguments and dictionary entries default to undefined unless the IDL explicitly says "= null". r=khuey 2014-02-19 10:13:38 -05:00
Nikhil Marathe
a1c134c1cb Bug 966348 - Rename Promise.cast to Promise.resolve. r=bz 2014-02-10 09:27:02 -08:00
Nikhil Marathe
16a3c5ed8b Bug 918806 - Enable DOM Promises. sr=bz
--HG--
extra : rebase_source : dbc7ef836fe7c2a71f38fedda004d7f988361a85
2014-01-30 13:14:00 -08:00
Ryan VanderMeulen
aa8ede1cff Backed out changesets 6db8b08a3aea and 1d7c2025bb56 (bug 918806) for B2G mochitest failures. 2014-01-30 14:46:36 -05:00
Nikhil Marathe
bbd4ae9d07 Bug 918806 - Enable DOM Promises. sr=bz 2014-01-30 09:41:43 -08:00
Nikhil Marathe
2c39f323ee Bug 945766 - DOM Promise should pass Promise/A+ tests. r=bz
--HG--
extra : rebase_source : efd56968e490fcde3ede6535002864104511a1d1
2014-01-28 10:14:57 -08:00
Nikhil Marathe
d5f6f72d7b Bug 939332 - Implement Promise.all, Promise.cast, Promise.race. r=bz
--HG--
extra : rebase_source : 72c1a87a6352005765442ea8903cfa16da8608fd
extra : amend_source : 71b6af7c8446cd501bc337d50a345f24814f20db
2013-11-19 13:53:00 -08:00
Nikhil Marathe
af8e8bebc9 Bug 879245 - Implement thenables for Promises. r=bz
--HG--
extra : rebase_source : cde27792ae58b13c88367df7a99fc8981097eedd
2014-01-23 10:47:29 -08:00
Nikhil Marathe
e345f14d73 Bug 959375 - Add Promise Resolve/Reject overloads accepting a window. r=baku 2014-01-13 14:36:03 -08:00
Nikhil Marathe
c78157de46 Bug 915233 - DOM Promises on Workers. r=baku,bent,smaug,bz sr=sicking 2013-11-24 11:26:07 -08:00
Nikhil Marathe
8213b73fa7 Bug 939906 - Make Promise.resolve(), Promise.reject(), Promise.prototype.then() and Promise.prototype.catch() spec compliant. r=baku
--HG--
extra : rebase_source : 7f32dd1222e4ab04f3f0cb4f450b734a4014c805
2013-11-19 13:29:47 -08:00
Nikhil Marathe
7bb87239ad Bug 882076 - C++ callbacks to DOM Promises. r=baku,mccr8 2013-11-19 10:43:51 -08:00
Nikhil Marathe
df6ab270c0 Bug 939909 - Get rid of Optional<> from internal Promise functions. r=bz
--HG--
extra : rebase_source : bcf49b1b593504aeb619f4bbd16028e57861641b
2013-11-19 10:39:51 -08:00
Michael Henretty
955b4b6da4 Bug 899574 - Add public API for resolving promises in C++. r=baku 2013-09-26 11:09:16 -07:00
Reuben Morais
f707258233 Backed out 2 changesets (bug 899574) for breaking Gaia tests
--HG--
rename : dom/tests/mochitest/notification/desktop-notification/create_notification.html => dom/tests/mochitest/notification/create_notification.html
rename : dom/tests/mochitest/notification/desktop-notification/notification_common.js => dom/tests/mochitest/notification/notification_common.js
rename : dom/tests/mochitest/notification/desktop-notification/test_basic_notification.html => dom/tests/mochitest/notification/test_basic_notification.html
rename : dom/tests/mochitest/notification/desktop-notification/test_basic_notification_click.html => dom/tests/mochitest/notification/test_basic_notification_click.html
rename : dom/tests/mochitest/notification/desktop-notification/test_leak_windowClose.html => dom/tests/mochitest/notification/test_leak_windowClose.html
rename : dom/tests/mochitest/notification/desktop-notification/test_notification_tag.html => dom/tests/mochitest/notification/test_notification_tag.html
rename : dom/tests/mochitest/notification/desktop-notification/test_system_principal.xul => dom/tests/mochitest/notification/test_system_principal.xul
2013-10-07 14:41:13 -04:00
Michael Henretty
927a6de48d Bug 899574 - Add public API for resolving promises in C++. r=baku 2013-09-26 11:09:16 -07:00
Andrea Marchesini
fcc425445c Bug 911213 - Implement new promise constructor, r=bz 2013-09-11 18:03:04 +02:00
Nicholas Nethercote
01c70c8c97 Bug 911020 - Introduce js/TypeDecls.h, which holds very commonly used type declarations from the JS engine. r=luke.
--HG--
extra : rebase_source : 008ef689989f93b46627b8be8608bdbc544ca3a2
2013-08-27 19:59:14 -07:00
Boris Zbarsky
b8e47c2682 Bug 903419 part 2. Report unhandled rejections in promises. r=smaug,bholley,luke 2013-08-29 00:30:06 -04:00
Kyle Huey
52234568d4 Bug 887533: Remove even more includes from dom/bindings. r=bz 2013-08-22 22:17:11 -07:00
Kyle Huey
ffc165fd35 Back out Bug 887533 for test failures. 2013-08-22 23:40:32 -07:00
Kyle Huey
7be62a98b2 Bug 887533: Remove even more includes from dom/bindings. r=bz 2013-08-22 22:17:11 -07:00
Kyle Huey
d2e93ff015 Bug 903772: Part 3 - Refactor GlobalObject. r=peterv 2013-08-22 22:17:08 -07:00
Boris Zbarsky
3c1b29f835 Bug 897913 part 3. Enable Promise in chrome and certified apps, even when preffed off. r=bholley, pending review from baku 2013-08-07 17:40:20 -04:00
Andrea Marchesini
8de96f400d Bug 875289 - Remove .done() and allow undefined to be passed to .then() and .catch(), r=mounir, sr=bz 2013-07-16 15:56:24 +02:00
Andrea Marchesini
ff39bab6f8 Bug 884279 - Rename Future to Promise. r=mounir
--HG--
rename : dom/future/Makefile.in => dom/promise/Makefile.in
rename : dom/future/Future.cpp => dom/promise/Promise.cpp
rename : dom/future/Future.h => dom/promise/Promise.h
rename : dom/future/FutureCallback.cpp => dom/promise/PromiseCallback.cpp
rename : dom/future/FutureCallback.h => dom/promise/PromiseCallback.h
rename : dom/future/FutureResolver.cpp => dom/promise/PromiseResolver.cpp
rename : dom/future/FutureResolver.h => dom/promise/PromiseResolver.h
rename : dom/future/moz.build => dom/promise/moz.build
rename : dom/future/tests/Makefile.in => dom/promise/tests/Makefile.in
rename : dom/future/tests/moz.build => dom/promise/tests/moz.build
rename : dom/future/tests/test_bug883683.html => dom/promise/tests/test_bug883683.html
rename : dom/future/tests/test_future.html => dom/promise/tests/test_promise.html
rename : dom/future/tests/test_resolve.html => dom/promise/tests/test_resolve.html
rename : dom/webidl/Future.webidl => dom/webidl/Promise.webidl
2013-07-11 16:40:36 -04:00
Ed Morley
ac3d49a744 Backed out changeset 96036434bb78 (bug 875289) for mochitest-chrome failures on a CLOSED TREE
--HG--
rename : dom/promise/Promise.cpp => dom/future/Future.cpp
rename : dom/promise/Promise.h => dom/future/Future.h
rename : dom/promise/PromiseCallback.cpp => dom/future/FutureCallback.cpp
rename : dom/promise/PromiseCallback.h => dom/future/FutureCallback.h
rename : dom/promise/PromiseResolver.cpp => dom/future/FutureResolver.cpp
rename : dom/promise/PromiseResolver.h => dom/future/FutureResolver.h
rename : dom/promise/Makefile.in => dom/future/Makefile.in
rename : dom/promise/moz.build => dom/future/moz.build
rename : dom/promise/tests/Makefile.in => dom/future/tests/Makefile.in
rename : dom/promise/tests/moz.build => dom/future/tests/moz.build
rename : dom/promise/tests/test_promise.html => dom/future/tests/test_future.html
rename : dom/promise/tests/test_resolve.html => dom/future/tests/test_resolve.html
rename : dom/webidl/Promise.webidl => dom/webidl/Future.webidl
2013-06-20 11:20:49 +01:00
Ed Morley
4974f38562 Backed out changeset 80732a2b8422 (bug 875289) 2013-06-20 11:20:01 +01:00
Andrea Marchesini
8d49f07742 Bug 875289 - Remove .done() and allow undefined to be passed to .then() and .catch(), r=mounir 2013-06-20 10:49:47 +02:00
Andrea Marchesini
48c75b0ef5 Bug 875289 - Renaming Future to Promise, r=mounir
--HG--
rename : dom/future/Makefile.in => dom/promise/Makefile.in
rename : dom/future/Future.cpp => dom/promise/Promise.cpp
rename : dom/future/Future.h => dom/promise/Promise.h
rename : dom/future/FutureCallback.cpp => dom/promise/PromiseCallback.cpp
rename : dom/future/FutureCallback.h => dom/promise/PromiseCallback.h
rename : dom/future/FutureResolver.cpp => dom/promise/PromiseResolver.cpp
rename : dom/future/FutureResolver.h => dom/promise/PromiseResolver.h
rename : dom/future/moz.build => dom/promise/moz.build
rename : dom/future/tests/Makefile.in => dom/promise/tests/Makefile.in
rename : dom/future/tests/moz.build => dom/promise/tests/moz.build
rename : dom/future/tests/test_future.html => dom/promise/tests/test_promise.html
rename : dom/future/tests/test_resolve.html => dom/promise/tests/test_resolve.html
rename : dom/webidl/Future.webidl => dom/webidl/Promise.webidl
2013-06-20 10:49:40 +02:00