webengine/osswebengine/WebKit/s60/misc/WebTabbedNavigation.h
changeset 0 dd21522fd290
child 13 10e98eab6f85
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/webengine/osswebengine/WebKit/s60/misc/WebTabbedNavigation.h	Mon Mar 30 12:54:55 2009 +0300
@@ -0,0 +1,51 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Implemetation of CWebKitView
+*
+*/
+
+#ifndef __WEBTABBEDNAVIGATION_H__
+#define __WEBTABBEDNAVIGATION_H__
+
+#include <e32std.h>
+
+class WebView;
+
+class WebTabbedNavigation {
+    public:
+
+        WebTabbedNavigation(WebView* webView);
+        ~WebTabbedNavigation();
+        bool navigate(int horizontalDir, int verticalDir);
+        void clear();
+        void initializeForPage();
+
+    private:
+        bool selectNode(int horizontalDir, int verticalDir, TRect& selectedRect, TRect& newNodeRect, TPoint& selectedPoint, TPoint& newFocusPoint);
+        TPoint potentialFocusPoint(int horizontalDir, int verticalDir, TRect& newNodeRect);
+        int distanceFunction(int horizontalDir, int verticalDir, TRect& rect, TPoint& point);
+
+    private:
+        TRect m_selectedElementRect;
+        WebView* m_webView; // not owned
+        bool m_initializedForPage;
+        bool m_firstNavigationOnPage;
+        TPoint m_focusPosition;
+        void* m_node;
+};
+
+#endif //__WEBTABBEDNAVIGATION_H__
+
+// END OF FILE
+