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

Side by Side Diff: ui/aura/window_tree_host_x11.cc

Issue 2525113002: Rename WindowTreeHost functions to indicate pixels/dips. (Closed)
Patch Set: win Created 4 years 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 | « ui/aura/window_tree_host_x11.h ('k') | ui/aura/window_unittest.cc » ('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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ui/aura/window_tree_host_x11.h" 5 #include "ui/aura/window_tree_host_x11.h"
6 6
7 #include <strings.h> 7 #include <strings.h>
8 #include <X11/cursorfont.h> 8 #include <X11/cursorfont.h>
9 #include <X11/extensions/XInput2.h> 9 #include <X11/extensions/XInput2.h>
10 #include <X11/extensions/Xrandr.h> 10 #include <X11/extensions/Xrandr.h>
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 // It's possible that the X window may be resized by some other means 305 // It's possible that the X window may be resized by some other means
306 // than from within aura (e.g. the X window manager can change the 306 // than from within aura (e.g. the X window manager can change the
307 // size). Make sure the root window size is maintained properly. 307 // size). Make sure the root window size is maintained properly.
308 gfx::Rect bounds(xev->xconfigure.x, xev->xconfigure.y, 308 gfx::Rect bounds(xev->xconfigure.x, xev->xconfigure.y,
309 xev->xconfigure.width, xev->xconfigure.height); 309 xev->xconfigure.width, xev->xconfigure.height);
310 bool size_changed = bounds_.size() != bounds.size(); 310 bool size_changed = bounds_.size() != bounds.size();
311 bool origin_changed = bounds_.origin() != bounds.origin(); 311 bool origin_changed = bounds_.origin() != bounds.origin();
312 bounds_ = bounds; 312 bounds_ = bounds;
313 OnConfigureNotify(); 313 OnConfigureNotify();
314 if (size_changed) 314 if (size_changed)
315 OnHostResized(bounds.size()); 315 OnHostResizedInPixels(bounds.size());
316 if (origin_changed) 316 if (origin_changed)
317 OnHostMoved(bounds_.origin()); 317 OnHostMovedInPixels(bounds_.origin());
318 break; 318 break;
319 } 319 }
320 case GenericEvent: 320 case GenericEvent:
321 DispatchXI2Event(xev); 321 DispatchXI2Event(xev);
322 break; 322 break;
323 case ClientMessage: { 323 case ClientMessage: {
324 Atom message_type = static_cast<Atom>(xev->xclient.data.l[0]); 324 Atom message_type = static_cast<Atom>(xev->xclient.data.l[0]);
325 if (message_type == atom_cache_.GetAtom("WM_DELETE_WINDOW")) { 325 if (message_type == atom_cache_.GetAtom("WM_DELETE_WINDOW")) {
326 // We have received a close message from the window manager. 326 // We have received a close message from the window manager.
327 OnHostCloseRequested(); 327 OnHostCloseRequested();
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
426 if (value_mask) 426 if (value_mask)
427 XConfigureWindow(xdisplay_, xwindow_, value_mask, &changes); 427 XConfigureWindow(xdisplay_, xwindow_, value_mask, &changes);
428 428
429 // Assume that the resize will go through as requested, which should be the 429 // Assume that the resize will go through as requested, which should be the
430 // case if we're running without a window manager. If there's a window 430 // case if we're running without a window manager. If there's a window
431 // manager, it can modify or ignore the request, but (per ICCCM) we'll get a 431 // manager, it can modify or ignore the request, but (per ICCCM) we'll get a
432 // (possibly synthetic) ConfigureNotify about the actual size and correct 432 // (possibly synthetic) ConfigureNotify about the actual size and correct
433 // |bounds_| later. 433 // |bounds_| later.
434 bounds_ = bounds; 434 bounds_ = bounds;
435 if (origin_changed) 435 if (origin_changed)
436 OnHostMoved(bounds.origin()); 436 OnHostMovedInPixels(bounds.origin());
437 if (size_changed || current_scale != new_scale) { 437 if (size_changed || current_scale != new_scale) {
438 OnHostResized(bounds.size()); 438 OnHostResizedInPixels(bounds.size());
439 } else { 439 } else {
440 window()->SchedulePaintInRect(window()->bounds()); 440 window()->SchedulePaintInRect(window()->bounds());
441 } 441 }
442 } 442 }
443 443
444 gfx::Point WindowTreeHostX11::GetLocationOnNativeScreen() const { 444 gfx::Point WindowTreeHostX11::GetLocationOnScreenInPixels() const {
445 return bounds_.origin(); 445 return bounds_.origin();
446 } 446 }
447 447
448 void WindowTreeHostX11::SetCapture() { 448 void WindowTreeHostX11::SetCapture() {
449 // Do not grab X11 input. Grabbing X11 input is asynchronous and this method 449 // Do not grab X11 input. Grabbing X11 input is asynchronous and this method
450 // is expected to be synchronous. Grabbing X11 input is unnecessary on 450 // is expected to be synchronous. Grabbing X11 input is unnecessary on
451 // ChromeOS because ChromeOS manages all of the X windows. When running 451 // ChromeOS because ChromeOS manages all of the X windows. When running
452 // ChromeOS on the desktop for the sake of debugging: 452 // ChromeOS on the desktop for the sake of debugging:
453 // - Implicit pointer grab as a result of pressing a mouse button 453 // - Implicit pointer grab as a result of pressing a mouse button
454 // - Releasing capture as a result of losing activation (FocusOut) 454 // - Releasing capture as a result of losing activation (FocusOut)
455 // is sufficient. 455 // is sufficient.
456 } 456 }
457 457
458 void WindowTreeHostX11::ReleaseCapture() { 458 void WindowTreeHostX11::ReleaseCapture() {
459 } 459 }
460 460
461 void WindowTreeHostX11::SetCursorNative(gfx::NativeCursor cursor) { 461 void WindowTreeHostX11::SetCursorNative(gfx::NativeCursor cursor) {
462 if (cursor == current_cursor_) 462 if (cursor == current_cursor_)
463 return; 463 return;
464 current_cursor_ = cursor; 464 current_cursor_ = cursor;
465 SetCursorInternal(cursor); 465 SetCursorInternal(cursor);
466 } 466 }
467 467
468 void WindowTreeHostX11::MoveCursorToNative(const gfx::Point& location) { 468 void WindowTreeHostX11::MoveCursorToScreenLocationInPixels(
469 const gfx::Point& location_in_pixels) {
469 XWarpPointer(xdisplay_, None, x_root_window_, 0, 0, 0, 0, 470 XWarpPointer(xdisplay_, None, x_root_window_, 0, 0, 0, 0,
470 bounds_.x() + location.x(), 471 bounds_.x() + location_in_pixels.x(),
471 bounds_.y() + location.y()); 472 bounds_.y() + location_in_pixels.y());
472 } 473 }
473 474
474 void WindowTreeHostX11::OnCursorVisibilityChangedNative(bool show) { 475 void WindowTreeHostX11::OnCursorVisibilityChangedNative(bool show) {
475 } 476 }
476 477
477 void WindowTreeHostX11::DisableInput() { 478 void WindowTreeHostX11::DisableInput() {
478 xwindow_events_.reset( 479 xwindow_events_.reset(
479 new ui::XScopedEventSelector(xwindow_, kEventMask & ~kInputEventMask)); 480 new ui::XScopedEventSelector(xwindow_, kEventMask & ~kInputEventMask));
480 unsigned char mask[XIMaskLen(XI_LASTEVENT)] = {0}; 481 unsigned char mask[XIMaskLen(XI_LASTEVENT)] = {0};
481 XIEventMask evmask; 482 XIEventMask evmask;
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
563 } 564 }
564 565
565 void WindowTreeHostX11::OnConfigureNotify() {} 566 void WindowTreeHostX11::OnConfigureNotify() {}
566 567
567 void WindowTreeHostX11::TranslateAndDispatchLocatedEvent( 568 void WindowTreeHostX11::TranslateAndDispatchLocatedEvent(
568 ui::LocatedEvent* event) { 569 ui::LocatedEvent* event) {
569 SendEventToProcessor(event); 570 SendEventToProcessor(event);
570 } 571 }
571 572
572 // static 573 // static
573 WindowTreeHost* WindowTreeHost::Create(const gfx::Rect& bounds) { 574 WindowTreeHost* WindowTreeHost::Create(const gfx::Rect& bounds_in_pixels) {
574 return new WindowTreeHostX11(bounds); 575 return new WindowTreeHostX11(bounds_in_pixels);
575 } 576 }
576 577
577 namespace test { 578 namespace test {
578 579
579 void SetUseOverrideRedirectWindowByDefault(bool override_redirect) { 580 void SetUseOverrideRedirectWindowByDefault(bool override_redirect) {
580 default_override_redirect = override_redirect; 581 default_override_redirect = override_redirect;
581 } 582 }
582 583
583 } // namespace test 584 } // namespace test
584 } // namespace aura 585 } // namespace aura
OLDNEW
« no previous file with comments | « ui/aura/window_tree_host_x11.h ('k') | ui/aura/window_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698