Creating a new window that stays on top even when in full screen mode (Qt on Linux)
صفحه اصلي

Creating a new window that stays on top even when in full screen mode (Qt on Linux)



I'm using Qt 4.6.3, and ubuntu linux on an embedded target. I call

dlg->setWindowState(Qt::WindowFullScreen); 

on my windows in my application (so I don't loose any real-estate on the touch screen to task bar and status panel on the top and bottom of the screen. This all works fine and as expected. The issue comes in when I want to popup the on screen keyboard to allow the user to input some data. I use

m_keyProc= new QProcess(); m_keyProc->start("onboard -s 640x120"); 

This pops up the keyboard but it is behind the full screen window. The onbaord keyboards preferences are set such that it is always on top, but that seems to actually mean "except for full screen windows". I guess that makes sense and probably meets most use cases, but I need it to be really on top.

Can I either A) Not be full screen mode (so the keyboard works) and programmatically hide the task bars? or B) Force the keyboard to be on top despite my full screen status?

Note: On windows we call

m_keyProc->start("C:\\Windows\\system32\\osk.exe"); 

and the osk keyboard is on top despite the full screen status. So, I'm guessing this is a difference in window mangers on the different operating systems. So do I need to set some flag on the window with the linux window manager?


how to assign value to EIP with C language in ubuntu

1:

C++ code to check the status of a process if it is Running, Stopped, Sleeping or a Zombie on linux from its pid
Qt doesn't seem to have a way to bring other, non-Qt process in front. Multi-threaded random_r is slower than single threaded versionYou may need to receive the native, platform process ID from QProcess by calling QProcess::pid() and call the underlying OS API to did it.. including tk.h and tcl.h in c program
Dynamic loaded libraries and shared global symbols

66 out of 100 based on 71 user ratings 226 reviews

*