Cleaning window managers for consistency.
This commit is contained in:
parent
5d984aa61d
commit
392a2b7889
28 changed files with 452 additions and 325 deletions
|
@ -4,8 +4,8 @@
|
|||
|
||||
#include <memory>
|
||||
|
||||
class GlxInterface;
|
||||
using GlxInterfacePtr = std::unique_ptr<GlxInterface>;
|
||||
class XcbGlInterface;
|
||||
using XcbGlInterfacePtr = std::unique_ptr<XcbGlInterface>;
|
||||
|
||||
class XcbEventInterface;
|
||||
using XcbEventInterfacePtr = std::unique_ptr<XcbEventInterface>;
|
||||
|
@ -29,35 +29,31 @@ public:
|
|||
|
||||
~XcbInterface();
|
||||
|
||||
void initialize() override;
|
||||
|
||||
void loop() override;
|
||||
|
||||
void shutDown() override;
|
||||
|
||||
void showWindow(mt::Window* window) override;
|
||||
|
||||
void addWindow(mt::Window* window) override;
|
||||
|
||||
void showWindow(mt::Window* window) override;
|
||||
|
||||
private:
|
||||
void initialize() override;
|
||||
void onPaint();
|
||||
void onEventsDispatched();
|
||||
void onLoopCompleted();
|
||||
void onExposeEvent(xcb_expose_event_t* event);
|
||||
|
||||
void initializeOpenGl();
|
||||
void initializeHardwareRendering() override;
|
||||
void createGraphicsContext();
|
||||
void createOpenGlDrawable(mt::Window* window);
|
||||
|
||||
void connect();
|
||||
void updateScreen();
|
||||
void mapWindow(mt::Window* window);
|
||||
|
||||
void shutDown() override;
|
||||
uint32_t getEventMask();
|
||||
|
||||
private:
|
||||
xcb_connection_t* mConnection;
|
||||
_XDisplay* mX11Display;
|
||||
GlxInterfacePtr mGlxInterface;
|
||||
XcbEventInterfacePtr mXcbEventInterface {nullptr};
|
||||
xcb_connection_t* mConnection{nullptr};
|
||||
_XDisplay* mX11Display{nullptr};
|
||||
XcbGlInterfacePtr mGlInterface;
|
||||
XcbEventInterfacePtr mEventInterface;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue