mirror of
				https://gitlab.freedesktop.org/wlroots/wlroots.git
				synced 2025-11-03 09:01:40 -05:00 
			
		
		
		
	backend/drm: drop wlr_drm_layer.pending_{width,height}
No need to store this info in struct wlr_drm_layer. We can just extract the size when we need it.
This commit is contained in:
		
							parent
							
								
									7215bd1e0f
								
							
						
					
					
						commit
						8338d17d7e
					
				
					 3 changed files with 6 additions and 8 deletions
				
			
		| 
						 | 
					@ -564,11 +564,8 @@ static bool drm_connector_set_pending_layer_fbs(struct wlr_drm_connector *conn,
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (layer_state->buffer != NULL) {
 | 
							if (layer_state->buffer != NULL) {
 | 
				
			||||||
			layer->pending_width = layer_state->buffer->width;
 | 
					 | 
				
			||||||
			layer->pending_height = layer_state->buffer->height;
 | 
					 | 
				
			||||||
			drm_fb_import(&layer->pending_fb, drm, layer_state->buffer, NULL);
 | 
								drm_fb_import(&layer->pending_fb, drm, layer_state->buffer, NULL);
 | 
				
			||||||
		} else {
 | 
							} else {
 | 
				
			||||||
			layer->pending_width = layer->pending_height = 0;
 | 
					 | 
				
			||||||
			drm_fb_clear(&layer->pending_fb);
 | 
								drm_fb_clear(&layer->pending_fb);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -177,6 +177,12 @@ static bool set_layer_props(struct wlr_drm_backend *drm,
 | 
				
			||||||
		const struct wlr_output_layer_state *state, uint64_t zpos) {
 | 
							const struct wlr_output_layer_state *state, uint64_t zpos) {
 | 
				
			||||||
	struct wlr_drm_layer *layer = get_drm_layer(drm, state->layer);
 | 
						struct wlr_drm_layer *layer = get_drm_layer(drm, state->layer);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						uint32_t width = 0, height = 0;
 | 
				
			||||||
 | 
						if (state->buffer != NULL) {
 | 
				
			||||||
 | 
							width = state->buffer->width;
 | 
				
			||||||
 | 
							height = state->buffer->height;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	struct wlr_drm_fb *fb = layer->pending_fb;
 | 
						struct wlr_drm_fb *fb = layer->pending_fb;
 | 
				
			||||||
	int ret = 0;
 | 
						int ret = 0;
 | 
				
			||||||
	if (state->buffer == NULL) {
 | 
						if (state->buffer == NULL) {
 | 
				
			||||||
| 
						 | 
					@ -190,9 +196,6 @@ static bool set_layer_props(struct wlr_drm_backend *drm,
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	uint32_t width = layer->pending_width;
 | 
					 | 
				
			||||||
	uint32_t height = layer->pending_height;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	uint64_t crtc_x = (uint64_t)state->x;
 | 
						uint64_t crtc_x = (uint64_t)state->x;
 | 
				
			||||||
	uint64_t crtc_y = (uint64_t)state->y;
 | 
						uint64_t crtc_y = (uint64_t)state->y;
 | 
				
			||||||
	uint64_t crtc_w = (uint64_t)width;
 | 
						uint64_t crtc_w = (uint64_t)width;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,8 +50,6 @@ struct wlr_drm_layer {
 | 
				
			||||||
	/* Buffer currently displayed on screen */
 | 
						/* Buffer currently displayed on screen */
 | 
				
			||||||
	struct wlr_drm_fb *current_fb;
 | 
						struct wlr_drm_fb *current_fb;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	int pending_width, pending_height;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// One entry per wlr_drm_backend.planes
 | 
						// One entry per wlr_drm_backend.planes
 | 
				
			||||||
	bool *candidate_planes;
 | 
						bool *candidate_planes;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue