Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(919)

Side by Side Diff: components/exo/wayland/server.cc

Issue 2510193002: Move use_xkbcommon from build to ui/base (Closed)
Patch Set: Typo Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/exo/wayland/BUILD.gn ('k') | ui/base/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/exo/wayland/server.h" 5 #include "components/exo/wayland/server.h"
6 6
7 #include <grp.h> 7 #include <grp.h>
8 #include <linux/input.h> 8 #include <linux/input.h>
9 #include <stddef.h> 9 #include <stddef.h>
10 #include <stdint.h> 10 #include <stdint.h>
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 #include "components/exo/sub_surface.h" 57 #include "components/exo/sub_surface.h"
58 #include "components/exo/surface.h" 58 #include "components/exo/surface.h"
59 #include "components/exo/surface_property.h" 59 #include "components/exo/surface_property.h"
60 #include "components/exo/touch.h" 60 #include "components/exo/touch.h"
61 #include "components/exo/touch_delegate.h" 61 #include "components/exo/touch_delegate.h"
62 #include "components/exo/wm_helper.h" 62 #include "components/exo/wm_helper.h"
63 #include "ipc/unix_domain_socket_util.h" 63 #include "ipc/unix_domain_socket_util.h"
64 #include "third_party/skia/include/core/SkRegion.h" 64 #include "third_party/skia/include/core/SkRegion.h"
65 #include "ui/aura/window_property.h" 65 #include "ui/aura/window_property.h"
66 #include "ui/base/hit_test.h" 66 #include "ui/base/hit_test.h"
67 #include "ui/base/ui_features.h"
67 #include "ui/compositor/compositor_vsync_manager.h" 68 #include "ui/compositor/compositor_vsync_manager.h"
68 #include "ui/display/display_observer.h" 69 #include "ui/display/display_observer.h"
69 #include "ui/display/manager/managed_display_info.h" 70 #include "ui/display/manager/managed_display_info.h"
70 #include "ui/display/screen.h" 71 #include "ui/display/screen.h"
71 #include "ui/events/keycodes/dom/keycode_converter.h" 72 #include "ui/events/keycodes/dom/keycode_converter.h"
72 #include "ui/gfx/buffer_format_util.h" 73 #include "ui/gfx/buffer_format_util.h"
73 #include "ui/gfx/buffer_types.h" 74 #include "ui/gfx/buffer_types.h"
74 #include "ui/views/widget/widget.h" 75 #include "ui/views/widget/widget.h"
75 #include "ui/views/widget/widget_observer.h" 76 #include "ui/views/widget/widget_observer.h"
76 77
77 #if defined(USE_OZONE) 78 #if defined(USE_OZONE)
78 #include <drm_fourcc.h> 79 #include <drm_fourcc.h>
79 #include <linux-dmabuf-unstable-v1-server-protocol.h> 80 #include <linux-dmabuf-unstable-v1-server-protocol.h>
80 #include <wayland-drm-server-protocol.h> 81 #include <wayland-drm-server-protocol.h>
81 #endif 82 #endif
82 83
83 #if defined(USE_XKBCOMMON) 84 #if BUILDFLAG(USE_XKBCOMMON)
84 #include <xkbcommon/xkbcommon.h> 85 #include <xkbcommon/xkbcommon.h>
85 #include "ui/events/keycodes/scoped_xkb.h" // nogncheck 86 #include "ui/events/keycodes/scoped_xkb.h" // nogncheck
86 #endif 87 #endif
87 88
88 DECLARE_SURFACE_PROPERTY_TYPE(wl_resource*); 89 DECLARE_SURFACE_PROPERTY_TYPE(wl_resource*);
89 DECLARE_SURFACE_PROPERTY_TYPE(bool); 90 DECLARE_SURFACE_PROPERTY_TYPE(bool);
90 91
91 namespace exo { 92 namespace exo {
92 namespace wayland { 93 namespace wayland {
93 namespace { 94 namespace {
(...skipping 2071 matching lines...) Expand 10 before | Expand all | Expand 10 after
2165 gfx::Point(hotspot_x, hotspot_y)); 2166 gfx::Point(hotspot_x, hotspot_y));
2166 } 2167 }
2167 2168
2168 void pointer_release(wl_client* client, wl_resource* resource) { 2169 void pointer_release(wl_client* client, wl_resource* resource) {
2169 wl_resource_destroy(resource); 2170 wl_resource_destroy(resource);
2170 } 2171 }
2171 2172
2172 const struct wl_pointer_interface pointer_implementation = {pointer_set_cursor, 2173 const struct wl_pointer_interface pointer_implementation = {pointer_set_cursor,
2173 pointer_release}; 2174 pointer_release};
2174 2175
2175 #if defined(USE_XKBCOMMON) 2176 #if BUILDFLAG(USE_XKBCOMMON)
2176 2177
2177 //////////////////////////////////////////////////////////////////////////////// 2178 ////////////////////////////////////////////////////////////////////////////////
2178 // wl_keyboard_interface: 2179 // wl_keyboard_interface:
2179 2180
2180 // Keyboard delegate class that accepts events for surfaces owned by the same 2181 // Keyboard delegate class that accepts events for surfaces owned by the same
2181 // client as a keyboard resource. 2182 // client as a keyboard resource.
2182 class WaylandKeyboardDelegate : public KeyboardDelegate { 2183 class WaylandKeyboardDelegate : public KeyboardDelegate {
2183 public: 2184 public:
2184 explicit WaylandKeyboardDelegate(wl_resource* keyboard_resource) 2185 explicit WaylandKeyboardDelegate(wl_resource* keyboard_resource)
2185 : keyboard_resource_(keyboard_resource), 2186 : keyboard_resource_(keyboard_resource),
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
2400 void seat_get_pointer(wl_client* client, wl_resource* resource, uint32_t id) { 2401 void seat_get_pointer(wl_client* client, wl_resource* resource, uint32_t id) {
2401 wl_resource* pointer_resource = wl_resource_create( 2402 wl_resource* pointer_resource = wl_resource_create(
2402 client, &wl_pointer_interface, wl_resource_get_version(resource), id); 2403 client, &wl_pointer_interface, wl_resource_get_version(resource), id);
2403 2404
2404 SetImplementation( 2405 SetImplementation(
2405 pointer_resource, &pointer_implementation, 2406 pointer_resource, &pointer_implementation,
2406 base::MakeUnique<Pointer>(new WaylandPointerDelegate(pointer_resource))); 2407 base::MakeUnique<Pointer>(new WaylandPointerDelegate(pointer_resource)));
2407 } 2408 }
2408 2409
2409 void seat_get_keyboard(wl_client* client, wl_resource* resource, uint32_t id) { 2410 void seat_get_keyboard(wl_client* client, wl_resource* resource, uint32_t id) {
2410 #if defined(USE_XKBCOMMON) 2411 #if BUILDFLAG(USE_XKBCOMMON)
2411 uint32_t version = wl_resource_get_version(resource); 2412 uint32_t version = wl_resource_get_version(resource);
2412 wl_resource* keyboard_resource = 2413 wl_resource* keyboard_resource =
2413 wl_resource_create(client, &wl_keyboard_interface, version, id); 2414 wl_resource_create(client, &wl_keyboard_interface, version, id);
2414 2415
2415 SetImplementation(keyboard_resource, &keyboard_implementation, 2416 SetImplementation(keyboard_resource, &keyboard_implementation,
2416 base::MakeUnique<Keyboard>( 2417 base::MakeUnique<Keyboard>(
2417 new WaylandKeyboardDelegate(keyboard_resource))); 2418 new WaylandKeyboardDelegate(keyboard_resource)));
2418 2419
2419 // TODO(reveman): Keep repeat info synchronized with chromium and the host OS. 2420 // TODO(reveman): Keep repeat info synchronized with chromium and the host OS.
2420 if (version >= WL_KEYBOARD_REPEAT_INFO_SINCE_VERSION) 2421 if (version >= WL_KEYBOARD_REPEAT_INFO_SINCE_VERSION)
(...skipping 24 matching lines...) Expand all
2445 void bind_seat(wl_client* client, void* data, uint32_t version, uint32_t id) { 2446 void bind_seat(wl_client* client, void* data, uint32_t version, uint32_t id) {
2446 wl_resource* resource = wl_resource_create( 2447 wl_resource* resource = wl_resource_create(
2447 client, &wl_seat_interface, std::min(version, seat_version), id); 2448 client, &wl_seat_interface, std::min(version, seat_version), id);
2448 2449
2449 wl_resource_set_implementation(resource, &seat_implementation, data, nullptr); 2450 wl_resource_set_implementation(resource, &seat_implementation, data, nullptr);
2450 2451
2451 if (version >= WL_SEAT_NAME_SINCE_VERSION) 2452 if (version >= WL_SEAT_NAME_SINCE_VERSION)
2452 wl_seat_send_name(resource, "default"); 2453 wl_seat_send_name(resource, "default");
2453 2454
2454 uint32_t capabilities = WL_SEAT_CAPABILITY_POINTER | WL_SEAT_CAPABILITY_TOUCH; 2455 uint32_t capabilities = WL_SEAT_CAPABILITY_POINTER | WL_SEAT_CAPABILITY_TOUCH;
2455 #if defined(USE_XKBCOMMON) 2456 #if BUILDFLAG(USE_XKBCOMMON)
2456 capabilities |= WL_SEAT_CAPABILITY_KEYBOARD; 2457 capabilities |= WL_SEAT_CAPABILITY_KEYBOARD;
2457 #endif 2458 #endif
2458 wl_seat_send_capabilities(resource, capabilities); 2459 wl_seat_send_capabilities(resource, capabilities);
2459 } 2460 }
2460 2461
2461 //////////////////////////////////////////////////////////////////////////////// 2462 ////////////////////////////////////////////////////////////////////////////////
2462 // wp_viewport_interface: 2463 // wp_viewport_interface:
2463 2464
2464 // Implements the viewport interface to a Surface. The "viewport"-state is set 2465 // Implements the viewport interface to a Surface. The "viewport"-state is set
2465 // to null upon destruction. A window property will be set during the lifetime 2466 // to null upon destruction. A window property will be set during the lifetime
(...skipping 606 matching lines...) Expand 10 before | Expand all | Expand 10 after
3072 DCHECK(event_loop); 3073 DCHECK(event_loop);
3073 wl_event_loop_dispatch(event_loop, timeout.InMilliseconds()); 3074 wl_event_loop_dispatch(event_loop, timeout.InMilliseconds());
3074 } 3075 }
3075 3076
3076 void Server::Flush() { 3077 void Server::Flush() {
3077 wl_display_flush_clients(wl_display_.get()); 3078 wl_display_flush_clients(wl_display_.get());
3078 } 3079 }
3079 3080
3080 } // namespace wayland 3081 } // namespace wayland
3081 } // namespace exo 3082 } // namespace exo
OLDNEW
« no previous file with comments | « components/exo/wayland/BUILD.gn ('k') | ui/base/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698