CefSharp screen rendering problems Windows 10 touch screen - chromium-embedded

I have a PiPo x9 (touch screen) running Windows 10. Google Chrome is loaded and can view the web page correctly. The same page loaded through CefBrowser responds strangely to mouse events. I am using a USB mouse and keyboard.
To demonstrate when a page is loaded it initially displays correctly.
When you move the mouse over the username textbox the screen will zoom in, however it doesn't render properly and UI elements will be unresponsive.
Another example;
I have had a look at the CefSettings here Settings, but there are too many to know what to try.

I also stumbled across this problem recently. In my case it was a DPI scaling issue (my client was using an Nvidia GPU), so one way to "fix" it, is by setting the display scaling to 100% (right click on desktop -> Display Settings -> Change the size, text, apps and other items -> set to 100%).
But if you can't or don't want to do that, you can call the SetOffScreenRenderingBestPerformanceArgs method of CefSettings, like this:
var settings = new CefSettings();
//set any required settings here
settings.SetOffScreenRenderingBestPerformanceArgs();
Cef.Initialize(settings);

Related

Keyboard focus problems

I am needing to use the DotNetBrowserControl inside of another application (I am an add-in in the application). The application is written in WPF and has some WinForms components.
When I try to use the WPFBrowserView in the app I can never get focus to go into the Browser Window at all (even when clicking on a the google search box for example).
When I try to use the WinformsBrowserView inside of a WindowsFormsHost control I am able to get focus into the google search box by clicking on it. However once I click focus out of the browser control (to a WPF textbox for example) I can never get Keyboard focus back into the browser (even when clicking on a textbox in the browser).
It seams I am closest on getting the WInformsBrowserView working. Does anyone have any advice on how to force focus into the browser window? Even if I could programmatically force this to happen it would be a huge help.
We have implemented force focus feature for DotNetBrowser, but it is not yet present in the current version. We plan to add it to the next version of DotNetBrowser. If you need a build with this feature present, please get in touch with us via DotNetBrowser support email, and we will provide you with a preview build.

Cancel button dissapears on Google Chrome with new OS X Yosemite 10.10

I have no idea how to fix this but it has been happening since I updated my OS on my Macbook Pro. Whenever I upload an image or browse files in Google Chrome the Cancel and Upload buttons are outside the screen. Even resizing my browser window to the smallest it can get, as in the picture, still hides the buttons below the screen.
What am I missing? Is there some setting I need to change? I've tried selecting different file viewing options with still the same results.
I recently had the same issue and found this on stackoverflow->
https://superuser.com/questions/829397/how-can-i-resize-the-open-file-dialog-in-chrome-for-osx
Resize the entire window with constraints using command+shift while moving either edge of the window.

Silverlight control goes black in FF during fullscreen (SL 4, Firefox 3.6, multiple monitors)

If I click to make my Silverlight object fullscreen in Firefox 3.6 it works successfully, but then if I select a different window (I'm running two monitors so can do this) then a new window appears in my Windows taskbar titled 'Microsoft Silverlight' which is where my fullscreen Silverlight application now lives. So it's moved out of Firefox.
I can click on that new window to return to my fullscreen application but if instead of returning to that window, I click on Firefox in the taskbar, I see my web application running but with a black void where my Silverlight object was. If I try and right click on the black bit, I don't get the usual Silverlight right-click menu.
If I click on the new 'Microsoft Silverlight' window in the taskbar and then click Escape, it disappears (i.e. it exits fullscreen), and the Silverlight app reappears in Firefox and all is well.
This isn't a problem in IE, but my client requires that it work in Firefox. Seems like some sort of plug-in bug, and it doesn't make a difference whether I'm running with windowless set to true or not.
Any tips? Cheers.
The only time i've seen a black screen (region) being rendered was when something funky was going on with the silverlight app (i think it was crashing or something, but the errors were being swallowed up somehow/somewhere).
I discovered that the black region, in my situation, was the result of the background being set to transparent on the silverlight control side (where it's embedded in the web page).
Hope that helps you in your debugging effort.

To view the silverlight app in fullscreen mode(F11)

Is there any way to load my silverlight app in F11 mode directly?
I have used
window.open(url, '_self',
'toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=no,fullscreen=yes',
'true');
HtmlPage.window.invoke("launchPage",url);
But the problem is that two instances of my app are opened. One in normal screen and the other in fullscreen.
I have tried
App.Current.Host.Content.IsFullScreen = true;
in the constructor of the App.xaml
Still its not working. :(
Where am I going wrong??
running a Silverlight application automatically in full-screen is not possible because of security restriction. It is like the following...
You have opened your banks login page in a Firefox tab. This is your current tab.
You are opening a malicious silverlight application on another tab.
The malicious silverlight application loads and creates a full-screen that exactly matches your bank's login page.
You are talking to someone while the silverlight application loads. (Your eye is not on screen) So you missed the fullscreen message that pops up.
Now when you look at the computer screen you see your bank login page that is actually a fullscreen page of the silverlight application that matches your bank's login page.
You enter your user name and password...and
When you click login the malicious application has got everything it wanted.
This is not only for Silverlight. It is a restriction that SHOULD BE THERE WITH EVERY ACTIVEX CONTROL UNTIL THIS PROBLEM IS SOLVED.
What you are doing with javascript is you are opening a new pop up window without menubar, addressbar etc. It is not a replacement of F11. And to my experience most of the users hate automatic poping up. And most modern browsers will block them anyway.
The best way is to tell the user she needs to view your application on fullscreen and LET HER DECIDE INSTEAD OF FORCING IT.

How to force IE7 toolbars to always show

I have the developer toolbar for IE7, which is great when I want to inspect the page layout in a fashion similar to the functionality of firebug for firefox.
However I am working with a web site that opens a new window with the toolbars disabled, and I cannot access my dev toolbar button! Is there a way to force IE7 to always show the toolbar?
I don't believe you can.
You can recover the navigation toolbar (back, forward, address bar, search box) in a chromeless window (one opened without navigation toolbar, menus, other toolbars) by hitting F11, then F11 again, but that still doesn't give you access to the IE Developer Toolbar.
What will sometimes work is to hit CTRL+N while the new, chromeless window has focus. Doing that will open a new chromed (toolbars, menus, etc) to the same URL as the chromeless window. The trick won't work very well if the chromeless window URL is the result of a POST, or does a GET that modifies state in some way on the server.
I imagine that this happens because the pop-up window is opened using a javascript window.open() call specifying not to have the toolbars on the new window?
One possibility is opening the page source, finding the javascript call that opens the window, and pasting it into the address bar, modifying it to not disable toolbars.
For example, if the call currently looks like:
window.open(url, "newWindow", "toolbar=no,width=500,...");
Edit the address bar to read something like:
javascript:window.open(url, "newWindow", "toolbar=yes,width=500,...");
When you push enter on that, it should pop up the window just the same, but with toolbars.
IE8 has the dev toolbar built-in, so you can always access it via F12. Consider upgrading?

Resources