APIClientTraits.cpp 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. /*
  2. * Copyright (C) 2011 Apple Inc. All rights reserved.
  3. *
  4. * Redistribution and use in source and binary forms, with or without
  5. * modification, are permitted provided that the following conditions
  6. * are met:
  7. * 1. Redistributions of source code must retain the above copyright
  8. * notice, this list of conditions and the following disclaimer.
  9. * 2. Redistributions in binary form must reproduce the above copyright
  10. * notice, this list of conditions and the following disclaimer in the
  11. * documentation and/or other materials provided with the distribution.
  12. *
  13. * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
  14. * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
  15. * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  16. * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
  17. * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  18. * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  19. * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  20. * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  21. * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  22. * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  23. * THE POSSIBILITY OF SUCH DAMAGE.
  24. */
  25. #include "config.h"
  26. #include "APIClientTraits.h"
  27. #include "WKBundle.h"
  28. #include "WKBundlePage.h"
  29. namespace WebKit {
  30. const size_t APIClientTraits<WKBundleClient>::interfaceSizesByVersion[] = {
  31. offsetof(WKBundleClient, didReceiveMessageToPage),
  32. sizeof(WKBundleClient)
  33. };
  34. const size_t APIClientTraits<WKBundlePageLoaderClient>::interfaceSizesByVersion[] = {
  35. offsetof(WKBundlePageLoaderClient, didLayoutForFrame),
  36. offsetof(WKBundlePageLoaderClient, didFinishProgress),
  37. offsetof(WKBundlePageLoaderClient, didReceiveIntentForFrame_unavailable),
  38. offsetof(WKBundlePageLoaderClient, registerIntentServiceForFrame_unavailable),
  39. offsetof(WKBundlePageLoaderClient, didLayout),
  40. offsetof(WKBundlePageLoaderClient, featuresUsedInPage),
  41. sizeof(WKBundlePageLoaderClient)
  42. };
  43. const size_t APIClientTraits<WKBundlePageResourceLoadClient>::interfaceSizesByVersion[] = {
  44. offsetof(WKBundlePageResourceLoadClient, shouldCacheResponse),
  45. sizeof(WKBundlePageResourceLoadClient)
  46. };
  47. const size_t APIClientTraits<WKBundlePageFullScreenClient>::interfaceSizesByVersion[] = {
  48. offsetof(WKBundlePageFullScreenClient, beganEnterFullScreen),
  49. sizeof(WKBundlePageFullScreenClient)
  50. };
  51. const size_t APIClientTraits<WKPageContextMenuClient>::interfaceSizesByVersion[] = {
  52. offsetof(WKPageContextMenuClient, contextMenuDismissed),
  53. offsetof(WKPageContextMenuClient, getContextMenuFromProposedMenu),
  54. offsetof(WKPageContextMenuClient, showContextMenu),
  55. sizeof(WKPageContextMenuClient)
  56. };
  57. const size_t APIClientTraits<WKPageLoaderClient>::interfaceSizesByVersion[] = {
  58. offsetof(WKPageLoaderClient, didDetectXSSForFrame),
  59. offsetof(WKPageLoaderClient, didReceiveIntentForFrame_unavailable),
  60. offsetof(WKPageLoaderClient, pluginLoadPolicy),
  61. sizeof(WKPageLoaderClient)
  62. };
  63. const size_t APIClientTraits<WKPageUIClient>::interfaceSizesByVersion[] = {
  64. offsetof(WKPageUIClient, createNewPage),
  65. offsetof(WKPageUIClient, showColorPicker),
  66. sizeof(WKPageUIClient)
  67. };
  68. const size_t APIClientTraits<WKBundlePageFormClient>::interfaceSizesByVersion[] = {
  69. offsetof(WKBundlePageFormClient, willSendSubmitEvent),
  70. offsetof(WKBundlePageFormClient, didFocusTextField),
  71. sizeof(WKBundlePageFormClient)
  72. };
  73. const size_t APIClientTraits<WKBundlePageEditorClient>::interfaceSizesByVersion[] = {
  74. offsetof(WKBundlePageEditorClient, willWriteToPasteboard),
  75. sizeof(WKBundlePageEditorClient)
  76. };
  77. const size_t APIClientTraits<WKBundlePageUIClient>::interfaceSizesByVersion[] = {
  78. offsetof(WKBundlePageUIClient, didReachApplicationCacheOriginQuota),
  79. sizeof(WKBundlePageUIClient)
  80. };
  81. const size_t APIClientTraits<WKContextInjectedBundleClient>::interfaceSizesByVersion[] = {
  82. offsetof(WKContextInjectedBundleClient, getInjectedBundleInitializationUserData),
  83. sizeof(WKContextInjectedBundleClient)
  84. };
  85. const size_t APIClientTraits<WKIconDatabaseClient>::interfaceSizesByVersion[] = {
  86. offsetof(WKIconDatabaseClient, iconDataReadyForPageURL),
  87. sizeof(WKIconDatabaseClient)
  88. };
  89. } // namespace WebKit