Commit Graph

73 Commits

Author SHA1 Message Date
Olli Pettay
a062f00aab Bug 1218190 - Add a pref to enable Clients.openWindow, r=catalinb 2015-10-25 22:36:27 +02:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nikhil Marathe
25e263af21 Bug 1144660 - client.focus() adds window interaction checks and directly uses DOMServiceWorkerFocusClient to focus window. r=ehsan,dao
client.focus() now directly uses the DOMServiceWorkerFocusClient event. The
platform popup checking is not available on service workers. Instead each
worker maintains a counter of if it is allowed to interact with windows. This
counter is currently only incremented by the notificationclick event and
dropped after the event has been dispatched.

Since acquiring a client is an async operation most service workers will
perform in notificationclick, an additional extension is granted after the event
during which the service worker may focus a client. This extension is only granted
if the script invokes NotificationEvent.waitUntil() at which point the timer begins.
The extension is terminated when the Promise passed to waitUntil() is fulfilled, or
the timer expires, whichever comes first.

--HG--
extra : commitid : 5wavKTRZWcy
extra : rebase_source : fc8ab4ef6c9bf384b5525b0bc979b3cedc4e1d6c
2015-07-23 08:30:27 -07:00
Wes Kocher
5e90ccec17 Backed out 3 changesets (bug 1191495, bug 1153499, bug 1144660) for mochitest-push crashes
Backed out changeset 8917e7323399 (bug 1191495)
Backed out changeset 13ed6f60d3f9 (bug 1144660)
Backed out changeset 95bd6642e4b1 (bug 1153499)
2015-08-05 15:18:05 -07:00
Nikhil Marathe
9c77fa0bcd Bug 1144660 - client.focus() adds window interaction checks and directly uses DOMServiceWorkerFocusClient to focus window. r=ehsan,dao
client.focus() now directly uses the DOMServiceWorkerFocusClient event. The
platform popup checking is not available on service workers. Instead each
worker maintains a counter of if it is allowed to interact with windows. This
counter is currently only incremented by the notificationclick event and
dropped after the event has been dispatched.

Since acquiring a client is an async operation most service workers will
perform in notificationclick, an additional extension is granted after the event
during which the service worker may focus a client. This extension is only granted
if the script invokes NotificationEvent.waitUntil() at which point the timer begins.
The extension is terminated when the Promise passed to waitUntil() is fulfilled, or
the timer expires, whichever comes first.

--HG--
extra : commitid : 5DUAOg4j41K
extra : rebase_source : 775d36e41c3d3b62e5189b032220fa2469ac237d
extra : source : 8300859f8e9751ca663f96fae3375dfda8b2ad13
2015-07-23 08:30:27 -07:00
Kaku Kuo
9c3f995e43 Bug 1044102 - Part 1 - Implement ImageBitmap. r=roc, sr=smaug
--HG--
extra : rebase_source : c26f327064125a6d5690b03571f25ea0e25347eb
2015-07-30 20:47:00 +02:00
Nikhil Marathe
0b129137a7 Bug 1114554 - Patch 1 - Notification ServiceWorker API stubs. r=wchen,baku
--HG--
extra : rebase_source : e033641ae9d271d1681c424f533db63671b3e735
2015-06-25 18:50:24 -07:00
Ryan VanderMeulen
84d140a54b Backed out 11 changesets (bug 916893, bug 1114554) for various mochitest and Gij failures.
Backed out changeset 247ca4bf258e (bug 1114554)
Backed out changeset 5578d5c280a6 (bug 1114554)
Backed out changeset 404830c1ecf7 (bug 1114554)
Backed out changeset 15bdf9c78e6e (bug 1114554)
Backed out changeset f92abe5ec784 (bug 1114554)
Backed out changeset 75324b6862a8 (bug 1114554)
Backed out changeset ce8a768782f2 (bug 1114554)
Backed out changeset 0d860fd12534 (bug 1114554)
Backed out changeset 7dc2448065a9 (bug 916893)
Backed out changeset c3b07f0d1a60 (bug 916893)
Backed out changeset 61c3f24cc908 (bug 916893)

