tree: 9584f8695a6b8f0f68905da8fe15da93406572a6 [path history] [tgz]
  1. server/
  2. test/
  3. wayland/
  4. buffer.cc
  5. buffer.h
  6. buffer_unittest.cc
  7. BUILD.gn
  8. buildflags.gni
  9. capabilities.cc
  10. capabilities.h
  11. client_controlled_accelerators.cc
  12. client_controlled_accelerators.h
  13. client_controlled_shell_surface.cc
  14. client_controlled_shell_surface.h
  15. client_controlled_shell_surface_unittest.cc
  16. common_utils.cc
  17. common_utils.h
  18. custom_window_state_delegate.cc
  19. custom_window_state_delegate.h
  20. data_device.cc
  21. data_device.h
  22. data_device_delegate.h
  23. data_device_unittest.cc
  24. data_exchange_delegate.h
  25. data_offer.cc
  26. data_offer.h
  27. data_offer_delegate.h
  28. data_offer_observer.h
  29. data_offer_unittest.cc
  30. data_source.cc
  31. data_source.h
  32. data_source_delegate.h
  33. data_source_observer.h
  34. data_source_unittest.cc
  35. DEPS
  36. DIR_METADATA
  37. display.cc
  38. display.h
  39. display_unittest.cc
  40. drag_drop_operation.cc
  41. drag_drop_operation.h
  42. drag_drop_operation_unittest.cc
  43. extended_drag_offer.cc
  44. extended_drag_offer.h
  45. extended_drag_source.cc
  46. extended_drag_source.h
  47. extended_drag_source_unittest.cc
  48. frame_sink_resource_manager.cc
  49. frame_sink_resource_manager.h
  50. fullscreen_shell_surface.cc
  51. fullscreen_shell_surface.h
  52. fullscreen_shell_surface_unittest.cc
  53. gamepad.cc
  54. gamepad.h
  55. gamepad_delegate.h
  56. gamepad_observer.h
  57. gamepad_unittest.cc
  58. gaming_seat.cc
  59. gaming_seat.h
  60. gaming_seat_delegate.h
  61. gaming_seat_unittest.cc
  62. input_method_surface.cc
  63. input_method_surface.h
  64. input_method_surface_manager.h
  65. input_method_surface_unittest.cc
  66. input_trace.h
  67. key_state.h
  68. keyboard.cc
  69. keyboard.h
  70. keyboard_delegate.h
  71. keyboard_device_configuration_delegate.h
  72. keyboard_modifiers.h
  73. keyboard_observer.h
  74. keyboard_unittest.cc
  75. layer_tree_frame_sink_holder.cc
  76. layer_tree_frame_sink_holder.h
  77. mime_utils.cc
  78. mime_utils.h
  79. mime_utils_unittest.cc
  80. mock_vsync_timing_observer.cc
  81. mock_vsync_timing_observer.h
  82. notification.cc
  83. notification.h
  84. notification_surface.cc
  85. notification_surface.h
  86. notification_surface_manager.h
  87. notification_unittest.cc
  88. OWNERS
  89. permission.cc
  90. permission.h
  91. permission_unittest.cc
  92. pointer.cc
  93. pointer.h
  94. pointer_constraint_delegate.h
  95. pointer_delegate.h
  96. pointer_gesture_pinch_delegate.h
  97. pointer_stylus_delegate.h
  98. pointer_unittest.cc
  99. protected_native_pixmap_query_delegate.h
  100. README.md
  101. relative_pointer_delegate.h
  102. seat.cc
  103. seat.h
  104. seat_observer.h
  105. seat_unittest.cc
  106. shared_memory.cc
  107. shared_memory.h
  108. shared_memory_unittest.cc
  109. shell_surface.cc
  110. shell_surface.h
  111. shell_surface_base.cc
  112. shell_surface_base.h
  113. shell_surface_observer.h
  114. shell_surface_presentation_time_recorder.cc
  115. shell_surface_presentation_time_recorder.h
  116. shell_surface_presentation_time_recorder_unittest.cc
  117. shell_surface_unittest.cc
  118. shell_surface_util.cc
  119. shell_surface_util.h
  120. shell_surface_util_unittest.cc
  121. sub_surface.cc
  122. sub_surface.h
  123. sub_surface_observer.h
  124. sub_surface_unittest.cc
  125. surface.cc
  126. surface.h
  127. surface_delegate.h
  128. surface_observer.h
  129. surface_test_util.cc
  130. surface_test_util.h
  131. surface_tree_host.cc
  132. surface_tree_host.h
  133. surface_unittest.cc
  134. text_input.cc
  135. text_input.h
  136. text_input_unittest.cc
  137. toast_surface.cc
  138. toast_surface.h
  139. toast_surface_manager.h
  140. toast_surface_unittest.cc
  141. touch.cc
  142. touch.h
  143. touch_delegate.h
  144. touch_stylus_delegate.h
  145. touch_unittest.cc
  146. ui_lock_controller.cc
  147. ui_lock_controller.h
  148. ui_lock_controller_unittest.cc
  149. vsync_timing_manager.cc
  150. vsync_timing_manager.h
  151. window_properties.cc
  152. window_properties.h
  153. wm_helper.cc
  154. wm_helper.h
  155. wm_helper_chromeos.cc
  156. wm_helper_chromeos.h
  157. wm_helper_chromeos_unittest.cc
  158. xdg_shell_surface.cc
  159. xdg_shell_surface.h
  160. xdg_shell_surface_unittest.cc
  161. xkb_tracker.cc
  162. xkb_tracker.h
components/exo/README.md

Exo implements a display server on top of the Aura Shell. It uses the Wayland protocol to communicate with clients. For a general introduction to Wayland see https://wayland-book.com/.

Current clients of Exo include:

  • ARC++ (Android apps on Chrome OS)
  • Chromecast
  • Crostini (Linux apps on Chrome OS)
  • Lacros
  • PluginVM

In addition to the core Wayland protocol, Exo supports a number of protocol extensions. Some are third-party; see //third_party/wayland-protocols/README.chromium. Others are Chromium-specific.

A few noteworthy extensions (this list is not at all exhaustive):