Merge lp:~alan-griffiths/miral/fix-1629349 into lp:miral

Proposed by Alan Griffiths
Status: Merged
Approved by: Gerry Boland
Approved revision: 377
Merged at revision: 378
Proposed branch: lp:~alan-griffiths/miral/fix-1629349
Merge into: lp:miral
Diff against target: 158 lines (+48/-1)
7 files modified
debian/changelog (+6/-0)
debian/libmiral1.symbols (+3/-0)
include/miral/window_specification.h (+2/-0)
miral/basic_window_manager.cpp (+4/-0)
miral/symbols.map (+7/-0)
miral/window_specification.cpp (+11/-0)
scripts/process_doxygen_xml.py (+15/-1)
To merge this branch: bzr merge lp:~alan-griffiths/miral/fix-1629349
Reviewer Review Type Date Requested Status
Gerry Boland (community) Approve
Review via email: mp+307338@code.launchpad.net

Commit message

Add userdata property to WindowSpecification and copy it to WindowInfo

To post a comment you must log in.
Revision history for this message
Gerry Boland (gerboland) wrote :

Thank you!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2016-09-30 09:54:02 +0000
3+++ debian/changelog 2016-09-30 16:32:33 +0000
4@@ -1,3 +1,9 @@
5+miral (0.3.0) UNRELEASED; urgency=medium
6+
7+ * TBD
8+
9+ -- Alan Griffiths <alan.griffiths@canonical.com> Fri, 30 Sep 2016 17:25:31 +0100
10+
11 miral (0.2.0) UNRELEASED; urgency=medium
12
13 * New upstream release 0.2.0 (https://launchpad.net/miral/+milestone/0.2)
14
15=== modified file 'debian/libmiral1.symbols'
16--- debian/libmiral1.symbols 2016-09-29 14:41:11 +0000
17+++ debian/libmiral1.symbols 2016-09-30 16:32:33 +0000
18@@ -1,6 +1,7 @@
19 libmiral.so.1 libmiral1 #MINVER#
20 MIRAL_0.1@MIRAL_0.1 0.1.0
21 MIRAL_0.2@MIRAL_0.2 0.2.0
22+ MIRAL_0.3@MIRAL_0.3 0.3.0
23 (c++)"miral::ActiveOutputsListener::advise_output_begin()@MIRAL_0.1" 0.1.0
24 (c++)"miral::ActiveOutputsListener::advise_output_create(miral::Output const&)@MIRAL_0.1" 0.1.0
25 (c++)"miral::ActiveOutputsListener::advise_output_delete(miral::Output const&)@MIRAL_0.1" 0.1.0
26@@ -241,6 +242,8 @@
27 (c++)"miral::WindowSpecification::type() const@MIRAL_0.1" 0.1.0
28 (c++)"miral::WindowSpecification::type()@MIRAL_0.1" 0.1.0
29 (c++)"miral::WindowSpecification::update(mir::scene::SurfaceCreationParameters&) const@MIRAL_0.1" 0.1.0
30+ (c++)"miral::WindowSpecification::userdata()@MIRAL_0.3" 0.3.0
31+ (c++)"miral::WindowSpecification::userdata() const@MIRAL_0.3" 0.3.0
32 (c++)"miral::WindowSpecification::width_inc() const@MIRAL_0.1" 0.1.0
33 (c++)"miral::WindowSpecification::width_inc()@MIRAL_0.1" 0.1.0
34 (c++)"miral::WindowSpecification::window_placement_gravity() const@MIRAL_0.1" 0.1.0
35
36=== modified file 'include/miral/window_specification.h'
37--- include/miral/window_specification.h 2016-09-23 13:59:34 +0000
38+++ include/miral/window_specification.h 2016-09-30 16:32:33 +0000
39@@ -98,6 +98,7 @@
40 auto input_mode() const -> mir::optional_value<InputReceptionMode> const&;
41 auto shell_chrome() const -> mir::optional_value<MirShellChrome> const&;
42 auto confine_pointer() const -> mir::optional_value<MirPointerConfinementState> const&;
43+ auto userdata() const -> mir::optional_value<std::shared_ptr<void>> const&;
44
45 auto top_left() -> mir::optional_value<Point>&;
46 auto size() -> mir::optional_value<Size>&;
47@@ -124,6 +125,7 @@
48 auto input_mode() -> mir::optional_value<InputReceptionMode>&;
49 auto shell_chrome() -> mir::optional_value<MirShellChrome>&;
50 auto confine_pointer() -> mir::optional_value<MirPointerConfinementState>&;
51+ auto userdata() -> mir::optional_value<std::shared_ptr<void>>&;
52
53 private:
54 struct Self;
55
56=== modified file 'miral/basic_window_manager.cpp'
57--- miral/basic_window_manager.cpp 2016-09-30 09:47:05 +0000
58+++ miral/basic_window_manager.cpp 2016-09-30 16:32:33 +0000
59@@ -102,6 +102,9 @@
60 if (spec.parent().is_set() && spec.parent().value().lock())
61 window_info.parent(info_for(spec.parent().value()).window());
62
63+ if (spec.userdata().is_set())
64+ window_info.userdata() = spec.userdata().value();
65+
66 session_info.add_window(window);
67
68 auto const parent = window_info.parent();
69@@ -547,6 +550,7 @@
70 COPY_IF_SET(output_id);
71 COPY_IF_SET(preferred_orientation);
72 COPY_IF_SET(confine_pointer);
73+ COPY_IF_SET(userdata);
74
75 #undef COPY_IF_SET
76
77
78=== modified file 'miral/symbols.map'
79--- miral/symbols.map 2016-09-29 14:41:11 +0000
80+++ miral/symbols.map 2016-09-30 16:32:33 +0000
81@@ -295,3 +295,10 @@
82 vtable?for?miral::CursorTheme;
83 };
84 } MIRAL_0.1;
85+
86+MIRAL_0.3 {
87+global:
88+ extern "C++" {
89+ miral::WindowSpecification::userdata*;
90+ };
91+} MIRAL_0.2;
92
93=== modified file 'miral/window_specification.cpp'
94--- miral/window_specification.cpp 2016-09-23 13:59:34 +0000
95+++ miral/window_specification.cpp 2016-09-30 16:32:33 +0000
96@@ -60,6 +60,7 @@
97 mir::optional_value<InputReceptionMode> input_mode;
98 mir::optional_value<MirShellChrome> shell_chrome;
99 mir::optional_value<MirPointerConfinementState> confine_pointer;
100+ mir::optional_value<std::shared_ptr<void>> userdata;
101 };
102
103 miral::WindowSpecification::Self::Self(mir::shell::SurfaceSpecification const& spec) :
104@@ -487,6 +488,11 @@
105 return self->confine_pointer;
106 }
107
108+auto miral::WindowSpecification::userdata() const -> mir::optional_value<std::shared_ptr<void>> const&
109+{
110+ return self->userdata;
111+}
112+
113 auto miral::WindowSpecification::top_left() -> mir::optional_value<Point>&
114 {
115 return self->top_left;
116@@ -611,3 +617,8 @@
117 {
118 return self->confine_pointer;
119 }
120+
121+auto miral::WindowSpecification::userdata() -> mir::optional_value<std::shared_ptr<void>>&
122+{
123+ return self->userdata;
124+}
125
126=== modified file 'scripts/process_doxygen_xml.py'
127--- scripts/process_doxygen_xml.py 2016-09-27 15:59:15 +0000
128+++ scripts/process_doxygen_xml.py 2016-09-30 16:32:33 +0000
129@@ -362,6 +362,20 @@
130
131 MIRAL_0.2 {
132 global:
133+ extern "C++" {
134+ miral::CursorTheme::?CursorTheme*;
135+ miral::CursorTheme::CursorTheme*;
136+ miral::CursorTheme::operator*;
137+ miral::WindowInfo::confine_pointer*;
138+ miral::WindowManagerTools::place_and_size_for_state*;
139+ miral::WindowSpecification::confine_pointer*;
140+ typeinfo?for?miral::CursorTheme;
141+ vtable?for?miral::CursorTheme;
142+ };
143+} MIRAL_0.1;
144+
145+MIRAL_0.3 {
146+global:
147 extern "C++" {'''
148
149 def print_report():
150@@ -371,7 +385,7 @@
151 if not formatted_symbol in old_stanzas:
152 print formatted_symbol
153 print ' };'
154- print '} MIRAL_0.1;'
155+ print '} MIRAL_0.2;'
156
157 def print_debug_info(node, attributes):
158 if not debug: return

Subscribers

People subscribed via source and target branches