CLOSED TREE
2015-06-25 19:52:40 -04:00
Nikhil Marathe
914907fc27 Bug 1114554 - Patch 1 - Notification ServiceWorker API stubs. r=wchen,baku
--HG--
extra : rebase_source : 10558f76070842454f22356d35b4f6639f990e29
2015-03-10 18:57:09 -07:00
Nikhil Marathe
0db24a2c7c Bug 1173389 - Disable ServiceWorker network interception by default. r=ehsan
--HG--
extra : rebase_source : 6309f011f978f08c4f104123910f7d8d9e56045a
2015-06-12 16:28:13 -07:00
Jose Antonio Olivera Ortega
2d3a0be044 Bug 1131352 - Part 2: Add ServiceWorkerGlobalScope skipWaiting(). r=nsm, r=baku 2015-06-02 07:12:00 -04:00
Andrew McCreight
9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Boris Zbarsky
34d521e285 Bug 1155984. Improve the performance of the "self" getter in both window and workers. r=peterv,jorendorff 2015-04-27 13:38:12 -04:00
Doug Turner
1803c2eea5 Bug 1157108 - onpush EventHandler support. r=ehsan 2015-04-23 20:43:40 +02:00
Nikhil Marathe
5b54bf699f Bug 1131327 - Patch 2 - Expose to workers. r=baku
This patch exposes ServiceWorkerRegistration (and ServiceWorker to satisfy constraints) to workers.

For now, a null registration is returned in the worker.

