From 7fa35ac137dc8112a9e3b412f550fecb487af739 Mon Sep 17 00:00:00 2001 From: "ahram.suh" Date: Thu, 18 Apr 2013 19:23:51 +0900 Subject: [PATCH] Focus issues fixed Change-Id: I22d1a819a39db687f7f92103da95c670ff7cf207 --- inc/IntMainForm.h | 11 ++++++- src/IntMainForm.cpp | 82 ++++++++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 78 insertions(+), 15 deletions(-) diff --git a/inc/IntMainForm.h b/inc/IntMainForm.h index 9624eff..996e101 100644 --- a/inc/IntMainForm.h +++ b/inc/IntMainForm.h @@ -57,6 +57,7 @@ class MainForm , 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 @@ -180,7 +181,6 @@ public: 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. @@ -228,6 +228,15 @@ public: 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 diff --git a/src/IntMainForm.cpp b/src/IntMainForm.cpp index 94f4d53..ba3072d 100644 --- a/src/IntMainForm.cpp +++ b/src/IntMainForm.cpp @@ -216,6 +216,7 @@ MainForm::~MainForm(void) delete __pHitElementResult; __pHitElementResult = null; } + String* pSelectedScene = NULL; Object* pValue = NULL; MultipleWindowPresentationModel::GetInstance()->GetValue(SELECTED_SCENE_ID, &pValue); @@ -495,12 +496,7 @@ MainForm::InitWebControl() void MainForm::OnFocusGained(const Control& source) { - if(__pAddressbar != null) - { - __pFooterUrlField->SetFocusable(false); - __pAddressbar->SetAddressbarURLFocus(); - - } + AppLog("MainForm::OnFocusGained"); } void @@ -635,7 +631,8 @@ MainForm::InitFooter(void) __pFooterUrlField->SetKeypadAction(KEYPAD_ACTION_GO); //__pFooterUrlField->AddFocusEventListener(*this); __pFooterUrlField->AddKeypadEventListener(*this); - __pFooterUrlField->AddFocusEventListener(*this); + //__pFooterUrlField->AddFocusEventListener(*this); + __pFooterUrlField->SetPropagatedTouchEventListener(this); if (SettingPresentationModel::GetInstance()->GetHomepage().CompareTo((L"IDS_BR_BODY_MOST_VISITED_SITES")) == 0) { @@ -1205,6 +1202,7 @@ MainForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId) InitFindWordPanel(); __pMenu->SetShowState(false); __pMenu->Invalidate(false); + ShowFindWordPanel(true); __pFindWordEditField->SetFocus(); /* @@ -1214,7 +1212,7 @@ MainForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId) __pWebViewer->ReleaseBlock(); } */ - ShowFindWordPanel(true); + } break; case IDA_PRIVATEON_CLICKED: @@ -1777,6 +1775,8 @@ MainForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId) } ShowFindWordPanel(true); + __pFindWordEditField->SetFocus(); + if (__currentSearchStr.GetLength() > 0) { StartWordSearch(); @@ -2654,19 +2654,22 @@ void MainForm::OnAddressCancelledClicked(const Addressbar& addBar) { result r = E_SUCCESS; - // hiding the address bar - __pAddressbar->SetShowState(false); + __pFooterPanel->SetShowState(true); - if(__pWebViewer) - __pWebViewer->SetFocus(); + __pFooterUrlField->SetFocusable(true); + + if(__pWebViewer) + __pWebViewer->SetFocus(); else if(__pMostVisitedListView) - __pMostVisitedListView->SetFocus(); + __pMostVisitedListView->SetFocus(); else if(__pMultiWindowButton) __pMultiWindowButton->SetFocus(); - __pFooterUrlField->SetFocusable(true); __pMoreButton->SetFocus(); + __pAddressbar->SetShowState(false); + RelayoutControls(false); + } void @@ -3427,6 +3430,57 @@ MainForm::OnTouchReleased(const Tizen::Ui::Control& source, const Tizen::Graphic __inputEventToBeSupressed = false; } +bool +MainForm::OnTouchPressed(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + + return true; +} + +bool +MainForm::OnTouchReleased(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + if(__pAddressbar->GetShowState() == false) + { + __pAddressbar->SetShowState(true); + __pAddressbar->SetAddressbarURLFocus(); + __pFooterUrlField->SetFocusable(false); + __pFooterPanel->SetShowState(false); + } + + return true; +} + +bool +MainForm::OnTouchMoved(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + return true; +} + +bool +MainForm::OnTouchCanceled(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + return true; +} + +bool +MainForm::OnPreviewTouchPressed(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + return true; +} + +bool +MainForm::OnPreviewTouchReleased(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + return true; +} + +bool +MainForm::OnPreviewTouchMoved(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchEventInfo) +{ + return true; +} + void MainForm::OnOrientationChanged (const Tizen::Ui::Control &source, Tizen::Ui::OrientationStatus orientationStatus) { -- 2.7.4