summaryrefslogtreecommitdiff
path: root/Source/WebKit2
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2')
-rw-r--r--Source/WebKit2/ChangeLog111
-rw-r--r--Source/WebKit2/Configurations/Base.xcconfig2
-rw-r--r--Source/WebKit2/Configurations/Version.xcconfig2
-rw-r--r--Source/WebKit2/Scripts/webkit2/messages.py4
-rw-r--r--Source/WebKit2/Scripts/webkit2/parser.py2
-rw-r--r--Source/WebKit2/Shared/API/c/WKBase.h2
-rw-r--r--Source/WebKit2/UIProcess/API/efl/ewk_context.cpp17
-rw-r--r--Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_intents.cpp4
-rw-r--r--Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.cpp21
-rw-r--r--Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.h25
-rw-r--r--Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp2
-rw-r--r--Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h43
-rw-r--r--Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.mm1
13 files changed, 185 insertions, 51 deletions
diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog
index c848e9e6d..c956117b3 100644
--- a/Source/WebKit2/ChangeLog
+++ b/Source/WebKit2/ChangeLog
@@ -1,3 +1,114 @@
+2012-08-23 Frederik Gladhorn <gladhorn@kde.org>
+
+ Make it possible to build WebKit with Python 3 (and 2)
+ https://bugs.webkit.org/show_bug.cgi?id=94814
+
+ Reviewed by Ryosuke Niwa.
+
+ Exceptions need a hack to work with both.
+ string.join was already deprecated in Python 2.
+ Relative imports are no longer supported, use package name instead.
+
+ * Scripts/webkit2/messages.py:
+ * Scripts/webkit2/parser.py:
+
+2012-08-23 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Change behavior of MasqueradesAsUndefined to better accommodate DFG changes
+ https://bugs.webkit.org/show_bug.cgi?id=93884
+
+ Reviewed by Filip Pizlo.
+
+ With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
+ MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
+ we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
+ objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
+ For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
+ masquerade as undefined within frame B, but it will continue to masquerade in frame A.
+
+ * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
+ (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant): Passing ExecState to toBoolean call.
+
+2012-08-23 Brady Eidson <beidson@apple.com>
+
+ REGRESSION (r124815): PDF in frame does not display any more
+ <rdar://problem/12063306> and https://bugs.webkit.org/show_bug.cgi?id=94869
+
+ Reviewed by Alexey Proskuryakov.
+
+ * WebProcess/Plugins/PDF/BuiltInPDFView.mm:
+ (WebKit::BuiltInPDFView::initialize): Tell the controller that initialization was successful.
+
+2012-08-23 Mark Rowe <mrowe@apple.com>
+
+ Make WebKit2 build with the latest version of clang.
+
+ Reviewed by Dan Bernstein.
+
+ * Configurations/Base.xcconfig: Ensure that operator new isn't exported as a weak external symbol.
+
+2012-08-22 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
+
+ [EFL] Use WTF_USE_SOUP instead BUILDING_SOUP__
+ https://bugs.webkit.org/show_bug.cgi?id=94744
+
+ Reviewed by Gustavo Noronha Silva.
+
+ Use #if defined(WTF_USE_SOUP) instead of #if defined(BUILDING_SOUP__)
+ since the former is used everywhere.
+
+ * Shared/API/c/WKBase.h:
+
+2012-08-23 Christophe Dumez <christophe.dumez@intel.com>
+
+ [EFL][WK2] Free ewk context data on program exit.
+ https://bugs.webkit.org/show_bug.cgi?id=94808
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Make sure the default Ewk_Context gets freed
+ on program exit.
+
+ The patch also fixes leaking of WKContextRef
+ inside Ewk_Context which should have been
+ adopted.
+
+ * UIProcess/API/efl/ewk_context.cpp:
+ (_Ewk_Context::_Ewk_Context):
+ (ewk_context_default_get):
+
+2012-08-23 Adrienne Walker <enne@google.com>
+
+ Convert ScrollableArea ASSERT_NOT_REACHED virtuals
+ https://bugs.webkit.org/show_bug.cgi?id=93306
+
+ Reviewed by Darin Adler.
+
+ Add implementations where necessary to make derived classes concrete.
+ Add OVERRIDE for ScrollableArea functions.
+
+ * UIProcess/win/WebPopupMenuProxyWin.cpp:
+ (WebKit::WebPopupMenuProxyWin::visibleHeight):
+ (WebKit):
+ (WebKit::WebPopupMenuProxyWin::visibleWidth):
+ (WebKit::WebPopupMenuProxyWin::contentsSize):
+ (WebKit::WebPopupMenuProxyWin::scrollableAreaBoundingBox):
+ * UIProcess/win/WebPopupMenuProxyWin.h:
+ (WebPopupMenuProxyWin):
+ * WebProcess/Plugins/PDF/BuiltInPDFView.h:
+
+2012-08-23 Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com>
+
+ [EFL][WK2] ewk_intent_request API test does not free Eina_List
+ https://bugs.webkit.org/show_bug.cgi?id=94809
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ The used Eina_List should be freed due to ewk_intent_suggestions_get() documentation.
+
+ * UIProcess/API/efl/tests/test_ewk2_intents.cpp:
+ (onIntentReceived):
+
2012-08-23 Andras Becsi <andras.becsi@nokia.com>
[Qt][WK2] Helper functions used by the raw webview tests should not be guarded by HAVE_QTQUICK
diff --git a/Source/WebKit2/Configurations/Base.xcconfig b/Source/WebKit2/Configurations/Base.xcconfig
index 0182371b9..ab4fec7fb 100644
--- a/Source/WebKit2/Configurations/Base.xcconfig
+++ b/Source/WebKit2/Configurations/Base.xcconfig
@@ -59,7 +59,7 @@ VALID_ARCHS = i386 x86_64;
WARNING_CFLAGS = -Wall -Wextra -Wchar-subscripts -Wextra-tokens -Wformat-security -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wno-unused-parameter -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings $(COMPILER_SPECIFIC_WARNING_CFLAGS);
// Prevent C++ standard library operator new, delete and their related exception types from being exported as weak symbols.
-OTHER_LDFLAGS = -Wl,-unexported_symbol -Wl,__ZTISt9bad_alloc -Wl,-unexported_symbol -Wl,__ZTISt9exception -Wl,-unexported_symbol -Wl,__ZTSSt9bad_alloc -Wl,-unexported_symbol -Wl,__ZTSSt9exception -Wl,-unexported_symbol -Wl,__ZdlPvS_ -Wl,-unexported_symbol -Wl,__ZnwmPv;
+OTHER_LDFLAGS = -Wl,-unexported_symbol -Wl,__ZTISt9bad_alloc -Wl,-unexported_symbol -Wl,__ZTISt9exception -Wl,-unexported_symbol -Wl,__ZTSSt9bad_alloc -Wl,-unexported_symbol -Wl,__ZTSSt9exception -Wl,-unexported_symbol -Wl,__ZdlPvS_ -Wl,-unexported_symbol -Wl,__ZnwmPv -Wl,-unexported_symbol -Wl,__Znwm;
CLANG_CXX_LIBRARY = $(CLANG_CXX_LIBRARY_$(TARGET_MAC_OS_X_VERSION_MAJOR));
CLANG_CXX_LIBRARY_1060 = libstdc++;
diff --git a/Source/WebKit2/Configurations/Version.xcconfig b/Source/WebKit2/Configurations/Version.xcconfig
index fef7ac72e..0b9cad4e0 100644
--- a/Source/WebKit2/Configurations/Version.xcconfig
+++ b/Source/WebKit2/Configurations/Version.xcconfig
@@ -22,7 +22,7 @@
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
MAJOR_VERSION = 537;
-MINOR_VERSION = 6;
+MINOR_VERSION = 8;
TINY_VERSION = 0;
FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
diff --git a/Source/WebKit2/Scripts/webkit2/messages.py b/Source/WebKit2/Scripts/webkit2/messages.py
index 2a87d62de..bd9dc9a28 100644
--- a/Source/WebKit2/Scripts/webkit2/messages.py
+++ b/Source/WebKit2/Scripts/webkit2/messages.py
@@ -22,9 +22,7 @@
import collections
import re
-
-import parser
-
+from webkit2 import parser
DELAYED_ATTRIBUTE = 'Delayed'
DISPATCH_ON_CONNECTION_QUEUE_ATTRIBUTE = 'DispatchOnConnectionQueue'
diff --git a/Source/WebKit2/Scripts/webkit2/parser.py b/Source/WebKit2/Scripts/webkit2/parser.py
index 525f137ec..c40080f0a 100644
--- a/Source/WebKit2/Scripts/webkit2/parser.py
+++ b/Source/WebKit2/Scripts/webkit2/parser.py
@@ -22,7 +22,7 @@
import re
-import model
+from webkit2 import model
def parse(file):
diff --git a/Source/WebKit2/Shared/API/c/WKBase.h b/Source/WebKit2/Shared/API/c/WKBase.h
index a6a8bd66f..06aa286ab 100644
--- a/Source/WebKit2/Shared/API/c/WKBase.h
+++ b/Source/WebKit2/Shared/API/c/WKBase.h
@@ -37,7 +37,7 @@
#include <WebKit2/WKBaseGtk.h>
#endif
-#if defined(BUILDING_SOUP__)
+#if defined(WTF_USE_SOUP)
#include <WebKit2/WKBaseSoup.h>
#endif
diff --git a/Source/WebKit2/UIProcess/API/efl/ewk_context.cpp b/Source/WebKit2/UIProcess/API/efl/ewk_context.cpp
index d6453757e..71504f641 100644
--- a/Source/WebKit2/UIProcess/API/efl/ewk_context.cpp
+++ b/Source/WebKit2/UIProcess/API/efl/ewk_context.cpp
@@ -70,18 +70,18 @@ struct _Ewk_Context {
WKRetainPtr<WKSoupRequestManagerRef> requestManager;
URLSchemeHandlerMap urlSchemeHandlers;
- _Ewk_Context(WKContextRef contextRef)
+ _Ewk_Context(WKRetainPtr<WKContextRef> contextRef)
: context(contextRef)
, cookieManager(0)
- , requestManager(WKContextGetSoupRequestManager(contextRef))
+ , requestManager(WKContextGetSoupRequestManager(contextRef.get()))
{
#if ENABLE(BATTERY_STATUS)
- WKBatteryManagerRef wkBatteryManager = WKContextGetBatteryManager(contextRef);
+ WKBatteryManagerRef wkBatteryManager = WKContextGetBatteryManager(contextRef.get());
batteryProvider = BatteryProvider::create(wkBatteryManager);
#endif
#if ENABLE(VIBRATION)
- WKVibrationRef wkVibrationRef = WKContextGetVibration(contextRef);
+ WKVibrationRef wkVibrationRef = WKContextGetVibration(contextRef.get());
vibrationProvider = VibrationProvider::create(wkVibrationRef);
#endif
@@ -198,16 +198,11 @@ void ewk_context_url_scheme_request_received(Ewk_Context* ewkContext, Ewk_Url_Sc
handler.callback(schemeRequest, handler.userData);
}
-static inline Ewk_Context* createDefaultEwkContext()
-{
- return new Ewk_Context(WKContextCreate());
-}
-
Ewk_Context* ewk_context_default_get()
{
- static Ewk_Context* defaultContext = createDefaultEwkContext();
+ static Ewk_Context defaultContext(adoptWK(WKContextCreate()));
- return defaultContext;
+ return &defaultContext;
}
Eina_Bool ewk_context_uri_scheme_register(Ewk_Context* ewkContext, const char* scheme, Ewk_Url_Scheme_Request_Cb callback, void* userData)
diff --git a/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_intents.cpp b/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_intents.cpp
index fdf7fdf23..be8b0ffa8 100644
--- a/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_intents.cpp
+++ b/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_intents.cpp
@@ -92,6 +92,10 @@ static void onIntentReceived(void* userData, Evas_Object*, void* eventInfo)
suggestions = eina_list_sort(suggestions, 2, stringSortCb);
EXPECT_STREQ(static_cast<const char*>(eina_list_nth(suggestions, 0)), "http://service1.com/");
EXPECT_STREQ(static_cast<const char*>(eina_list_nth(suggestions, 1)), "http://service2.com/");
+
+ void* listData = 0;
+ EINA_LIST_FREE(suggestions, listData)
+ eina_stringshare_del(static_cast<const char*>(listData));
}
}
diff --git a/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.cpp b/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.cpp
index df4e9854b..a45280733 100644
--- a/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.cpp
+++ b/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.cpp
@@ -469,6 +469,27 @@ void WebPopupMenuProxyWin::setScrollOffset(const IntPoint& offset)
scrollTo(offset.y());
}
+int WebPopupMenuProxyWin::visibleHeight() const
+{
+ return m_scrollbar ? m_scrollbar->visibleSize() : contentsSize().height();
+}
+
+int WebPopupMenuProxyWin::visibleWidth() const
+{
+ int scrollbarWidth = m_scrollbar ? m_scrollbar->frameRect().width() : 0;
+ return contentsSize().width() - scrollbarWidth;
+}
+
+WebCore::IntSize WebPopupMenuProxyWin::contentsSize() const
+{
+ return clientRect().size();
+}
+
+WebCore::IntRect WebPopupMenuProxyWin::scrollableAreaBoundingBox() const
+{
+ return m_windowRect;
+}
+
void WebPopupMenuProxyWin::scrollTo(int offset)
{
ASSERT(m_scrollbar);
diff --git a/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.h b/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.h
index b7c4d6d29..1d25373f1 100644
--- a/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.h
+++ b/Source/WebKit2/UIProcess/win/WebPopupMenuProxyWin.h
@@ -61,16 +61,21 @@ private:
WebCore::Scrollbar* scrollbar() const { return m_scrollbar.get(); }
// ScrollableArea
- virtual int scrollSize(WebCore::ScrollbarOrientation) const;
- virtual int scrollPosition(WebCore::Scrollbar*) const;
- virtual void setScrollOffset(const WebCore::IntPoint&);
- virtual void invalidateScrollbarRect(WebCore::Scrollbar*, const WebCore::IntRect&);
- virtual void invalidateScrollCornerRect(const WebCore::IntRect&) { }
- virtual bool isActive() const { return true; }
- virtual bool isScrollCornerVisible() const { return false; }
- virtual WebCore::IntRect scrollCornerRect() const { return WebCore::IntRect(); }
- virtual WebCore::Scrollbar* verticalScrollbar() const { return m_scrollbar.get(); }
- virtual WebCore::ScrollableArea* enclosingScrollableArea() const { return 0; }
+ virtual int scrollSize(WebCore::ScrollbarOrientation) const OVERRIDE;
+ virtual int scrollPosition(WebCore::Scrollbar*) const OVERRIDE;
+ virtual void setScrollOffset(const WebCore::IntPoint&) OVERRIDE;
+ virtual void invalidateScrollbarRect(WebCore::Scrollbar*, const WebCore::IntRect&) OVERRIDE;
+ virtual void invalidateScrollCornerRect(const WebCore::IntRect&) OVERRIDE { }
+ virtual bool isActive() const OVERRIDE { return true; }
+ virtual bool isScrollCornerVisible() const OVERRIDE { return false; }
+ virtual WebCore::IntRect scrollCornerRect() const OVERRIDE { return WebCore::IntRect(); }
+ virtual WebCore::Scrollbar* verticalScrollbar() const OVERRIDE { return m_scrollbar.get(); }
+ virtual WebCore::ScrollableArea* enclosingScrollableArea() const OVERRIDE { return 0; }
+ virtual int visibleHeight() const OVERRIDE;
+ virtual int visibleWidth() const OVERRIDE;
+ virtual WebCore::IntSize contentsSize() const OVERRIDE;
+ virtual WebCore::IntRect scrollableAreaBoundingBox() const OVERRIDE;
+ virtual bool isOnActivePage() const OVERRIDE { return true; }
// NOTE: This should only be called by the overriden setScrollOffset from ScrollableArea.
void scrollTo(int offset);
diff --git a/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp b/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp
index 2b115f1e4..358533feb 100644
--- a/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp
+++ b/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp
@@ -154,7 +154,7 @@ void NPRuntimeObjectMap::convertJSValueToNPVariant(ExecState* exec, JSValue valu
}
if (value.isBoolean()) {
- BOOLEAN_TO_NPVARIANT(value.toBoolean(), variant);
+ BOOLEAN_TO_NPVARIANT(value.toBoolean(exec), variant);
return;
}
diff --git a/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h b/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h
index 8a7c28a5b..9ccd80400 100644
--- a/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h
+++ b/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h
@@ -122,30 +122,29 @@ private:
virtual RetainPtr<PDFDocument> pdfDocumentForPrinting() const OVERRIDE { return m_pdfDocument; }
// ScrollableArea methods.
- virtual WebCore::IntRect scrollCornerRect() const;
- virtual WebCore::ScrollableArea* enclosingScrollableArea() const;
+ virtual WebCore::IntRect scrollCornerRect() const OVERRIDE;
+ virtual WebCore::ScrollableArea* enclosingScrollableArea() const OVERRIDE;
virtual WebCore::IntRect scrollableAreaBoundingBox() const OVERRIDE;
- virtual void setScrollOffset(const WebCore::IntPoint&);
- virtual int scrollSize(WebCore::ScrollbarOrientation) const;
- virtual bool isActive() const;
- virtual void invalidateScrollbarRect(WebCore::Scrollbar*, const WebCore::IntRect&);
- virtual void invalidateScrollCornerRect(const WebCore::IntRect&);
- virtual bool isScrollCornerVisible() const;
- virtual int scrollPosition(WebCore::Scrollbar*) const;
- virtual WebCore::IntPoint scrollPosition() const;
- virtual WebCore::IntPoint minimumScrollPosition() const;
- virtual WebCore::IntPoint maximumScrollPosition() const;
- virtual int visibleHeight() const;
- virtual int visibleWidth() const;
- virtual WebCore::IntSize contentsSize() const;
- virtual WebCore::Scrollbar* horizontalScrollbar() const { return m_horizontalScrollbar.get(); }
- virtual WebCore::Scrollbar* verticalScrollbar() const { return m_verticalScrollbar.get(); }
- virtual bool isOnActivePage() const;
- virtual bool shouldSuspendScrollAnimations() const { return false; } // If we return true, ScrollAnimatorMac will keep cycling a timer forever, waiting for a good time to animate.
- virtual void scrollbarStyleChanged(int newStyle, bool forceUpdate);
-
+ virtual void setScrollOffset(const WebCore::IntPoint&) OVERRIDE;
+ virtual int scrollSize(WebCore::ScrollbarOrientation) const OVERRIDE;
+ virtual bool isActive() const OVERRIDE;
+ virtual void invalidateScrollbarRect(WebCore::Scrollbar*, const WebCore::IntRect&) OVERRIDE;
+ virtual void invalidateScrollCornerRect(const WebCore::IntRect&) OVERRIDE;
+ virtual bool isScrollCornerVisible() const OVERRIDE;
+ virtual int scrollPosition(WebCore::Scrollbar*) const OVERRIDE;
+ virtual WebCore::IntPoint scrollPosition() const OVERRIDE;
+ virtual WebCore::IntPoint minimumScrollPosition() const OVERRIDE;
+ virtual WebCore::IntPoint maximumScrollPosition() const OVERRIDE;
+ virtual int visibleHeight() const OVERRIDE;
+ virtual int visibleWidth() const OVERRIDE;
+ virtual WebCore::IntSize contentsSize() const OVERRIDE;
+ virtual WebCore::Scrollbar* horizontalScrollbar() const OVERRIDE { return m_horizontalScrollbar.get(); }
+ virtual WebCore::Scrollbar* verticalScrollbar() const OVERRIDE { return m_verticalScrollbar.get(); }
+ virtual bool isOnActivePage() const OVERRIDE;
+ virtual bool shouldSuspendScrollAnimations() const OVERRIDE { return false; } // If we return true, ScrollAnimatorMac will keep cycling a timer forever, waiting for a good time to animate.
+ virtual void scrollbarStyleChanged(int newStyle, bool forceUpdate) OVERRIDE;
// FIXME: Implement the other conversion functions; this one is enough to get scrollbar hit testing working.
- virtual WebCore::IntPoint convertFromContainingViewToScrollbar(const WebCore::Scrollbar*, const WebCore::IntPoint& parentPoint) const;
+ virtual WebCore::IntPoint convertFromContainingViewToScrollbar(const WebCore::Scrollbar*, const WebCore::IntPoint& parentPoint) const OVERRIDE;
JSObjectRef makeJSPDFDoc(JSContextRef);
static JSValueRef jsPDFDocPrint(JSContextRef, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception);
diff --git a/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.mm b/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.mm
index 61db553fc..fe7f258b0 100644
--- a/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.mm
+++ b/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.mm
@@ -342,6 +342,7 @@ bool BuiltInPDFView::initialize(const Parameters& parameters)
if (!parameters.shouldUseManualLoader && !parameters.url.isEmpty())
controller()->loadURL(pdfDocumentRequestID, "GET", parameters.url.string(), String(), HTTPHeaderMap(), Vector<uint8_t>(), false);
+ controller()->didInitializePlugin();
return true;
}