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

Side by Side Diff: ui/base/x/x11_util.h

Issue 16271006: Drag on linux (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Document Created 7 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ui/base/x/selection_utils.cc ('k') | ui/base/x/x11_util.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 #ifndef UI_BASE_X_X11_UTIL_H_ 5 #ifndef UI_BASE_X_X11_UTIL_H_
6 #define UI_BASE_X_X11_UTIL_H_ 6 #define UI_BASE_X_X11_UTIL_H_
7 7
8 // This file declares utility functions for X11 (Linux only). 8 // This file declares utility functions for X11 (Linux only).
9 // 9 //
10 // These functions do not require the Xlib headers to be included (which is why 10 // These functions do not require the Xlib headers to be included (which is why
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 157
158 // Returns the bounds of |window|. 158 // Returns the bounds of |window|.
159 UI_EXPORT bool GetWindowRect(XID window, gfx::Rect* rect); 159 UI_EXPORT bool GetWindowRect(XID window, gfx::Rect* rect);
160 160
161 // Returns true if |window| contains the point |screen_loc|. 161 // Returns true if |window| contains the point |screen_loc|.
162 UI_EXPORT bool WindowContainsPoint(XID window, gfx::Point screen_loc); 162 UI_EXPORT bool WindowContainsPoint(XID window, gfx::Point screen_loc);
163 163
164 // Return true if |window| has any property with |property_name|. 164 // Return true if |window| has any property with |property_name|.
165 UI_EXPORT bool PropertyExists(XID window, const std::string& property_name); 165 UI_EXPORT bool PropertyExists(XID window, const std::string& property_name);
166 166
167 // Returns the raw bytes from a property with minimal
168 // interpretation. |out_data| should be freed by XFree() after use.
169 UI_EXPORT bool GetRawBytesOfProperty(XID window,
170 Atom property,
171 unsigned char** out_data,
172 size_t* out_data_bytes,
173 size_t* out_data_items,
174 Atom* out_type);
175
167 // Get the value of an int, int array, atom array or string property. On 176 // Get the value of an int, int array, atom array or string property. On
168 // success, true is returned and the value is stored in |value|. 177 // success, true is returned and the value is stored in |value|.
169 // 178 //
170 // TODO(erg): Once we remove the gtk port and are 100% aura, all of these 179 // TODO(erg): Once we remove the gtk port and are 100% aura, all of these
171 // should accept an Atom instead of a string. 180 // should accept an Atom instead of a string.
172 UI_EXPORT bool GetIntProperty(XID window, const std::string& property_name, 181 UI_EXPORT bool GetIntProperty(XID window, const std::string& property_name,
173 int* value); 182 int* value);
183 UI_EXPORT bool GetXIDProperty(XID window, const std::string& property_name,
184 XID* value);
174 UI_EXPORT bool GetIntArrayProperty(XID window, const std::string& property_name, 185 UI_EXPORT bool GetIntArrayProperty(XID window, const std::string& property_name,
175 std::vector<int>* value); 186 std::vector<int>* value);
176 UI_EXPORT bool GetAtomArrayProperty(XID window, 187 UI_EXPORT bool GetAtomArrayProperty(XID window,
177 const std::string& property_name, 188 const std::string& property_name,
178 std::vector<Atom>* value); 189 std::vector<Atom>* value);
179 UI_EXPORT bool GetStringProperty( 190 UI_EXPORT bool GetStringProperty(
180 XID window, const std::string& property_name, std::string* value); 191 XID window, const std::string& property_name, std::string* value);
181 192
193 // These setters all make round trips.
182 UI_EXPORT bool SetIntProperty(XID window, 194 UI_EXPORT bool SetIntProperty(XID window,
183 const std::string& name, 195 const std::string& name,
184 const std::string& type, 196 const std::string& type,
185 int value); 197 int value);
186 UI_EXPORT bool SetIntArrayProperty(XID window, 198 UI_EXPORT bool SetIntArrayProperty(XID window,
187 const std::string& name, 199 const std::string& name,
188 const std::string& type, 200 const std::string& type,
189 const std::vector<int>& value); 201 const std::vector<int>& value);
202 UI_EXPORT bool SetAtomArrayProperty(XID window,
203 const std::string& name,
204 const std::string& type,
205 const std::vector<Atom>& value);
190 206
191 // Gets the X atom for default display corresponding to atom_name. 207 // Gets the X atom for default display corresponding to atom_name.
192 Atom GetAtom(const char* atom_name); 208 Atom GetAtom(const char* atom_name);
193 209
194 // Get |window|'s parent window, or None if |window| is the root window. 210 // Get |window|'s parent window, or None if |window| is the root window.
195 UI_EXPORT XID GetParentWindow(XID window); 211 UI_EXPORT XID GetParentWindow(XID window);
196 212
197 // Walk up |window|'s hierarchy until we find a direct child of |root|. 213 // Walk up |window|'s hierarchy until we find a direct child of |root|.
198 XID GetHighestAncestorWindow(XID window, XID root); 214 XID GetHighestAncestorWindow(XID window, XID root);
199 215
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
369 private: 385 private:
370 ::Cursor cursor_; 386 ::Cursor cursor_;
371 Display* display_; 387 Display* display_;
372 388
373 DISALLOW_COPY_AND_ASSIGN(XScopedCursor); 389 DISALLOW_COPY_AND_ASSIGN(XScopedCursor);
374 }; 390 };
375 391
376 } // namespace ui 392 } // namespace ui
377 393
378 #endif // UI_BASE_X_X11_UTIL_H_ 394 #endif // UI_BASE_X_X11_UTIL_H_
OLDNEW
« no previous file with comments | « ui/base/x/selection_utils.cc ('k') | ui/base/x/x11_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698