Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0a5cb0c7 authored by Elliott Hughes's avatar Elliott Hughes
Browse files

Don't use typedefs that hide *s.

gr_surface was causing confusion for no good reason.

Change-Id: If7120187f9a00dd16297877fc49352185a4d4ea6
parent 6e435abf
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -326,7 +326,7 @@ static void gr_test() {
        gr_clear();

        gr_color(255, 0, 0, 255);
        gr_surface frame = images[x%frames];
        GRSurface* frame = images[x%frames];
        gr_blit(frame, 0, 0, frame->width, frame->height, x, 0);

        gr_color(255, 0, 0, 128);
+3 −3
Original line number Diff line number Diff line
@@ -21,13 +21,13 @@

// TODO: lose the function pointers.
struct minui_backend {
    // Initializes the backend and returns a gr_surface to draw into.
    gr_surface (*init)(minui_backend*);
    // Initializes the backend and returns a GRSurface* to draw into.
    GRSurface* (*init)(minui_backend*);

    // Causes the current drawing surface (returned by the most recent
    // call to flip() or init()) to be displayed, and returns a new
    // drawing surface.
    gr_surface (*flip)(minui_backend*);
    GRSurface* (*flip)(minui_backend*);

    // Blank (or unblank) the screen.
    void (*blank)(minui_backend*, bool);
+4 −4
Original line number Diff line number Diff line
@@ -47,7 +47,7 @@ struct adf_pdata {
    adf_surface_pdata surfaces[2];
};

static gr_surface adf_flip(minui_backend *backend);
static GRSurface* adf_flip(minui_backend *backend);
static void adf_blank(minui_backend *backend, bool blank);

static int adf_surface_init(adf_pdata *pdata, drm_mode_modeinfo *mode, adf_surface_pdata *surf) {
@@ -134,12 +134,12 @@ static int adf_device_init(adf_pdata *pdata, adf_device *dev)
    return err;
}

static gr_surface adf_init(minui_backend *backend)
static GRSurface* adf_init(minui_backend *backend)
{
    adf_pdata *pdata = (adf_pdata *)backend;
    adf_id_t *dev_ids = NULL;
    ssize_t n_dev_ids, i;
    gr_surface ret;
    GRSurface* ret;

#if defined(RECOVERY_ABGR)
    pdata->format = DRM_FORMAT_ABGR8888;
@@ -193,7 +193,7 @@ static gr_surface adf_init(minui_backend *backend)
    return ret;
}

static gr_surface adf_flip(minui_backend *backend)
static GRSurface* adf_flip(minui_backend *backend)
{
    adf_pdata *pdata = (adf_pdata *)backend;
    adf_surface_pdata *surf = &pdata->surfaces[pdata->current_surface];
+4 −4
Original line number Diff line number Diff line
@@ -33,8 +33,8 @@
#include "minui.h"
#include "graphics.h"

static gr_surface fbdev_init(minui_backend*);
static gr_surface fbdev_flip(minui_backend*);
static GRSurface* fbdev_init(minui_backend*);
static GRSurface* fbdev_flip(minui_backend*);
static void fbdev_blank(minui_backend*, bool);
static void fbdev_exit(minui_backend*);

@@ -79,7 +79,7 @@ static void set_displayed_framebuffer(unsigned n)
    displayed_buffer = n;
}

static gr_surface fbdev_init(minui_backend* backend) {
static GRSurface* fbdev_init(minui_backend* backend) {
    int fd = open("/dev/graphics/fb0", O_RDWR);
    if (fd == -1) {
        perror("cannot open fb0");
@@ -174,7 +174,7 @@ static gr_surface fbdev_init(minui_backend* backend) {
    return gr_draw;
}

static gr_surface fbdev_flip(minui_backend* backend __unused) {
static GRSurface* fbdev_flip(minui_backend* backend __unused) {
    if (double_buffered) {
#if defined(RECOVERY_BGRA)
        // In case of BGRA, do some byte swapping
+9 −12
Original line number Diff line number Diff line
@@ -33,9 +33,6 @@ struct GRSurface {
    unsigned char* data;
};

// TODO: remove this.
typedef GRSurface* gr_surface;

int gr_init();
void gr_exit();

@@ -49,13 +46,13 @@ void gr_clear(); // clear entire surface to current color
void gr_color(unsigned char r, unsigned char g, unsigned char b, unsigned char a);
void gr_fill(int x1, int y1, int x2, int y2);
void gr_text(int x, int y, const char *s, bool bold);
void gr_texticon(int x, int y, gr_surface icon);
void gr_texticon(int x, int y, GRSurface* icon);
int gr_measure(const char *s);
void gr_font_size(int *x, int *y);

void gr_blit(gr_surface source, int sx, int sy, int w, int h, int dx, int dy);
unsigned int gr_get_width(gr_surface surface);
unsigned int gr_get_height(gr_surface surface);
void gr_blit(GRSurface* source, int sx, int sy, int w, int h, int dx, int dy);
unsigned int gr_get_width(GRSurface* surface);
unsigned int gr_get_height(GRSurface* surface);

//
// Input events.
@@ -98,17 +95,17 @@ int ev_get_epollfd();
// All these functions load PNG images from "/res/images/${name}.png".

// Load a single display surface from a PNG image.
int res_create_display_surface(const char* name, gr_surface* pSurface);
int res_create_display_surface(const char* name, GRSurface** pSurface);

// Load an array of display surfaces from a single PNG image.  The PNG
// should have a 'Frames' text chunk whose value is the number of
// frames this image represents.  The pixel data itself is interlaced
// by row.
int res_create_multi_display_surface(const char* name,
                                     int* frames, gr_surface** pSurface);
                                     int* frames, GRSurface*** pSurface);

// Load a single alpha surface from a grayscale PNG image.
int res_create_alpha_surface(const char* name, gr_surface* pSurface);
int res_create_alpha_surface(const char* name, GRSurface** pSurface);

// Load part of a grayscale PNG image that is the first match for the
// given locale.  The image is expected to be a composite of multiple
@@ -117,10 +114,10 @@ int res_create_alpha_surface(const char* name, gr_surface* pSurface);
// development/tools/recovery_l10n for an app that will generate these
// specialized images from Android resources.
int res_create_localized_alpha_surface(const char* name, const char* locale,
                                       gr_surface* pSurface);
                                       GRSurface** pSurface);

// Free a surface allocated by any of the res_create_*_surface()
// functions.
void res_free_surface(gr_surface surface);
void res_free_surface(GRSurface* surface);

#endif
Loading