39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
		
		
			
		
	
	
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
| 
								 | 
							
								import GCanvas from './env/canvas';
							 | 
						||
| 
								 | 
							
								import GImage from './env/image';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import GWebGLRenderingContext from './context-webgl/RenderingContext';
							 | 
						||
| 
								 | 
							
								import GContext2D from './context-2d/RenderingContext';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import GBridgeWeex from './bridge/bridge-weex';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export let Image = GImage;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export let WeexBridge = GBridgeWeex;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function enable(el, { bridge, debug, disableAutoSwap, disableComboCommands } = {}) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    const GBridge = GImage.GBridge = GCanvas.GBridge = GWebGLRenderingContext.GBridge = GContext2D.GBridge = bridge;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GBridge.callEnable(el.ref, [
							 | 
						||
| 
								 | 
							
								        0,      // renderMode: 0--RENDERMODE_WHEN_DIRTY, 1--RENDERMODE_CONTINUOUSLY
							 | 
						||
| 
								 | 
							
								        -1,     // hybridLayerType:  0--LAYER_TYPE_NONE 1--LAYER_TYPE_SOFTWARE 2--LAYER_TYPE_HARDWARE
							 | 
						||
| 
								 | 
							
								        false,  // supportScroll
							 | 
						||
| 
								 | 
							
								        false,  // newCanvasMode
							 | 
						||
| 
								 | 
							
								        1,      // compatible
							 | 
						||
| 
								 | 
							
								        'white',// clearColor
							 | 
						||
| 
								 | 
							
								        false   // sameLevel: newCanvasMode = true && true => GCanvasView and Webview is same level
							 | 
						||
| 
								 | 
							
								    ]);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if (debug === true) {
							 | 
						||
| 
								 | 
							
								        GBridge.callEnableDebug();
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    if (disableComboCommands) {
							 | 
						||
| 
								 | 
							
								        GBridge.callEnableDisableCombo();
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    var canvas = new GCanvas(el.ref, { disableAutoSwap });
							 | 
						||
| 
								 | 
							
								    canvas.width = el.style.width;
							 | 
						||
| 
								 | 
							
								    canvas.height = el.style.height;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return canvas;
							 | 
						||
| 
								 | 
							
								};
							 |