mirror of
				https://github.com/swaywm/sway.git
				synced 2025-11-03 09:01:43 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			37 lines
		
	
	
	
		
			706 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
	
		
			706 B
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef _SWAYLOCK_H
 | 
						|
#define _SWAYLOCK_H
 | 
						|
 | 
						|
#include "client/cairo.h"
 | 
						|
 | 
						|
enum scaling_mode {
 | 
						|
    SCALING_MODE_STRETCH,
 | 
						|
    SCALING_MODE_FILL,
 | 
						|
    SCALING_MODE_FIT,
 | 
						|
    SCALING_MODE_CENTER,
 | 
						|
    SCALING_MODE_TILE,
 | 
						|
};
 | 
						|
 | 
						|
enum auth_state {
 | 
						|
    AUTH_STATE_IDLE,
 | 
						|
    AUTH_STATE_INPUT,
 | 
						|
    AUTH_STATE_BACKSPACE,
 | 
						|
    AUTH_STATE_VALIDATING,
 | 
						|
    AUTH_STATE_INVALID,
 | 
						|
};
 | 
						|
 | 
						|
struct render_data {
 | 
						|
    list_t *surfaces;
 | 
						|
    // Output specific images
 | 
						|
    cairo_surface_t **images;
 | 
						|
    // OR one image for all outputs:
 | 
						|
    cairo_surface_t *image;
 | 
						|
    int num_images;
 | 
						|
    int color_set;
 | 
						|
    uint32_t color;
 | 
						|
    enum scaling_mode scaling_mode;
 | 
						|
    enum auth_state auth_state;
 | 
						|
};
 | 
						|
 | 
						|
void render(struct render_data* render_data);
 | 
						|
 | 
						|
#endif
 |