wl

package
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 30, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

type App struct {
	// contains filtered or unexported fields
}

func NewApp

func NewApp(log hclog.Logger) (*App, error)

func (*App) CaptureFrame

func (a *App) CaptureFrame(handle uint64) (*image.NRGBA, error)

func (*App) Close

func (a *App) Close() error

type HyprlandToplevelExportFrameV1

type HyprlandToplevelExportFrameV1 struct {
	client.BaseProxy
	// contains filtered or unexported fields
}

HyprlandToplevelExportFrameV1 : a frame ready for copy

This object represents a single frame.

When created, a series of buffer events will be sent, each representing a supported buffer type. The "buffer_done" event is sent afterwards to indicate that all supported buffer types have been enumerated. The client will then be able to send a "copy" request. If the capture is successful, the compositor will send a "flags" followed by a "ready" event.

wl_shm buffers are always supported, ie. the "buffer" event is guaranteed to be sent.

If the capture failed, the "failed" event is sent. This can happen anytime before the "ready" event.

Once either a "ready" or a "failed" event is received, the client should destroy the frame.

func NewHyprlandToplevelExportFrameV1

func NewHyprlandToplevelExportFrameV1(ctx *client.Context) *HyprlandToplevelExportFrameV1

NewHyprlandToplevelExportFrameV1 : a frame ready for copy

This object represents a single frame.

When created, a series of buffer events will be sent, each representing a supported buffer type. The "buffer_done" event is sent afterwards to indicate that all supported buffer types have been enumerated. The client will then be able to send a "copy" request. If the capture is successful, the compositor will send a "flags" followed by a "ready" event.

wl_shm buffers are always supported, ie. the "buffer" event is guaranteed to be sent.

If the capture failed, the "failed" event is sent. This can happen anytime before the "ready" event.

Once either a "ready" or a "failed" event is received, the client should destroy the frame.

func (*HyprlandToplevelExportFrameV1) Copy

func (i *HyprlandToplevelExportFrameV1) Copy(buffer *client.Buffer, ignoreDamage int32) error

Copy : copy the frame

Copy the frame to the supplied buffer. The buffer must have the correct size, see hyprland_toplevel_export_frame_v1.buffer and hyprland_toplevel_export_frame_v1.linux_dmabuf. The buffer needs to have a supported format.

If the frame is successfully copied, a "flags" and a "ready" event is sent. Otherwise, a "failed" event is sent.

This event will wait for appropriate damage to be copied, unless the ignore_damage arg is set to a non-zero value.

func (*HyprlandToplevelExportFrameV1) Destroy

func (i *HyprlandToplevelExportFrameV1) Destroy() error

Destroy : delete this object, used or not

Destroys the frame. This request can be sent at any time by the client.

func (*HyprlandToplevelExportFrameV1) Dispatch

func (i *HyprlandToplevelExportFrameV1) Dispatch(opcode uint32, fd int, data []byte)

func (*HyprlandToplevelExportFrameV1) SetBufferDoneHandler

SetBufferDoneHandler : sets handler for HyprlandToplevelExportFrameV1BufferDoneEvent

func (*HyprlandToplevelExportFrameV1) SetBufferHandler

SetBufferHandler : sets handler for HyprlandToplevelExportFrameV1BufferEvent

func (*HyprlandToplevelExportFrameV1) SetDamageHandler

SetDamageHandler : sets handler for HyprlandToplevelExportFrameV1DamageEvent

func (*HyprlandToplevelExportFrameV1) SetFailedHandler

SetFailedHandler : sets handler for HyprlandToplevelExportFrameV1FailedEvent

func (*HyprlandToplevelExportFrameV1) SetFlagsHandler

SetFlagsHandler : sets handler for HyprlandToplevelExportFrameV1FlagsEvent

func (*HyprlandToplevelExportFrameV1) SetLinuxDmabufHandler

SetLinuxDmabufHandler : sets handler for HyprlandToplevelExportFrameV1LinuxDmabufEvent

func (*HyprlandToplevelExportFrameV1) SetReadyHandler

SetReadyHandler : sets handler for HyprlandToplevelExportFrameV1ReadyEvent

