+ // Check the case that favicon is null.
+ favicon = view.GetFavicon();
+ DALI_TEST_CHECK( !favicon );
+
+ END_TEST;
+}
+
+int UtcDaliWebViewContextMenuShownAndHidden(void)
+{
+ ToolkitTestApplication application;
+
+ WebView view = WebView::New();
+ DALI_TEST_CHECK( view );
+
+ // load url.
+ ConnectionTracker* testTracker = new ConnectionTracker();
+ view.ContextMenuShownSignal().Connect( &OnContextMenuShown );
+ view.ContextMenuHiddenSignal().Connect( &OnContextMenuHidden );
+ bool signal1 = false;
+ bool signal2 = false;
+ view.ConnectSignal( testTracker, "contextMenuShown", CallbackFunctor(&signal1) );
+ view.ConnectSignal( testTracker, "contextMenuHidden", CallbackFunctor(&signal2) );
+ DALI_TEST_EQUALS( gContextMenuShownCallbackCalled, 0, TEST_LOCATION );
+ DALI_TEST_EQUALS( gContextMenuHiddenCallbackCalled, 0, TEST_LOCATION );
+ DALI_TEST_CHECK(gContextMenuShownInstance == 0);
+ DALI_TEST_CHECK(gContextMenuHiddenInstance == 0);
+
+ view.LoadUrl( TEST_URL1 );
+ Test::EmitGlobalTimerSignal();
+ DALI_TEST_EQUALS( gContextMenuShownCallbackCalled, 1, TEST_LOCATION );
+ DALI_TEST_EQUALS( gContextMenuHiddenCallbackCalled, 1, TEST_LOCATION );
+ DALI_TEST_CHECK( signal1 );
+ DALI_TEST_CHECK( signal2 );
+
+ // check context meun & its items.
+ DALI_TEST_CHECK(gContextMenuShownInstance != 0);
+ std::unique_ptr<Dali::WebEngineContextMenuItem> item = gContextMenuShownInstance->GetItemAt(0);
+ DALI_TEST_CHECK(item.get() != 0);
+ std::vector<std::unique_ptr<Dali::WebEngineContextMenuItem>> itemList = gContextMenuShownInstance->GetItemList();
+ DALI_TEST_CHECK(itemList.size() == 1);
+ DALI_TEST_CHECK(gContextMenuShownInstance->RemoveItem(*(item.get())));
+ DALI_TEST_CHECK(gContextMenuShownInstance->AppendItemAsAction(WebEngineContextMenuItem::ItemTag::NO_ACTION, "", false));
+ DALI_TEST_CHECK(gContextMenuShownInstance->AppendItem(WebEngineContextMenuItem::ItemTag::NO_ACTION, "", "", false));
+ DALI_TEST_CHECK(gContextMenuShownInstance->SelectItem(*(item.get())));
+ DALI_TEST_CHECK(gContextMenuShownInstance->Hide());
+
+ Dali::WebEngineContextMenuItem::ItemTag testItemTag = Dali::WebEngineContextMenuItem::ItemTag::NO_ACTION;
+ DALI_TEST_EQUALS(item->GetTag(), testItemTag, TEST_LOCATION);
+ Dali::WebEngineContextMenuItem::ItemType testItemType = Dali::WebEngineContextMenuItem::ItemType::ACTION;
+ DALI_TEST_EQUALS(item->GetType(), testItemType, TEST_LOCATION);
+ DALI_TEST_CHECK(item->IsEnabled());
+ std::string testLinkUrl("http://test.html");
+ DALI_TEST_EQUALS(item->GetLinkUrl(), testLinkUrl, TEST_LOCATION);
+ std::string testImageUrl("http://test.jpg");
+ DALI_TEST_EQUALS(item->GetImageUrl(), testImageUrl, TEST_LOCATION);
+ std::string testTitle("title");
+ DALI_TEST_EQUALS(item->GetTitle(), testTitle, TEST_LOCATION);
+ DALI_TEST_CHECK(item->GetParentMenu().get() == 0);
+
+ DALI_TEST_CHECK(gContextMenuHiddenInstance != 0);
+
+ gContextMenuShownInstance = nullptr;
+ gContextMenuHiddenInstance = nullptr;
+