Expose oc_surface_bring_to_front/send_to_back() to orca apps, and always bring debug layer to front when displaying it
This commit is contained in:
		
							parent
							
								
									b5034d3c81
								
							
						
					
					
						commit
						02bfe30672
					
				|  | @ -1749,6 +1749,9 @@ void oc_osx_update_layers(oc_window_data* window) | |||
| } | ||||
| 
 | ||||
| void oc_osx_surface_bring_to_front(oc_surface_data* surface) | ||||
| { | ||||
|     dispatch_block_t block = ^{ | ||||
|       @autoreleasepool | ||||
|       { | ||||
|           oc_window_data* window = oc_window_ptr_from_handle(surface->layer.window); | ||||
|           if(window) | ||||
|  | @ -1758,8 +1761,22 @@ void oc_osx_surface_bring_to_front(oc_surface_data* surface) | |||
|               oc_osx_update_layers(window); | ||||
|           } | ||||
|       } | ||||
|     }; | ||||
| 
 | ||||
|     if([NSThread isMainThread]) | ||||
|     { | ||||
|         block(); | ||||
|     } | ||||
|     else | ||||
|     { | ||||
|         dispatch_sync(dispatch_get_main_queue(), block); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| void oc_osx_surface_send_to_back(oc_surface_data* surface) | ||||
| { | ||||
|     dispatch_block_t block = ^{ | ||||
|       @autoreleasepool | ||||
|       { | ||||
|           oc_window_data* window = oc_window_ptr_from_handle(surface->layer.window); | ||||
|           if(window) | ||||
|  | @ -1769,6 +1786,17 @@ void oc_osx_surface_send_to_back(oc_surface_data* surface) | |||
|               oc_osx_update_layers(window); | ||||
|           } | ||||
|       } | ||||
|     }; | ||||
| 
 | ||||
|     if([NSThread isMainThread]) | ||||
|     { | ||||
|         block(); | ||||
|     } | ||||
|     else | ||||
|     { | ||||
|         dispatch_sync(dispatch_get_main_queue(), block); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| void oc_surface_cleanup(oc_surface_data* surface) | ||||
| { | ||||
|  |  | |||
|  | @ -675,6 +675,8 @@ i32 orca_runloop(void* user) | |||
| 
 | ||||
|         if(app->debugOverlay.show) | ||||
|         { | ||||
|             oc_surface_bring_to_front(app->debugOverlay.surface); | ||||
| 
 | ||||
|             oc_ui_style debugUIDefaultStyle = { .bgColor = { 0 }, | ||||
|                                                 .color = { 1, 1, 1, 1 }, | ||||
|                                                 .font = app->debugOverlay.fontReg, | ||||
|  |  | |||
|  | @ -36,6 +36,30 @@ | |||
| 		{"name": "pixels", | ||||
| 		 "type": {"name": "u8*", "tag": "p"}}] | ||||
| }, | ||||
| { | ||||
|     "name": "oc_surface_contents_scaling", | ||||
|     "cname": "oc_surface_contents_scaling", | ||||
|     "ret": {"name": "oc_vec2", "tag": "S"}, | ||||
|     "args": [ | ||||
|         {"name": "surface", | ||||
|          "type": {"name": "oc_surface", "tag": "S"}}] | ||||
| }, | ||||
| { | ||||
|     "name": "oc_surface_bring_to_front", | ||||
|     "cname": "oc_surface_bring_to_front", | ||||
|     "ret": {"name": "void", "tag": "v"}, | ||||
|     "args": [ | ||||
|         {"name": "surface", | ||||
|          "type": {"name": "oc_surface", "tag": "S"}}] | ||||
| }, | ||||
| { | ||||
|     "name": "oc_surface_send_to_back", | ||||
|     "cname": "oc_surface_send_to_back", | ||||
|     "ret": {"name": "void", "tag": "v"}, | ||||
|     "args": [ | ||||
|         {"name": "surface", | ||||
|          "type": {"name": "oc_surface", "tag": "S"}}] | ||||
| }, | ||||
| { | ||||
| 	"name": "oc_surface_select", | ||||
| 	"cname": "oc_surface_select", | ||||
|  | @ -52,14 +76,6 @@ | |||
| 		{"name": "surface", | ||||
| 		 "type": {"name": "oc_surface", "tag": "S"}}] | ||||
| }, | ||||
| { | ||||
|     "name": "oc_surface_contents_scaling", | ||||
|     "cname": "oc_surface_contents_scaling", | ||||
|     "ret": {"name": "oc_vec2", "tag": "S"}, | ||||
|     "args": [ | ||||
|         {"name": "surface", | ||||
|          "type": {"name": "oc_surface", "tag": "S"}}] | ||||
| }, | ||||
| { | ||||
| 	"name": "oc_surface_render_commands", | ||||
| 	"cname": "orca_surface_render_commands", | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue