summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/Widget.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/platform/Widget.h')
-rw-r--r--WebCore/platform/Widget.h38
1 files changed, 35 insertions, 3 deletions
diff --git a/WebCore/platform/Widget.h b/WebCore/platform/Widget.h
index 2fce858..23d228e 100644
--- a/WebCore/platform/Widget.h
+++ b/WebCore/platform/Widget.h
@@ -77,6 +77,12 @@ typedef BView* PlatformWidget;
#include "PlatformWidget.h"
#endif
+#if PLATFORM(EFL)
+#include <Ecore_Evas.h>
+#include <Evas.h>
+typedef Evas_Object* PlatformWidget;
+#endif
+
#if PLATFORM(QT)
class QWebPageClient;
typedef QWebPageClient* PlatformPageClient;
@@ -99,6 +105,9 @@ class GraphicsContext;
class PlatformMouseEvent;
class ScrollView;
class WidgetPrivate;
+#if PLATFORM(EFL)
+class String;
+#endif
// The Widget class serves as a base class for three kinds of objects:
// (1) Scrollable areas (ScrollView)
@@ -157,7 +166,7 @@ public:
void invalidate() { invalidateRect(boundsRect()); }
virtual void invalidateRect(const IntRect&) = 0;
- virtual void setFocus();
+ virtual void setFocus(bool);
void setCursor(const Cursor&);
@@ -194,7 +203,7 @@ public:
IntPoint convertToContainingWindow(const IntPoint&) const;
IntPoint convertFromContainingWindow(const IntPoint&) const;
- virtual void frameRectsChanged() {}
+ virtual void frameRectsChanged();
// Notifies this widget that other widgets on the page have been repositioned.
virtual void widgetPositionsUpdated() {}
@@ -208,6 +217,20 @@ public:
void removeFromSuperview();
#endif
+#if PLATFORM(EFL)
+ // FIXME: These should really go to PlatformWidget. They're here currently since
+ // the EFL port considers that Evas_Object (a C object) is a PlatformWidget, but
+ // encapsulating that into a C++ class will make this header clean as it should be.
+ Evas* evas() const;
+
+ void setEvasObject(Evas_Object*);
+ Evas_Object* evasObject() const;
+
+ const String edjeTheme() const;
+ void setEdjeTheme(const String &);
+ const String edjeThemeRecursive() const;
+#endif
+
// Virtual methods to convert points to/from the containing ScrollView
virtual IntRect convertToContainingView(const IntRect&) const;
virtual IntRect convertFromContainingView(const IntRect&) const;
@@ -236,9 +259,18 @@ private:
IntRect m_frame; // Not used when a native widget exists.
-#if PLATFORM(MAC)
+#if PLATFORM(EFL)
+ // FIXME: Please see the previous #if PLATFORM(EFL) block.
+ Ecore_Evas* ecoreEvas() const;
+
+ void applyFallbackCursor();
+ void applyCursor();
+#endif
+
+#if PLATFORM(MAC) || PLATFORM(EFL)
WidgetPrivate* m_data;
#endif
+
#if PLATFORM(HAIKU)
PlatformWidget m_topLevelPlatformWidget;
#endif