keyboard icon indicating copy to clipboard operation
keyboard copied to clipboard

Customize the Settings button behavior

Open nicolasfella opened this issue 3 years ago • 7 comments

Currently clicking the Settings button in the language menu opens the settings:///system/language URI (https://github.com/maliit/keyboard/blob/master/qml/keys/LanguageMenu.qml#L48)

It would be good to have a way to configure an arbitrary command to be run instead, e.g. on Plasma we'd like to run something like kcmshell5 kcm_maliit.

nicolasfella avatar May 31 '21 21:05 nicolasfella

@aleixpol can we consider this fixed for our purpose?

nicolasfella avatar Sep 16 '21 14:09 nicolasfella

@aleixpol can we consider this fixed for our purpose?

Yes, as far as I'm concerned.

aleixpol avatar Sep 17 '21 10:09 aleixpol

Yes, as far as I'm concerned.

Though your change was merged, the kcm isn't opened when i choose Settings from the menu in maliit, on my pinephone. However, the keyboard itself closes. Any ideas there?

dobey avatar Sep 17 '21 15:09 dobey

Yes, I get plasma-settings crashing when opening the kcm, but it's something entirely unrelated:

#0  0x0000ffffe76b55f4 in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#1  0x0000ffffe76ba69c in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#2  0x0000ffffe76bad10 in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#3  0x0000ffffe6f703d8 in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#4  0x0000ffffe6f15284 in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#5  0x0000ffffe6b19d3c in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#6  0x0000ffffe6b1bef8 in ?? () from /usr/lib/dri/sun4i-drm_dri.so
#7  0x0000fffff5db38f4 in QSGBatchRenderer::Renderer::renderMergedBatch(QSGBatchRenderer::Batch const*) () from /usr/lib/libQt5Quick.so.5
#8  0x0000fffff5db84d0 in QSGBatchRenderer::Renderer::renderBatches() () from /usr/lib/libQt5Quick.so.5
#9  0x0000fffff5db8ca4 in QSGBatchRenderer::Renderer::render() () from /usr/lib/libQt5Quick.so.5
#10 0x0000fffff5da0744 in QSGRenderer::renderScene(QSGBindable const&) () from /usr/lib/libQt5Quick.so.5
#11 0x0000fffff5da0c70 in QSGRenderer::renderScene(unsigned int) () from /usr/lib/libQt5Quick.so.5
#12 0x0000fffff5e076c4 in QSGDefaultRenderContext::renderNextFrame(QSGRenderer*, unsigned int) () from /usr/lib/libQt5Quick.so.5
#13 0x0000fffff5e7f278 in QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&) () from /usr/lib/libQt5Quick.so.5
#14 0x0000fffff5df14d4 in ?? () from /usr/lib/libQt5Quick.so.5
#15 0x0000fffff5df36ec in ?? () from /usr/lib/libQt5Quick.so.5
#16 0x0000fffff6c300a0 in QWindow::event(QEvent*) () from /usr/lib/libQt5Gui.so.5
#17 0x0000fffff741f5ec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#18 0x0000fffff6814f3c in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#19 0x0000fffff6c21f08 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) () from /usr/lib/libQt5Gui.so.5
#20 0x0000fffff6bf2cdc in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#21 0x0000fffff189a49c in ?? () from /usr/lib/libQt5WaylandClient.so.5
#22 0x0000fffff49fb560 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#23 0x0000fffff49fb8ac in ?? () from /usr/lib/libglib-2.0.so.0
#24 0x0000fffff49fb9b4 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#25 0x0000fffff6882768 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#26 0x0000fffff6813084 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#27 0x0000fffff681d7c0 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#28 0x0000aaaaaaaa7214 in ?? ()
#29 0x0000fffff61d1538 in __libc_start_main () from /usr/lib/libc.so.6
#30 0x0000aaaaaaaa8344 in ?? ()

Also I've no idea why it's crashing, could be a driver bug?

aleixpol avatar Sep 17 '21 17:09 aleixpol

When I try to open systemsettings://kcm_virtualkeyboard with either xdg-open or Qt.openUrlExternally() in a test QML script, I just get an error:

xdg-open: no method available for opening 'systemsettings://kcm_virtualkeyboard'

dobey avatar Sep 17 '21 17:09 dobey

The component is provided by kde-cli-tools

aleixpol avatar Sep 18 '21 00:09 aleixpol

I think this can be closed, right?

plata avatar May 20 '24 08:05 plata