[Webkit-unassigned] [Bug 29302] NPAPI plugin support feature on Webkit for S60 platform

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Sep 16 09:46:30 PDT 2009


https://bugs.webkit.org/show_bug.cgi?id=29302


Kenneth Rohde Christiansen <kenneth.christiansen at openbossa.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kenneth.christiansen at openbo
                   |                            |ssa.org




--- Comment #1 from Kenneth Rohde Christiansen <kenneth.christiansen at openbossa.org>  2009-09-16 09:46:29 PDT ---
First of all, some of the code seems sharable across platforms. Have you looked
into that?

+#elif !defined(XP_SYMBIAN) && defined(XP_WIN)

You can have XP_WIN and XP_SYMBIAN enabled as the same time?

+PluginContainerSymbian::PluginContainerSymbian(PluginView* view, QWidget*
parent)
+    : m_parent(parent)
+    , m_pluginView(view)
+    , m_hasPendingGeometryChange(false)
+{
+setParent(m_parent);
+}

^ missing some indent here!

+void PluginContainerSymbian::adjustGeometry()
+{
+    if (m_hasPendingGeometryChange) {
+        setGeometry(m_windowRect);
+        setMask(m_clipRegion);

You dont have the problem we had to setMask with an empty region showing
everything? thus having to hide in that case?


+void PluginContainerSymbian::focusInEvent(QFocusEvent* event)
+{
+    // we got focus, stop redirecting the wheel events
+    //redirectWheelEventsToParent(false);

Dont commit outcommented code like this


+#ifndef PluginContainerQt_H
+#define PluginContainerQt_H

I beleive that should be _h and not _H but might be wrong.

+    PluginContainerSymbian* container =
static_cast<PluginContainerSymbian*>(platformPluginWidget());

Do you really need a special Symbian container? or could we just make a simple
ifdef in the PluginContainerQt?

All the event conversion makes it seem like we need some special convertion
classes. We also need this for windowless linux plugins.


+void PluginView::invalidateRect(NPRect* rect)
+{
+    if (m_isWindowed)
+        return;
+    if (rect) {
+        IntRect r(rect->left, rect->top, rect->right - rect->left,
rect->bottom - rect->top);
+        m_invalidRects.append(r);
+        if (!m_invalidateTimer.isActive())
+            m_invalidateTimer.startOneShot(0.001);
+    }
+}

maybe just do 'if (m_isWindowed || !rect) return' ?

+void PluginView::invalidateRegion(NPRegion region)
+{
+    if (m_isWindowed)
+        return;
+    QRegion* r = static_cast<QRegion*>(region);
+    if (r) {
+        QVector<QRect> rects = r->rects();
+
+        for (int i = 1; i < rects.size(); ++i) {
+            const QRect& qRect = rects.at(i);
+            IntRect r(qRect);
+            m_invalidRects.append(r);
+        if (!m_invalidateTimer.isActive())
+            m_invalidateTimer.startOneShot(0.001);
+        }
+    }
+}

^ here I would also do 'if (!r) return;'

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list