v0.6.0 d4696de

xdgtopleveldrag.go RawHistoryFolder

1// Code generated by wlgen; DO NOT EDIT.
2package xdgtopleveldrag
3
4import (
5	"fmt"
6	wayland "github.com/bnema/purego-libwayland/protocol/wayland"
7	xdgshell "github.com/bnema/purego-libwayland/protocol/xdgshell"
8	"github.com/bnema/purego-libwayland/server"
9)
10
11var ToplevelDragManagerV1Interface *server.Interface
12var ToplevelDragV1Interface *server.Interface
13
14func init() {
15	ToplevelDragManagerV1Interface = &server.Interface{Name: "xdg_toplevel_drag_manager_v1", Version: 1}
16	ToplevelDragV1Interface = &server.Interface{Name: "xdg_toplevel_drag_v1", Version: 1}
17	ToplevelDragManagerV1Interface.Requests = []server.Message{
18		{Name: "destroy", Signature: "", Types: []*server.Interface{}},
19		{Name: "get_xdg_toplevel_drag", Signature: "no", Types: []*server.Interface{ToplevelDragV1Interface, wayland.DataSourceInterface}},
20	}
21	ToplevelDragManagerV1Interface.Events = []server.Message{}
22	ToplevelDragV1Interface.Requests = []server.Message{
23		{Name: "destroy", Signature: "", Types: []*server.Interface{}},
24		{Name: "attach", Signature: "oii", Types: []*server.Interface{xdgshell.ToplevelInterface, nil, nil}},
25	}
26	ToplevelDragV1Interface.Events = []server.Message{}
27	if err := server.NewInterfaces(ToplevelDragManagerV1Interface, ToplevelDragV1Interface); err != nil {
28		panic(err)
29	}
30}
31
32// ToplevelDragManagerV1 Move a window during a drag.
33type ToplevelDragManagerV1 struct{ *server.Resource }
34
35func WrapToplevelDragManagerV1(r *server.Resource) *ToplevelDragManagerV1 {
36	if r == nil {
37		return nil
38	}
39	return &ToplevelDragManagerV1{r}
40}
41
42const ToplevelDragManagerV1RequestDestroy uint32 = 0
43const ToplevelDragManagerV1RequestGetXdgToplevelDrag uint32 = 1
44
45// ToplevelDragManagerV1Error .
46type ToplevelDragManagerV1Error uint32
47
48const (
49	ToplevelDragManagerV1ErrorInvalidSource ToplevelDragManagerV1Error = 0
50)
51
52// ToplevelDragManagerV1Handler handles xdg_toplevel_drag_manager_v1 requests.
53type ToplevelDragManagerV1Handler interface {
54	Destroy(self *ToplevelDragManagerV1)
55	GetXdgToplevelDrag(self *ToplevelDragManagerV1, id uint32, dataSource *wayland.DataSource)
56}
57
58func NewToplevelDragManagerV1(c server.Client, version int32, id uint32, h ToplevelDragManagerV1Handler) (*ToplevelDragManagerV1, error) {
59	if h == nil {
60		return nil, fmt.Errorf("purego-libwayland: nil handler for xdg_toplevel_drag_manager_v1")
61	}
62	var self *ToplevelDragManagerV1
63	r, err := c.CreateResource(ToplevelDragManagerV1Interface, version, id, func(_ *server.Resource, opcode uint32, args []server.Arg) {
64		switch opcode {
65		case 0:
66			h.Destroy(self)
67			self.Destroy()
68		case 1:
69			h.GetXdgToplevelDrag(self, args[0].NewID(), wayland.WrapDataSource(args[1].Resource()))
70		}
71	})
72	if err != nil {
73		return nil, err
74	}
75	self = WrapToplevelDragManagerV1(r)
76	r.Data = self
77	return self, nil
78}
79func NewToplevelDragManagerV1Global(d *server.Display, version int32, bind server.BindFunc) error {
80	return d.CreateGlobal(ToplevelDragManagerV1Interface, version, bind)
81}
82
83// ToplevelDragV1 Object representing a toplevel move during a drag.
84type ToplevelDragV1 struct{ *server.Resource }
85
86func WrapToplevelDragV1(r *server.Resource) *ToplevelDragV1 {
87	if r == nil {
88		return nil
89	}
90	return &ToplevelDragV1{r}
91}
92
93const ToplevelDragV1RequestDestroy uint32 = 0
94const ToplevelDragV1RequestAttach uint32 = 1
95
96// ToplevelDragV1Error .
97type ToplevelDragV1Error uint32
98
99const (
100	ToplevelDragV1ErrorToplevelAttached ToplevelDragV1Error = 0
101	ToplevelDragV1ErrorOngoingDrag      ToplevelDragV1Error = 1
102)
103
104// ToplevelDragV1Handler handles xdg_toplevel_drag_v1 requests.
105type ToplevelDragV1Handler interface {
106	Destroy(self *ToplevelDragV1)
107	Attach(self *ToplevelDragV1, toplevel *xdgshell.Toplevel, xOffset int32, yOffset int32)
108}
109
110func NewToplevelDragV1(c server.Client, version int32, id uint32, h ToplevelDragV1Handler) (*ToplevelDragV1, error) {
111	if h == nil {
112		return nil, fmt.Errorf("purego-libwayland: nil handler for xdg_toplevel_drag_v1")
113	}
114	var self *ToplevelDragV1
115	r, err := c.CreateResource(ToplevelDragV1Interface, version, id, func(_ *server.Resource, opcode uint32, args []server.Arg) {
116		switch opcode {
117		case 0:
118			h.Destroy(self)
119			self.Destroy()
120		case 1:
121			h.Attach(self, xdgshell.WrapToplevel(args[0].Resource()), args[1].Int(), args[2].Int())
122		}
123	})
124	if err != nil {
125		return nil, err
126	}
127	self = WrapToplevelDragV1(r)
128	r.Data = self
129	return self, nil
130}
131func NewToplevelDragV1Global(d *server.Display, version int32, bind server.BindFunc) error {
132	return d.CreateGlobal(ToplevelDragV1Interface, version, bind)
133}
134func resourceOf(v interface{ GetResource() *server.Resource }) *server.Resource {
135	if v == nil {
136		return nil
137	}
138	return v.GetResource()
139}
140func (self *ToplevelDragManagerV1) GetResource() *server.Resource {
141	if self == nil {
142		return nil
143	}
144	return self.Resource
145}
146func (self *ToplevelDragV1) GetResource() *server.Resource {
147	if self == nil {
148		return nil
149	}
150	return self.Resource
151}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 14

↑↓ moveenter openesc close