type HyprlandToplevelExportFrameV1BufferDoneEvent

type HyprlandToplevelExportFrameV1BufferDoneEvent struct{}

HyprlandToplevelExportFrameV1BufferDoneEvent : all buffer types reported

This event is sent once after all buffer events have been sent.

The client should proceed to create a buffer of one of the supported types, and send a "copy" request.

type HyprlandToplevelExportFrameV1BufferDoneHandlerFunc

type HyprlandToplevelExportFrameV1BufferDoneHandlerFunc func(HyprlandToplevelExportFrameV1BufferDoneEvent)

type HyprlandToplevelExportFrameV1BufferEvent

type HyprlandToplevelExportFrameV1BufferEvent struct {
	Format uint32
	Width  uint32
	Height uint32
	Stride uint32
}

HyprlandToplevelExportFrameV1BufferEvent : wl_shm buffer information

Provides information about wl_shm buffer parameters that need to be used for this frame. This event is sent once after the frame is created if wl_shm buffers are supported.

type HyprlandToplevelExportFrameV1BufferHandlerFunc

type HyprlandToplevelExportFrameV1BufferHandlerFunc func(HyprlandToplevelExportFrameV1BufferEvent)

type HyprlandToplevelExportFrameV1DamageEvent

type HyprlandToplevelExportFrameV1DamageEvent struct {
	X      uint32
	Y      uint32
	Width  uint32
	Height uint32
}

HyprlandToplevelExportFrameV1DamageEvent : carries the coordinates of the damaged region

This event is sent right before the ready event when ignore_damage was not set. It may be generated multiple times for each copy request.

The arguments describe a box around an area that has changed since the last copy request that was derived from the current screencopy manager instance.

The union of all regions received between the call to copy and a ready event is the total damage since the prior ready event.

type HyprlandToplevelExportFrameV1DamageHandlerFunc

type HyprlandToplevelExportFrameV1DamageHandlerFunc func(HyprlandToplevelExportFrameV1DamageEvent)

type HyprlandToplevelExportFrameV1Error

type HyprlandToplevelExportFrameV1Error uint32
const (
	// HyprlandToplevelExportFrameV1ErrorAlreadyUsed : the object has already been used to copy a wl_buffer
	HyprlandToplevelExportFrameV1ErrorAlreadyUsed HyprlandToplevelExportFrameV1Error = 0
	// HyprlandToplevelExportFrameV1ErrorInvalidBuffer : buffer attributes are invalid
	HyprlandToplevelExportFrameV1ErrorInvalidBuffer HyprlandToplevelExportFrameV1Error = 1
)

HyprlandToplevelExportFrameV1Error :

func (HyprlandToplevelExportFrameV1Error) Name

func (HyprlandToplevelExportFrameV1Error) String

func (HyprlandToplevelExportFrameV1Error) Value

type HyprlandToplevelExportFrameV1FailedEvent

type HyprlandToplevelExportFrameV1FailedEvent struct{}

HyprlandToplevelExportFrameV1FailedEvent : frame copy failed

This event indicates that the attempted frame copy has failed.

After receiving this event, the client should destroy the object.

type HyprlandToplevelExportFrameV1FailedHandlerFunc

type HyprlandToplevelExportFrameV1FailedHandlerFunc func(HyprlandToplevelExportFrameV1FailedEvent)

type HyprlandToplevelExportFrameV1Flags

type HyprlandToplevelExportFrameV1Flags uint32
const (
	// HyprlandToplevelExportFrameV1FlagsYInvert : contents are y-inverted
	HyprlandToplevelExportFrameV1FlagsYInvert HyprlandToplevelExportFrameV1Flags = 1
)

HyprlandToplevelExportFrameV1Flags :

func (HyprlandToplevelExportFrameV1Flags) Name

func (HyprlandToplevelExportFrameV1Flags) String

func (HyprlandToplevelExportFrameV1Flags) Value

type HyprlandToplevelExportFrameV1FlagsEvent

type HyprlandToplevelExportFrameV1FlagsEvent struct {
	Flags uint32
}

