Hello community,

here is the log from the commit of package libwpe for openSUSE:Factory checked 
in at 2020-04-23 18:29:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libwpe (Old)
 and      /work/SRC/openSUSE:Factory/.libwpe.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libwpe"

Thu Apr 23 18:29:00 2020 rev:3 rq:795997 version:1.6.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libwpe/libwpe.changes    2019-10-07 
14:14:23.874843396 +0200
+++ /work/SRC/openSUSE:Factory/.libwpe.new.2738/libwpe.changes  2020-04-23 
18:29:06.171934523 +0200
@@ -1,0 +2,11 @@
+Thu Mar 12 12:49:59 UTC 2020 - Bjørn Lie <[email protected]>
+
+- Update to version 1.6.0:
+  + Added support for smooth 2D axis input events.
+  + Ensure that only symbols marked with WPE_EXPORT are public.
+  + Improved robustness of the CMake build system.
+- Changes from version 1.5.90:
+  + Added support for smooth 2D axis input events.
+  + Improved robustness of the CMake build system.
+
+-------------------------------------------------------------------

Old:
----
  libwpe-1.4.0.1.tar.xz

New:
----
  libwpe-1.6.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libwpe.spec ++++++
--- /var/tmp/diff_new_pack.coOyhl/_old  2020-04-23 18:29:09.059940048 +0200
+++ /var/tmp/diff_new_pack.coOyhl/_new  2020-04-23 18:29:09.063940055 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package libwpe
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -21,7 +21,7 @@
 %define sover 1_0-1
 
 Name:           libwpe
-Version:        1.4.0.1
+Version:        1.6.0
 Release:        0
 Summary:        General-purpose library for the WPE-flavored port of WebKit
 License:        BSD-2-Clause

++++++ libwpe-1.4.0.1.tar.xz -> libwpe-1.6.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/CMakeLists.txt 
new/libwpe-1.6.0/CMakeLists.txt
--- old/libwpe-1.4.0.1/CMakeLists.txt   2019-10-01 15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/CMakeLists.txt     2020-03-11 23:35:46.000000000 +0100
@@ -4,7 +4,7 @@
 set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
 include(VersioningUtils)
 
-SET_PROJECT_VERSION(1 4 0)
+SET_PROJECT_VERSION(1 6 0)
 set(WPE_API_VERSION "1.0")
 
 # Before making a release, the LT_VERSION string should be modified.
@@ -14,10 +14,13 @@
 # - If binary compatibility has been broken (eg removed or changed interfaces)
 #   change to C+1:0:0
 # - If the interface is the same as the previous version, change to C:R+1:A
-CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(LIBWPE 3 3 2)
+CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(LIBWPE 4 2 3)
 
 project(libwpe VERSION "${PROJECT_VERSION}")
 
+set(WPE_BACKEND "" CACHE STRING
+    "Name of the backend library to load, instead of libWPEBackend-default.so")
+
 include(CheckCCompilerFlag)
 include(CheckCXXCompilerFlag)
 
@@ -48,39 +51,6 @@
 find_package(EGL REQUIRED)
 find_package(Libxkbcommon REQUIRED)
 
