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 3// found in the LICENSE file. 4 5#ifndef UI_BASE_GTK_GTK_SCREEN_UTILS_H_ 6#define UI_BASE_GTK_GTK_SCREEN_UTILS_H_ 7 8#include <gtk/gtk.h> 9 10#include "ui/base/ui_export.h" 11#include "ui/gfx/point.h" 12#include "ui/gfx/rect.h" 13#include "ui/gfx/vector2d.h" 14 15namespace ui { 16 17// Returns true if the screen is composited, false otherwise. 18UI_EXPORT bool IsScreenComposited(); 19 20// Get the current location of the mouse cursor relative to the screen. 21UI_EXPORT gfx::Point ScreenPoint(GtkWidget* widget); 22 23// Get the current location of the mouse cursor relative to the widget. 24UI_EXPORT gfx::Point ClientPoint(GtkWidget* widget); 25 26// Gets the offset of a gtk widget from the origin in screen coordinates. 27UI_EXPORT gfx::Vector2d GetWidgetScreenOffset(GtkWidget* widget); 28 29// Returns the bounds of the specified widget in screen coordinates. 30UI_EXPORT gfx::Rect GetWidgetScreenBounds(GtkWidget* widget); 31 32} // namespace ui 33 34#endif // UI_BASE_GTK_GTK_SCREEN_UTILS_H_ 35