Fixed tabs addition 34/45934/6
authorAlbert Malewski <a.malewski@samsung.com>
Wed, 12 Aug 2015 10:32:04 +0000 (12:32 +0200)
committerJanusz Majnert <j.majnert@samsung.com>
Thu, 13 Aug 2015 14:47:44 +0000 (07:47 -0700)
[Issue#]   https://bugs.tizen.org/jira/browse/TT-92
[Problem]  Multiple tabs are added when navigating a page
           from Most Visited or Bookmarks.
[Cause]    Slots were added to signals every time the ShowMainUI
           function was called.
[Solution] Changed time of adding slots. Now they are added in function exec
           only once (if m_initialised is false).
[Verify]   Launch Browser > Create new tabs > Obs
           Number of open tabs should be correct.

Change-Id: I0401061a1cc75984c739a582be6bb83465849556

services/SimpleUI/SimpleUI.cpp

index 4aa6931fffd6515705db987aebd8275d1ccd6680..7c821c8bacd7406b1c7264e1688c77b1f84a9f4b 100644 (file)
@@ -298,6 +298,16 @@ int SimpleUI::exec(const std::string& _url)
         }
         m_initialised = true;
 
+        m_mainUI = std::dynamic_pointer_cast <tizen_browser::base_ui::MainUI,tizen_browser::core::AbstractService>
+                    (tizen_browser::core::ServiceManager::getInstance().getService("org.tizen.browser.mainui"));
+        M_ASSERT(m_mainUI.get());
+
+        m_historyService->historyAllDeleted.connect(boost::bind(&tizen_browser::base_ui::MainUI::clearHistoryGenlist, m_mainUI.get()));
+        m_mainUI->historyClicked.connect(boost::bind(&SimpleUI::onHistoryClicked, this,_1));
+        m_mainUI->mostVisitedClicked.connect(boost::bind(&SimpleUI::onMostVisitedClicked, this,_1));
+        m_mainUI->bookmarkClicked.connect(boost::bind(&SimpleUI::onBookmarkButtonClicked, this,_1));
+        m_mainUI->bookmarkManagerClicked.connect(boost::bind(&SimpleUI::onBookmarkManagerButtonClicked, this,_1));
+
         // only when first run
         if (url.empty()) {
             BROWSER_LOGD("[%s]: changing to homeUrl", __func__);
@@ -1043,16 +1053,11 @@ void SimpleUI::showMainUI()
                 std::dynamic_pointer_cast
                 <tizen_browser::base_ui::MainUI,tizen_browser::core::AbstractService>
                 (tizen_browser::core::ServiceManager::getInstance().getService("org.tizen.browser.mainui"));
-        M_ASSERT(m_mainUI);
+       M_ASSERT(m_mainUI);
        hideWebView();
-        m_mainUI->show(m_window.get());
+       m_mainUI->show(m_window.get());
        m_mainUI->addHistoryItems(getHistory());
 
-       m_historyService->historyAllDeleted.connect(boost::bind(&tizen_browser::base_ui::MainUI::clearHistoryGenlist, m_mainUI.get()));
-       m_mainUI->historyClicked.connect(boost::bind(&SimpleUI::onHistoryClicked, this,_1));
-       m_mainUI->mostVisitedClicked.connect(boost::bind(&SimpleUI::onMostVisitedClicked, this,_1));
-       m_mainUI->bookmarkClicked.connect(boost::bind(&SimpleUI::onBookmarkButtonClicked, this,_1));
-    m_mainUI->bookmarkManagerClicked.connect(boost::bind(&SimpleUI::onBookmarkManagerButtonClicked, this,_1));
        m_isHomePageActive = true;
 }