HyprlandToplevelExportFrameV1FlagsEvent : frame flags

Provides flags about the frame. This event is sent once before the "ready" event.

type HyprlandToplevelExportFrameV1FlagsHandlerFunc

type HyprlandToplevelExportFrameV1FlagsHandlerFunc func(HyprlandToplevelExportFrameV1FlagsEvent)

type HyprlandToplevelExportFrameV1LinuxDmabufEvent

type HyprlandToplevelExportFrameV1LinuxDmabufEvent struct {
	Format uint32
	Width  uint32
	Height uint32
}

HyprlandToplevelExportFrameV1LinuxDmabufEvent : linux-dmabuf buffer information

Provides information about linux-dmabuf buffer parameters that need to be used for this frame. This event is sent once after the frame is created if linux-dmabuf buffers are supported.

type HyprlandToplevelExportFrameV1LinuxDmabufHandlerFunc

type HyprlandToplevelExportFrameV1LinuxDmabufHandlerFunc func(HyprlandToplevelExportFrameV1LinuxDmabufEvent)

type HyprlandToplevelExportFrameV1ReadyEvent

type HyprlandToplevelExportFrameV1ReadyEvent struct {
	TvSecHi uint32
	TvSecLo uint32
	TvNsec  uint32
}

HyprlandToplevelExportFrameV1ReadyEvent : indicates frame is available for reading

Called as soon as the frame is copied, indicating it is available for reading. This event includes the time at which presentation happened at.

The timestamp is expressed as tv_sec_hi, tv_sec_lo, tv_nsec triples, each component being an unsigned 32-bit value. Whole seconds are in tv_sec which is a 64-bit value combined from tv_sec_hi and tv_sec_lo, and the additional fractional part in tv_nsec as nanoseconds. Hence, for valid timestamps tv_nsec must be in [0, 999999999]. The seconds part may have an arbitrary offset at start.

After receiving this event, the client should destroy the object.

type HyprlandToplevelExportFrameV1ReadyHandlerFunc

type HyprlandToplevelExportFrameV1ReadyHandlerFunc func(HyprlandToplevelExportFrameV1ReadyEvent)

type HyprlandToplevelExportManagerV1

type HyprlandToplevelExportManagerV1 struct {
	client.BaseProxy
}

HyprlandToplevelExportManagerV1 : manager to inform clients and begin capturing

This object is a manager which offers requests to start capturing from a source.

func NewHyprlandToplevelExportManagerV1

func NewHyprlandToplevelExportManagerV1(ctx *client.Context) *HyprlandToplevelExportManagerV1

NewHyprlandToplevelExportManagerV1 : manager to inform clients and begin capturing

This object is a manager which offers requests to start capturing from a source.

func (*HyprlandToplevelExportManagerV1) CaptureToplevel

func (i *HyprlandToplevelExportManagerV1) CaptureToplevel(overlayCursor int32, handle uint32) (*HyprlandToplevelExportFrameV1, error)

CaptureToplevel : capture a toplevel

Capture the next frame of a toplevel. (window)

The captured frame will not contain any server-side decorations and will ignore the compositor-set geometry, like e.g. rounded corners.

It will contain all the subsurfaces and popups, however the latter will be clipped to the geometry of the base surface.

The handle parameter refers to the address of the window as seen in `hyprctl clients`. For example, for d161e7b0 it would be 3512854448.

overlayCursor: composite cursor onto the frame
handle: the handle of the toplevel (window) to be captured

func (*HyprlandToplevelExportManagerV1) CaptureToplevelWithWlrToplevelHandle

func (i *HyprlandToplevelExportManagerV1) CaptureToplevelWithWlrToplevelHandle(overlayCursor int32, handle *ZwlrForeignToplevelHandleV1) (*HyprlandToplevelExportFrameV1, error)

CaptureToplevelWithWlrToplevelHandle : capture a toplevel

Same as capture_toplevel, but with a zwlr_foreign_toplevel_handle_v1 handle.

overlayCursor: composite cursor onto the frame
handle: the zwlr_foreign_toplevel_handle_v1 handle of the toplevel to be captured

