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

Side by Side Diff: ui/gfx/x/x11_types.h

Issue 1001833005: Update from https://crrev.com/320343 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Supress Created 5 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 unified diff | Download patch
« no previous file with comments | « ui/gfx/skia_util.cc ('k') | ui/gl/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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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_GFX_X_X11_UTIL_H_ 5 #ifndef UI_GFX_X_X11_UTIL_H_
6 #define UI_GFX_X_X11_UTIL_H_ 6 #define UI_GFX_X_X11_UTIL_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/memory/scoped_ptr.h"
9 #include "ui/gfx/gfx_export.h" 10 #include "ui/gfx/gfx_export.h"
10 11
11 typedef unsigned long XAtom; 12 typedef unsigned long XAtom;
12 typedef unsigned long XID; 13 typedef unsigned long XID;
13 typedef struct _XImage XImage; 14 typedef struct _XImage XImage;
14 typedef struct _XGC *GC; 15 typedef struct _XGC *GC;
15 typedef struct _XDisplay XDisplay; 16 typedef struct _XDisplay XDisplay;
16 17
18 extern "C" {
19 int XFree(void*);
20 }
21
17 namespace gfx { 22 namespace gfx {
18 23
24 template <class T, class R, R (*F)(T*)>
25 struct XObjectDeleter {
26 inline void operator()(void* ptr) const { F(static_cast<T*>(ptr)); }
27 };
28
29 template <class T, class D = XObjectDeleter<void, int, XFree>>
30 using XScopedPtr = scoped_ptr<T, D>;
31
19 // TODO(oshima|evan): This assume there is one display and doesn't work 32 // TODO(oshima|evan): This assume there is one display and doesn't work
20 // undef multiple displays/monitor environment. Remove this and change the 33 // undef multiple displays/monitor environment. Remove this and change the
21 // chrome codebase to get the display from window. 34 // chrome codebase to get the display from window.
22 GFX_EXPORT XDisplay* GetXDisplay(); 35 GFX_EXPORT XDisplay* GetXDisplay();
23 36
24 // This opens a new X11 XDisplay*, taking command line arguments into account. 37 // This opens a new X11 XDisplay*, taking command line arguments into account.
25 GFX_EXPORT XDisplay* OpenNewXDisplay(); 38 GFX_EXPORT XDisplay* OpenNewXDisplay();
26 39
27 // Return the number of bits-per-pixel for a pixmap of the given depth 40 // Return the number of bits-per-pixel for a pixmap of the given depth
28 GFX_EXPORT int BitsPerPixelForPixmapDepth(XDisplay* display, int depth); 41 GFX_EXPORT int BitsPerPixelForPixmapDepth(XDisplay* display, int depth);
(...skipping 18 matching lines...) Expand all
47 const uint8* data, 60 const uint8* data,
48 int data_width, int data_height, 61 int data_width, int data_height,
49 int src_x, int src_y, 62 int src_x, int src_y,
50 int dst_x, int dst_y, 63 int dst_x, int dst_y,
51 int copy_width, int copy_height); 64 int copy_width, int copy_height);
52 65
53 } // namespace gfx 66 } // namespace gfx
54 67
55 #endif // UI_GFX_X_X11_UTIL_H_ 68 #endif // UI_GFX_X_X11_UTIL_H_
56 69
OLDNEW
« no previous file with comments | « ui/gfx/skia_util.cc ('k') | ui/gl/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698