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

Unified Diff: ui/events/event.cc

Issue 197283008: Fix panel dragging on Linux Aura (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months 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 side-by-side diff with in-line comments
Download patch
Index: ui/events/event.cc
diff --git a/ui/events/event.cc b/ui/events/event.cc
index 41f4ca69ebb8a010a748cb70e4404fdfcb42d0ce..c0f8a51477c696df166c97c4f20a8b588d106f47 100644
--- a/ui/events/event.cc
+++ b/ui/events/event.cc
@@ -31,10 +31,15 @@ namespace {
base::NativeEvent CopyNativeEvent(const base::NativeEvent& event) {
#if defined(USE_X11)
- if (!event || event->type == GenericEvent)
+ if (!event)
return NULL;
XEvent* copy = new XEvent;
*copy = *event;
+ if (event->type == GenericEvent) {
+ copy->xcookie.data = new XIDeviceEvent;
+ *(static_cast<XIDeviceEvent*>(copy->xcookie.data)) =
+ *(static_cast<XIDeviceEvent*>(event->xcookie.data));
+ }
return copy;
#elif defined(OS_WIN)
return event;
@@ -120,8 +125,11 @@ namespace ui {
Event::~Event() {
#if defined(USE_X11)
- if (delete_native_event_)
+ if (delete_native_event_) {
+ if (native_event_ && native_event_->type == GenericEvent)
+ delete static_cast<XIDeviceEvent*>(native_event_->xcookie.data);
delete native_event_;
+ }
#endif
}

Powered by Google App Engine
This is Rietveld 408576698