func (*HyprlandToplevelExportManagerV1) Destroy

Destroy : destroy the manager

All objects created by the manager will still remain valid, until their appropriate destroy request has been called.

type ZwlrForeignToplevelHandleV1

type ZwlrForeignToplevelHandleV1 struct {
	client.BaseProxy
	// contains filtered or unexported fields
}

ZwlrForeignToplevelHandleV1 : an opened toplevel

A zwlr_foreign_toplevel_handle_v1 object represents an opened toplevel window. Each app may have multiple opened toplevels.

Each toplevel has a list of outputs it is visible on, conveyed to the client with the output_enter and output_leave events.

func NewZwlrForeignToplevelHandleV1

func NewZwlrForeignToplevelHandleV1(ctx *client.Context) *ZwlrForeignToplevelHandleV1

NewZwlrForeignToplevelHandleV1 : an opened toplevel

A zwlr_foreign_toplevel_handle_v1 object represents an opened toplevel window. Each app may have multiple opened toplevels.

Each toplevel has a list of outputs it is visible on, conveyed to the client with the output_enter and output_leave events.

func (*ZwlrForeignToplevelHandleV1) Activate

func (i *ZwlrForeignToplevelHandleV1) Activate(seat *client.Seat) error

Activate : activate the toplevel

Request that this toplevel be activated on the given seat. There is no guarantee the toplevel will be actually activated.

func (*ZwlrForeignToplevelHandleV1) Close

Close : request that the toplevel be closed

Send a request to the toplevel to close itself. The compositor would typically use a shell-specific method to carry out this request, for example by sending the xdg_toplevel.close event. However, this gives no guarantees the toplevel will actually be destroyed. If and when this happens, the zwlr_foreign_toplevel_handle_v1.closed event will be emitted.

func (*ZwlrForeignToplevelHandleV1) Destroy

func (i *ZwlrForeignToplevelHandleV1) Destroy() error

Destroy : destroy the zwlr_foreign_toplevel_handle_v1 object

Destroys the zwlr_foreign_toplevel_handle_v1 object.

This request should be called either when the client does not want to use the toplevel anymore or after the closed event to finalize the destruction of the object.

func (*ZwlrForeignToplevelHandleV1) Dispatch

func (i *ZwlrForeignToplevelHandleV1) Dispatch(opcode uint32, fd int, data []byte)

func (*ZwlrForeignToplevelHandleV1) SetAppIdHandler

SetAppIdHandler : sets handler for ZwlrForeignToplevelHandleV1AppIdEvent

func (*ZwlrForeignToplevelHandleV1) SetClosedHandler

SetClosedHandler : sets handler for ZwlrForeignToplevelHandleV1ClosedEvent

func (*ZwlrForeignToplevelHandleV1) SetDoneHandler

SetDoneHandler : sets handler for ZwlrForeignToplevelHandleV1DoneEvent

func (*ZwlrForeignToplevelHandleV1) SetFullscreen

func (i *ZwlrForeignToplevelHandleV1) SetFullscreen(output *client.Output) error

SetFullscreen : request that the toplevel be fullscreened

Requests that the toplevel be fullscreened on the given output. If the fullscreen state and/or the outputs the toplevel is visible on actually change, this will be indicated by the state and output_enter/leave events.

The output parameter is only a hint to the compositor. Also, if output is NULL, the compositor should decide which output the toplevel will be fullscreened on, if at all.

func (*ZwlrForeignToplevelHandleV1) SetMaximized

func (i *ZwlrForeignToplevelHandleV1) SetMaximized() error

SetMaximized : requests that the toplevel be maximized

Requests that the toplevel be maximized. If the maximized state actually changes, this will be indicated by the state event.

func (*ZwlrForeignToplevelHandleV1) SetMinimized

func (i *ZwlrForeignToplevelHandleV1) SetMinimized() error

SetMinimized : requests that the toplevel be minimized

Requests that the toplevel be minimized. If the minimized state actually changes, this will be indicated by the state event.

func (*ZwlrForeignToplevelHandleV1) SetOutputEnterHandler

SetOutputEnterHandler : sets handler for ZwlrForeignToplevelHandleV1OutputEnterEvent

