X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=inc%2FIntMainForm.h;h=4aacad0bb70bf7fc36a4cb9c7c8662dce16d3c6e;hb=c17908e6da1de70b54e4b83f5e6b0d7b57071f89;hp=4715d1eca9607709bb556e7b7ab502ee46f61164;hpb=324d5cb2fb4cbdf85e040dc87e6702c8f4412b26;p=apps%2Fosp%2FInternet.git diff --git a/inc/IntMainForm.h b/inc/IntMainForm.h index 4715d1e..4aacad0 100644 --- a/inc/IntMainForm.h +++ b/inc/IntMainForm.h @@ -1,297 +1,407 @@ -// - -// Copyright (c) 2012 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://floralicense.org/license/ -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -//!Internet MainForm class -/*@file: MainForm.h - *@brief: The %MainForm provides the common functionalities for the Main View of the Browser including the addressbar, - * loading,handling events etc. - */ - -#ifndef _INT_MAIN_FORM_H_ -#define _INT_MAIN_FORM_H_ - -#include -#include -#include - -#include "IntAddressbar.h" -#include "IntHistoryData.h" -#include "IntHistoryPresentationModel.h" -#include "IntIAddressbarEventListener.h" -#include "IntISettingChangeListener.h" -#include "IntMultipleWindowPresentationModel.h" -#include "IntSharePopup.h" - -class MainForm - : public Tizen::Ui::Controls::Form - , public Tizen::Ui::Controls::IListViewItemEventListener - , public Tizen::Ui::Controls::IListViewItemProvider - , public Tizen::Ui::IActionEventListener - , public IAddressbarEventListener - , public Tizen::Ui::Controls::IFormBackEventListener - , public Tizen::Ui::IKeypadEventListener - , public Tizen::Web::Controls::ILoadingListener - , public Tizen::Ui::IOrientationEventListener - , public Tizen::Ui::ITextEventListener - , public Tizen::Ui::ITouchEventListener - , public Tizen::Ui::Scenes::ISceneEventListener - , public ISettingChangeEventListener - , public Tizen::Web::Controls::IWebKeypadEventListener - , public Tizen::Web::Controls::IWebUiEventListener - , public Tizen::Web::Controls::ITextSearchListener -{ -public: - /** - *@brief Default constructor - */ - MainForm(void); - - /** - *@brief Default destructor - */ - virtual ~MainForm(void); - - /** - * @brief The method initializes the screen variables and controls to be used by the user. - * - */ - bool Initialize(void); - - /** - * @brief Initializes this instance of %MainForm. - * - */ - result InitWebControl(); - - /** - * @brief Initializes this instance of Reader Panel. - */ - result CreateReaderPanel(void); - - Tizen::Base::String GetImagePath(void); - - void LoadUrl(Tizen::Base::String& url); - - virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId); - - virtual void OnFormBackRequested(Tizen::Ui::Controls::Form& source); - - //IAddressbarEventListener - void OnAddressCancelledClicked(const Addressbar&); - - void OnAddressBarKeypadClosed(const Addressbar&); - - void OnAddressBarKeypadOpened(const Addressbar&); - - void OnAddressBarKeypadWillOpen(const Addressbar&); - - void OnAddressBarModeChanged(const Addressbar&); - - void OnBackClicked(const Addressbar&); - - void OnForwardClicked(const Addressbar&); - - void OnReaderClicked(const Addressbar&); - - void OnRefreshClicked(const Addressbar&){} - - void OnSearchClicked(const Addressbar&){} - - void OnStopClicked(Addressbar&); - - void OnUrlSubmitted(Addressbar&); - - //ILoadingeventListener - virtual void OnEstimatedProgress(int progress); - - virtual bool OnHttpAuthenticationRequestedN(const Tizen::Base::String& host, const Tizen::Base::String& realm, const Tizen::Web::Controls::AuthenticationChallenge& authentication); - - virtual void OnHttpAuthenticationCanceled(void); - - virtual result OnInitializing(void); - - virtual void OnKeypadWillOpen(Tizen::Ui::Control& source); - - virtual void OnKeypadOpened(Tizen::Ui::Control& source){} - - virtual void OnKeypadClosed(Tizen::Ui::Control& source);; - - virtual void OnKeypadActionPerformed(Tizen::Ui::Control& source, Tizen::Ui::KeypadAction keypadAction){} - - void OnLoadingErrorOccurred(Tizen::Web::Controls::LoadingErrorType error, const Tizen::Base::String& reason); - - virtual void OnLoadingStarted(void); - - virtual void OnLoadingCanceled(void); - - virtual void OnLoadingCompleted(void); - - bool OnLoadingRequested(const Tizen::Base::String& url, Tizen::Web::Controls::WebNavigationType type); - - virtual void OnPageTitleReceived(const Tizen::Base::String& title); - - virtual Tizen::Web::Controls::DecisionPolicy OnWebDataReceived(const Tizen::Base::String& mime, const Tizen::Net::Http::HttpHeader& httpHeader); - - //IOrientationEventListener - virtual void OnOrientationChanged (const Tizen::Ui::Control &source, Tizen::Ui::OrientationStatus orientationStatus); - - //ISceenEventListener - virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId, const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs); - - virtual void OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId, const Tizen::Ui::Scenes::SceneId& nextSceneId); - - virtual result OnTerminating(void); - - void SetImageLoadEnabled(void); - - void SetJavascriptEnabled(void); - - // IListViewItemEventListener - /** - *Called when the state of an element in the ListContextItem is changed. - */ - virtual void OnListViewContextItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListContextItemStatus state); - - /** - *Called when the state of an element in the ListViewItem in the ListView or GroupedListView is changed. - */ - virtual void OnListViewItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListItemStatus status); - - /** - *Called when the ListItem is swept. - */ - virtual void OnListViewItemSwept(Tizen::Ui::Controls::ListView& listView, int index, Tizen::Ui::Controls::SweepDirection direction); - - /** - *Called when the item or the element is long pressed. - */ - virtual void OnListViewItemLongPressed(Tizen::Ui::Controls::ListView& listView, int index, int elementId, bool& invokeListViewItemCallback){}; - - - //IListViewItemProvider - virtual Tizen::Ui::Controls::ListItemBase * CreateItem (int index, int itemWidth); - virtual bool DeleteItem (int index, Tizen::Ui::Controls::ListItemBase *pItem, int itemWidth); - virtual int GetItemCount (void); - - //IWebUiEventListener - virtual void OnWebPageBlockSelected(Tizen::Web::Controls::Web& source, Tizen::Graphics::Point& startPoint, Tizen::Graphics::Point& 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");} - - //IWebKeypadEventListener - virtual void OnWebKeypadClosed(Tizen::Web::Controls::Web& source); - virtual void OnWebKeypadOpened(Tizen::Web::Controls::Web& source); - virtual void OnWebKeypadWillOpen(Tizen::Web::Controls::Web& source); - - //ITouchEventListener - virtual void OnTouchDoublePressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); - virtual void OnTouchFocusIn(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo){} - virtual void OnTouchFocusOut(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo){} - virtual void OnTouchLongPressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); - virtual void OnTouchPressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); - virtual void OnTouchMoved(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); - virtual void OnTouchReleased(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); - - virtual void OnTextFound(int totalCount, int currentOrdinal); - - //ISettingsChangeListener - void OnClearCache(void); - void OnClearCookie(void); - void OnSettingsChange(int settingvalue); - void OnSettingsReset(void); - - virtual void OnTextValueChangeCanceled (const Tizen::Ui::Control &source){} - virtual void OnTextValueChanged (const Tizen::Ui::Control &source); - - void UpdateImageContent(Tizen::Base::ByteBuffer* aBuffer, Tizen::Base::String imageName); -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 InitFindWordPanel(void); - result InitImageContextMenu(Tizen::Graphics::Point p); - result InitSelectTextContextMenu(Tizen::Graphics::Point 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 ShowFindWordPanel(bool show = true, bool isTouchPressed = false); - void ShowMostVisitedSitesPanel(void); - void StartWordSearch(); - -private: - - static const int IDA_FORMAT_BITMAP; - static const int IDA_FORMAT_DELETE_BITMAP; - static const int IDA_FORMAT_TITLE_STRING; - static const int IDA_FORMAT_URL_STRING; - static const int IDA_CONTEXT_ITEM_DELETE; - - Tizen::Graphics::Point __adressPanelPosition; - AddressBarMode __curAddressBarMode; - Tizen::Base::String __currentSearchStr; - Tizen::Base::String __currentSelectedStr; - int __distanceMoved; - int __webControlHeight; - float __previousZoomLevel; - int __maxOccurrances; - int __currentWordIndex; - bool __isLoaded; - bool __inputEventToBeSupressed; - Addressbar* __pAddressbar; - 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::Button* __pFindWordClear; - Tizen::Ui::Controls::Label* __pFindWordCountLabel; - Tizen::Ui::Controls::Panel* __pFindWordControl; - Tizen::Ui::Controls::EditField* __pFindWordEditField; - 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::Button* __pMoreButton; - Tizen::Ui::Controls::Button* __pMultiWindowButton; - Tizen::Ui::Controls::Button* __pNewWindowButton; - SharePopup* __pPopUp; - AddressBarMode __prevAddressBarMode; - Tizen::Ui::Controls::Button* __pReaderCloseBtn; - Tizen::Base::String* __pReaderData; - Tizen::Media::Image* __pSaveImage; - Tizen::Web::Controls::Web* __pWebReader; - Tizen::Web::Controls::Web* __pWebViewer; - WindowInfo* __pWindowInfo; - Tizen::Ui::Controls::ListView* __pMostVisitedListView; - - Tizen::Graphics::Point __touchPoint1; - Tizen::Graphics::Point __touchPoint2; - Tizen::Graphics::Point __webControlPosition; - - Tizen::Ui::Controls::ListContextItem* __pItemContext; - Tizen::Base::Collection::ArrayList* __pMostVisitedSites; -}; - -#endif //_INT_MAIN_FORM_H_ +// + +// Copyright (c) 2012 Samsung Electronics Co., Ltd. +// +// 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 +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +//!Internet MainForm class +/*@file: MainForm.h + *@brief: The %MainForm provides the common functionalities for the Main View of the Browser including the addressbar, + * loading,handling events etc. + */ + +#ifndef _INT_MAIN_FORM_H_ +#define _INT_MAIN_FORM_H_ + +#include +#include +#include + +#include "IntAddressbar.h" +#include "IntHistoryData.h" +#include "IntHistoryPresentationModel.h" +#include "IntIAddressbarEventListener.h" +#include "IntISettingChangeListener.h" +#include "IntMultipleWindowPresentationModel.h" +#include "IntNotificationPanel.h" +#include "IntSharePopup.h" + + +enum AddressBarMode +{ + ADDRESSBAR_MODE_INVALID = -1, + ADDRESSBAR_MODE_READER = 0, + ADDRESSBAR_MODE_LOADING, + ADDRESSBAR_MODE_LOADING_COMPLETE, + ADDRESSBAR_MODE_EDIT, +}; + +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::Controls::IFormBackEventListener + , public Tizen::Ui::IKeypadEventListener + , public Tizen::Web::Controls::ILoadingListener + , public Tizen::Ui::IOrientationEventListener + , public Tizen::Ui::ITextEventListener + , public Tizen::Ui::IPropagatedTouchEventListener + , public Tizen::Ui::ITouchEventListener + , public Tizen::Ui::Scenes::ISceneEventListener + , public ISettingChangeEventListener + , public Tizen::Web::Controls::IWebKeypadEventListener + , public Tizen::Web::Controls::IWebUiEventListenerF + , public Tizen::Web::Controls::ITextSearchListener + +{ +public: + /** + *@brief Default constructor + */ + MainForm(void); + + /** + *@brief Default destructor + */ + virtual ~MainForm(void); + + /** + * @brief The method initializes the screen variables and controls to be used by the user. + * + */ + bool Initialize(void); + + /** + * @brief Initializes this instance of %MainForm. + * + */ + result InitWebControl(); + + /** + * @brief Initializes this instance of Reader Panel. + */ + result CreateReaderPanel(void); + + Tizen::Base::String GetImagePath(void); + + 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); + + void OnAddressBarKeypadOpened(const Addressbar&); + + void OnAddressBarKeypadWillOpen(const Addressbar&); + + void OnAddressBarKeypadBoundsChanged(const Addressbar& addBar); + + void OnAddressBarModeChanged(/*const Addressbar&*/); + + virtual void OnClipboardClosed(const Addressbar&); + + void OnBackClicked(/*const Addressbar&*/); + + void OnForwardClicked(/*const Addressbar&*/); + + void OnRefreshClicked(const Addressbar&){} + + void OnSearchClicked(const Addressbar&){} + + void OnStopClicked(Addressbar&); + + void OnUrlValueChanged(Addressbar&); + + void OnUrlSubmitted(Addressbar&); + + //ILoadingeventListener + virtual void OnEstimatedProgress(int progress); + virtual void OnFaviconReceived(const Tizen::Graphics::Bitmap& favicon); + + virtual bool OnHttpAuthenticationRequestedN(const Tizen::Base::String& host, const Tizen::Base::String& realm, const Tizen::Web::Controls::AuthenticationChallenge& authentication); + + virtual void OnHttpAuthenticationCanceled(void); + + virtual result OnInitializing(void); + + virtual void OnKeypadWillOpen(Tizen::Ui::Control& source); + + virtual void OnKeypadOpened(Tizen::Ui::Control& source); + + virtual void OnKeypadClosed(Tizen::Ui::Control& source); + + virtual void OnKeypadBoundsChanged (Tizen::Ui::Control &source); + + virtual void OnKeypadActionPerformed(Tizen::Ui::Control& source, Tizen::Ui::KeypadAction keypadAction){} + + void OnLoadingErrorOccurred(Tizen::Web::Controls::LoadingErrorType error, const Tizen::Base::String& reason); + + virtual void OnLoadingStarted(void); + + virtual void OnLoadingCanceled(void); + + virtual void OnLoadingCompleted(void); + + bool OnLoadingRequested(const Tizen::Base::String& url, Tizen::Web::Controls::WebNavigationType type); + + virtual void OnPageTitleReceived(const Tizen::Base::String& title); + + virtual Tizen::Web::Controls::DecisionPolicy OnWebDataReceived(const Tizen::Base::String& mime, const Tizen::Net::Http::HttpHeader& httpHeader); + + //IOrientationEventListener + virtual void OnOrientationChanged (const Tizen::Ui::Control &source, Tizen::Ui::OrientationStatus orientationStatus); + + //ISceenEventListener + virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId, const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs); + + virtual void OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId, const Tizen::Ui::Scenes::SceneId& nextSceneId); + + virtual result OnTerminating(void); + + void SetImageLoadEnabled(void); + + void SetJavascriptEnabled(void); + + // IListViewItemEventListener + /** + *Called when the state of an element in the ListContextItem is changed. + */ + virtual void OnListViewContextItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListContextItemStatus state); + + /** + *Called when the state of an element in the ListViewItem in the ListView or GroupedListView is changed. + */ + virtual void OnListViewItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListItemStatus status); + + /** + *Called when the ListItem is swept. + */ + virtual void OnListViewItemSwept(Tizen::Ui::Controls::ListView& listView, int index, Tizen::Ui::Controls::SweepDirection direction); + + /** + *Called when the item or the element is long pressed. + */ + virtual void OnListViewItemLongPressed(Tizen::Ui::Controls::ListView& listView, int index, int elementId, bool& invokeListViewItemCallback){AppLog("MainForm::OnListViewItemLongPressed called");}; + + + //IListViewItemProvider + virtual Tizen::Ui::Controls::ListItemBase * CreateItem (int index, int itemWidth); + virtual bool DeleteItem (int index, Tizen::Ui::Controls::ListItemBase *pItem, int itemWidth); + virtual int GetItemCount (void); + + //IWebUiEventListener + 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); + + //IWebKeypadEventListener + 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); + virtual void OnTouchFocusIn(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo){} + virtual void OnTouchFocusOut(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo){} + virtual void OnTouchLongPressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); + virtual void OnTouchPressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); + virtual void OnTouchMoved(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); + virtual void OnTouchReleased(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo); + + //IPropagatedTouchEventListener + virtual bool OnTouchPressed(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + virtual bool OnTouchReleased(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + virtual bool OnTouchMoved(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + virtual bool OnTouchCanceled(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + virtual bool OnPreviewTouchPressed(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + virtual bool OnPreviewTouchReleased(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + virtual bool OnPreviewTouchMoved(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo); + + virtual void OnTextFound(int totalCount, int currentOrdinal); + + //ISettingsChangeListener + void OnClearCache(void); + void OnClearCookie(void); + void OnClearFormData(void); + void OnClearPasswords(void); + void OnSettingsChange(int settingvalue); + void OnSettingsReset(void); + + virtual void OnTextValueChangeCanceled (const Tizen::Ui::Control &source){} + 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); + + void UpdateProgress(int percentage); + int GetProgress(void); + void UpdateProgressBitmap(void); + void ReaderClicked(); + + /** + * @brief Sets the current addressbar Mode. + */ + void SetAddressbarMode(AddressBarMode addMode); + + 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 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,bool relayoutFooter = true); + void ShowFindWordPanel(bool show = true, bool isTouchPressed = false); + void ShowMostVisitedSitesPanel(void); + void StartWordSearch(); + AddressBarMode GetAddressbarMode(void); + Tizen::Base::String RemoveHttpTextFromDisplayURL(void); + +private: + + static const int IDA_FORMAT_BITMAP; + static const int IDA_FORMAT_DELETE_BITMAP; + static const int IDA_FORMAT_TITLE_STRING; + static const int IDA_FORMAT_URL_STRING; + static const int IDA_CONTEXT_ITEM_DELETE; + + Tizen::Graphics::Point __adressPanelPosition; + AddressBarMode __curAddressBarMode; + Tizen::Base::String __currentSearchStr; + Tizen::Base::String __currentSelectedStr; + int __distanceMoved; + int __webControlHeight; + float __previousZoomLevel; + int __maxOccurrances; + int __currentWordIndex; + bool __isLoaded; + //bool __inputEventToBeSupressed; + + bool __isLoadingData; + bool __isLoadingCompleted; + bool __isLongPressedDone; + bool __isKeypadOpened; + int __progressPercentage; + + AddressBarMode __currentAddMode; + Tizen::Base::String __displayUrl; + 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::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; + Tizen::Media::Image* __pSaveImage; + Tizen::Web::Controls::Web* __pWebReader; + Tizen::Web::Controls::Web* __pWebViewer; + + Tizen::Ui::Controls::ListView* __pMostVisitedListView; + + Tizen::Graphics::Point __touchPoint1; + Tizen::Graphics::Point __touchPoint2; + Tizen::Graphics::Point __webControlPosition; + + Tizen::Ui::Controls::ListContextItem* __pItemContext; + Tizen::Ui::Controls::ListContextItem* __pItemContextLandscape; + Tizen::Base::Collection::ArrayList* __pMostVisitedSites; + Tizen::Ui::Controls::EditField* __pFooterUrlField; + Tizen::Ui::Controls::Button* __pGoBackBtn; + Tizen::Ui::Controls::Button* __pGoForwardBtn; + Tizen::Ui::Controls::Button* __pRefreshBtn; + Tizen::Ui::Controls::Label* __pProgressbarLabel; + 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; + WindowInfo* __pWindowInfo; +// bool __isHwKeySupported; +}; + +#endif //_INT_MAIN_FORM_H_ +