--HG--
extra : rebase_source : ae1b59d5ee3b3522826ed59fcfcb31e009018ac3
2015-04-03 22:46:07 -07:00
Nikhil Marathe
e8ed488816 Bug 1131350 - Move update() to ServiceWorkerRegistration. r=baku
--HG--
extra : rebase_source : 0483ec35b9b53c4970afaf76ff3b8a6f92120e34
2015-03-19 18:09:10 -07:00
Eddy Bruël
b86b9bb514 Bug 1092102 - Implement WorkerDebuggerGlobalScope.createSandbox;r=khuey 2015-03-31 12:22:40 +02:00
Carsten "Tomcat" Book
5245fa5a7b Backed out changeset 71abbf190d53 (bug 1092102) for static analysis build bustage on a CLOSED TREE
--HG--
extra : rebase_source : fb64615c90507f79d27f3ab096e6e0259cb38c3e
2015-03-31 11:14:46 +02:00
Eddy Bruël
0c47b481d2 Bug 1092102 - Implement WorkerDebuggerGlobalScope.createSandbox;r=khuey 2015-03-31 10:19:04 +02:00
Eddy Bruël
8f6d3f73d2 Bug 1092102 - Implement WorkerDebuggerGlobalScope.setImmediate;r=khuey 2015-03-30 13:54:38 +02:00
Andrea Marchesini
e6f385fb3d Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00:00
Eddy Bruël
208b56c029 Bug 1092102 - Implement WorkerDebuggerGlobalScope.enterEventLoop;r=khuey 2015-03-27 07:17:16 +01:00
Eddy Bruël
7c855a15e6 Bug 1092102 - Implement WorkerDebuggerGlobalScope.reportError;r=khuey 2015-03-26 20:09:45 +01:00
Ehsan Akhgari
883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Eddy Bruël
7989a0b7bf Bug 1092102 - Implement WorkerDebugger.postMessage;r=khuey 2015-03-20 12:15:59 +01:00
Boris Zbarsky
dc24477d79 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Ehsan Akhgari
60095b3b16 Bug 1131353 - Make ServiceWorkerGlobalScope.close() throw InvalidAccessError; r=baku 2015-03-06 08:19:33 -05:00
Eddy Bruël
a95bcbb9fd Bug 1092102 - Implement a WorkerDebuggerGlobalScope;r=khuey 2015-03-04 00:51:53 +01:00
Ben Kelly
8bf704b7d2 Bug 940273 - Part 6 - Expose Service Worker Cache on workers as self.caches. r=ehsan 2015-03-02 14:23:00 +01:00
Boris Zbarsky
436b43b3ce Bug 1132655. Don't allow conversions from DOMString to const XPCOM string references, since it's meant to be an outparam only. r=smaug 2015-02-12 18:39:26 -05:00
Ehsan Akhgari
a61a347792 Bug 1123016 - Clarify the ownership of DOMEventTargetHelper::mParentObject/mOwnerWindow; r=smaug
This patch converts DOMEventTargetHelper::mParentObject into an
nsWeakPtr, and adds fatal assertions to ensure that all future
nsIGlobalObject implementations support weak references.  It also marks
DOMEventTargetHelper::mOwnerWindow as a non-owning reference.
2015-01-23 08:37:37 -05:00
Peter Van der Beken
dc3a33aa88 Bug 1096328 - Remove nativeOwnership from Bindings.conf, make rooting analysis happy. r=bz.
--HG--
extra : rebase_source : 54a1e408aec6c7485152f18693047b2992251aff
2015-01-08 22:56:42 +01:00
Andrea Marchesini
449657cc1a Bug 1065366 - Implement ServiceWorkerGlobalScope update(), r=nsm
--HG--
extra : rebase_source : abdca619a27b46693ead93a6f468a40b2eeab2cf
2014-10-06 16:45:14 +01:00
Ben Turner
2be368dceb Bug 701634 - Support IndexedDB in Workers, r=khuey+baku. 2014-12-16 22:26:15 -08:00
Andrea Marchesini
9d30f59efd Bug 1077393 - Rename ScalarValueString to USVString. r=smaug
--HG--
rename : dom/bindings/parser/tests/test_scalarvaluestring.py => dom/bindings/parser/tests/test_usvstring.py
rename : dom/bindings/test/test_scalarvaluestring.html => dom/bindings/test/test_usvstring.html
2014-11-20 12:58:00 +01:00
Ehsan Akhgari
e07a65fef2 Bug 982726 - Part 1.2: Break the cyclic dependency between WorkerScope.h and ServiceWorkerClients.h, and introduce a ToSupports overload for WorkerGlobalScope in order to fix the b2g builds. r=baku 2014-10-27 12:03:00 +01:00
Catalin Badea
610145e67c Bug 982726 - Patch 1.1 - Service Worker: ServiceWorkerClients and Client interfaces with getServiced(). r=baku 2014-10-27 12:03:00 +01:00
Peter Van der Beken
d76c717d3c Bug 1068740 - Consider putting union types in the binding files where they're used. r=bz.
--HG--
extra : rebase_source : 7e0b1e2f60757b7758704dab3672ee829f3e4085
2014-10-01 20:43:26 +02:00
Nikhil Marathe
6e8e93e87a Bug 1017613 - Part 3 - fetch() IDL and stubs. r=baku
--HG--
extra : transplant_source : %B3%0A%E7%17m%5C%A5%DF%F4%1A%90Z%CF%B7%E2Y%CA%1E%21w
2014-07-24 18:30:07 -07:00
Andrea Marchesini
7396255880 Bug 982728 - Implement ServiceWorkerGlobalScope unregister(), r=nsm 2014-09-10 11:21:32 -04:00
Ryan VanderMeulen
8be77b965e Backed out 4 changesets (bug 982726) for the same serviceworker perma-fails it hit last time it landed.
Backed out changeset 9674f68df2e5 (bug 982726)
Backed out changeset 9d397edb8e9a (bug 982726)
Backed out changeset ebe7add5dd11 (bug 982726)
Backed out changeset 2771520aa1b9 (bug 982726)
2014-09-03 21:45:30 -04:00
Catalin Badea
ac388bcb58 Bug 982726 - Patch 1 - Service Worker: ServiceWorkerClients and Client interfaces with getServiced(). r=baku
--HG--
extra : rebase_source : f8dd649fd30cfffb2a361aa24868e83413e7b54c
2014-08-27 10:24:09 -07:00
Wes Kocher
9e0a82dbec Backed out 4 changesets (bug 982726) for mochitest-4 bustage
Backed out changeset 547076d4a357 (bug 982726)
Backed out changeset 095ca68e5d38 (bug 982726)
Backed out changeset 05acfcc7a341 (bug 982726)
Backed out changeset 9244a16c3258 (bug 982726)
2014-09-02 19:09:38 -07:00
Catalin Badea
a2d3be8aeb Bug 982726 - Patch 1 - Service Worker: ServiceWorkerClients and Client interfaces with getServiced(). r=baku
--HG--
extra : transplant_source : %06f%1C%BE%29%D4F%BAeN%0CI_%93y%8A%8FE%E5%BB
2014-08-27 10:24:09 -07:00
Ehsan Akhgari
1b1d6ffebf Bug 1061023 - Fix more bad implicit constructors in DOM; r=baku
--HG--
extra : rebase_source : c80c5f9d7ae28286513cdb52ad76b46c240bdd5d
2014-09-01 18:26:43 -04:00
Boris Zbarsky
ed56d2edc8 Bug 908390 part 2. Implement performance.now() on workers. r=khuey
--HG--
rename : dom/workers/test/test_worker_interfaces.html => dom/workers/test/test_worker_performance_now.html
rename : dom/tests/mochitest/general/test_performance_now.html => dom/workers/test/test_worker_performance_now.js
2014-08-29 19:50:06 -04:00
Ehsan Akhgari
41a7ea2d35 Bug 1050104 - Do not return a new console object every time self.console is called on workers; r=baku
--HG--
extra : rebase_source : f259f6677662ce019b19e22e60a167f64cf47c1d
2014-08-08 08:34:30 -04:00
Ehsan Akhgari
1ba20dc5eb Backed out changeset 9cc8465f45a5 (bug 1050104) for mochitest-4 leaks 2014-08-08 09:30:25 -04:00
Ehsan Akhgari
d1e4d33682 Bug 1050104 - Do not return a new console object every time self.console is called on workers; r=baku 2014-08-08 08:34:30 -04:00
Boris Zbarsky
8b7f7ff8f1 Bug 1017988 part 10. Disallow Pref annotations on things that are exposed in workers. r=khuey 2014-08-04 22:20:35 -04:00