Example #1
0
        public WebForm()
        {
            InitializeComponent();

            Resize += WebForm_Resize;
            webViewBitmap.MouseMove += WebForm_MouseMove;
            webViewBitmap.MouseDown += WebForm_MouseDown;
            webViewBitmap.MouseUp   += WebForm_MouseUp;
            MouseWheel += WebForm_MouseWheel;
            KeyDown    += WebForm_KeyDown;
            KeyUp      += WebForm_KeyUp;
            KeyPress   += WebForm_KeyPress;
            FormClosed += WebForm_FormClosed;
            Activated  += WebForm_Activated;
            Deactivate += WebForm_Deactivate;

            WebCore.Config config = new WebCore.Config();
            config.enablePlugins = true;
            WebCore.Initialize(config);

            webView = WebCore.CreateWebview(webViewBitmap.Width, webViewBitmap.Height);
            webView.LoadURL("http://www.google.com");
            webView.Focus();

            timer          = new Timer();
            timer.Interval = 30;
            timer.Tick    += new EventHandler(timer_Tick);
            timer.Start();
        }
Example #2
0
    void Start()
    {
        // Initialize webCore and timer if they haven't been already
        if (WebCoreHasStarted == false)
        {
            WebCore.Config conf = new WebCore.Config();
            conf.enablePlugins = true;
            WebCore.Initialize(conf);

            webCoreHelper = new GameObject();
            webCoreHelper.AddComponent <WebCoreHelper>();

            WebCoreHasStarted = true;
        }

        // Create a new webView with a width and height of 512 pixels
        webView = WebCore.CreateWebview(512, 512);

        // Add webView to list of all open webviews
        allWebViews.Add(webView);

        // Load webpage
        webView.LoadURL("http://www.google.com");

        // Create texture that will be updated
        texture = new Texture2D(width, height, TextureFormat.ARGB32, false);

        // Create the pixel array for the plugin to write into at startup
        Pixels = texture.GetPixels(0);

        // "pin" the array in memory, so we can pass direct pointer to it's data to the plugin,
        // without costly marshaling of array of structures.
        PixelsHandle = GCHandle.Alloc(Pixels, GCHandleType.Pinned);

        // Assign texture to the renderer
        if (renderer)
        {
            renderer.material.mainTexture = texture;
        }
        // or gui texture
        else if (GetComponent(typeof(GUITexture)))
        {
            GUITexture gui = GetComponent(typeof(GUITexture)) as GUITexture;
            gui.texture = texture;
        }
        else
        {
            Debug.Log("Game object has no renderer or gui texture to assign the generated texture to!");
        }
    }
Example #3
0
        public TabView(TabControl tabControl)
        {
            this.tabControl = tabControl;
            this.url        = "";
            this.title      = "New Tab";

            tab = new TabItem();
            img = new Image();

            img.Focusable = true;
            tab.Content   = img;
            tab.Header    = title;
            tabControl.Items.Add(tab);
            tab.Height  = 25;
            img.Width   = tabControl.Width;
            img.Height  = tabControl.Height - (int)tab.Height - 2;
            tip         = new ToolTip();
            tip.IsOpen  = false;
            tab.ToolTip = tip;
            ToolTipService.SetIsEnabled(tab, false);

            src         = new WriteableBitmap((int)tabControl.Width, (int)tabControl.Height - (int)tab.Height - 2, 96, 96, PixelFormats.Bgra32, BitmapPalettes.WebPaletteTransparent);
            img.Source  = src;
            tab.Content = img;
            myRect      = new Int32Rect(0, 0, (int)tabControl.Width, (int)tabControl.Height - (int)tab.Height - 2);
            webView     = WebCore.CreateWebview((int)tabControl.Width, (int)tabControl.Height - (int)tab.Height - 2);
            webView.Focus();

            img.MouseWheel += mainWindowMouseWheel;
            img.MouseMove  += browserImageMouseMove;
            img.MouseDown  += browserImageMouseDown;
            img.MouseUp    += browserImageMouseUp;

            // Setup Callbacks
            webView.OnBeginNavigation  += onBeginNavigation;
            webView.OnBeginLoading     += onBeginLoading;
            webView.OnChangeCursor     += onChangeCursor;
            webView.OnChangeTooltip    += onChangeTooltip;
            webView.OnFinishLoading    += onFinishLoading;
            webView.OnOpenExternalLink += onOpenExternalLink;
            webView.OnReceiveTitle     += onReceiveTitle;
            webView.OnWebViewCrashed   += onWebviewCrashed;
        }
Example #4
0
        protected override void LoadContent()
        {
            WebCore.Config config = new WebCore.Config();
            config.enablePlugins    = true;
            config.enableJavascript = true;
            WebCore.Initialize(config);

            thisWidth  = Game.GraphicsDevice.PresentationParameters.BackBufferWidth;
            thisHeight = Game.GraphicsDevice.PresentationParameters.BackBufferHeight;

            webView = WebCore.CreateWebview(thisWidth, thisHeight);

            webRender = new Texture2D(GraphicsDevice, thisWidth, thisHeight, false, SurfaceFormat.Color);
            webData   = new int[thisWidth * thisHeight];

            webEffect = assetManager.GetAsset <Effect>("Shaders/webEffect");

            LocalURL = URL;
            //ReLoad();
        }
Example #5
0
        static void Main(string[] args)
        {
            WebCore.Initialize(new WebCore.Config());

            WebView webView = WebCore.CreateWebview(800, 600);

            webView.LoadURL("http://www.google.com");
            webView.OnFinishLoading += onFinishLoading;

            while (!finishedLoading)
            {
                Thread.Sleep(100);
                WebCore.Update();
            }

            webView.Render().SaveToPNG("result.png", true);
            System.Diagnostics.Process.Start("result.png");

            WebCore.Shutdown();
        }