quantum: Move qk_ucis_state to process_unicode.c
In order to not declare the same variable in multiple objects (which happens when building UCIS-enabled keymap for both the ErgoDox EZ and the ErgoDox Infinity), move the declaration to the .c file, and keep only an extern reference in the header. Many thanks to @fredizzimo for spotting the error in Travis, and suggesting the fix. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
This commit is contained in:
		
							parent
							
								
									a920548471
								
							
						
					
					
						commit
						a058ae40e2
					
				
					 2 changed files with 6 additions and 2 deletions
				
			
		|  | @ -74,6 +74,8 @@ bool process_unicode(uint16_t keycode, keyrecord_t *record) { | |||
| } | ||||
| 
 | ||||
| #ifdef UCIS_ENABLE | ||||
| qk_ucis_state_t qk_ucis_state; | ||||
| 
 | ||||
| void qk_ucis_start(void) { | ||||
|   qk_ucis_state.count = 0; | ||||
|   qk_ucis_state.in_progress = true; | ||||
|  |  | |||
|  | @ -29,11 +29,13 @@ typedef struct { | |||
|   char *code; | ||||
| } qk_ucis_symbol_t; | ||||
| 
 | ||||
| struct { | ||||
| typedef struct { | ||||
|   uint8_t count; | ||||
|   uint16_t codes[UCIS_MAX_SYMBOL_LENGTH]; | ||||
|   bool in_progress:1; | ||||
| } qk_ucis_state; | ||||
| } qk_ucis_state_t; | ||||
| 
 | ||||
| extern qk_ucis_state_t qk_ucis_state; | ||||
| 
 | ||||
| #define UCIS_TABLE(...) {__VA_ARGS__, {NULL, NULL}} | ||||
| #define UCIS_SYM(name, code) {name, #code} | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Gergely Nagy
						Gergely Nagy