mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-01-29 07:52:50 -05:00
- fork go-wayland/client and modify to make it thread-safe internally - use sync.Map and atomic values in many places to cut down on mutex boilerplate - do not create extworkspace client unless explicitly requested
34 lines
472 B
Go
34 lines
472 B
Go
package client
|
|
|
|
type Dispatcher interface {
|
|
Dispatch(opcode uint32, fd int, data []byte)
|
|
}
|
|
|
|
type Proxy interface {
|
|
Context() *Context
|
|
SetContext(ctx *Context)
|
|
ID() uint32
|
|
SetID(id uint32)
|
|
}
|
|
|
|
type BaseProxy struct {
|
|
ctx *Context
|
|
id uint32
|
|
}
|
|
|
|
func (p *BaseProxy) ID() uint32 {
|
|
return p.id
|
|
}
|
|
|
|
func (p *BaseProxy) SetID(id uint32) {
|
|
p.id = id
|
|
}
|
|
|
|
func (p *BaseProxy) Context() *Context {
|
|
return p.ctx
|
|
}
|
|
|
|
func (p *BaseProxy) SetContext(ctx *Context) {
|
|
p.ctx = ctx
|
|
}
|