Code Review
/
staging
/
windowmanager.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
main: pass struct conn by-reference to init_layout()
[staging/windowmanager.git]
/
src
/
main.cpp
diff --git
a/src/main.cpp
b/src/main.cpp
index
d01950b
..
c343a66
100644
(file)
--- a/
src/main.cpp
+++ b/
src/main.cpp
@@
-19,17
+19,17
@@
namespace {
// | (__| | | | __/ (__| < | __/\ V / __/ | | | |_\__ \ | | |
// \___|_| |_|\___|\___|_|\_\___\___| \_/ \___|_| |_|\__|___/ | | |
// |_____| \_\/_/
// | (__| | | | __/ (__| < | __/\ V / __/ | | | |_\__ \ | | |
// \___|_| |_|\___|\___|_|\_\___\___| \_/ \___|_| |_|\__|___/ | | |
// |_____| \_\/_/
-int check_events(struct wl::display
*d, struct conn *
c, int fd) {
- struct pollfd pfd[2] = {{.fd = d
->
get_fd(), .events = POLLIN, .revents = 0},
+int check_events(struct wl::display
&d, struct conn &
c, int fd) {
+ struct pollfd pfd[2] = {{.fd = d
.
get_fd(), .events = POLLIN, .revents = 0},
{.fd = fd, .events = POLLIN, .revents = 0}};
{.fd = fd, .events = POLLIN, .revents = 0}};
- d
->
flush();
+ d
.
flush();
if (poll(pfd, fd != -1 ? 2 : 1, -1) != -1 && errno != EINTR) {
int ret = 0;
if (pfd[0].revents & POLLIN) {
if (poll(pfd, fd != -1 ? 2 : 1, -1) != -1 && errno != EINTR) {
int ret = 0;
if (pfd[0].revents & POLLIN) {
- ret = d
->
dispatch();
+ ret = d
.
dispatch();
}
if (ret == -1)
}
if (ret == -1)
@@
-43,22
+43,22
@@
int check_events(struct wl::display *d, struct conn *c, int fd) {
;
// Display current status
;
// Display current status
- if (!c
->
c->surfaces.empty()) {
+ if (!c
.
c->surfaces.empty()) {
puts("Surfaces:");
puts("Surfaces:");
- for (auto const &i : c
->
c->surfaces) {
-
struct genivi::rect
const &r = i.second->dst_rect;
-
struct genivi::size
const &s = i.second->size;
+ for (auto const &i : c
.
c->surfaces) {
+
auto
const &r = i.second->dst_rect;
+
auto
const &s = i.second->size;
printf("%d [%ux%u] (%ux%u@%dx%d), ", i.first, s.w, s.h, r.w, r.h,
r.x, r.y);
}
puts("\b\b ");
}
printf("%d [%ux%u] (%ux%u@%dx%d), ", i.first, s.w, s.h, r.w, r.h,
r.x, r.y);
}
puts("\b\b ");
}
- if (!c
->
c->layers.empty()) {
+ if (!c
.
c->layers.empty()) {
puts("Layers:");
puts("Layers:");
- for (auto const &i : c
->
c->layers) {
-
struct genivi::rect
const &r = i.second->dst_rect;
-
struct genivi::size
const &s = i.second->size;
+ for (auto const &i : c
.
c->layers) {
+
auto
const &r = i.second->dst_rect;
+
auto
const &s = i.second->size;
printf("%d [%ux%u] (%ux%u@%dx%d), ", i.first, s.w, s.h, r.w, r.h,
r.x, r.y);
}
printf("%d [%ux%u] (%ux%u@%dx%d), ", i.first, s.w, s.h, r.w, r.h,
r.x, r.y);
}
@@
-91,8
+91,8
@@
void init_layout(struct conn &c) {
s->clear();
// Setup our dummy scene...
s->clear();
// Setup our dummy scene...
- c.c->layer_create(100, 0, 0); // bottom layer, anything else
- c.c->layer_create(1000, 0, 0); // top layer, mandelbrot
+ c.c->layer_create(100, 0, 0);
// bottom layer, anything else
+ c.c->layer_create(1000, 0, 0);
// top layer, mandelbrot
auto &l100 = c.c->layers[100];
auto &l1k = c.c->layers[1000];
auto &l100 = c.c->layers[100];
auto &l1k = c.c->layers[1000];
@@
-121,28
+121,28
@@
int main(int argc, char **argv) {
if (!getenv("XDG_RUNTIME_DIR"))
fatal("Environment variable XDG_RUNTIME_DIR not set");
if (!getenv("XDG_RUNTIME_DIR"))
fatal("Environment variable XDG_RUNTIME_DIR not set");
-
auto d = std::make_unique<wl::display>()
;
- if (!d
->
ok())
+
struct wl::display d {}
;
+ if (!d
.
ok())
fatal("Could not connect to compositor");
fatal("Could not connect to compositor");
- struct conn c{};
+ struct conn c
{};
- d
->r->
add_global_handler(
+ d
.r.
add_global_handler(
"ivi_controller", [&c](wl_registry *r, uint32_t name, uint32_t v) {
c.c = std::make_unique<genivi::controller>(r, name, v);
});
"ivi_controller", [&c](wl_registry *r, uint32_t name, uint32_t v) {
c.c = std::make_unique<genivi::controller>(r, name, v);
});
- d
->r->
add_global_handler(
+ d
.r.
add_global_handler(
"wl_output", [&c](wl_registry *r, uint32_t name, uint32_t v) {
c.outputs.emplace_back(std::make_unique<wl::output>(r, name, v));
});
// First level objects
"wl_output", [&c](wl_registry *r, uint32_t name, uint32_t v) {
c.outputs.emplace_back(std::make_unique<wl::output>(r, name, v));
});
// First level objects
- d
->
roundtrip();
+ d
.
roundtrip();
// Second level objects
// Second level objects
- d
->
roundtrip();
+ d
.
roundtrip();
// Third level objects
// Third level objects
- d
->
roundtrip();
+ d
.
roundtrip();
if (!c.c)
fatal("ivi_controller global not available");
if (!c.c)
fatal("ivi_controller global not available");
@@
-152,12
+152,12
@@
int main(int argc, char **argv) {
init_layout(c);
init_layout(c);
- while (check_events(d
.get(), &
c, STDIN_FILENO) != -1) {
+ while (check_events(d
,
c, STDIN_FILENO) != -1) {
c.c->execute_pending();
c.c->execute_pending();
- d
->
flush();
+ d
.
flush();
}
}
- d
->
roundtrip();
+ d
.
roundtrip();
return 0;
}
return 0;
}