func (*ZwlrForeignToplevelHandleV1) SetOutputLeaveHandler

SetOutputLeaveHandler : sets handler for ZwlrForeignToplevelHandleV1OutputLeaveEvent

func (*ZwlrForeignToplevelHandleV1) SetParentHandler

SetParentHandler : sets handler for ZwlrForeignToplevelHandleV1ParentEvent

func (*ZwlrForeignToplevelHandleV1) SetRectangle

func (i *ZwlrForeignToplevelHandleV1) SetRectangle(surface *client.Surface, x, y, width, height int32) error

SetRectangle : the rectangle which represents the toplevel

The rectangle of the surface specified in this request corresponds to the place where the app using this protocol represents the given toplevel. It can be used by the compositor as a hint for some operations, e.g minimizing. The client is however not required to set this, in which case the compositor is free to decide some default value.

If the client specifies more than one rectangle, only the last one is considered.

The dimensions are given in surface-local coordinates. Setting width=height=0 removes the already-set rectangle.

func (*ZwlrForeignToplevelHandleV1) SetStateHandler

SetStateHandler : sets handler for ZwlrForeignToplevelHandleV1StateEvent

func (*ZwlrForeignToplevelHandleV1) SetTitleHandler

SetTitleHandler : sets handler for ZwlrForeignToplevelHandleV1TitleEvent

func (*ZwlrForeignToplevelHandleV1) UnsetFullscreen

func (i *ZwlrForeignToplevelHandleV1) UnsetFullscreen() error

UnsetFullscreen : request that the toplevel be unfullscreened

Requests that the toplevel be unfullscreened. If the fullscreen state actually changes, this will be indicated by the state event.

func (*ZwlrForeignToplevelHandleV1) UnsetMaximized

func (i *ZwlrForeignToplevelHandleV1) UnsetMaximized() error

UnsetMaximized : requests that the toplevel be unmaximized

Requests that the toplevel be unmaximized. If the maximized state actually changes, this will be indicated by the state event.

func (*ZwlrForeignToplevelHandleV1) UnsetMinimized

func (i *ZwlrForeignToplevelHandleV1) UnsetMinimized() error

UnsetMinimized : requests that the toplevel be unminimized

Requests that the toplevel be unminimized. If the minimized state actually changes, this will be indicated by the state event.

type ZwlrForeignToplevelHandleV1AppIdEvent

type ZwlrForeignToplevelHandleV1AppIdEvent struct {
	AppId string
}

ZwlrForeignToplevelHandleV1AppIdEvent : app-id change

This event is emitted whenever the app-id of the toplevel changes.

type ZwlrForeignToplevelHandleV1AppIdHandlerFunc

type ZwlrForeignToplevelHandleV1AppIdHandlerFunc func(ZwlrForeignToplevelHandleV1AppIdEvent)

type ZwlrForeignToplevelHandleV1ClosedEvent

type ZwlrForeignToplevelHandleV1ClosedEvent struct{}

ZwlrForeignToplevelHandleV1ClosedEvent : this toplevel has been destroyed

This event means the toplevel has been destroyed. It is guaranteed there won't be any more events for this zwlr_foreign_toplevel_handle_v1. The toplevel itself becomes inert so any requests will be ignored except the destroy request.

type ZwlrForeignToplevelHandleV1ClosedHandlerFunc

type ZwlrForeignToplevelHandleV1ClosedHandlerFunc func(ZwlrForeignToplevelHandleV1ClosedEvent)

type ZwlrForeignToplevelHandleV1DoneEvent

type ZwlrForeignToplevelHandleV1DoneEvent struct{}

ZwlrForeignToplevelHandleV1DoneEvent : all information about the toplevel has been sent

This event is sent after all changes in the toplevel state have been sent.

This allows changes to the zwlr_foreign_toplevel_handle_v1 properties to be seen as atomic, even if they happen via multiple events.

type ZwlrForeignToplevelHandleV1DoneHandlerFunc

type ZwlrForeignToplevelHandleV1DoneHandlerFunc func(ZwlrForeignToplevelHandleV1DoneEvent)

