Active Qt bug when I use a Web Browser - c++

I'm using Active Qt in the goal to show a Web Browser inside my qt application. I can show a Google Map page inside a Tab. It uses an ActiveX-based component with an Internet Explorer Browser inside. Everything is ok but when I resize the windows with my mouse, I have a strange non-wanted resize to my orignal size (800x600) after 1 or 2 secondes of manual resize.
Do you have a tip to avoid this strange behavior ?
ps : I use Qt 5.6.2 cuz I need about the Windows XP¨compatibilty

Related

Open a new browser tab without losing focus on current application using C++

I would like to open a new browser tab using C++ on Windows, ideally browser-independent, if that is not possible chrome is good enough.
But there are some restrictions:
The current application can not lose focus, but the browser must switch to the new tab.
The tab must be opened to a specific URL
The tab must be opened from a 3rd party application, so not from inside the browser.
I have tried using system("start <url>") but that causes the application focus to switch to the browser. I could not find a chrome:// URL to open a new tab with an initial URL.
I have also found several threads showing similar things in JavaScript, but none for C++.
Is there a way (ideally safer than using system()) to open a new browser tab without losing focus on the current application, using C++ on windows?
Additional clarification:
3 windows open: One game, the browser and a 3rd party application.
The game is in the foreground, but the 3rd party application opens the browser tab on certain events. Sadly, this means that DLL injection is not an option, due to several anti-cheat restrictions. This also means that a background application needs to open a new browser tab of a browser that is also in the background without ever losing focus on the game.

CEFsharp load url is holding on to the previously navigated url

We have a C++ application (using Owl UI framework) which calls a CEFsharp Chromiumbrowser control inside an owl dialog. It is working perfectly the first time and the chromium embedded control shows the page properly. It is important to mention here that the first url which is say "http//www.someurl" navigates internally to "http://www.anotherurl/opensomething" each time. When we close the Owl MDI window and then try to open it again, the CEFSharp browser control tries to go straight to "http://www.anotherurl/opensomething" instead of going to "http//www.someurl" which it is being specifically asked to navigate to. We are using Chromiumbrowser load method to load the url but just cannot make it to load the first url from the second time onward. Our CEFsharp version is 63.03 . However if we open the chromium browser control in its own window and not embed it inside the MDI dialog it works perfectly everytime. Can't figure out so far as to why this is not loading the url properly from the second time around. Thanks for any help in advance.

Qt Disable Windows 10 Game Bar

I have an application developed in Qt that causes Windows 10 to think it is a game, and opens a pop up box that says Press the Win-key + G to open the Game bar. This is very unhelpful as my application is not a game; and it interferes with the user experience. How can I turn this off from within my application code? I have been unable to find any documentation related to this. Thanks in advance.
It is not possible to neither capture Windows shortcuts (in order to stop propagation and disable them), nor to disable game bar in a per-app base.
Options you have are:
to disable it globally (see this post): you can do it using the Registry, so it can be included in an installation package, but you'll affect the global settings of the user,
change the shortcut used to access it in the Xbox app,
use some third-party app, such as AutoHotKey, to map keyboard sequences to an empty action (related question).
Edit:
Also you can (from user side) disable it for your app in Xbox app. (Xbox support):
Open Xbox app
In my games list select your app
Right click on it and delete it
This will delete your app from games list, so GameBar will not appear.

WinForm app changes form appearance after COM call to MS Word when running under Windows 8.1

I have a mixed mode win form app that does numerical analysis and then creates a report using COM automation on MS Word.
The app has a status window that shows the progress of the analysis. After the COM automation finishes creating the word DOCX report the app's appearance changes when running on Windows 8.1. There is no change on Windows 7.
The situation occurs if the winform app is x86 or x64.
The version of MS Word is 2007 x86 version.
Here's the original look of the form:
http://codeinsight.com/Pub/G31_Win8_Before.jpg
After running the app and the report is created it looks like this:
http://codeinsight.com/Pub/G31_Win8_After.jpg
The window shrinks and some fonts shrink too.
Can anyone give me a clue as to what is happening? And why it happens on Win81 and not on Win7?
Right-click on Word shortcut on the desktop (or on programmes), Select "Properties" and display "Compatibility" tab.
There is a checkBox "execute with a 640x480 resolution".
If it is checked, uncheck it.
If other options are checked, uncheck all.
Using the hint from Graffito's answer I was able to resolve the issue. I checked the "Disable display scaling on high DPI settings".

Qt question to fullscreen flash application

I am using Qt to develop an application and inside we have access to select flash streaming videos like youtube. Is there a way to programmaticly full screen the flash application without requiring interaction from the user?
I am using a "QWebView" control.
try calling showFullScreen for the window where your QWebView control is hosted.
void QWidget::showFullScreen ()
Shows the widget in full-screen
mode.
Calling this function only affects
windows.
To return from full-screen mode, call
showNormal().
I would say: locate the button for the fullscreen application on the page, and send a click using QEVent. Tricky, but might work.
If the button is inside the flash application, you will have difficulties to locate it but if you succeed, you can probably send the click to the flash application area.
You can always inject javascript from Qt into your QWebPage. If there is a javascript API for forcing the flash viewer to full screen, I do not know.