mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-23 18:02:05 -05:00
7984c2836d
This also adds the ability to query how many virtual desktops are set up, and for the Taskbar to be notified when the active virtual desktop has changed.
39 lines
1.4 KiB
C++
39 lines
1.4 KiB
C++
/*
|
|
* Copyright (c) 2021, the SerenityOS developers.
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LibIPC/ServerConnection.h>
|
|
#include <WindowServer/ScreenLayout.h>
|
|
#include <WindowServer/WindowManagerClientEndpoint.h>
|
|
#include <WindowServer/WindowManagerServerEndpoint.h>
|
|
|
|
namespace GUI {
|
|
|
|
class WindowManagerServerConnection final
|
|
: public IPC::ServerConnection<WindowManagerClientEndpoint, WindowManagerServerEndpoint>
|
|
, public WindowManagerClientEndpoint {
|
|
C_OBJECT(WindowManagerServerConnection)
|
|
public:
|
|
WindowManagerServerConnection()
|
|
: IPC::ServerConnection<WindowManagerClientEndpoint, WindowManagerServerEndpoint>(*this, "/tmp/portal/wm")
|
|
{
|
|
}
|
|
|
|
static WindowManagerServerConnection& the();
|
|
|
|
private:
|
|
virtual void window_removed(i32, i32, i32) override;
|
|
virtual void window_state_changed(i32, i32, i32, i32, i32, u32, u32, bool, bool, bool, bool, i32, String const&, Gfx::IntRect const&, Optional<i32> const&) override;
|
|
virtual void window_icon_bitmap_changed(i32, i32, i32, Gfx::ShareableBitmap const&) override;
|
|
virtual void window_rect_changed(i32, i32, i32, Gfx::IntRect const&) override;
|
|
virtual void applet_area_size_changed(i32, Gfx::IntSize const&) override;
|
|
virtual void super_key_pressed(i32) override;
|
|
virtual void super_space_key_pressed(i32) override;
|
|
virtual void virtual_desktop_changed(i32, u32, u32) override;
|
|
};
|
|
|
|
}
|