KDE's Plasma and apps are getting pretty usable touch-modes. Like automatically increasing spacings even on flight when you flip a convertible, but not just that. I'm on opensuse leap 15.5, with plasma 5(.27?).
For the on screen keyboard.. I use Maliit. I have built it locally, it was a pain.
But it works. It has a layout for my relatively rare language, and it's integrated with plasma enough that you can enable-disable its autopopup with the taskbar icon. It's not super convenient because all the buttons are spread over the 12" screen, but better than having to flip back to laptop to use a keyboard when I don't need to type too much.
On wayland it has problems. With some apps it works.. for others I have disabled wayland and made the app run in xwayland with an envvar. If you are interested, I can help you set it up, it's not too much work but the magic words to make it work are not that easy to find.