type ZwlrForeignToplevelHandleV1Error

type ZwlrForeignToplevelHandleV1Error uint32
const (
	// ZwlrForeignToplevelHandleV1ErrorInvalidRectangle : the provided rectangle is invalid
	ZwlrForeignToplevelHandleV1ErrorInvalidRectangle ZwlrForeignToplevelHandleV1Error = 0
)

ZwlrForeignToplevelHandleV1Error :

func (ZwlrForeignToplevelHandleV1Error) Name

func (ZwlrForeignToplevelHandleV1Error) String

func (ZwlrForeignToplevelHandleV1Error) Value

type ZwlrForeignToplevelHandleV1OutputEnterEvent

type ZwlrForeignToplevelHandleV1OutputEnterEvent struct {
	Output *client.Output
}

ZwlrForeignToplevelHandleV1OutputEnterEvent : toplevel entered an output

This event is emitted whenever the toplevel becomes visible on the given output. A toplevel may be visible on multiple outputs.

type ZwlrForeignToplevelHandleV1OutputEnterHandlerFunc

type ZwlrForeignToplevelHandleV1OutputEnterHandlerFunc func(ZwlrForeignToplevelHandleV1OutputEnterEvent)

type ZwlrForeignToplevelHandleV1OutputLeaveEvent

type ZwlrForeignToplevelHandleV1OutputLeaveEvent struct {
	Output *client.Output
}

ZwlrForeignToplevelHandleV1OutputLeaveEvent : toplevel left an output

This event is emitted whenever the toplevel stops being visible on the given output. It is guaranteed that an entered-output event with the same output has been emitted before this event.

type ZwlrForeignToplevelHandleV1OutputLeaveHandlerFunc

type ZwlrForeignToplevelHandleV1OutputLeaveHandlerFunc func(ZwlrForeignToplevelHandleV1OutputLeaveEvent)

type ZwlrForeignToplevelHandleV1ParentEvent

type ZwlrForeignToplevelHandleV1ParentEvent struct {
	Parent *ZwlrForeignToplevelHandleV1
}

ZwlrForeignToplevelHandleV1ParentEvent : parent change

This event is emitted whenever the parent of the toplevel changes.

No event is emitted when the parent handle is destroyed by the client.

type ZwlrForeignToplevelHandleV1ParentHandlerFunc

type ZwlrForeignToplevelHandleV1ParentHandlerFunc func(ZwlrForeignToplevelHandleV1ParentEvent)

type ZwlrForeignToplevelHandleV1State

type ZwlrForeignToplevelHandleV1State uint32
const (
	// ZwlrForeignToplevelHandleV1StateMaximized : the toplevel is maximized
	ZwlrForeignToplevelHandleV1StateMaximized ZwlrForeignToplevelHandleV1State = 0
	// ZwlrForeignToplevelHandleV1StateMinimized : the toplevel is minimized
	ZwlrForeignToplevelHandleV1StateMinimized ZwlrForeignToplevelHandleV1State = 1
	// ZwlrForeignToplevelHandleV1StateActivated : the toplevel is active
	ZwlrForeignToplevelHandleV1StateActivated ZwlrForeignToplevelHandleV1State = 2
	// ZwlrForeignToplevelHandleV1StateFullscreen : the toplevel is fullscreen
	ZwlrForeignToplevelHandleV1StateFullscreen ZwlrForeignToplevelHandleV1State = 3
)

ZwlrForeignToplevelHandleV1State : types of states on the toplevel

The different states that a toplevel can have. These have the same meaning as the states with the same names defined in xdg-toplevel

func (ZwlrForeignToplevelHandleV1State) Name

func (ZwlrForeignToplevelHandleV1State) String

func (ZwlrForeignToplevelHandleV1State) Value

type ZwlrForeignToplevelHandleV1StateEvent

type ZwlrForeignToplevelHandleV1StateEvent struct {
	State []byte
}

ZwlrForeignToplevelHandleV1StateEvent : the toplevel state changed

This event is emitted immediately after the zlw_foreign_toplevel_handle_v1 is created and each time the toplevel state changes, either because of a compositor action or because of a request in this protocol.

