swc

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.nihaljere.xyz/swc
Log | Files | Refs | README | LICENSE

commit b8123bed9227b07110030dc31360737ed986f261
parent 452e49221645ad9af79cb64d5f659c0ff796ec8a
Author: Michael Forney <mforney@mforney.org>
Date:   Fri, 31 Jan 2014 23:30:03 -0800

screen: Reserve swc_ prefix for public API

Diffstat:
Mlibswc/compositor.c | 28++++++++++++++--------------
Mlibswc/drm.c | 3+--
Mlibswc/output.c | 2+-
Mlibswc/output.h | 2+-
Mlibswc/panel.c | 13++++++-------
Mlibswc/panel.h | 4++--
Mlibswc/pointer.c | 12++++++------
Mlibswc/screen.c | 23+++++++++++------------
Mlibswc/screen.h | 20++++++++++----------
Mlibswc/surface.c | 8++++----
Mlibswc/swc.c | 8++++----
Mlibswc/view.c | 4++--
12 files changed, 62 insertions(+), 65 deletions(-)

diff --git a/libswc/compositor.c b/libswc/compositor.c @@ -156,7 +156,7 @@ static void handle_screen_event(struct wl_listener * listener, void * data) } } -static struct target * target_get(struct swc_screen_internal * screen) +static struct target * target_get(struct screen * screen) { struct wl_listener * listener = wl_signal_get(&screen->base.event_signal, &handle_screen_event); @@ -175,7 +175,7 @@ static void handle_screen_view_event(struct wl_listener * listener, void * data) { case SWC_VIEW_EVENT_FRAME: { - struct swc_screen_internal * screen = CONTAINER_OF + struct screen * screen = CONTAINER_OF (event_data->view, typeof(*screen), planes.framebuffer.view); struct target * target; struct view * view; @@ -183,11 +183,11 @@ static void handle_screen_view_event(struct wl_listener * listener, void * data) if (!(target = target_get(screen))) return; - compositor.pending_flips &= ~swc_screen_mask(screen); + compositor.pending_flips &= ~screen_mask(screen); wl_list_for_each(view, &compositor.views, link) { - if (view->base.screens & swc_screen_mask(screen)) + if (view->base.screens & screen_mask(screen)) swc_view_frame(&view->base, event_data->frame.time); } @@ -221,7 +221,7 @@ static bool target_swap_buffers(struct target * target) return true; } -static struct target * target_new(struct swc_screen_internal * screen) +static struct target * target_new(struct screen * screen) { struct target * target; @@ -241,7 +241,7 @@ static struct target * target_new(struct swc_screen_internal * screen) target->view_listener.notify = &handle_screen_view_event; wl_signal_add(&target->view->event_signal, &target->view_listener); target->current_buffer = NULL; - target->mask = swc_screen_mask(screen); + target->mask = screen_mask(screen); target_swap_buffers(target); target->screen_listener.notify = &handle_screen_event; @@ -441,11 +441,11 @@ static void schedule_updates(uint32_t screens) if (screens == -1) { - struct swc_screen_internal * screen; + struct screen * screen; screens = 0; wl_list_for_each(screen, &swc.screens, link) - screens |= swc_screen_mask(screen); + screens |= screen_mask(screen); } compositor.scheduled_updates |= screens; @@ -718,13 +718,13 @@ static void calculate_damage() pixman_region32_fini(&surface_opaque); } -static void update_screen(struct swc_screen_internal * screen) +static void update_screen(struct screen * screen) { struct target * target; const struct swc_rectangle * geometry = &screen->base.geometry; pixman_region32_t damage; - if (!(compositor.scheduled_updates & swc_screen_mask(screen))) + if (!(compositor.scheduled_updates & screen_mask(screen))) return; if (!(target = target_get(screen))) @@ -740,7 +740,7 @@ static void update_screen(struct swc_screen_internal * screen) pixman_region32_fini(&damage); /* Don't repaint the screen if it is waiting for a page flip. */ - if (compositor.pending_flips & swc_screen_mask(screen)) + if (compositor.pending_flips & screen_mask(screen)) return; pixman_region32_t * total_damage, base_damage; @@ -757,7 +757,7 @@ static void update_screen(struct swc_screen_internal * screen) static void perform_update(void * data) { - struct swc_screen_internal * screen; + struct screen * screen; uint32_t updates = compositor.scheduled_updates & ~compositor.pending_flips; @@ -823,7 +823,7 @@ static void handle_switch_vt(uint32_t time, uint32_t value, void * data) static void handle_launch_event(struct wl_listener * listener, void * data) { struct swc_event * event = data; - struct swc_screen_internal * screen; + struct screen * screen; switch (event->type) { @@ -892,7 +892,7 @@ static void bind_compositor(struct wl_client * client, void * data, bool swc_compositor_initialize() { - struct swc_screen_internal * screen; + struct screen * screen; uint32_t keysym; compositor.global = wl_global_create diff --git a/libswc/drm.c b/libswc/drm.c @@ -416,8 +416,7 @@ bool swc_drm_create_screens(struct wl_list * screens) if (!(output = swc_output_new(connector))) continue; - output->screen = swc_screen_new(resources->crtcs[crtc_index], - output); + output->screen = screen_new(resources->crtcs[crtc_index], output); output->screen->id = id; taken_crtcs |= 1 << crtc_index; diff --git a/libswc/output.c b/libswc/output.c @@ -15,7 +15,7 @@ static void bind_output(struct wl_client * client, void * data, uint32_t version, uint32_t id) { struct swc_output * output = data; - struct swc_screen_internal * screen = output->screen; + struct screen * screen = output->screen; struct swc_mode * mode; struct wl_resource * resource; uint32_t flags; diff --git a/libswc/output.h b/libswc/output.h @@ -10,7 +10,7 @@ struct wl_display; struct swc_output { - struct swc_screen_internal * screen; + struct screen * screen; /* The physical dimensions (in mm) of this output */ uint32_t physical_width, physical_height; diff --git a/libswc/panel.c b/libswc/panel.c @@ -73,9 +73,8 @@ static void dock(struct wl_client * client, struct wl_resource * resource, struct swc_panel * panel = wl_resource_get_user_data(resource); struct swc_output * output = output_resource ? wl_resource_get_user_data(output_resource) : NULL; - struct swc_screen_internal * screen = output - ? output->screen : CONTAINER_OF(swc.screens.next, - struct swc_screen_internal, link); + struct screen * screen = output + ? output->screen : CONTAINER_OF(swc.screens.next, struct screen, link); bool screen_changed = screen != panel->screen; uint32_t length; @@ -98,7 +97,7 @@ static void dock(struct wl_client * client, struct wl_resource * resource, if (panel->screen && screen_changed) { wl_list_remove(&panel->modifier.link); - swc_screen_update_usable_geometry(panel->screen); + screen_update_usable_geometry(panel->screen); } panel->screen = screen; @@ -136,7 +135,7 @@ static void set_strut(struct wl_client * client, struct wl_resource * resource, panel->strut_size = size; if (panel->docked) - swc_screen_update_usable_geometry(panel->screen); + screen_update_usable_geometry(panel->screen); } static const struct swc_panel_interface panel_implementation = { @@ -145,7 +144,7 @@ static const struct swc_panel_interface panel_implementation = { .set_strut = &set_strut }; -static void modify(struct swc_screen_modifier * modifier, +static void modify(struct screen_modifier * modifier, const struct swc_rectangle * geometry, pixman_region32_t * usable) { @@ -193,7 +192,7 @@ static void destroy_panel(struct wl_resource * resource) { wl_list_remove(&panel->view_listener.link); wl_list_remove(&panel->modifier.link); - swc_screen_update_usable_geometry(panel->screen); + screen_update_usable_geometry(panel->screen); swc_compositor_remove_surface(panel->surface); } diff --git a/libswc/panel.h b/libswc/panel.h @@ -36,8 +36,8 @@ struct swc_panel struct swc_surface * surface; struct wl_listener surface_destroy_listener; struct wl_listener view_listener; - struct swc_screen_internal * screen; - struct swc_screen_modifier modifier; + struct screen * screen; + struct screen_modifier modifier; uint32_t edge; uint32_t offset, strut_size; bool docked; diff --git a/libswc/pointer.c b/libswc/pointer.c @@ -130,14 +130,14 @@ static void handle_view_event(struct wl_listener * listener, void * data) { case SWC_VIEW_EVENT_MOVED: { - struct swc_screen_internal * screen; + struct screen * screen; wl_list_for_each(screen, &swc.screens, link) { swc_view_move(&screen->planes.cursor.view, view->geometry.x, view->geometry.y); - if (view->screens & swc_screen_mask(screen)) + if (view->screens & screen_mask(screen)) { struct swc_pointer * pointer = CONTAINER_OF(view, typeof(*pointer), cursor.view); @@ -155,18 +155,18 @@ static void handle_view_event(struct wl_listener * listener, void * data) } case SWC_VIEW_EVENT_SCREENS_CHANGED: { - struct swc_screen_internal * screen; + struct screen * screen; uint32_t entered = event_data->screens_changed.entered, left = event_data->screens_changed.left; wl_list_for_each(screen, &swc.screens, link) { - if (entered & swc_screen_mask(screen)) + if (entered & screen_mask(screen)) { swc_view_attach(&screen->planes.cursor.view, &pointer->cursor.buffer); } - else if (left & swc_screen_mask(screen)) + else if (left & screen_mask(screen)) swc_view_attach(&screen->planes.cursor.view, NULL); } break; @@ -208,7 +208,7 @@ void swc_pointer_set_cursor(struct swc_pointer * pointer, uint32_t id) bool swc_pointer_initialize(struct swc_pointer * pointer) { struct wld_buffer * buffer; - struct swc_screen_internal * screen; + struct screen * screen; /* Center cursor in the geometry of the first screen. */ screen = CONTAINER_OF(swc.screens.next, typeof(*screen), link); diff --git a/libswc/screen.c b/libswc/screen.c @@ -32,9 +32,9 @@ #include <stdlib.h> #include <sys/param.h> -#define INTERNAL(screen) ((struct swc_screen_internal *) (screen)) +#define INTERNAL(s) ((struct screen *) (s)) -bool swc_screens_initialize() +bool screens_initialize() { wl_list_init(&swc.screens); @@ -47,18 +47,17 @@ bool swc_screens_initialize() return true; } -void swc_screens_finalize() +void screens_finalize() { - struct swc_screen_internal * screen, * tmp; + struct screen * screen, * tmp; wl_list_for_each_safe(screen, tmp, &swc.screens, link) - swc_screen_destroy(screen); + screen_destroy(screen); } -struct swc_screen_internal * swc_screen_new(uint32_t crtc, - struct swc_output * output) +struct screen * screen_new(uint32_t crtc, struct swc_output * output) { - struct swc_screen_internal * screen; + struct screen * screen; int32_t x = 0; /* Simple heuristic for initial screen positioning. */ @@ -70,7 +69,7 @@ struct swc_screen_internal * swc_screen_new(uint32_t crtc, wl_signal_init(&screen->base.event_signal); wl_list_init(&screen->outputs); - wl_list_insert(&INTERNAL(screen)->outputs, &output->link); + wl_list_insert(&screen->outputs, &output->link); wl_list_init(&screen->modifiers); if (!swc_framebuffer_plane_initialize(&screen->planes.framebuffer, crtc, @@ -106,7 +105,7 @@ struct swc_screen_internal * swc_screen_new(uint32_t crtc, return NULL; } -void swc_screen_destroy(struct swc_screen_internal * screen) +void screen_destroy(struct screen * screen) { struct swc_output * output, * next; @@ -117,11 +116,11 @@ void swc_screen_destroy(struct swc_screen_internal * screen) free(screen); } -void swc_screen_update_usable_geometry(struct swc_screen_internal * screen) +void screen_update_usable_geometry(struct screen * screen) { pixman_region32_t total_usable, usable; pixman_box32_t * extents; - struct swc_screen_modifier * modifier; + struct screen_modifier * modifier; DEBUG("Updating usable geometry\n"); diff --git a/libswc/screen.h b/libswc/screen.h @@ -33,15 +33,15 @@ struct swc_output; struct pixman_region32; -struct swc_screen_modifier +struct screen_modifier { - void (* modify)(struct swc_screen_modifier * modifier, + void (* modify)(struct screen_modifier * modifier, const struct swc_rectangle * geometry, struct pixman_region32 * usable); struct wl_list link; }; -struct swc_screen_internal +struct screen { struct swc_screen base; @@ -58,18 +58,18 @@ struct swc_screen_internal struct wl_list link; }; -bool swc_screens_initialize(); -void swc_screens_finalize(); +bool screens_initialize(); +void screens_finalize(); -struct swc_screen_internal * swc_screen_new(uint32_t crtc, - struct swc_output * output); -void swc_screen_destroy(struct swc_screen_internal * screen); -static inline uint32_t swc_screen_mask(struct swc_screen_internal * screen) +struct screen * screen_new(uint32_t crtc, struct swc_output * output); +void screen_destroy(struct screen * screen); + +static inline uint32_t screen_mask(struct screen * screen) { return 1 << screen->id; } -void swc_screen_update_usable_geometry(struct swc_screen_internal * screen); +void screen_update_usable_geometry(struct screen * screen); #endif diff --git a/libswc/surface.c b/libswc/surface.c @@ -316,7 +316,7 @@ static void handle_view_event(struct wl_listener * listener, void * data) } case SWC_VIEW_EVENT_SCREENS_CHANGED: { - struct swc_screen_internal * screen; + struct screen * screen; struct swc_output * output; struct wl_client * client; struct wl_resource * resource; @@ -327,7 +327,7 @@ static void handle_view_event(struct wl_listener * listener, void * data) wl_list_for_each(screen, &swc.screens, link) { - if (!((entered | left) & swc_screen_mask(screen))) + if (!((entered | left) & screen_mask(screen))) continue; wl_list_for_each(output, &screen->outputs, link) @@ -337,9 +337,9 @@ static void handle_view_event(struct wl_listener * listener, void * data) if (resource) { - if (entered & swc_screen_mask(screen)) + if (entered & screen_mask(screen)) wl_surface_send_enter(surface->resource, resource); - else if (left & swc_screen_mask(screen)) + else if (left & screen_mask(screen)) wl_surface_send_leave(surface->resource, resource); } } diff --git a/libswc/swc.c b/libswc/swc.c @@ -60,7 +60,7 @@ struct swc swc = { static void setup_compositor() { pixman_region32_t pointer_region; - struct swc_screen_internal * screen; + struct screen * screen; struct swc_rectangle * geometry; wl_list_insert(&swc.seat->keyboard->handlers, @@ -118,7 +118,7 @@ bool swc_initialize(struct wl_display * display, goto error3; } - if (!swc_screens_initialize()) + if (!screens_initialize()) { ERROR("Could not initialize screens\n"); goto error4; @@ -179,7 +179,7 @@ bool swc_initialize(struct wl_display * display, error6: swc_compositor_finalize(); error5: - swc_screens_finalize(); + screens_finalize(); error4: swc_bindings_finalize(); error3: @@ -203,7 +203,7 @@ void swc_finalize() swc_seat_finalize(); swc_data_device_manager_finalize(); swc_compositor_finalize(); - swc_screens_finalize(); + screens_finalize(); swc_bindings_finalize(); swc_shm_finalize(); swc_drm_finalize(); diff --git a/libswc/view.c b/libswc/view.c @@ -34,14 +34,14 @@ static void update_screens(struct swc_view * view) { struct swc_view_event_data data = { .view = view }; uint32_t old = view->screens, new = 0; - struct swc_screen_internal * screen; + struct screen * screen; if (view->visible) { wl_list_for_each(screen, &swc.screens, link) { if (swc_rectangle_overlap(&screen->base.geometry, &view->geometry)) - new |= swc_screen_mask(screen); + new |= screen_mask(screen); } }