GUI for PlasmaC - QtPlasmac
That is a known bug, it has been there from the beginning.BUG: The soft keyboard runs off the screen when selecting MDI
I have spent very little time on touchscreen stuff, just some basics. I don't have a touchscreen so it is low in my priority list, I am more inclined to get the functionality working before I do some touchscreen work. I will look into these down the track.Is there a way to reset the feed override and rapid override to default values with a single click? I find it hard to reset the feed override to 100%
Please Log in or Create an account to join the conversation.
That is a known bug, it has been there from the beginning.BUG: The soft keyboard runs off the screen when selecting MDI
What file(s) should I look in (for RIP)? I might see if I can see something
This one is not just for a touchscreen, I first encountered it using a keyboard and mouse. Clicking on the top flashing region to reset to defaults would be the best solution I think. That would feel natural.
I have spent very little time on touchscreen stuff, just some basics. I don't have a touchscreen so it is low in my priority list, I am more inclined to get the functionality working before I do some touchscreen work. I will look into these down the track.Is there a way to reset the feed override and rapid override to default values with a single click? I find it hard to reset the feed override to 100%
Please Log in or Create an account to join the conversation.
That is a known bug, it has been there from the beginning.BUG: The soft keyboard runs off the screen when selecting MDI
What file(s) should I look in (for RIP)? I might see if I can see something
It is the soft_keyboard called from lib/python/qtvcp/widgets/mdi_history.py
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
softkey is actually in entry_widget.py function update_panel_position()
Thanks, I kinda tracked it to there. Do you know where/how the keyboard position is set? Ideally it should check there are enough pixels to the right edge and move it if it overflows. I think this monitor is the minimum size (1366 pixels wide) so maybe it was designed for a wider screen.
Please Log in or Create an account to join the conversation.
Did you miss that I said function : update_panel_position() or was that a question about the function?
screen_height = QtWidgets.qApp.desktop().availableGeometry().height()
figures out the available height - I don't see one for width.
It might be relying on the window manager to make sure the window is visible.
Please Log in or Create an account to join the conversation.
Well i don't want to drag this thread down the rabbit hole of specific coding problems.
Did you miss that I said function : update_panel_position() or was that a question about the function?
screen_height = QtWidgets.qApp.desktop().availableGeometry().height()
figures out the available height - I don't see one for width.
It might be relying on the window manager to make sure the window is visible.
I followed the code using github search but I'm not sure where I ended up!
I would be very happy not dig into code as Python is not my strong point. But unfortunately to make QTPlasmac great we have to!
This thread does look interesting: stackoverflow.com/questions/20243637/pyq...dow-on-active-screen
IT shows how to centre a window on the screen by referring to frameGeometry
Centring the keyboard would be OK
self.move(QDesktopWidget().availableGeometry().center().x() - self.frameGeometry().center().x() * 0.5, QDesktopWidget().availableGeometry().center().y() - self.frameGeometry().center().y() * 0.5)
From what I can understand, the cursor position is the mouse position (which I assume would be in the MDI text field).
So what you'd need to do is check that position and see if there is enough room to the right to display the keyboard frame and if not, move the frame to the left so it did fit. I guess the same might need to be done on the left edge too.
This does not look like its a qtplasmac thing, so it would be great if you could devise a solution Chris!
Please Log in or Create an account to join the conversation.
Done.Is there a way to reset the feed override and rapid override to default values with a single click? I find it hard to reset the feed override to 100%
I have spent very little time on touchscreen stuff, just some basics. I don't have a touchscreen so it is low in my priority list, I am more inclined to get the functionality working before I do some touchscreen work. I will look into these down the track.
This one is not just for a touchscreen, I first encountered it using a keyboard and mouse. Clicking on the top flashing region to reset to defaults would be the best solution I think. That would feel natural.
Please Log in or Create an account to join the conversation.
Well i don't want to drag this thread down the rabbit hole of specific coding problems.
Did you miss that I said function : update_panel_position() or was that a question about the function?
screen_height = QtWidgets.qApp.desktop().availableGeometry().height()
figures out the available height - I don't see one for width.
It might be relying on the window manager to make sure the window is visible.
I followed the code using github search but I'm not sure where I ended up!
I would be very happy not dig into code as Python is not my strong point. But unfortunately to make QTPlasmac great we have to!
This thread does look interesting: stackoverflow.com/questions/20243637/pyq...dow-on-active-screen
IT shows how to centre a window on the screen by referring to frameGeometry
Centring the keyboard would be OKself.move(QDesktopWidget().availableGeometry().center().x() - self.frameGeometry().center().x() * 0.5, QDesktopWidget().availableGeometry().center().y() - self.frameGeometry().center().y() * 0.5)
From what I can understand, the cursor position is the mouse position (which I assume would be in the MDI text field).
So what you'd need to do is check that position and see if there is enough room to the right to display the keyboard frame and if not, move the frame to the left so it did fit. I guess the same might need to be done on the left edge too.
This does not look like its a qtplasmac thing, so it would be great if you could devise a solution Chris!
try this:
def update_panel_position(self):
widget = self.INPUT_WIDGET
if not widget: return
geom = widget.frameGeometry()
geom.moveCenter(QtWidgets.qApp.desktop().availableGeometry().center())
Though in the longer run - using the process we use for other dialogs is probably better.
Please Log in or Create an account to join the conversation.
- snowgoer540
- Offline
- Moderator
- Posts: 2388
- Thank you received: 779
try this:
def update_panel_position(self): widget = self.INPUT_WIDGET if not widget: return geom = widget.frameGeometry() geom.moveCenter(QtWidgets.qApp.desktop().availableGeometry().center())
Though in the longer run - using the process we use for other dialogs is probably better.
I can confirm this does work. However, I worry about placement for other things. For example, I believe the soft keyboard may be in the way for the editor at times if it's centered. Maybe the soft keyboard isn't to be called then, I don't have a touch screen, so I'm not sure. I had one on my lathe once but it always got covered with coolant from my fingers, so I went back to a mouse.
As a potential solution, would it be possible once the keyboard is launched to "click" in one of the open spaces and drag it around? Maybe that's a huge PITA to code...?
Please Log in or Create an account to join the conversation.