parent
							
								
									4b57953628
								
							
						
					
					
						commit
						6968fb3123
					
				| @ -0,0 +1,34 @@ | ||||
| #include <string.h> | ||||
| #include "log.h" | ||||
| #include "sway/commands.h" | ||||
| #include "sway/config.h" | ||||
| #include "sway/output.h" | ||||
| 
 | ||||
| struct cmd_results *output_cmd_scale_filter(int argc, char **argv) { | ||||
| 	if (!config->handler_context.output_config) { | ||||
| 		return cmd_results_new(CMD_FAILURE, "Missing output config"); | ||||
| 	} | ||||
| 
 | ||||
| 	if (!argc) { | ||||
| 		return cmd_results_new(CMD_INVALID, "Missing scale_filter argument."); | ||||
| 	} | ||||
| 
 | ||||
| 
 | ||||
| 	enum scale_filter_mode scale_filter; | ||||
| 	if (strcmp(*argv, "linear") == 0) { | ||||
| 		scale_filter = SCALE_FILTER_LINEAR; | ||||
| 	} else if (strcmp(*argv, "nearest") == 0) { | ||||
| 		scale_filter = SCALE_FILTER_NEAREST; | ||||
| 	} else if (strcmp(*argv, "smart") == 0) { | ||||
| 		scale_filter = SCALE_FILTER_SMART; | ||||
| 	} else { | ||||
| 		return cmd_results_new(CMD_INVALID, "Invalid output scale_filter."); | ||||
| 	} | ||||
| 
 | ||||
| 	struct output_config *oc = config->handler_context.output_config; | ||||
| 	config->handler_context.leftovers.argc = argc - 1; | ||||
| 	config->handler_context.leftovers.argv = argv + 1; | ||||
| 
 | ||||
| 	oc->scale_filter = scale_filter; | ||||
| 	return NULL; | ||||
| } | ||||
					Loading…
					
					
				
		Reference in new issue