Diff
Modified: trunk/Source/WebCore/ChangeLog (134187 => 134188)
--- trunk/Source/WebCore/ChangeLog 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/ChangeLog 2012-11-12 05:30:54 UTC (rev 134188)
@@ -1,3 +1,21 @@
+2012-11-11 Adam Barth <[email protected]>
+
+ Many DOMWindowProperties would benefit from being ScriptWrappable
+ https://bugs.webkit.org/show_bug.cgi?id=101887
+
+ Reviewed by Kentaro Hara.
+
+ These object are only ever created at the behest of script, which means
+ making them ScriptWrappable is a win.
+
+ * page/BarInfo.h:
+ * page/Console.h:
+ * page/Crypto.h:
+ * page/History.h:
+ * page/Location.h:
+ * page/Navigator.h:
+ * page/Performance.h:
+
2012-11-11 Kentaro Hara <[email protected]>
[V8] HTMLDocument::all() needs not to be custom
Modified: trunk/Source/WebCore/page/BarInfo.h (134187 => 134188)
--- trunk/Source/WebCore/page/BarInfo.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/BarInfo.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -30,6 +30,7 @@
#define BarInfo_h
#include "DOMWindowProperty.h"
+#include "ScriptWrappable.h"
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
@@ -37,7 +38,7 @@
class Frame;
- class BarInfo : public RefCounted<BarInfo>, public DOMWindowProperty {
+ class BarInfo : public ScriptWrappable, public RefCounted<BarInfo>, public DOMWindowProperty {
public:
enum Type { Locationbar, Menubar, Personalbar, Scrollbars, Statusbar, Toolbar };
Modified: trunk/Source/WebCore/page/Console.h (134187 => 134188)
--- trunk/Source/WebCore/page/Console.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/Console.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -34,6 +34,7 @@
#include "ScriptCallStack.h"
#include "ScriptProfile.h"
#include "ScriptState.h"
+#include "ScriptWrappable.h"
#include <wtf/Forward.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
@@ -50,7 +51,7 @@
typedef Vector<RefPtr<ScriptProfile> > ProfilesArray;
#endif
-class Console : public RefCounted<Console>, public DOMWindowProperty {
+class Console : public ScriptWrappable, public RefCounted<Console>, public DOMWindowProperty {
public:
static PassRefPtr<Console> create(Frame* frame) { return adoptRef(new Console(frame)); }
virtual ~Console();
Modified: trunk/Source/WebCore/page/Crypto.h (134187 => 134188)
--- trunk/Source/WebCore/page/Crypto.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/Crypto.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -29,6 +29,7 @@
#ifndef Crypto_h
#define Crypto_h
+#include "ScriptWrappable.h"
#include <wtf/Forward.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
@@ -37,7 +38,7 @@
typedef int ExceptionCode;
-class Crypto : public RefCounted<Crypto> {
+class Crypto : public ScriptWrappable, public RefCounted<Crypto> {
public:
static PassRefPtr<Crypto> create() { return adoptRef(new Crypto()); }
Modified: trunk/Source/WebCore/page/History.h (134187 => 134188)
--- trunk/Source/WebCore/page/History.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/History.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -28,6 +28,7 @@
#include "DOMWindowProperty.h"
#include "KURL.h"
+#include "ScriptWrappable.h"
#include <wtf/Forward.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
@@ -39,7 +40,7 @@
class SerializedScriptValue;
typedef int ExceptionCode;
-class History : public RefCounted<History>, public DOMWindowProperty {
+class History : public ScriptWrappable, public RefCounted<History>, public DOMWindowProperty {
public:
static PassRefPtr<History> create(Frame* frame) { return adoptRef(new History(frame)); }
Modified: trunk/Source/WebCore/page/Location.h (134187 => 134188)
--- trunk/Source/WebCore/page/Location.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/Location.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -31,6 +31,7 @@
#include "DOMStringList.h"
#include "DOMWindowProperty.h"
+#include "ScriptWrappable.h"
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
#include <wtf/text/WTFString.h>
@@ -43,7 +44,7 @@
typedef int ExceptionCode;
-class Location : public RefCounted<Location>, public DOMWindowProperty {
+class Location : public ScriptWrappable, public RefCounted<Location>, public DOMWindowProperty {
public:
static PassRefPtr<Location> create(Frame* frame) { return adoptRef(new Location(frame)); }
Modified: trunk/Source/WebCore/page/Navigator.h (134187 => 134188)
--- trunk/Source/WebCore/page/Navigator.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/Navigator.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -22,6 +22,7 @@
#include "DOMWindowProperty.h"
#include "NavigatorBase.h"
+#include "ScriptWrappable.h"
#include "Supplementable.h"
#include <wtf/Forward.h>
#include <wtf/HashMap.h>
@@ -38,7 +39,7 @@
typedef int ExceptionCode;
-class Navigator : public NavigatorBase, public RefCounted<Navigator>, public DOMWindowProperty, public Supplementable<Navigator> {
+class Navigator : public NavigatorBase, public ScriptWrappable, public RefCounted<Navigator>, public DOMWindowProperty, public Supplementable<Navigator> {
public:
static PassRefPtr<Navigator> create(Frame* frame) { return adoptRef(new Navigator(frame)); }
virtual ~Navigator();
Modified: trunk/Source/WebCore/page/Performance.h (134187 => 134188)
--- trunk/Source/WebCore/page/Performance.h 2012-11-12 05:04:02 UTC (rev 134187)
+++ trunk/Source/WebCore/page/Performance.h 2012-11-12 05:30:54 UTC (rev 134188)
@@ -40,6 +40,7 @@
#include "PerformanceEntryList.h"
#include "PerformanceNavigation.h"
#include "PerformanceTiming.h"
+#include "ScriptWrappable.h"
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
#include <wtf/RefPtr.h>
@@ -54,7 +55,7 @@
class ResourceResponse;
class UserTiming;
-class Performance : public RefCounted<Performance>, public DOMWindowProperty, public EventTarget {
+class Performance : public ScriptWrappable, public RefCounted<Performance>, public DOMWindowProperty, public EventTarget {
public:
static PassRefPtr<Performance> create(Frame* frame) { return adoptRef(new Performance(frame)); }
~Performance();