zwp_linux_explicit_synchronization.h 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. // Copyright 2018 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef COMPONENTS_EXO_WAYLAND_ZWP_LINUX_EXPLICIT_SYNCHRONIZATION_H_
  5. #define COMPONENTS_EXO_WAYLAND_ZWP_LINUX_EXPLICIT_SYNCHRONIZATION_H_
  6. #include <stdint.h>
  7. struct wl_client;
  8. namespace exo {
  9. class Surface;
  10. namespace wayland {
  11. void bind_linux_explicit_synchronization(wl_client* client,
  12. void* data,
  13. uint32_t version,
  14. uint32_t id);
  15. // Validates that |surface| adheres to the commit-time restrictions of the
  16. // zwp_linux_surface_synchronization interface. If any rules are violated the
  17. // function emits an error to the client and returns false. Otherwise, the
  18. // function returns true.
  19. bool linux_surface_synchronization_validate_commit(Surface* surface);
  20. } // namespace wayland
  21. } // namespace exo
  22. #endif // COMPONENTS_EXO_WAYLAND_ZWP_LINUX_EXPLICIT_SYNCHRONIZATION_H_