1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
|
From e8a0aeec350ea80349582142c0e8e3cd3f1bce38 Mon Sep 17 00:00:00 2001
From: Rico Tzschichholz <ricotz@ubuntu.com>
Date: Wed, 17 Mar 2021 11:48:39 +0100
Subject: [PATCH] Reference of [GtkChild] fields is handled by GtkBuilder, type
must be unowned
---
src/base-headerbar.vala | 14 +++++++-------
src/base-view.vala | 4 ++--
src/base-window.vala | 6 +++---
src/game-actionbar.vala | 6 +++---
src/game-headerbar.vala | 4 ++--
src/history-button.vala | 4 ++--
src/new-game-screen.vala | 18 +++++++++---------
src/notifications-revealer.vala | 2 +-
src/overlayed-list.vala | 10 +++++-----
src/registry-placeholder.vala | 4 ++--
10 files changed, 36 insertions(+), 36 deletions(-)
diff --git a/src/base-headerbar.vala b/src/base-headerbar.vala
index 075a3ef..256d761 100644
--- a/src/base-headerbar.vala
+++ b/src/base-headerbar.vala
@@ -20,7 +20,7 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/base-headerbar.ui")]
private class BaseHeaderBar : NightTimeAwareHeaderBar, AdaptativeWidget
{
- [GtkChild] protected Box center_box;
+ [GtkChild] protected unowned Box center_box;
construct
{
@@ -190,13 +190,13 @@ private class BaseHeaderBar : NightTimeAwareHeaderBar, AdaptativeWidget
* * default widgets
\*/
- [GtkChild] private Button go_back_button;
- [GtkChild] private Separator ltr_left_separator;
- [GtkChild] private Label title_label;
- [GtkChild] private MenuButton info_button;
- [GtkChild] private Separator ltr_right_separator;
+ [GtkChild] private unowned Button go_back_button;
+ [GtkChild] private unowned Separator ltr_left_separator;
+ [GtkChild] private unowned Label title_label;
+ [GtkChild] private unowned MenuButton info_button;
+ [GtkChild] private unowned Separator ltr_right_separator;
- [GtkChild] protected Stack quit_button_stack;
+ [GtkChild] protected unowned Stack quit_button_stack;
protected void set_default_widgets_states (string? title_label_text_or_null,
bool show_go_back_button,
diff --git a/src/base-view.vala b/src/base-view.vala
index af884df..0889eae 100644
--- a/src/base-view.vala
+++ b/src/base-view.vala
@@ -20,7 +20,7 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/base-view.ui")]
private class BaseView : Stack, AdaptativeWidget
{
- [GtkChild] protected Grid main_grid;
+ [GtkChild] protected unowned Grid main_grid;
internal virtual bool handle_copy_text (out string copy_text)
{
@@ -109,7 +109,7 @@ private class BaseView : Stack, AdaptativeWidget
* * notifications
\*/
- [GtkChild] private Overlay notifications_overlay;
+ [GtkChild] private unowned Overlay notifications_overlay;
private bool notifications_revealer_created = false;
private NotificationsRevealer notifications_revealer;
diff --git a/src/base-window.vala b/src/base-window.vala
index ed8e891..eccaba8 100644
--- a/src/base-window.vala
+++ b/src/base-window.vala
@@ -74,9 +74,9 @@ private class BaseWindow : AdaptativeWindow, AdaptativeWidget
* * main layout
\*/
- [GtkChild] private Grid main_grid;
- [GtkChild] private Button unfullscreen_button;
- [GtkChild] private Overlay main_overlay;
+ [GtkChild] private unowned Grid main_grid;
+ [GtkChild] private unowned Button unfullscreen_button;
+ [GtkChild] private unowned Overlay main_overlay;
protected void add_to_main_overlay (Widget widget)
{
diff --git a/src/game-actionbar.vala b/src/game-actionbar.vala
index e59bfdc..d1e9278 100644
--- a/src/game-actionbar.vala
+++ b/src/game-actionbar.vala
@@ -28,8 +28,8 @@ private class GameActionBar : Revealer, AdaptativeWidget
[CCode (notify = false)] public string window_name { private get; protected construct set; default = "" ; }
[CCode (notify = false)] public Widget? game_widget { private get; protected construct ; default = null ; }
- [GtkChild] private ActionBar action_bar;
- [GtkChild] private Label game_label;
+ [GtkChild] private unowned ActionBar action_bar;
+ [GtkChild] private unowned Label game_label;
construct
{
@@ -93,7 +93,7 @@ private class GameActionBar : Revealer, AdaptativeWidget
[GtkTemplate (ui = "/org/gnome/Reversi/ui/game-actionbar-placeholder.ui")]
private class GameActionBarPlaceHolder : Revealer, AdaptativeWidget
{
- [GtkChild] private Widget placeholder_child;
+ [GtkChild] private unowned Widget placeholder_child;
private GameActionBar actionbar;
internal GameActionBarPlaceHolder (GameActionBar _actionbar)
diff --git a/src/game-headerbar.vala b/src/game-headerbar.vala
index 8238b3d..8267d3d 100644
--- a/src/game-headerbar.vala
+++ b/src/game-headerbar.vala
@@ -23,8 +23,8 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/game-headerbar.ui")]
private class GameHeaderBar : BaseHeaderBar, AdaptativeWidget
{
- [GtkChild] private Button new_game_button;
- [GtkChild] private Button back_button;
+ [GtkChild] private unowned Button new_game_button;
+ [GtkChild] private unowned Button back_button;
[CCode (notify = false)] public bool window_has_name { private get; protected construct set; default = false; }
[CCode (notify = false)] public string window_name { private get; protected construct set; default = ""; }
diff --git a/src/history-button.vala b/src/history-button.vala
index 4cd3673..05a7b49 100644
--- a/src/history-button.vala
+++ b/src/history-button.vala
@@ -25,8 +25,8 @@ private class HistoryButton : MenuButton, AdaptativeWidget
{
[CCode (notify = false)] public ThemeManager theme_manager { private get; protected construct; }
- [GtkChild] private Stack stack;
- [GtkChild] private DrawingArea drawing;
+ [GtkChild] private unowned Stack stack;
+ [GtkChild] private unowned DrawingArea drawing;
internal HistoryButton (GLib.Menu menu, ThemeManager theme_manager)
{
diff --git a/src/new-game-screen.vala b/src/new-game-screen.vala
index 4cb7d31..8401c39 100644
--- a/src/new-game-screen.vala
+++ b/src/new-game-screen.vala
@@ -23,11 +23,11 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/new-game-screen.ui")]
private class NewGameScreen : Box, AdaptativeWidget
{
- [GtkChild] private ModelButton modelbutton_one;
- [GtkChild] private ModelButton modelbutton_two;
+ [GtkChild] private unowned ModelButton modelbutton_one;
+ [GtkChild] private unowned ModelButton modelbutton_two;
- [GtkChild] private Gtk.MenuButton menubutton_one;
- [GtkChild] private Gtk.MenuButton menubutton_two;
+ [GtkChild] private unowned Gtk.MenuButton menubutton_one;
+ [GtkChild] private unowned Gtk.MenuButton menubutton_two;
construct
{
@@ -106,12 +106,12 @@ private class NewGameScreen : Box, AdaptativeWidget
map.connect (() => games_box.show ());
}
- [GtkChild] private Box games_box;
- [GtkChild] private Box options_box;
+ [GtkChild] private unowned Box games_box;
+ [GtkChild] private unowned Box options_box;
- [GtkChild] private Label games_label;
- [GtkChild] private Label options_label;
- [GtkChild] private Separator options_separator;
+ [GtkChild] private unowned Label games_label;
+ [GtkChild] private unowned Label options_label;
+ [GtkChild] private unowned Separator options_separator;
private bool phone_size = false;
private bool extra_thin = false;
diff --git a/src/notifications-revealer.vala b/src/notifications-revealer.vala
index 85e96e9..8668ef2 100644
--- a/src/notifications-revealer.vala
+++ b/src/notifications-revealer.vala
@@ -20,7 +20,7 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/notifications-revealer.ui")]
private class NotificationsRevealer : Revealer, AdaptativeWidget
{
- [GtkChild] private Label notification_label;
+ [GtkChild] private unowned Label notification_label;
construct
{
diff --git a/src/overlayed-list.vala b/src/overlayed-list.vala
index 209b044..4ff47f1 100644
--- a/src/overlayed-list.vala
+++ b/src/overlayed-list.vala
@@ -20,12 +20,12 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/overlayed-list.ui")]
private abstract class OverlayedList : Overlay, AdaptativeWidget
{
- [GtkChild] protected ListBox main_list_box;
+ [GtkChild] protected unowned ListBox main_list_box;
private StyleContext main_list_box_context;
protected GLib.ListStore main_list_store = new GLib.ListStore (typeof (Widget));
- [GtkChild] private ScrolledWindow scrolled;
- [GtkChild] private Box edit_mode_box;
+ [GtkChild] private unowned ScrolledWindow scrolled;
+ [GtkChild] private unowned Box edit_mode_box;
/*\
* * differed construct
@@ -45,8 +45,8 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
}
- [GtkChild] private ModelButton enter_edit_mode_button;
- [GtkChild] private ModelButton leave_edit_mode_button;
+ [GtkChild] private unowned ModelButton enter_edit_mode_button;
+ [GtkChild] private unowned ModelButton leave_edit_mode_button;
[CCode (notify = false)] public string edit_mode_action_prefix
{
construct
diff --git a/src/registry-placeholder.vala b/src/registry-placeholder.vala
index fdd8283..dc7bbaa 100644
--- a/src/registry-placeholder.vala
+++ b/src/registry-placeholder.vala
@@ -20,8 +20,8 @@ using Gtk;
[GtkTemplate (ui = "/org/gnome/Reversi/ui/registry-placeholder.ui")]
private class RegistryPlaceholder : Grid
{
- [GtkChild] private Label placeholder_label;
- [GtkChild] private Image placeholder_image;
+ [GtkChild] private unowned Label placeholder_label;
+ [GtkChild] private unowned Image placeholder_image;
[CCode (notify = false)] public string label { internal construct set { placeholder_label.label = value; }}
[CCode (notify = false)] public string icon_name { private get; internal construct; }
--
2.31.1
|