WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Set clipRect correctly on X11
cliprect (text/plain), 3.21 KB, created by
Girish Ramakrishnan
on 2010-08-26 04:46:32 PDT
(
hide
)
Description:
Set clipRect correctly on X11
Filename:
MIME Type:
Creator:
Girish Ramakrishnan
Created:
2010-08-26 04:46:32 PDT
Size:
3.21 KB
patch
obsolete
>commit 38e2ee987480c83e7fe19175d42a5b901856b599 >Author: Girish Ramakrishnan <girish@forwardbias.in> >Date: Thu Aug 26 00:16:34 2010 +0530 > > [Qt] Set the clipRect correctly in windowed and windowless mode. > In Windowed mode, the values are in page coordinates. In Windowless > mode the values are in drawable coordinates. Setting these values is > purely academic since they are not used by Flash. However, there is a > possibility that plugins might infer a 'null' clipRect to mean 'invisible'. > > https://bugs.webkit.org/show_bug.cgi?id=44594 > > Reviewed by Kenneth Christiansen. > > * plugins/qt/PluginViewQt.cpp: > (WebCore::PluginView::setNPWindowIfNeeded): > >diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog >index 09690a3..c71485b 100644 >--- a/WebCore/ChangeLog >+++ b/WebCore/ChangeLog >@@ -1,5 +1,20 @@ > 2010-08-26 Girish Ramakrishnan <girish@forwardbias.in> > >+ Reviewed by Kenneth Christiansen. >+ >+ [Qt] Set the clipRect correctly in windowed and windowless mode. >+ In Windowed mode, the values are in page coordinates. In Windowless >+ mode the values are in drawable coordinates. Setting these values is >+ purely academic since they are not used by Flash. However, there is a >+ possibility that plugins might infer a 'null' clipRect to mean 'invisible'. >+ >+ https://bugs.webkit.org/show_bug.cgi?id=44594 >+ >+ * plugins/qt/PluginViewQt.cpp: >+ (WebCore::PluginView::setNPWindowIfNeeded): >+ >+2010-08-26 Girish Ramakrishnan <girish@forwardbias.in> >+ > Reviewed by Ariya Hidayat. > > [Qt] Replace QLibrary("libgdk-x11-2.0.so.0") with QLibrary("libgdk-x11-2.0", 0) >diff --git a/WebCore/plugins/qt/PluginViewQt.cpp b/WebCore/plugins/qt/PluginViewQt.cpp >index 4e89c7b..47e27d8 100644 >--- a/WebCore/plugins/qt/PluginViewQt.cpp >+++ b/WebCore/plugins/qt/PluginViewQt.cpp >@@ -578,19 +578,24 @@ void PluginView::setNPWindowIfNeeded() > > m_npWindow.x = m_windowRect.x(); > m_npWindow.y = m_windowRect.y(); >- >- m_npWindow.clipRect.left = max(0, m_clipRect.x()); >- m_npWindow.clipRect.top = max(0, m_clipRect.y()); >- m_npWindow.clipRect.right = m_clipRect.x() + m_clipRect.width(); >- m_npWindow.clipRect.bottom = m_clipRect.y() + m_clipRect.height(); > } else { > m_npWindow.x = 0; > m_npWindow.y = 0; >+ } > >+ // If the width or height are null, set the clipRect to null, indicating that >+ // the plugin is not visible/scrolled out. >+ if (!m_clipRect.width() || !m_clipRect.height()) { > m_npWindow.clipRect.left = 0; >- m_npWindow.clipRect.top = 0; > m_npWindow.clipRect.right = 0; >+ m_npWindow.clipRect.top = 0; > m_npWindow.clipRect.bottom = 0; >+ } else { >+ // Clipping rectangle of the plug-in; the origin is the top left corner of the drawable or window. >+ m_npWindow.clipRect.left = m_npWindow.x + m_clipRect.x(); >+ m_npWindow.clipRect.top = m_npWindow.y + m_clipRect.y(); >+ m_npWindow.clipRect.right = m_npWindow.x + m_clipRect.x() + m_clipRect.width(); >+ m_npWindow.clipRect.bottom = m_npWindow.y + m_clipRect.y() + m_clipRect.height(); > } > > if (m_plugin->quirks().contains(PluginQuirkDontCallSetWindowMoreThanOnce)) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
hausmann
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 44594
:
65453
|
65545
| 65546