-add_definitions(${EGL_DEFINITIONS})
-add_definitions(-DWPE_COMPILATION)
-
-if(WPE_BACKEND)
-  add_definitions(-DWPE_BACKEND=\"${WPE_BACKEND}\")
-endif()
-
-set(WPE_INCLUDE_DIRECTORIES
-    "include"
-    "src"
-    ${DERIVED_SOURCES_DIR}
-    ${EGL_INCLUDE_DIRS}
-    ${LIBXKBCOMMON_INCLUDE_DIRS}
-)
-
-set(WPE_LIBRARIES
-    dl
-    ${LIBXKBCOMMON_LIBRARIES}
-)
-
-set(WPE_SOURCES
-    src/input.c
-    src/key-unicode.c
-    src/loader.c
-    src/pasteboard.c
-    src/pasteboard-generic.cpp
-    src/pasteboard-noop.cpp
-    src/renderer-backend-egl.c
-    src/renderer-host.c
-    src/version.c
-    src/view-backend.c
-)
-
 set(WPE_PUBLIC_HEADERS
   ${DERIVED_SOURCES_DIR}/version.h
   ${DERIVED_SOURCES_DIR}/version-deprecated.h
@@ -96,11 +66,39 @@
   include/wpe/wpe.h
 )
 
-add_library(wpe SHARED ${WPE_SOURCES})
-target_include_directories(wpe PRIVATE ${WPE_INCLUDE_DIRECTORIES})
-target_link_libraries(wpe ${WPE_LIBRARIES})
+add_library(wpe SHARED
+    src/input.c
+    src/key-unicode.c
+    src/loader.c
+    src/pasteboard.c
+    src/pasteboard-generic.cpp
+    src/pasteboard-noop.cpp
+    src/renderer-backend-egl.c
+    src/renderer-host.c
+    src/version.c
+    src/view-backend.c
+)
+target_include_directories(wpe PRIVATE
+    "include"
+    "src"
+    ${DERIVED_SOURCES_DIR}
+    $<TARGET_PROPERTY:GL::egl,INTERFACE_INCLUDE_DIRECTORIES>
+)
+target_compile_definitions(wpe PRIVATE
+    WPE_COMPILATION
+    $<TARGET_PROPERTY:GL::egl,INTERFACE_COMPILE_DEFINITIONS>
+)
+if (WPE_BACKEND)
+    target_compile_definitions(wpe PRIVATE WPE_BACKEND=\"${WPE_BACKEND}\")
+endif()
+target_compile_options(wpe PRIVATE
+    $<TARGET_PROPERTY:GL::egl,INTERFACE_COMPILE_OPTIONS>
+)
+target_link_libraries(wpe PRIVATE XkbCommon::libxkbcommon ${CMAKE_DL_LIBS})
 
 set_target_properties(wpe PROPERTIES
+  C_VISIBILITY_PRESET hidden
+  CXX_VISIBILITY_PRESET hidden
   OUTPUT_NAME wpe-${WPE_API_VERSION}
   VERSION ${LIBWPE_VERSION}
   SOVERSION ${LIBWPE_VERSION_MAJOR}
@@ -156,4 +154,4 @@
   ELSE()
       MESSAGE(FATAL_ERROR "Hotdoc C extension not found... can't build the 
documentation.")
   ENDIF()
-ENDIF()
\ No newline at end of file
+ENDIF()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/NEWS new/libwpe-1.6.0/NEWS
--- old/libwpe-1.4.0.1/NEWS     2019-10-01 15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/NEWS       2020-03-11 23:35:46.000000000 +0100
@@ -1,24 +1,15 @@
-=========================
-1.4.0.1 - October 1, 2019
-=========================
+======================
+1.6.0 - March 11, 2020
+======================
+
+- Ensure that only symbols marked with WPE_EXPORT are public.
+
+======================
+1.5.90 - March 2, 2020
+======================
 
-- Fix the version numbers to ensure 1.4.0 is used when building from
-  tarballs.
-
-==========================
-1.4.0 - September 18, 2019
-==========================
-
-- This release does not contain changes over the 1.3.91 release candidate.
-
-==========================
-1.3.91 - September 9, 2019
-==========================
-
-- Enabled compiler warnings.
-- Fix build failure on systems where libxkbcommon has its headers installed
-  in a non-standard location.
-- Fix documentation build.
+- Added support for smooth 2D axis input events.
+- Improved robustness of the CMake build system.
 
 =====================
 1.3.1 - June 17, 2019
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/cmake/FindEGL.cmake 
new/libwpe-1.6.0/cmake/FindEGL.cmake
--- old/libwpe-1.4.0.1/cmake/FindEGL.cmake      2019-10-01 15:26:02.000000000 
+0200
+++ new/libwpe-1.6.0/cmake/FindEGL.cmake        2020-03-11 23:35:46.000000000 
+0100
@@ -1,13 +1,12 @@
 # - Try to Find EGL
 # Once done, this will define
 #
-#  EGL_FOUND - system has EGL installed.
-#  EGL_INCLUDE_DIRS - directories which contain the EGL headers.
-#  EGL_LIBRARIES - libraries required to link against EGL.
-#  EGL_DEFINITIONS - Compiler switches required for using EGL.
+#  GL::egl - an imported library target.
+#  EGL_FOUND - a boolean variable.
+#  EGL_INCLUDE_DIR - directory containing the EGL/egl.h header.
+#  EGL_LIBRARY - path to the EGL library.
 #
-# Copyright (C) 2012 Intel Corporation. All rights reserved.
-# Copyright (C) 2017 Igalia S.L.
+# Copyright (C) 2019 Igalia S.L.
 #
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions
@@ -32,20 +31,34 @@
 
 
 find_package(PkgConfig)
+pkg_check_modules(EGL IMPORTED_TARGET egl)
 
-pkg_check_modules(PC_EGL egl)
-
-if (PC_EGL_FOUND)
-    set(EGL_DEFINITIONS ${PC_EGL_CFLAGS_OTHER})
-endif ()
-
-find_path(EGL_INCLUDE_DIRS NAMES EGL/eglplatform.h
-    HINTS ${PC_EGL_INCLUDEDIR} ${PC_EGL_INCLUDE_DIRS}
+find_path(EGL_INCLUDE_DIR
+    NAMES EGL/egl.h
+    HINTS ${EGL_INCLUDEDIR} ${EGL_INCLUDE_DIRS}
+)
+find_library(EGL_LIBRARY
+    NAMES egl EGL
+    HINTS ${EGL_LIBDIR} ${EGL_LIBRARY_DIRS}
 )
+mark_as_advanced(EGL_INCLUDE_DIR EGL_LIBRARY)
 
-set(EGL_INCLUDE_DIRS ${PC_EGL_INCLUDE_DIRS} CACHE FILEPATH "FIXME")
+# If pkg-config has not found the module but find_path+find_library have
+# figured out where the header and library are, create the PkgConfig::EGL
+# imported target anyway with the found paths.
+#
+if (EGL_LIBRARIES AND NOT TARGET GL::egl)
+    add_library(GL::egl INTERFACE IMPORTED)
+    if (TARGET PkgConfig::EGL)
+        set_property(TARGET GL::egl PROPERTY
+            INTERFACE_LINK_LIBRARIES PkgConfig::EGL)
+    else ()
+        set_property(TARGET GL::egl PROPERTY
+            INTERFACE_LINK_LIBRARIES ${EGL_LIBRARY})
+        set_property(TARGET GL::egl PROPERTY
+            INTERFACE_INCLUDE_DIRECTORIES ${EGL_INCLUDE_DIR})
+    endif ()
+endif ()
 
 include(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(EGL DEFAULT_MSG EGL_INCLUDE_DIRS)
-
-mark_as_advanced(EGL_INCLUDE_DIRS)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(EGL REQUIRED_VARS EGL_LIBRARY 
EGL_INCLUDE_DIR)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/cmake/FindLibxkbcommon.cmake 
new/libwpe-1.6.0/cmake/FindLibxkbcommon.cmake
--- old/libwpe-1.4.0.1/cmake/FindLibxkbcommon.cmake     2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/cmake/FindLibxkbcommon.cmake       2020-03-11 
23:35:46.000000000 +0100
@@ -1,11 +1,12 @@
 # - Try to find libxkbcommon.
 # Once done, this will define
 #
+#  XkbCommon::libxkbcommon
 #  LIBXKBCOMMON_FOUND - system has libxkbcommon.
-#  LIBXKBCOMMON_INCLUDE_DIRS - the libxkbcommon include directories
-#  LIBXKBCOMMON_LIBRARIES - link these to use libxkbcommon.
+#  LIBXKBCOMMON_INCLUDE_DIR - directory containing the xkbcommon include 
directories
+#  LIBXKBCOMMON_LIBRARY - link these to use libxkbcommon.
 #
-# Copyright (C) 2014 Igalia S.L.
+# Copyright (C) 2014, 2019 Igalia S.L.
 #
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions
@@ -29,8 +30,35 @@
 # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 find_package(PkgConfig)
-pkg_check_modules(LIBXKBCOMMON xkbcommon)
+pkg_check_modules(LIBXKBCOMMON IMPORTED_TARGET xkbcommon)
+
+find_path(LIBXKBCOMMON_INCLUDE_DIR
+    NAMES xkbcommon/xkbcommon.h
+    HINTS ${LIBXKBCOMMON_INCLUDEDIR} ${LIBXKBCOMMON_INCLUDE_DIRS}
+)
+find_library(LIBXKBCOMMON_LIBRARY
+    NAMES xkbcommon
+    HINTS ${LIBXKBCOMMON_LIBDIR} ${LIBXKBCOMMON_LIBRARY_DIRS}
+)
+
+# If pkg-config has not found the module but find_path+find_library have
+# figured out where the header and library are, create the
+# XkbCommon::Libxkbcommon imported target anyway with the found paths.
+#
+if (LIBXKBCOMMON_LIBRARY AND NOT TARGET XkbCommon::libxkbcommon)
+    add_library(XkbCommon::libxkbcommon INTERFACE IMPORTED)
+    if (TARGET PkgConfig::LIBXKBCOMMON)
+        set_property(TARGET XkbCommon::libxkbcommon PROPERTY
+            INTERFACE_LINK_LIBRARIES PkgConfig::LIBXKBCOMMON)
+    else ()
+        set_property(TARGET XkbCommon::libxkbcommon PROPERTY
+            INTERFACE_LINK_LIBRARIES ${LIBXKBCOMMON_LIBRARY})
+        set_property(TARGET XkbCommon::libxkbcommon PROPERTY
+            INTERFACE_INCLUDE_DIRECTORIES ${LIBXKBCOMMON_INCLUDE_DIR})
+    endif ()
+endif ()
+
 
 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Libxkbcommon REQUIRED_VARS LIBXKBCOMMON_FOUND
-                                  FOUND_VAR LIBXKBCOMMON_FOUND)
+find_package_handle_standard_args(LIBXKBCOMMON REQUIRED_VARS
+    LIBXKBCOMMON_LIBRARY LIBXKBCOMMON_INCLUDE_DIR)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/include/wpe/input.h 
new/libwpe-1.6.0/include/wpe/input.h
--- old/libwpe-1.4.0.1/include/wpe/input.h      2019-10-01 15:26:02.000000000 
+0200
+++ new/libwpe-1.6.0/include/wpe/input.h        2020-03-11 23:35:46.000000000 
+0100
@@ -92,6 +92,9 @@
 enum wpe_input_axis_event_type {
     wpe_input_axis_event_type_null,
     wpe_input_axis_event_type_motion,
+    wpe_input_axis_event_type_motion_smooth,
+
+    wpe_input_axis_event_type_mask_2d = 1 << 16,
 };
 
 struct wpe_input_axis_event {
@@ -104,6 +107,13 @@
     uint32_t modifiers;
 };
 
+struct wpe_input_axis_2d_event {
+    struct wpe_input_axis_event base;
+
+    double x_axis;
+    double y_axis;
+};
+
 
 enum wpe_input_touch_event_type {
     wpe_input_touch_event_type_null,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/include/wpe/renderer-backend-egl.h 
new/libwpe-1.6.0/include/wpe/renderer-backend-egl.h
--- old/libwpe-1.4.0.1/include/wpe/renderer-backend-egl.h       2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/include/wpe/renderer-backend-egl.h 2020-03-11 
23:35:46.000000000 +0100
@@ -67,6 +67,11 @@
     void (*_wpe_reserved3)(void);
 };
 
+struct wpe_renderer_backend_egl_base {
+    const struct wpe_renderer_backend_egl_interface* interface;
+    void* interface_data;
+};
+
 struct wpe_renderer_backend_egl_target_interface {
     void* (*create)(struct wpe_renderer_backend_egl_target*, int);
     void (*destroy)(void*);
@@ -84,6 +89,11 @@
     void (*_wpe_reserved3)(void);
 };
 
+struct wpe_renderer_backend_egl_target_base {
+    const struct wpe_renderer_backend_egl_target_interface* interface;
+    void* interface_data;
+};
+
 struct wpe_renderer_backend_egl_offscreen_target_interface {
     void* (*create)();
     void (*destroy)(void*);
@@ -98,6 +108,12 @@
     void (*_wpe_reserved3)(void);
 };
 
+struct wpe_renderer_backend_egl_offscreen_target_base {
+    const struct wpe_renderer_backend_egl_offscreen_target_interface* 
interface;
+    void* interface_data;
+};
+
+
 WPE_EXPORT
 struct wpe_renderer_backend_egl*
 wpe_renderer_backend_egl_create(int);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/include/wpe/renderer-host.h 
new/libwpe-1.6.0/include/wpe/renderer-host.h
--- old/libwpe-1.4.0.1/include/wpe/renderer-host.h      2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/include/wpe/renderer-host.h        2020-03-11 
23:35:46.000000000 +0100
@@ -58,6 +58,11 @@
     void (*_wpe_reserved3)(void);
 };
 
+struct wpe_renderer_host_base {
+    const struct wpe_renderer_host_interface* interface;
+    void* interface_data;
+};
+
 WPE_EXPORT
 int
 wpe_renderer_host_create_client();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/include/wpe/view-backend.h 
new/libwpe-1.6.0/include/wpe/view-backend.h
--- old/libwpe-1.4.0.1/include/wpe/view-backend.h       2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/include/wpe/view-backend.h 2020-03-11 23:35:46.000000000 
+0100
@@ -71,6 +71,11 @@
     void (*_wpe_reserved3)(void);
 };
 
+struct wpe_view_backend_base {
+    const struct wpe_view_backend_interface* interface;
+    void* interface_data;
+};
+
 
 WPE_EXPORT
 struct wpe_view_backend*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/src/renderer-backend-egl-private.h 
new/libwpe-1.6.0/src/renderer-backend-egl-private.h
--- old/libwpe-1.4.0.1/src/renderer-backend-egl-private.h       2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/src/renderer-backend-egl-private.h 2020-03-11 
23:35:46.000000000 +0100
@@ -28,21 +28,18 @@
 #define wpe_renderer_backend_egl_private_h
 
 struct wpe_renderer_backend_egl {
-    const struct wpe_renderer_backend_egl_interface* interface;
-    void* interface_data;
+    struct wpe_renderer_backend_egl_base base;
 };
 
 struct wpe_renderer_backend_egl_target {
-    const struct wpe_renderer_backend_egl_target_interface* interface;
-    void* interface_data;
+    struct wpe_renderer_backend_egl_target_base base;
 
     const struct wpe_renderer_backend_egl_target_client* client;
     void* client_data;
 };
 
 struct wpe_renderer_backend_egl_offscreen_target {
-    const struct wpe_renderer_backend_egl_offscreen_target_interface* 
interface;
-    void* interface_data;
+    struct wpe_renderer_backend_egl_offscreen_target_base base;
 };
 
 #endif // wpe_renderer_backend_egl_private_h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/src/renderer-backend-egl.c 
new/libwpe-1.6.0/src/renderer-backend-egl.c
--- old/libwpe-1.4.0.1/src/renderer-backend-egl.c       2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/src/renderer-backend-egl.c 2020-03-11 23:35:46.000000000 
+0100
@@ -37,13 +37,13 @@
     if (!backend)
         return 0;
 
-    backend->interface = 
wpe_load_object("_wpe_renderer_backend_egl_interface");
-    if (!backend->interface) {
+    backend->base.interface = 
wpe_load_object("_wpe_renderer_backend_egl_interface");
+    if (!backend->base.interface) {
         free(backend);
         return 0;
     }
 
-    backend->interface_data = backend->interface->create(host_fd);
+    backend->base.interface_data = backend->base.interface->create(host_fd);
 
     return backend;
 }
@@ -51,8 +51,8 @@
 void
 wpe_renderer_backend_egl_destroy(struct wpe_renderer_backend_egl* backend)
 {
-    backend->interface->destroy(backend->interface_data);
-    backend->interface_data = 0;
+    backend->base.interface->destroy(backend->base.interface_data);
+    backend->base.interface_data = 0;
 
     free(backend);
 }
@@ -60,14 +60,14 @@
 EGLNativeDisplayType
 wpe_renderer_backend_egl_get_native_display(struct wpe_renderer_backend_egl* 
backend)
 {
-    return backend->interface->get_native_display(backend->interface_data);
+    return 
backend->base.interface->get_native_display(backend->base.interface_data);
 }
 
 uint32_t
 wpe_renderer_backend_egl_get_platform(struct wpe_renderer_backend_egl* backend)
 {
-    if (backend->interface->get_platform)
-        return backend->interface->get_platform(backend->interface_data);
+    if (backend->base.interface->get_platform)
+        return 
backend->base.interface->get_platform(backend->base.interface_data);
     return 0;
 }
 
@@ -78,13 +78,13 @@
     if (!target)
         return 0;
 
-    target->interface = 
wpe_load_object("_wpe_renderer_backend_egl_target_interface");
-    if (!target->interface) {
+    target->base.interface = 
wpe_load_object("_wpe_renderer_backend_egl_target_interface");
+    if (!target->base.interface) {
         free(target);
         return 0;
     }
 
-    target->interface_data = target->interface->create(target, host_fd);
+    target->base.interface_data = target->base.interface->create(target, 
host_fd);
 
     return target;
 }
@@ -92,8 +92,8 @@
 void
 wpe_renderer_backend_egl_target_destroy(struct 
wpe_renderer_backend_egl_target* target)
 {
-    target->interface->destroy(target->interface_data);
-    target->interface_data = 0;
+    target->base.interface->destroy(target->base.interface_data);
+    target->base.interface_data = 0;
 
     target->client = 0;
     target->client_data = 0;
@@ -111,31 +111,31 @@
 void
 wpe_renderer_backend_egl_target_initialize(struct 
wpe_renderer_backend_egl_target* target, struct wpe_renderer_backend_egl* 
backend, uint32_t width, uint32_t height)
 {
-    target->interface->initialize(target->interface_data, 
backend->interface_data, width, height);
+    target->base.interface->initialize(target->base.interface_data, 
backend->base.interface_data, width, height);
 }
 
 EGLNativeWindowType
 wpe_renderer_backend_egl_target_get_native_window(struct 
wpe_renderer_backend_egl_target* target)
 {
-    return target->interface->get_native_window(target->interface_data);
+    return 
target->base.interface->get_native_window(target->base.interface_data);
 }
 
 void
 wpe_renderer_backend_egl_target_resize(struct wpe_renderer_backend_egl_target* 
target, uint32_t width, uint32_t height)
 {
-    target->interface->resize(target->interface_data, width, height);
+    target->base.interface->resize(target->base.interface_data, width, height);
 }
 
 void
 wpe_renderer_backend_egl_target_frame_will_render(struct 
wpe_renderer_backend_egl_target* target)
 {
-    target->interface->frame_will_render(target->interface_data);
+    target->base.interface->frame_will_render(target->base.interface_data);
 }
 
 void
 wpe_renderer_backend_egl_target_frame_rendered(struct 
wpe_renderer_backend_egl_target* target)
 {
-    target->interface->frame_rendered(target->interface_data);
+    target->base.interface->frame_rendered(target->base.interface_data);
 }
 
 struct wpe_renderer_backend_egl_offscreen_target*
@@ -145,13 +145,13 @@
     if (!target)
         return 0;
 
-    target->interface = 
wpe_load_object("_wpe_renderer_backend_egl_offscreen_target_interface");
-    if (!target->interface) {
+    target->base.interface = 
wpe_load_object("_wpe_renderer_backend_egl_offscreen_target_interface");
+    if (!target->base.interface) {
         free(target);
         return 0;
     }
 
-    target->interface_data = target->interface->create();
+    target->base.interface_data = target->base.interface->create();
 
     return target;
 }
@@ -159,8 +159,8 @@
 void
 wpe_renderer_backend_egl_offscreen_target_destroy(struct 
wpe_renderer_backend_egl_offscreen_target* target)
 {
-    target->interface->destroy(target->interface_data);
-    target->interface_data = 0;
+    target->base.interface->destroy(target->base.interface_data);
+    target->base.interface_data = 0;
 
     free(target);
 }
@@ -168,13 +168,13 @@
 void
 wpe_renderer_backend_egl_offscreen_target_initialize(struct 
wpe_renderer_backend_egl_offscreen_target* target, struct 
wpe_renderer_backend_egl* backend)
 {
-    target->interface->initialize(target->interface_data, 
backend->interface_data);
+    target->base.interface->initialize(target->base.interface_data, 
backend->base.interface_data);
 }
 
 EGLNativeWindowType
 wpe_renderer_backend_egl_offscreen_target_get_native_window(struct 
wpe_renderer_backend_egl_offscreen_target* target)
 {
-    return target->interface->get_native_window(target->interface_data);
+    return 
target->base.interface->get_native_window(target->base.interface_data);
 }
 
 void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/src/renderer-host-private.h 
new/libwpe-1.6.0/src/renderer-host-private.h
--- old/libwpe-1.4.0.1/src/renderer-host-private.h      2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/src/renderer-host-private.h        2020-03-11 
23:35:46.000000000 +0100
@@ -27,13 +27,14 @@
 #ifndef wpe_renderer_host_private_h
 #define wpe_renderer_host_private_h
 
+#include <wpe/renderer-host.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 struct wpe_renderer_host {
-    const struct wpe_renderer_host_interface* interface;
-    void* interface_data;
+    struct wpe_renderer_host_base base;
 };
 
 #ifdef __cplusplus
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/src/renderer-host.c 
new/libwpe-1.6.0/src/renderer-host.c
--- old/libwpe-1.4.0.1/src/renderer-host.c      2019-10-01 15:26:02.000000000 
+0200
+++ new/libwpe-1.6.0/src/renderer-host.c        2020-03-11 23:35:46.000000000 
+0100
@@ -24,10 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include <wpe/renderer-host.h>
+#include "renderer-host-private.h"
 
 #include "loader-private.h"
-#include "renderer-host-private.h"
 #include <stdlib.h>
 
 int
@@ -39,11 +38,11 @@
         if (!s_renderer_host)
             return -1;
 
-        s_renderer_host->interface = 
wpe_load_object("_wpe_renderer_host_interface");
-        s_renderer_host->interface_data = s_renderer_host->interface->create();
+        s_renderer_host->base.interface = 
wpe_load_object("_wpe_renderer_host_interface");
+        s_renderer_host->base.interface_data = 
s_renderer_host->base.interface->create();
 
         // FIXME: atexit() should clean up the object.
     }
 
-    return 
s_renderer_host->interface->create_client(s_renderer_host->interface_data);
+    return 
s_renderer_host->base.interface->create_client(s_renderer_host->base.interface_data);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/src/view-backend-private.h 
new/libwpe-1.6.0/src/view-backend-private.h
--- old/libwpe-1.4.0.1/src/view-backend-private.h       2019-10-01 
15:26:02.000000000 +0200
+++ new/libwpe-1.6.0/src/view-backend-private.h 2020-03-11 23:35:46.000000000 
+0100
@@ -34,8 +34,7 @@
 #endif
 
 struct wpe_view_backend {
-    const struct wpe_view_backend_interface* interface;
-    void* interface_data;
+    struct wpe_view_backend_base base;
 
     const struct wpe_view_backend_client* backend_client;
     void* backend_client_data;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libwpe-1.4.0.1/src/view-backend.c 
new/libwpe-1.6.0/src/view-backend.c
--- old/libwpe-1.4.0.1/src/view-backend.c       2019-10-01 15:26:02.000000000 
+0200
+++ new/libwpe-1.6.0/src/view-backend.c 2020-03-11 23:35:46.000000000 +0100
@@ -24,10 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include <wpe/view-backend.h>
+#include "view-backend-private.h"
 
 #include "loader-private.h"
-#include "view-backend-private.h"
 #include <stdlib.h>
 
 
@@ -48,8 +47,8 @@
     if (!backend)
         return 0;
 
-    backend->interface = interface;
-    backend->interface_data = backend->interface->create(interface_user_data, 
backend);
+    backend->base.interface = interface;
+    backend->base.interface_data = 
backend->base.interface->create(interface_user_data, backend);
 
     return backend;
 }
@@ -57,8 +56,8 @@
 void
 wpe_view_backend_destroy(struct wpe_view_backend* backend)
 {
-    backend->interface->destroy(backend->interface_data);
-    backend->interface_data = 0;
+    backend->base.interface->destroy(backend->base.interface_data);
+    backend->base.interface_data = 0;
 
     backend->backend_client = 0;
     backend->backend_client_data = 0;
@@ -97,13 +96,13 @@
 void
 wpe_view_backend_initialize(struct wpe_view_backend* backend)
 {
-    backend->interface->initialize(backend->interface_data);
+    backend->base.interface->initialize(backend->base.interface_data);
 }
 
 int
 wpe_view_backend_get_renderer_host_fd(struct wpe_view_backend* backend)
 {
-    return backend->interface->get_renderer_host_fd(backend->interface_data);
+    return 
backend->base.interface->get_renderer_host_fd(backend->base.interface_data);
 }
 
 void


Reply via email to