Fixed Nabi Issues
[apps/osp/Internet.git] / inc / IntMainForm.h
index c4cd9d2..898fec1 100644 (file)
@@ -2,7 +2,7 @@
 
 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
 //
-// Licensed under the Flora License, Version 1.0 (the License);
+// Licensed under the Flora License, Version 1.1 (the License);
 // you may not use this file except in compliance with the License.
 // You may obtain a copy of the License at
 //
 #include "IntIAddressbarEventListener.h"
 #include "IntISettingChangeListener.h"
 #include "IntMultipleWindowPresentationModel.h"
+#include "IntNotificationPanel.h"
 #include "IntSharePopup.h"
 
+
 enum AddressBarMode
 {
        ADDRESSBAR_MODE_INVALID = -1,
@@ -47,11 +49,12 @@ enum AddressBarMode
 
 class MainForm
        : public Tizen::Ui::Controls::Form
+       , public Tizen::Ui::IFocusEventListener
+       , public Tizen::Ui::Controls::IFormMenuEventListener
        , public Tizen::Ui::Controls::IListViewItemEventListener
        , public Tizen::Ui::Controls::IListViewItemProvider
        , public Tizen::Ui::IActionEventListener
        , public IAddressbarEventListener
-       , public Tizen::Ui::IFocusEventListener
        , public Tizen::Ui::Controls::IFormBackEventListener
        , public Tizen::Ui::IKeypadEventListener
        , public Tizen::Web::Controls::ILoadingListener
@@ -62,8 +65,9 @@ class MainForm
        , public Tizen::Ui::Scenes::ISceneEventListener
        , public ISettingChangeEventListener
        , public Tizen::Web::Controls::IWebKeypadEventListener
-       , public Tizen::Web::Controls::IWebUiEventListener
+       , public Tizen::Web::Controls::IWebUiEventListenerF
        , public Tizen::Web::Controls::ITextSearchListener
+
 {
 public:
    /**
@@ -97,11 +101,22 @@ public:
 
        void LoadUrl(Tizen::Base::String& url);
 
+       //IFocusEventListener
+       void OnFocusGained(const Tizen::Ui::Control& source);
+       void OnFocusLost(const Tizen::Ui::Control& source);
+
+       //IFormMenuEventListener
+       virtual void    OnFormMenuRequested (Tizen::Ui::Controls::Form &source);
+
        virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
 
        virtual void OnFormBackRequested(Tizen::Ui::Controls::Form& source);
 
        //IAddressbarEventListener
+       void OnAddressBarFocusGained(const Addressbar& addBar);
+
+       void OnAddressBarFocusLost(const Addressbar& addBar, bool addressbarKeyPadState);
+
        void OnAddressCancelledClicked(const Addressbar&);
 
        void OnAddressBarKeypadClosed(const Addressbar&, bool footerState = true);
@@ -120,8 +135,6 @@ public:
 
        void OnForwardClicked(/*const Addressbar&*/);
 
-       void OnReaderClicked(const Addressbar&);
-
        void OnRefreshClicked(const Addressbar&){}
 
        void OnSearchClicked(const Addressbar&){}
@@ -180,9 +193,6 @@ public:
 
        void SetJavascriptEnabled(void);
 
-       void OnFocusGained(const Tizen::Ui::Control& source);
-       void OnFocusLost(const Tizen::Ui::Control& source);
-
        // IListViewItemEventListener
        /**
         *Called when the state of an element in the ListContextItem is changed.
@@ -211,7 +221,7 @@ public:
        virtual int     GetItemCount (void);
 
        //IWebUiEventListener
-       virtual void OnWebPageBlockSelected(Tizen::Web::Controls::Web& source, Tizen::Graphics::Point& startPoint, Tizen::Graphics::Point& endPoint);
+       virtual void OnWebPageBlockSelected(Tizen::Web::Controls::Web& source, Tizen::Graphics::FloatPoint& startPoint, Tizen::Graphics::FloatPoint& endPoint);
        virtual void OnWebPageShowRequested(Tizen::Web::Controls::Web& source);
        virtual Tizen::Web::Controls::Web* OnWebWindowCreateRequested(void);
        virtual void OnWebWindowCloseRequested(Tizen::Web::Controls::Web& source) {AppLog("acdaqsc");}
@@ -220,6 +230,7 @@ public:
        virtual void OnWebKeypadClosed(Tizen::Web::Controls::Web& source);
        virtual void OnWebKeypadOpened(Tizen::Web::Controls::Web& source);
        virtual void OnWebKeypadWillOpen(Tizen::Web::Controls::Web& source);
+       virtual void OnWebKeypadBoundsChanged(Tizen::Web::Controls::Web& source);
 
        //ITouchEventListener
        virtual void OnTouchDoublePressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo);
@@ -253,6 +264,7 @@ public:
        virtual void  OnTextValueChanged (const Tizen::Ui::Control &source);
 
        void UpdateImageContent(Tizen::Base::ByteBuffer* aBuffer, Tizen::Base::String imageName);
+       void ShowIndicatorNotification(const Tizen::Base::String& messageText, const Tizen::Base::String& contentPath);
 
        void SetForwardButtonEnabled(bool isEnabled);
        void SetBackButtonEnabled(bool isEnabled);
@@ -260,6 +272,7 @@ public:
        void UpdateProgress(int percentage);
        int GetProgress(void);
        void UpdateProgressBitmap(void);
+       void ReaderClicked();
 
        /**
         * @brief        Sets the current addressbar Mode.
@@ -268,21 +281,27 @@ public:
 
        void SetUrl(const Tizen::Base::String& url);
 
+       void OnSharePopupControlStarted(void);
+
+       virtual void OnUserEventReceivedN (RequestId requestId, Tizen::Base::Collection::IList *pArgs);
+
+       void AddressBarCancelledClicked(const Addressbar& addBar);
 private:
        double findDistance(int x1,int y1,int x2, int y2);
        void FindNextWord(bool next = true);
        result InitAddressbar(void);
        result InitFooter(void);
-       result InitContextMenu(Tizen::Graphics::Point& p);
+       result InitOptionMenu(void);
        result InitFindWordPanel(void);
        result InitImageContextMenu(Tizen::Graphics::Point p);
        result InitImageLinkContextMenu(Tizen::Graphics::Point p);
        result InitSelectTextContextMenu(Tizen::Graphics::Point p, bool pasteOption, bool onlyPasteOption);
+       result InitSelectTextContextMenuF(Tizen::Graphics::FloatPoint p, bool pasteOption, bool onlyPasteOption);
        result InitMostVisitedSitesPanel(Tizen::Ui::OrientationStatus orientationStatus);
        result InitMostVisitedSitesView(Tizen::Ui::OrientationStatus orientationStatus);
        void MoveUiControls(void);
        void UpdateFavicon(void);
-       void RelayoutControls(bool showAddressbar);
+       void RelayoutControls(bool showAddressbar,bool relayoutFooter = true);
        void ShowFindWordPanel(bool show = true, bool isTouchPressed = false);
        void ShowMostVisitedSitesPanel(void);
        void StartWordSearch();
@@ -307,12 +326,12 @@ private:
        int     __maxOccurrances;
        int     __currentWordIndex;
        bool __isLoaded;
-       bool __inputEventToBeSupressed;
+       //bool __inputEventToBeSupressed;
 
        bool __isLoadingData;
        bool __isLoadingCompleted;
        bool __isLongPressedDone;
-       bool __isWebKeypadOpened;
+       bool __isKeypadOpened;
        int __progressPercentage;
 
        AddressBarMode __currentAddMode;
@@ -320,26 +339,38 @@ private:
        Tizen::Base::String __editTextUrl;
 
        Addressbar* __pAddressbar;
+       History* __pHistory;
        Tizen::Graphics::Point __contextMenuPosition;
        Tizen::Ui::Controls::Label* __pArticleReaderLabel;
        Tizen::Ui::Controls::Panel* __pArticleReaderPanel;
        Tizen::Ui::Controls::Panel* __pBlankPanel;
        Tizen::Ui::Controls::Label *    __pFindWordBgLabel;
+       Tizen::Ui::Controls::Label *    __pFindWordBgLabelRightToLeft;
        Tizen::Ui::Controls::Button*    __pFindWordClear;
+       Tizen::Ui::Controls::Button*    __pFindWordClearRightToLeft;
        Tizen::Ui::Controls::Label*     __pFindWordCountLabel;
+       Tizen::Ui::Controls::Label*     __pFindWordCountLabelRightToLeft;
        Tizen::Ui::Controls::Panel*     __pFindWordControl;
+
+       Tizen::Ui::Controls::Panel*     __pFindWordPanelLeftToRight;
+       Tizen::Ui::Controls::Panel*     __pFindWordPanelRightToLeft;
+
        Tizen::Ui::Controls::EditField* __pFindWordEditField;
+       Tizen::Ui::Controls::EditField* __pFindWordEditFieldRightToLeft;
        Tizen::Ui::Controls::Button*    __pFindWordNext;
        Tizen::Ui::Controls::Button*    __pFindWordPrev;
 //     Tizen::Ui::Controls::Panel*     __pFindWordPanel;
        Tizen::Ui::Controls::Panel* __pFooterPanel;
        Tizen::Web::Controls::HitElementResult* __pHitElementResult;
        Tizen::Ui::Controls::ContextMenu* __pImageMenu;
-       Tizen::Ui::Controls::ContextMenu* __pMenu;
+//     Tizen::Ui::Controls::ContextMenu* __pMenu;
+
+       Tizen::Ui::Controls::OptionMenu* __pOptionMenu;
        Tizen::Ui::Controls::Button* __pMoreButton;
        Tizen::Ui::Controls::Button* __pMultiWindowButton;
 //     Tizen::Ui::Controls::Button* __pNewWindowButton;
        SharePopup*     __pPopUp;
+       Tizen::Ui::Controls::Label* __pCheckLabel;
        AddressBarMode __prevAddressBarMode;
        Tizen::Ui::Controls::Button* __pReaderCloseBtn;
        Tizen::Base::String*    __pReaderData;
@@ -364,7 +395,12 @@ private:
        Tizen::Ui::Controls::Label* __pFooterLabel;
        Tizen::Ui::Controls::Button* __pStopBtn;
        Tizen::Ui::Controls::Button* __pClearBtn;
-
+       Tizen::Ui::Controls::Button* __pReaderBtn;
+       Tizen::Graphics::Point __longPressPoint;
+       NotificationPanel* __pNotification;
+       int __fontSize;
+//     bool __isHwKeySupported;
 };
 
 #endif  //_INT_MAIN_FORM_H_
+