type ZwlrForeignToplevelHandleV1StateHandlerFunc

type ZwlrForeignToplevelHandleV1StateHandlerFunc func(ZwlrForeignToplevelHandleV1StateEvent)

type ZwlrForeignToplevelHandleV1TitleEvent

type ZwlrForeignToplevelHandleV1TitleEvent struct {
	Title string
}

ZwlrForeignToplevelHandleV1TitleEvent : title change

This event is emitted whenever the title of the toplevel changes.

type ZwlrForeignToplevelHandleV1TitleHandlerFunc

type ZwlrForeignToplevelHandleV1TitleHandlerFunc func(ZwlrForeignToplevelHandleV1TitleEvent)

type ZwlrForeignToplevelManagerV1

type ZwlrForeignToplevelManagerV1 struct {
	client.BaseProxy
	// contains filtered or unexported fields
}

ZwlrForeignToplevelManagerV1 : list and control opened apps

The purpose of this protocol is to enable the creation of taskbars and docks by providing them with a list of opened applications and letting them request certain actions on them, like maximizing, etc.

After a client binds the zwlr_foreign_toplevel_manager_v1, each opened toplevel window will be sent via the toplevel event

func NewZwlrForeignToplevelManagerV1

func NewZwlrForeignToplevelManagerV1(ctx *client.Context) *ZwlrForeignToplevelManagerV1

NewZwlrForeignToplevelManagerV1 : list and control opened apps

The purpose of this protocol is to enable the creation of taskbars and docks by providing them with a list of opened applications and letting them request certain actions on them, like maximizing, etc.

After a client binds the zwlr_foreign_toplevel_manager_v1, each opened toplevel window will be sent via the toplevel event

func (*ZwlrForeignToplevelManagerV1) Destroy

func (i *ZwlrForeignToplevelManagerV1) Destroy() error

func (*ZwlrForeignToplevelManagerV1) Dispatch

func (i *ZwlrForeignToplevelManagerV1) Dispatch(opcode uint32, fd int, data []byte)

func (*ZwlrForeignToplevelManagerV1) SetFinishedHandler

SetFinishedHandler : sets handler for ZwlrForeignToplevelManagerV1FinishedEvent

func (*ZwlrForeignToplevelManagerV1) SetToplevelHandler

SetToplevelHandler : sets handler for ZwlrForeignToplevelManagerV1ToplevelEvent

func (*ZwlrForeignToplevelManagerV1) Stop

Stop : stop sending events

Indicates the client no longer wishes to receive events for new toplevels. However the compositor may emit further toplevel_created events, until the finished event is emitted.

The client must not send any more requests after this one.

type ZwlrForeignToplevelManagerV1FinishedEvent

type ZwlrForeignToplevelManagerV1FinishedEvent struct{}

ZwlrForeignToplevelManagerV1FinishedEvent : the compositor has finished with the toplevel manager

This event indicates that the compositor is done sending events to the zwlr_foreign_toplevel_manager_v1. The server will destroy the object immediately after sending this request, so it will become invalid and the client should free any resources associated with it.

type ZwlrForeignToplevelManagerV1FinishedHandlerFunc

type ZwlrForeignToplevelManagerV1FinishedHandlerFunc func(ZwlrForeignToplevelManagerV1FinishedEvent)

type ZwlrForeignToplevelManagerV1ToplevelEvent

type ZwlrForeignToplevelManagerV1ToplevelEvent struct {
	Toplevel *ZwlrForeignToplevelHandleV1
}

ZwlrForeignToplevelManagerV1ToplevelEvent : a toplevel has been created

This event is emitted whenever a new toplevel window is created. It is emitted for all toplevels, regardless of the app that has created them.

All initial details of the toplevel(title, app_id, states, etc.) will be sent immediately after this event via the corresponding events in zwlr_foreign_toplevel_handle_v1.

type ZwlrForeignToplevelManagerV1ToplevelHandlerFunc

type ZwlrForeignToplevelManagerV1ToplevelHandlerFunc func(ZwlrForeignToplevelManagerV1ToplevelEvent)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL