Some interface cleaning#

This commit is contained in:
James Grogan 2022-11-10 17:10:18 +00:00
parent 918c1d3046
commit c10c5412b9
9 changed files with 72 additions and 39 deletions

View file

@ -32,7 +32,6 @@ void WaylandWindowInterface::registryHandleGlobalEvent(void *data, struct wl_reg
else if (strcmp(interface, wl_seat_interface.name) == 0)
{
thisClass->setSeat(static_cast<wl_seat*>(wl_registry_bind(registry, name, &wl_seat_interface, 5)));
}
}
@ -54,7 +53,7 @@ WaylandWindowInterface::~WaylandWindowInterface()
}
void WaylandWindowInterface::connect()
void WaylandWindowInterface::initialize(DesktopManager* desktopManager)
{
mDisplay = wl_display_connect(nullptr);
@ -107,13 +106,13 @@ void WaylandWindowInterface::doXdgPong(uint32_t serial)
xdg_wm_base_pong(mXdgBase, serial);
}
void WaylandWindowInterface::addWindow(mt::Window* window)
void WaylandWindowInterface::addWindow(mt::Window* window, DesktopManager* desktopManager)
{
auto surface = std::make_unique<WaylandSurface>(window);
mSurfaces.push_back(std::move(surface));
}
void WaylandWindowInterface::mapWindow(mt::Window* window)
void WaylandWindowInterface::showWindow(mt::Window* window)
{
if (mSurfaces.empty())
{
@ -123,7 +122,7 @@ void WaylandWindowInterface::mapWindow(mt::Window* window)
mSurfaces[0]->initialize(mCompositor, mXdgBase, mBuffer);
}
void WaylandWindowInterface::disconnect()
void WaylandWindowInterface::shutDown()
{
if (mDisplay)
{
@ -131,7 +130,7 @@ void WaylandWindowInterface::disconnect()
}
}
void WaylandWindowInterface::run()
void WaylandWindowInterface::loop(DesktopManager* desktopManager)
{
while (wl_display_dispatch(mDisplay) != -1)
{

View file

@ -2,6 +2,7 @@
#include "Window.h"
#include "SharedMemory.h"
#include "AbstractUiInterface.h"
#include "wayland-client.h"
#include "xdg-shell-client-protocol.h"
@ -13,7 +14,7 @@ class WaylandSurface;
class WaylandBuffer;
class WaylandSeatInterface;
class WaylandWindowInterface
class WaylandWindowInterface : public AbstractUIInterface
{
public:
@ -21,15 +22,15 @@ public:
~WaylandWindowInterface();
void connect();
void loop(DesktopManager* desktopManager) override;
void disconnect();
void addWindow(mt::Window* window, DesktopManager* desktopManager) override;
void run();
void showWindow(mt::Window* window) override;
void addWindow(mt::Window* window);
void initialize(DesktopManager* desktopManager) override;
void mapWindow(mt::Window* window);
void shutDown() override;
private:
static void registryHandleGlobalEvent(void *data, struct wl_registry *registry, uint32_t name, const char *interface, uint32_t version);