Changeset 194078 in webkit
- Timestamp:
- Dec 14, 2015, 4:35:39 PM (11 years ago)
- Location:
- branches/safari-601-branch
- Files:
-
- 7 edited
-
Source/WebKit2/ChangeLog (modified) (1 diff)
-
Source/WebKit2/Shared/API/APIObject.h (modified) (1 diff)
-
Source/WebKit2/Shared/API/c/WKBase.h (modified) (1 diff)
-
Source/WebKit2/UIProcess/API/C/WKPage.cpp (modified) (2 diffs)
-
Source/WebKit2/UIProcess/API/C/WKPageUIClient.h (modified) (4 diffs)
-
Tools/ChangeLog (modified) (1 diff)
-
Tools/WebKitTestRunner/TestController.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-601-branch/Source/WebKit2/ChangeLog
r194076 r194078 1 2015-12-08 Harris Papadopoulos <cpapadopoulos@apple.com> 2 3 Merge r192911. rdar://problem/23816165 4 5 2015-12-01 Sam Weinig <sam@webkit.org> 6 7 Need completionHandler-based WebKit C SPI for alert, confirm, and prompt 8 <rdar://problem/23320863> 9 https://bugs.webkit.org/show_bug.cgi?id=151708 10 11 Reviewed by Anders Carlsson. 12 13 Add listener based versions of alert, confirm and prompt. 14 15 * Shared/API/APIObject.h: 16 * Shared/API/c/WKBase.h: 17 * UIProcess/API/C/WKPage.cpp: 18 (WebKit::RunJavaScriptAlertResultListener::create): 19 (WebKit::RunJavaScriptAlertResultListener::~RunJavaScriptAlertResultListener): 20 (WebKit::RunJavaScriptAlertResultListener::call): 21 (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener): 22 (WebKit::RunJavaScriptConfirmResultListener::create): 23 (WebKit::RunJavaScriptConfirmResultListener::~RunJavaScriptConfirmResultListener): 24 (WebKit::RunJavaScriptConfirmResultListener::call): 25 (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener): 26 (WebKit::RunJavaScriptPromptResultListener::create): 27 (WebKit::RunJavaScriptPromptResultListener::~RunJavaScriptPromptResultListener): 28 (WebKit::RunJavaScriptPromptResultListener::call): 29 (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener): 30 (WKPageSetPageUIClient): 31 * UIProcess/API/C/WKPageUIClient.h: 32 1 33 2015-12-08 Harris Papadopoulos <cpapadopoulos@apple.com> 2 34 -
branches/safari-601-branch/Source/WebKit2/Shared/API/APIObject.h
r194076 r194078 138 138 PluginSiteDataManager, 139 139 Preferences, 140 RunJavaScriptAlertResultListener, 141 RunJavaScriptConfirmResultListener, 142 RunJavaScriptPromptResultListener, 140 143 Session, 141 144 TextChecker, -
branches/safari-601-branch/Source/WebKit2/Shared/API/c/WKBase.h
r194076 r194078 131 131 typedef const struct OpaqueWKPreferences* WKPreferencesRef; 132 132 typedef const struct OpaqueWKProtectionSpace* WKProtectionSpaceRef; 133 typedef const struct OpaqueWKPageRunJavaScriptAlertResultListener* WKPageRunJavaScriptAlertResultListenerRef; 134 typedef const struct OpaqueWKPageRunJavaScriptConfirmResultListener* WKPageRunJavaScriptConfirmResultListenerRef; 135 typedef const struct OpaqueWKPageRunJavaScriptPromptResultListener* WKPageRunJavaScriptPromptResultListenerRef; 133 136 typedef const struct OpaqueWKTextChecker* WKTextCheckerRef; 134 137 typedef const struct OpaqueWKSession* WKSessionRef; -
branches/safari-601-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp
r194076 r194078 1333 1333 } 1334 1334 1335 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101000 1336 static void fixUpBotchedPageUIClient(WKPageRef pageRef, const WKPageUIClientBase& wkClient) 1337 { 1338 struct BotchedWKPageUIClientV4 { 1339 WKPageUIClientBase base; 1340 1341 // Version 0. 1342 WKPageCreateNewPageCallback_deprecatedForUseWithV0 createNewPage_deprecatedForUseWithV0; 1343 WKPageUIClientCallback showPage; 1344 WKPageUIClientCallback close; 1345 WKPageTakeFocusCallback takeFocus; 1346 WKPageFocusCallback focus; 1347 WKPageUnfocusCallback unfocus; 1348 WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV0 runJavaScriptAlert_deprecatedForUseWithV0; 1349 WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV0 runJavaScriptConfirm_deprecatedForUseWithV0; 1350 WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV0 runJavaScriptPrompt_deprecatedForUseWithV0; 1351 WKPageSetStatusTextCallback setStatusText; 1352 WKPageMouseDidMoveOverElementCallback_deprecatedForUseWithV0 mouseDidMoveOverElement_deprecatedForUseWithV0; 1353 WKPageMissingPluginButtonClickedCallback_deprecatedForUseWithV0 missingPluginButtonClicked_deprecatedForUseWithV0; 1354 WKPageDidNotHandleKeyEventCallback didNotHandleKeyEvent; 1355 WKPageDidNotHandleWheelEventCallback didNotHandleWheelEvent; 1356 WKPageGetToolbarsAreVisibleCallback toolbarsAreVisible; 1357 WKPageSetToolbarsAreVisibleCallback setToolbarsAreVisible; 1358 WKPageGetMenuBarIsVisibleCallback menuBarIsVisible; 1359 WKPageSetMenuBarIsVisibleCallback setMenuBarIsVisible; 1360 WKPageGetStatusBarIsVisibleCallback statusBarIsVisible; 1361 WKPageSetStatusBarIsVisibleCallback setStatusBarIsVisible; 1362 WKPageGetIsResizableCallback isResizable; 1363 WKPageSetIsResizableCallback setIsResizable; 1364 WKPageGetWindowFrameCallback getWindowFrame; 1365 WKPageSetWindowFrameCallback setWindowFrame; 1366 WKPageRunBeforeUnloadConfirmPanelCallback runBeforeUnloadConfirmPanel; 1367 WKPageUIClientCallback didDraw; 1368 WKPageUIClientCallback pageDidScroll; 1369 WKPageExceededDatabaseQuotaCallback exceededDatabaseQuota; 1370 WKPageRunOpenPanelCallback runOpenPanel; 1371 WKPageDecidePolicyForGeolocationPermissionRequestCallback decidePolicyForGeolocationPermissionRequest; 1372 WKPageHeaderHeightCallback headerHeight; 1373 WKPageFooterHeightCallback footerHeight; 1374 WKPageDrawHeaderCallback drawHeader; 1375 WKPageDrawFooterCallback drawFooter; 1376 WKPagePrintFrameCallback printFrame; 1377 WKPageUIClientCallback runModal; 1378 void* unused1; // Used to be didCompleteRubberBandForMainFrame 1379 WKPageSaveDataToFileInDownloadsFolderCallback saveDataToFileInDownloadsFolder; 1380 void* shouldInterruptJavaScript_unavailable; 1381 1382 // Version 1. 1383 WKPageCreateNewPageCallback_deprecatedForUseWithV1 createNewPage; 1384 WKPageMouseDidMoveOverElementCallback mouseDidMoveOverElement; 1385 WKPageDecidePolicyForNotificationPermissionRequestCallback decidePolicyForNotificationPermissionRequest; 1386 WKPageUnavailablePluginButtonClickedCallback_deprecatedForUseWithV1 unavailablePluginButtonClicked_deprecatedForUseWithV1; 1387 1388 // Version 2. 1389 WKPageShowColorPickerCallback showColorPicker; 1390 WKPageHideColorPickerCallback hideColorPicker; 1391 WKPageUnavailablePluginButtonClickedCallback unavailablePluginButtonClicked; 1392 1393 // Version 3. 1394 WKPagePinnedStateDidChangeCallback pinnedStateDidChange; 1395 1396 // Version 4. 1397 WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV5 runJavaScriptAlert; 1398 WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV5 runJavaScriptConfirm; 1399 WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV5 runJavaScriptPrompt; 1400 }; 1401 1402 const auto& botchedPageUIClient = reinterpret_cast<const BotchedWKPageUIClientV4&>(wkClient); 1403 1404 WKPageUIClientV5 fixedPageUIClient = { 1405 { 5, botchedPageUIClient.base.clientInfo }, 1406 botchedPageUIClient.createNewPage_deprecatedForUseWithV0, 1407 botchedPageUIClient.showPage, 1408 botchedPageUIClient.close, 1409 botchedPageUIClient.takeFocus, 1410 botchedPageUIClient.focus, 1411 botchedPageUIClient.unfocus, 1412 botchedPageUIClient.runJavaScriptAlert_deprecatedForUseWithV0, 1413 botchedPageUIClient.runJavaScriptConfirm_deprecatedForUseWithV0, 1414 botchedPageUIClient.runJavaScriptPrompt_deprecatedForUseWithV0, 1415 botchedPageUIClient.setStatusText, 1416 botchedPageUIClient.mouseDidMoveOverElement_deprecatedForUseWithV0, 1417 botchedPageUIClient.missingPluginButtonClicked_deprecatedForUseWithV0, 1418 botchedPageUIClient.didNotHandleKeyEvent, 1419 botchedPageUIClient.didNotHandleWheelEvent, 1420 botchedPageUIClient.toolbarsAreVisible, 1421 botchedPageUIClient.setToolbarsAreVisible, 1422 botchedPageUIClient.menuBarIsVisible, 1423 botchedPageUIClient.setMenuBarIsVisible, 1424 botchedPageUIClient.statusBarIsVisible, 1425 botchedPageUIClient.setStatusBarIsVisible, 1426 botchedPageUIClient.isResizable, 1427 botchedPageUIClient.setIsResizable, 1428 botchedPageUIClient.getWindowFrame, 1429 botchedPageUIClient.setWindowFrame, 1430 botchedPageUIClient.runBeforeUnloadConfirmPanel, 1431 botchedPageUIClient.didDraw, 1432 botchedPageUIClient.pageDidScroll, 1433 botchedPageUIClient.exceededDatabaseQuota, 1434 botchedPageUIClient.runOpenPanel, 1435 botchedPageUIClient.decidePolicyForGeolocationPermissionRequest, 1436 botchedPageUIClient.headerHeight, 1437 botchedPageUIClient.footerHeight, 1438 botchedPageUIClient.drawHeader, 1439 botchedPageUIClient.drawFooter, 1440 botchedPageUIClient.printFrame, 1441 botchedPageUIClient.runModal, 1442 botchedPageUIClient.unused1, 1443 botchedPageUIClient.saveDataToFileInDownloadsFolder, 1444 botchedPageUIClient.shouldInterruptJavaScript_unavailable, 1445 botchedPageUIClient.createNewPage, 1446 botchedPageUIClient.mouseDidMoveOverElement, 1447 botchedPageUIClient.decidePolicyForNotificationPermissionRequest, 1448 botchedPageUIClient.unavailablePluginButtonClicked_deprecatedForUseWithV1, 1449 botchedPageUIClient.showColorPicker, 1450 botchedPageUIClient.hideColorPicker, 1451 botchedPageUIClient.unavailablePluginButtonClicked, 1452 botchedPageUIClient.pinnedStateDidChange, 1453 nullptr, 1454 nullptr, 1455 nullptr, 1456 nullptr, 1457 nullptr, 1458 nullptr, 1459 botchedPageUIClient.runJavaScriptAlert, 1460 botchedPageUIClient.runJavaScriptConfirm, 1461 botchedPageUIClient.runJavaScriptPrompt, 1462 nullptr, 1463 }; 1464 1465 WKPageSetPageUIClient(pageRef, &fixedPageUIClient.base); 1466 } 1467 #endif 1468 1469 namespace WebKit { 1470 1471 class RunJavaScriptAlertResultListener : public API::ObjectImpl<API::Object::Type::RunJavaScriptAlertResultListener> { 1472 public: 1473 static PassRefPtr<RunJavaScriptAlertResultListener> create(std::function<void ()>&& completionHandler) 1474 { 1475 return adoptRef(new RunJavaScriptAlertResultListener(WTF::move(completionHandler))); 1476 } 1477 1478 virtual ~RunJavaScriptAlertResultListener() 1479 { 1480 } 1481 1482 void call() 1483 { 1484 m_completionHandler(); 1485 } 1486 1487 private: 1488 explicit RunJavaScriptAlertResultListener(std::function<void ()>&& completionHandler) 1489 : m_completionHandler(WTF::move(completionHandler)) 1490 { 1491 } 1492 1493 std::function<void ()> m_completionHandler; 1494 }; 1495 1496 class RunJavaScriptConfirmResultListener : public API::ObjectImpl<API::Object::Type::RunJavaScriptConfirmResultListener> { 1497 public: 1498 static PassRefPtr<RunJavaScriptConfirmResultListener> create(std::function<void (bool)>&& completionHandler) 1499 { 1500 return adoptRef(new RunJavaScriptConfirmResultListener(WTF::move(completionHandler))); 1501 } 1502 1503 virtual ~RunJavaScriptConfirmResultListener() 1504 { 1505 } 1506 1507 void call(bool result) 1508 { 1509 m_completionHandler(result); 1510 } 1511 1512 private: 1513 explicit RunJavaScriptConfirmResultListener(std::function<void (bool)>&& completionHandler) 1514 : m_completionHandler(WTF::move(completionHandler)) 1515 { 1516 } 1517 1518 std::function<void (bool)> m_completionHandler; 1519 }; 1520 1521 class RunJavaScriptPromptResultListener : public API::ObjectImpl<API::Object::Type::RunJavaScriptPromptResultListener> { 1522 public: 1523 static PassRefPtr<RunJavaScriptPromptResultListener> create(std::function<void (const String&)>&& completionHandler) 1524 { 1525 return adoptRef(new RunJavaScriptPromptResultListener(WTF::move(completionHandler))); 1526 } 1527 1528 virtual ~RunJavaScriptPromptResultListener() 1529 { 1530 } 1531 1532 void call(const String& result) 1533 { 1534 m_completionHandler(result); 1535 } 1536 1537 private: 1538 explicit RunJavaScriptPromptResultListener(std::function<void (const String&)>&& completionHandler) 1539 : m_completionHandler(WTF::move(completionHandler)) 1540 { 1541 } 1542 1543 std::function<void (const String&)> m_completionHandler; 1544 }; 1545 1546 WK_ADD_API_MAPPING(WKPageRunJavaScriptAlertResultListenerRef, RunJavaScriptAlertResultListener) 1547 WK_ADD_API_MAPPING(WKPageRunJavaScriptConfirmResultListenerRef, RunJavaScriptConfirmResultListener) 1548 WK_ADD_API_MAPPING(WKPageRunJavaScriptPromptResultListenerRef, RunJavaScriptPromptResultListener) 1549 1550 } 1551 1335 1552 void WKPageSetPageUIClient(WKPageRef pageRef, const WKPageUIClientBase* wkClient) 1336 1553 { … … 1436 1653 virtual void runJavaScriptAlert(WebPageProxy* page, const String& message, WebFrameProxy* frame, const SecurityOriginData& securityOriginData, std::function<void ()> completionHandler) override 1437 1654 { 1438 if (!m_client.runJavaScriptAlert && !m_client.runJavaScriptAlert_deprecatedForUseWithV0) { 1655 if (m_client.runJavaScriptAlert) { 1656 RefPtr<RunJavaScriptAlertResultListener> listener = RunJavaScriptAlertResultListener::create(WTF::move(completionHandler)); 1657 RefPtr<API::SecurityOrigin> securityOrigin = API::SecurityOrigin::create(securityOriginData.protocol, securityOriginData.host, securityOriginData.port); 1658 m_client.runJavaScriptAlert(toAPI(page), toAPI(message.impl()), toAPI(frame), toAPI(securityOrigin.get()), toAPI(listener.get()), m_client.base.clientInfo); 1659 return; 1660 } 1661 1662 if (m_client.runJavaScriptAlert_deprecatedForUseWithV5) { 1663 RefPtr<API::SecurityOrigin> securityOrigin = API::SecurityOrigin::create(securityOriginData.protocol, securityOriginData.host, securityOriginData.port); 1664 m_client.runJavaScriptAlert_deprecatedForUseWithV5(toAPI(page), toAPI(message.impl()), toAPI(frame), toAPI(securityOrigin.get()), m_client.base.clientInfo); 1439 1665 completionHandler(); 1440 1666 return; 1441 1667 } 1442 1443 if (m_client.runJavaScriptAlert) { 1668 1669 if (m_client.runJavaScriptAlert_deprecatedForUseWithV0) { 1670 m_client.runJavaScriptAlert_deprecatedForUseWithV0(toAPI(page), toAPI(message.impl()), toAPI(frame), m_client.base.clientInfo); 1671 completionHandler(); 1672 return; 1673 } 1674 1675 1676 completionHandler(); 1677 } 1678 1679 virtual void runJavaScriptConfirm(WebPageProxy* page, const String& message, WebFrameProxy* frame, const SecurityOriginData& securityOriginData, std::function<void (bool)> completionHandler) override 1680 { 1681 if (m_client.runJavaScriptConfirm) { 1682 RefPtr<RunJavaScriptConfirmResultListener> listener = RunJavaScriptConfirmResultListener::create(WTF::move(completionHandler)); 1444 1683 RefPtr<API::SecurityOrigin> securityOrigin = API::SecurityOrigin::create(securityOriginData.protocol, securityOriginData.host, securityOriginData.port); 1445 m_client.runJavaScriptAlert(toAPI(page), toAPI(message.impl()), toAPI(frame), toAPI(securityOrigin.get()), m_client.base.clientInfo); 1446 } else 1447 m_client.runJavaScriptAlert_deprecatedForUseWithV0(toAPI(page), toAPI(message.impl()), toAPI(frame), m_client.base.clientInfo); 1448 1449 completionHandler(); 1450 } 1451 1452 virtual void runJavaScriptConfirm(WebPageProxy* page, const String& message, WebFrameProxy* frame, const SecurityOriginData& securityOriginData, std::function<void (bool)> completionHandler) override 1453 { 1454 if (!m_client.runJavaScriptConfirm && !m_client.runJavaScriptConfirm_deprecatedForUseWithV0) { 1455 completionHandler(false); 1684 m_client.runJavaScriptConfirm(toAPI(page), toAPI(message.impl()), toAPI(frame), toAPI(securityOrigin.get()), toAPI(listener.get()), m_client.base.clientInfo); 1456 1685 return; 1457 1686 } 1458 1687 1459 bool result; 1460 if (m_client.runJavaScriptConfirm) { 1688 if (m_client.runJavaScriptConfirm_deprecatedForUseWithV5) { 1461 1689 RefPtr<API::SecurityOrigin> securityOrigin = API::SecurityOrigin::create(securityOriginData.protocol, securityOriginData.host, securityOriginData.port); 1462 result = m_client.runJavaScriptConfirm(toAPI(page), toAPI(message.impl()), toAPI(frame), toAPI(securityOrigin.get()), m_client.base.clientInfo); 1463 } else 1464 result = m_client.runJavaScriptConfirm_deprecatedForUseWithV0(toAPI(page), toAPI(message.impl()), toAPI(frame), m_client.base.clientInfo); 1465 1466 completionHandler(result); 1690 bool result = m_client.runJavaScriptConfirm_deprecatedForUseWithV5(toAPI(page), toAPI(message.impl()), toAPI(frame), toAPI(securityOrigin.get()), m_client.base.clientInfo); 1691 1692 completionHandler(result); 1693 return; 1694 } 1695 1696 if (m_client.runJavaScriptConfirm_deprecatedForUseWithV0) { 1697 bool result = m_client.runJavaScriptConfirm_deprecatedForUseWithV0(toAPI(page), toAPI(message.impl()), toAPI(frame), m_client.base.clientInfo); 1698 1699 completionHandler(result); 1700 return; 1701 } 1702 1703 completionHandler(false); 1467 1704 } 1468 1705 1469 1706 virtual void runJavaScriptPrompt(WebPageProxy* page, const String& message, const String& defaultValue, WebFrameProxy* frame, const SecurityOriginData& securityOriginData, std::function<void (const String&)> completionHandler) override 1470 1707 { 1471 if (!m_client.runJavaScriptPrompt && !m_client.runJavaScriptPrompt_deprecatedForUseWithV0) { 1472 completionHandler(String()); 1708 if (m_client.runJavaScriptPrompt) { 1709 RefPtr<RunJavaScriptPromptResultListener> listener = RunJavaScriptPromptResultListener::create(WTF::move(completionHandler)); 1710 RefPtr<API::SecurityOrigin> securityOrigin = API::SecurityOrigin::create(securityOriginData.protocol, securityOriginData.host, securityOriginData.port); 1711 m_client.runJavaScriptPrompt(toAPI(page), toAPI(message.impl()), toAPI(defaultValue.impl()), toAPI(frame), toAPI(securityOrigin.get()), toAPI(listener.get()), m_client.base.clientInfo); 1473 1712 return; 1474 1713 } 1475 1714 1476 RefPtr<API::String> string; 1477 if (m_client.runJavaScriptPrompt) { 1715 if (m_client.runJavaScriptPrompt_deprecatedForUseWithV5) { 1478 1716 RefPtr<API::SecurityOrigin> securityOrigin = API::SecurityOrigin::create(securityOriginData.protocol, securityOriginData.host, securityOriginData.port); 1479 string = adoptRef(toImpl(m_client.runJavaScriptPrompt(toAPI(page), toAPI(message.impl()), toAPI(defaultValue.impl()), toAPI(frame), toAPI(securityOrigin.get()), m_client.base.clientInfo)));1480 } else1481 string = adoptRef(toImpl(m_client.runJavaScriptPrompt_deprecatedForUseWithV0(toAPI(page), toAPI(message.impl()), toAPI(defaultValue.impl()), toAPI(frame), m_client.base.clientInfo)));1482 1483 if (!string) {1484 completionHandler(String());1717 RefPtr<API::String> string = adoptRef(toImpl(m_client.runJavaScriptPrompt_deprecatedForUseWithV5(toAPI(page), toAPI(message.impl()), toAPI(defaultValue.impl()), toAPI(frame), toAPI(securityOrigin.get()), m_client.base.clientInfo))); 1718 1719 if (string) 1720 completionHandler(string->string()); 1721 else 1722 completionHandler(String()); 1485 1723 return; 1486 1724 } 1487 1488 completionHandler(string->string()); 1725 1726 if (m_client.runJavaScriptPrompt_deprecatedForUseWithV0) { 1727 RefPtr<API::String> string = adoptRef(toImpl(m_client.runJavaScriptPrompt_deprecatedForUseWithV0(toAPI(page), toAPI(message.impl()), toAPI(defaultValue.impl()), toAPI(frame), m_client.base.clientInfo))); 1728 1729 if (string) 1730 completionHandler(string->string()); 1731 else 1732 completionHandler(String()); 1733 return; 1734 } 1735 1736 completionHandler(String()); 1489 1737 } 1490 1738 -
branches/safari-601-branch/Source/WebKit2/UIProcess/API/C/WKPageUIClient.h
r194076 r194078 49 49 typedef uint32_t WKPluginUnavailabilityReason; 50 50 51 52 WK_EXPORT WKTypeID WKPageRunJavaScriptAlertResultListenerGetTypeID(); 53 WK_EXPORT void WKPageRunJavaScriptAlertResultListenerCall(WKPageRunJavaScriptAlertResultListenerRef listener); 54 55 WK_EXPORT WKTypeID WKPageRunJavaScriptConfirmResultListenerGetTypeID(); 56 WK_EXPORT void WKPageRunJavaScriptConfirmResultListenerCall(WKPageRunJavaScriptConfirmResultListenerRef listener, bool result); 57 58 WK_EXPORT WKTypeID WKPageRunJavaScriptPromptResultListenerGetTypeID(); 59 WK_EXPORT void WKPageRunJavaScriptPromptResultListenerCall(WKPageRunJavaScriptPromptResultListenerRef listener, WKStringRef result); 60 51 61 typedef void (*WKPageUIClientCallback)(WKPageRef page, const void* clientInfo); 52 62 typedef WKPageRef (*WKPageCreateNewPageCallback)(WKPageRef page, WKPageConfigurationRef configuration, WKNavigationActionRef navigationAction, WKWindowFeaturesRef windowFeatures, const void *clientInfo); 53 typedef void (*WKPageRunJavaScriptAlertCallback)(WKPageRef page, WKStringRef alertText, WKFrameRef frame, WKSecurityOriginRef securityOrigin, const void *clientInfo);54 typedef bool (*WKPageRunJavaScriptConfirmCallback)(WKPageRef page, WKStringRef message, WKFrameRef frame, WKSecurityOriginRef securityOrigin, const void *clientInfo);55 typedef WKStringRef (*WKPageRunJavaScriptPromptCallback)(WKPageRef page, WKStringRef message, WKStringRef defaultValue, WKFrameRef frame, WKSecurityOriginRef securityOrigin, const void *clientInfo);63 typedef void (*WKPageRunJavaScriptAlertCallback)(WKPageRef page, WKStringRef alertText, WKFrameRef frame, WKSecurityOriginRef securityOrigin, WKPageRunJavaScriptAlertResultListenerRef listener, const void *clientInfo); 64 typedef void (*WKPageRunJavaScriptConfirmCallback)(WKPageRef page, WKStringRef message, WKFrameRef frame, WKSecurityOriginRef securityOrigin, WKPageRunJavaScriptConfirmResultListenerRef listener, const void *clientInfo); 65 typedef void (*WKPageRunJavaScriptPromptCallback)(WKPageRef page, WKStringRef message, WKStringRef defaultValue, WKFrameRef frame, WKSecurityOriginRef securityOrigin, WKPageRunJavaScriptPromptResultListenerRef listener, const void *clientInfo); 56 66 typedef void (*WKPageTakeFocusCallback)(WKPageRef page, WKFocusDirection direction, const void *clientInfo); 57 67 typedef void (*WKPageFocusCallback)(WKPageRef page, const void *clientInfo); … … 103 113 typedef WKStringRef (*WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV0)(WKPageRef page, WKStringRef message, WKStringRef defaultValue, WKFrameRef frame, const void *clientInfo); 104 114 typedef WKPageRef (*WKPageCreateNewPageCallback_deprecatedForUseWithV1)(WKPageRef page, WKURLRequestRef urlRequest, WKDictionaryRef features, WKEventModifiers modifiers, WKEventMouseButton mouseButton, const void *clientInfo); 115 typedef void (*WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV5)(WKPageRef page, WKStringRef alertText, WKFrameRef frame, WKSecurityOriginRef securityOrigin, const void *clientInfo); 116 typedef bool (*WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV5)(WKPageRef page, WKStringRef message, WKFrameRef frame, WKSecurityOriginRef securityOrigin, const void *clientInfo); 117 typedef WKStringRef (*WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV5)(WKPageRef page, WKStringRef message, WKStringRef defaultValue, WKFrameRef frame, WKSecurityOriginRef securityOrigin, const void *clientInfo); 118 105 119 106 120 typedef struct WKPageUIClientBase { … … 452 466 WKPageDecidePolicyForUserMediaPermissionRequestCallback decidePolicyForUserMediaPermissionRequest; 453 467 WKPageDidClickAutoFillButtonCallback didClickAutoFillButton; 454 WKPageRunJavaScriptAlertCallback runJavaScriptAlert;455 WKPageRunJavaScriptConfirmCallback runJavaScriptConfirm;456 WKPageRunJavaScriptPromptCallback runJavaScriptPrompt;468 WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV5 runJavaScriptAlert; 469 WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV5 runJavaScriptConfirm; 470 WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV5 runJavaScriptPrompt; 457 471 WKPageMediaSessionMetadataDidChangeCallback mediaSessionMetadataDidChange; 458 472 } WKPageUIClientV5; … … 525 539 WKPageDecidePolicyForUserMediaPermissionRequestCallback decidePolicyForUserMediaPermissionRequest; 526 540 WKPageDidClickAutoFillButtonCallback didClickAutoFillButton; 541 WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV5 runJavaScriptAlert_deprecatedForUseWithV5; 542 WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV5 runJavaScriptConfirm_deprecatedForUseWithV5; 543 WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV5 runJavaScriptPrompt_deprecatedForUseWithV5; 544 WKPageMediaSessionMetadataDidChangeCallback mediaSessionMetadataDidChange; 545 546 // Version 6. 547 WKPageCreateNewPageCallback createNewPage; 527 548 WKPageRunJavaScriptAlertCallback runJavaScriptAlert; 528 549 WKPageRunJavaScriptConfirmCallback runJavaScriptConfirm; 529 550 WKPageRunJavaScriptPromptCallback runJavaScriptPrompt; 530 WKPageMediaSessionMetadataDidChangeCallback mediaSessionMetadataDidChange;531 532 // Version 6.533 WKPageCreateNewPageCallback createNewPage;534 535 551 } WKPageUIClientV6; 536 552 -
branches/safari-601-branch/Tools/ChangeLog
r193581 r194078 1 2015-12-08 Harris Papadopoulos <cpapadopoulos@apple.com> 2 3 Merge r192911. rdar://problem/23816165 4 5 2015-12-01 Sam Weinig <sam@webkit.org> 6 7 Need completionHandler-based WebKit C SPI for alert, confirm, and prompt 8 <rdar://problem/23320863> 9 https://bugs.webkit.org/show_bug.cgi?id=151708 10 11 Reviewed by Anders Carlsson. 12 13 * WebKitTestRunner/TestController.cpp: 14 (WTR::TestController::createOtherPage): 15 (WTR::TestController::createWebViewWithOptions): 16 Update for new WKPageUIClient. 17 1 18 2015-12-06 Matthew Hanson <matthew_hanson@apple.com> 2 19 -
branches/safari-601-branch/Tools/WebKitTestRunner/TestController.cpp
r190766 r194078 266 266 0, // runJavaScriptPrompt 267 267 0, // mediaSessionMetadataDidChange 268 createOtherPage, 269 0, // runJavaScriptAlert 270 0, // runJavaScriptConfirm 271 0 // runJavaScriptPrompt 268 272 }; 269 273 WKPageSetPageUIClient(newPage, &otherPageUIClient.base); … … 517 521 0, // runJavaScriptPrompt 518 522 0, // mediaSessionMetadataDidChange 523 createOtherPage, 524 0, // runJavaScriptAlert 525 0, // runJavaScriptConfirm 526 0, // runJavaScriptPrompt 519 527 }; 520 528 WKPageSetPageUIClient(m_mainWebView->page(), &pageUIClient.base);
Note:
See TracChangeset
for help on using the changeset viewer.