~ubuntu-branches/ubuntu/vivid/freerdp/vivid

« back to all changes in this revision

Viewing changes to client/X11/xf_window.h

  • Committer: Package Import Robot
  • Author(s): Iain Lane
  • Date: 2014-11-11 12:20:50 UTC
  • mfrom: (1.1.9) (9.1.17 sid)
  • Revision ID: package-import@ubuntu.com-20141111122050-wyr8hrnwco9fcmum
Tags: 1.1.0~git20140921.1.440916e+dfsg1-2ubuntu1
* Merge with Debian unstable, remaining changes
  - Disable ffmpeg support
* Disable gstreamer support, this relies on gstreamer 0.10 and we don't want
  to add any more deps on that.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/**
2
 
 * FreeRDP: A Remote Desktop Protocol Client
 
2
 * FreeRDP: A Remote Desktop Protocol Implementation
3
3
 * X11 Windows
4
4
 *
5
5
 * Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
21
21
#define __XF_WINDOW_H
22
22
 
23
23
#include <X11/Xlib.h>
 
24
 
24
25
#include <freerdp/freerdp.h>
25
 
#include <freerdp/utils/memory.h>
26
26
 
27
27
typedef struct xf_localmove xfLocalMove;
28
28
typedef struct xf_window xfWindow;
29
29
 
 
30
#include "xf_client.h"
30
31
#include "xfreerdp.h"
31
32
 
32
33
// Extended ICCM flags http://standards.freedesktop.org/wm-spec/wm-spec-latest.html
58
59
        int window_x; // relative to window
59
60
        int window_y;
60
61
        enum xf_localmove_state state;
 
62
        int direction;
61
63
};
62
64
 
63
65
struct xf_window
70
72
        int width;
71
73
        int height;
72
74
        Window handle;
73
 
        boolean fullscreen;
74
 
        boolean decorations;
 
75
        BOOL fullscreen;
 
76
        BOOL decorations;
75
77
        rdpWindow* window;
76
 
        boolean is_mapped;
77
 
        boolean is_transient;
 
78
        BOOL is_mapped;
 
79
        BOOL is_transient;
78
80
        xfLocalMove local_move;
 
81
        BYTE rail_state;
 
82
        BOOL rail_ignore_configure;
79
83
};
80
84
 
81
 
void xf_ewmhints_init(xfInfo* xfi);
82
 
 
83
 
boolean xf_GetCurrentDesktop(xfInfo* xfi);
84
 
boolean xf_GetWorkArea(xfInfo* xfi);
85
 
 
86
 
void xf_SetWindowFullscreen(xfInfo* xfi, xfWindow* window, boolean fullscreen);
87
 
void xf_SetWindowDecorations(xfInfo* xfi, xfWindow* window, boolean show);
88
 
void xf_SetWindowUnlisted(xfInfo* xfi, xfWindow* window);
89
 
 
90
 
xfWindow* xf_CreateDesktopWindow(xfInfo* xfi, char* name, int width, int height, boolean decorations);
91
 
void xf_ResizeDesktopWindow(xfInfo* xfi, xfWindow* window, int width, int height);
92
 
 
93
 
xfWindow* xf_CreateWindow(xfInfo* xfi, rdpWindow* wnd, int x, int y, int width, int height, uint32 id);
94
 
void xf_MoveWindow(xfInfo* xfi, xfWindow* window, int x, int y, int width, int height);
95
 
void xf_ShowWindow(xfInfo* xfi, xfWindow* window, uint8 state);
96
 
void xf_SetWindowIcon(xfInfo* xfi, xfWindow* window, rdpIcon* icon);
97
 
void xf_SetWindowRects(xfInfo* xfi, xfWindow* window, RECTANGLE_16* rects, int nrects);
98
 
void xf_SetWindowVisibilityRects(xfInfo* xfi, xfWindow* window, RECTANGLE_16* rects, int nrects);
99
 
void xf_SetWindowStyle(xfInfo* xfi, xfWindow* window, uint32 style, uint32 ex_style);
100
 
void xf_UpdateWindowArea(xfInfo* xfi, xfWindow* window, int x, int y, int width, int height);
101
 
boolean xf_IsWindowBorder(xfInfo* xfi, xfWindow* xfw, int x, int y);
102
 
void xf_DestroyWindow(xfInfo* xfi, xfWindow* window);
103
 
 
104
 
void xf_SetWindowMinMaxInfo(xfInfo* xfi, xfWindow* window, int maxWidth, int maxHeight,
 
85
void xf_ewmhints_init(xfContext* xfc);
 
86
 
 
87
BOOL xf_GetCurrentDesktop(xfContext* xfc);
 
88
BOOL xf_GetWorkArea(xfContext* xfc);
 
89
 
 
90
void xf_SetWindowFullscreen(xfContext* xfc, xfWindow* window, BOOL fullscreen);
 
91
void xf_SetWindowDecorations(xfContext* xfc, xfWindow* window, BOOL show);
 
92
void xf_SetWindowUnlisted(xfContext* xfc, xfWindow* window);
 
93
 
 
94
xfWindow* xf_CreateDesktopWindow(xfContext* xfc, char* name, int width, int height, BOOL decorations);
 
95
void xf_ResizeDesktopWindow(xfContext* xfc, xfWindow* window, int width, int height);
 
96
 
 
97
xfWindow* xf_CreateWindow(xfContext* xfc, rdpWindow* wnd, int x, int y, int width, int height, UINT32 id);
 
98
void xf_SetWindowText(xfContext* xfc, xfWindow* window, char *name);
 
99
void xf_MoveWindow(xfContext* xfc, xfWindow* window, int x, int y, int width, int height);
 
100
void xf_ShowWindow(xfContext* xfc, xfWindow* window, BYTE state);
 
101
void xf_SetWindowIcon(xfContext* xfc, xfWindow* window, rdpIcon* icon);
 
102
void xf_SetWindowRects(xfContext* xfc, xfWindow* window, RECTANGLE_16* rects, int nrects);
 
103
void xf_SetWindowVisibilityRects(xfContext* xfc, xfWindow* window, RECTANGLE_16* rects, int nrects);
 
104
void xf_SetWindowStyle(xfContext* xfc, xfWindow* window, UINT32 style, UINT32 ex_style);
 
105
void xf_UpdateWindowArea(xfContext* xfc, xfWindow* window, int x, int y, int width, int height);
 
106
BOOL xf_IsWindowBorder(xfContext* xfc, xfWindow* xfw, int x, int y);
 
107
void xf_DestroyWindow(xfContext* xfc, xfWindow* window);
 
108
rdpWindow* xf_rdpWindowFromWindow(xfContext* xfc, Window wnd);
 
109
 
 
110
BOOL xf_GetWindowProperty(xfContext* xfc, Window window, Atom property, int length,
 
111
                unsigned long* nitems, unsigned long* bytes, BYTE** prop);
 
112
 
 
113
void xf_SetWindowMinMaxInfo(xfContext* xfc, xfWindow* window, int maxWidth, int maxHeight,
105
114
                int maxPosX, int maxPosY, int minTrackWidth, int minTrackHeight, int maxTrackWidth, int maxTrackHeight);
106
115
 
107
 
 
108
 
void xf_StartLocalMoveSize(xfInfo* xfi, xfWindow* window, int direction, int x, int y);
109
 
void xf_EndLocalMoveSize(xfInfo *xfi, xfWindow *window);
110
 
void xf_SendClientEvent(xfInfo *xfi, xfWindow* window, Atom atom, unsigned int numArgs, ...);
 
116
void xf_StartLocalMoveSize(xfContext* xfc, xfWindow* window, int direction, int x, int y);
 
117
void xf_EndLocalMoveSize(xfContext* xfc, xfWindow *window);
 
118
void xf_SendClientEvent(xfContext* xfc, xfWindow* window, Atom atom, unsigned int numArgs, ...);
111
119
 
112
120
#endif /* __XF_WINDOW_H */