/usr/include/unity-2d-private/workspacesinfo.h is in libunity-2d-private-dev 5.12.0-0ubuntu1.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | #ifndef WORKSPACESINFO_H
#define WORKSPACESINFO_H
#include <QObject>
typedef unsigned long Atom;
class WorkspacesInfo : public QObject
{
Q_OBJECT
Q_PROPERTY(int count READ count NOTIFY countChanged)
Q_PROPERTY(int current READ current NOTIFY currentChanged)
Q_PROPERTY(int rows READ rows NOTIFY rowsChanged)
Q_PROPERTY(int columns READ columns NOTIFY columnsChanged)
Q_PROPERTY(Orientation orientation READ orientation NOTIFY orientationChanged)
Q_PROPERTY(Corner startingCorner READ startingCorner NOTIFY startingCornerChanged)
public:
explicit WorkspacesInfo(QObject *parent = 0);
enum Orientation {
OrientationHorizontal,
OrientationVertical
};
enum Corner {
CornerTopLeft,
CornerTopRight,
CornerBottomRight,
CornerBottomLeft
};
/* Getters */
int count() const { return m_count; }
int current() const { return m_current; }
int rows() const { return m_rows; }
int columns() const { return m_columns; }
Orientation orientation() const { return m_orientation; }
Corner startingCorner() const { return m_startingCorner; }
/* Invokables */
Q_INVOKABLE bool changeCurrent(int newWorkspace);
Q_SIGNALS:
void countChanged(int count);
void currentChanged(int current);
void rowsChanged(int rows);
void columnsChanged(int columns);
void orientationChanged(Orientation orientation);
void startingCornerChanged(Corner startingCorner);
private:
static bool globalEventFilter(void* message);
static void internX11Atoms();
void updateWorkspaceGeometry();
bool getWorkspaceCountFromX(int& workspaceCount);
bool getWorkspaceLayoutFromX(Orientation& orientation, int& columns, int& rows, Corner& startingCorner);
void setWorkspaceCountToX(int workspaceCount);
void setWorkspaceLayoutToX(Orientation orientation, int columns, int rows, Corner startingCorner);
void updateWorkspaceGeometryProperties(int workspaceCount, Orientation orientation, int columns, int rows, Corner startingCorner);
void updateCurrentWorkspace();
unsigned long * getX11IntProperty(Atom property, long length);
void setX11IntProperty(Atom property, unsigned char *data, long length);
private:
int m_count;
int m_current;
int m_rows;
int m_columns;
Orientation m_orientation;
Corner m_startingCorner;
};
#endif // WORKSPACESINFO_H
|