[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
weinig at apple.com
weinig at apple.com
Wed Dec 22 13:31:16 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit c9fecd1f9e16083f19cff5b7a1fae0c9c65377a8
Author: weinig at apple.com <weinig at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Sep 18 00:23:19 2010 +0000
Resize corner jiggles when resizing slowly in WebKit2
<rdar://problem/7897425>
https://bugs.webkit.org/show_bug.cgi?id=45601
Reviewed by Anders Carlsson.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::windowResizerRect):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::windowResizerRect):
* WebProcess/WebPage/WebPage.h:
Move resize corner logic to WebPage and use the FrameView's size instead of the WebPages
stored size, which doesn't get updated at the right time. This is in line with all other
scrollbar metrics which are in terms of the FrameView's size.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67761 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index c244081..151be23 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -2,6 +2,23 @@
Reviewed by Anders Carlsson.
+ Resize corner jiggles when resizing slowly in WebKit2
+ <rdar://problem/7897425>
+ https://bugs.webkit.org/show_bug.cgi?id=45601
+
+ * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+ (WebKit::WebChromeClient::windowResizerRect):
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::windowResizerRect):
+ * WebProcess/WebPage/WebPage.h:
+ Move resize corner logic to WebPage and use the FrameView's size instead of the WebPages
+ stored size, which doesn't get updated at the right time. This is in line with all other
+ scrollbar metrics which are in terms of the FrameView's size.
+
+2010-09-17 Sam Weinig <sam at webkit.org>
+
+ Reviewed by Anders Carlsson.
+
Make certificate data available to the WKFrameRef after it is committed
Part of <rdar://problem/8350189>
https://bugs.webkit.org/show_bug.cgi?id=45998
diff --git a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
index 1abe1b0..1d275fc 100644
--- a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
+++ b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
@@ -299,12 +299,7 @@ bool WebChromeClient::tabsToLinks() const
IntRect WebChromeClient::windowResizerRect() const
{
- IntSize pageSize = m_page->size();
-
- static const int windowResizerSize = 15;
-
- return IntRect(pageSize.width() - windowResizerSize, pageSize.height() - windowResizerSize,
- windowResizerSize, windowResizerSize);
+ return m_page->windowResizerRect();
}
void WebChromeClient::invalidateWindow(const IntRect& rect, bool immediate)
diff --git a/WebKit2/WebProcess/WebPage/WebPage.cpp b/WebKit2/WebProcess/WebPage/WebPage.cpp
index 2eb8209..30f869f 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.cpp
+++ b/WebKit2/WebProcess/WebPage/WebPage.cpp
@@ -518,6 +518,25 @@ String WebPage::userAgent() const
return "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6; en-us) AppleWebKit/531.4 (KHTML, like Gecko) Version/4.0.3 Safari/531.4";
}
+IntRect WebPage::windowResizerRect() const
+{
+ // FIXME: This function should conditionally return a null IntRect for circumstances when
+ // you don't always want to show a resizer rect (i.e. you never want to show one on windows
+ // and you don't want to show one in Safari when the status bar is visible).
+
+ // FIXME: This should be either platform specific or based off the width of the scrollbar.
+ static const int windowResizerSize = 15;
+
+ IntSize frameViewSize;
+ if (Frame* coreFrame = m_mainFrame->coreFrame()) {
+ if (FrameView* view = coreFrame->view())
+ frameViewSize = view->size();
+ }
+
+ return IntRect(frameViewSize.width() - windowResizerSize, frameViewSize.height() - windowResizerSize,
+ windowResizerSize, windowResizerSize);
+}
+
void WebPage::runJavaScriptInMainFrame(const WTF::String& script, uint64_t callbackID)
{
// NOTE: We need to be careful when running scripts that the objects we depend on don't
diff --git a/WebKit2/WebProcess/WebPage/WebPage.h b/WebKit2/WebProcess/WebPage/WebPage.h
index b0b71c2..380755a 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.h
+++ b/WebKit2/WebProcess/WebPage/WebPage.h
@@ -97,6 +97,7 @@ public:
bool handleEditingKeyboardEvent(WebCore::KeyboardEvent*);
void show();
String userAgent() const;
+ WebCore::IntRect windowResizerRect() const;
WebEditCommand* webEditCommand(uint64_t);
void addWebEditCommand(uint64_t, WebEditCommand*);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list