not responsive to key input

Bug #630490 reported by yk1000
This bug report is a duplicate of:  Bug #601816: ibus 1.3.x conflicts. Edit Remove
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
kupfer
New
Undecided
Unassigned

Bug Description

Running archlinux, no desktop environment, pekwm window manager, lxdm session manager/no session management.

pygobject 2.21.3-1
pygtk 2.17.0-2
pyxdg, dbus-python, python-keybinder, python-keyring all installed.

CTRL+space starts kupfer, but it will NOT RESPOND to keys other than arrows.
ENTER is somewhat responsive if I hold it long enough...
I've uninstalled all but "Applications" plugin, in case some plugins were causing errors,
but it made no difference. What could be causing this?

-----------------------------------------------------------------
traceback:

% kupfer
Kupfer: A free software (GPLv3+) launcher
 Copyright © 2007--2010 Ulrik Sverdrup with others
 http://kaizer.se/wiki/kupfer/

** Message: pygobject_register_sinkfunc is deprecated (GtkWindow)
** Message: pygobject_register_sinkfunc is deprecated (GtkInvisible)
** Message: pygobject_register_sinkfunc is deprecated (GtkObject)

** (kupfer.py:14160): WARNING **: Trying to register gtype 'WnckWindowState' as enum when in fact it is of type 'GFlags'

** (kupfer.py:14160): WARNING **: Trying to register gtype 'WnckWindowActions' as enum when in fact it is of type 'GFlags'

** (kupfer.py:14160): WARNING **: Trying to register gtype 'WnckWindowMoveResizeMask' as enum when in fact it is of type 'GFlags'

** (kupfer.py:14160): CRITICAL **: cr_parser_new_from_buf: assertion `a_buf && a_len' failed

** (kupfer.py:14160): CRITICAL **: cr_parser_set_sac_handler: assertion `a_this' failed

(kupfer.py:14160): librsvg-WARNING **: Error setting CSS SAC handler

** (kupfer.py:14160): CRITICAL **: cr_parser_destroy: assertion `a_this && PRIVATE (a_this)' failed
[kupfer.ui.browser] WindowController: Trying to register <Ctrl>space to spawn kupfer.. success
[kupfer.ui.session] SessionClient: Warning: Not able to connect to current desktop session, please Quit before logout to save kupfer's data.

** (kupfer.py:14160): CRITICAL **: cr_parser_new_from_buf: assertion `a_buf && a_len' failed

** (kupfer.py:14160): CRITICAL **: cr_parser_set_sac_handler: assertion `a_this' failed

(kupfer.py:14160): librsvg-WARNING **: Error setting CSS SAC handler

** (kupfer.py:14160): CRITICAL **: cr_parser_destroy: assertion `a_this && PRIVATE (a_this)' failed

** (kupfer.py:14160): CRITICAL **: cr_parser_new_from_buf: assertion `a_buf && a_len' failed

** (kupfer.py:14160): CRITICAL **: cr_parser_set_sac_handler: assertion `a_this' failed

(kupfer.py:14160): librsvg-WARNING **: Error setting CSS SAC handler

** (kupfer.py:14160): CRITICAL **: cr_parser_destroy: assertion `a_this && PRIVATE (a_this)' failed
[kupfer.core.sources] PeriodicRescanner: Starting new campaign, interval 3 s
[kupfer.obj.sources] DirectorySource: Loaded 0 items
[kupfer.plugin.core.selection] SelectionSource: Loaded 1 items
[kupfer.plugin.applications] AppSource: Loaded 42 items
[kupfer.core.sources] PeriodicRescanner: Campaign finished, pausing 3600 s
^C[kupfer.ui.browser] WindowController: Caught signal 2 exiting..
[kupfer.core.data] DataController: Saving data...
[kupfer.core.data] DataController: Saving cache...

Revision history for this message
X (u78qir8a9-deactivatedaccount) wrote :

Thanks for reporting bugs with Kupfer.

It's hard for me to debug, but as you see there are some early warnings from pygobject; and it might well be very important. You are also using unstable versions of PyGTK and PyGObject.

Otherwise, using any input manager or so? It has been reported problems with ibus (which I don't know how to debug).

Revision history for this message
yk1000 (ykimura) wrote :

Thanks for the quick reply Ulrik. While the traceback errors still appear, kupfer indeed became responsive after I killed ibus! Thank you!

It would be great if it could get along better with ibus in the future.. I will play with it to see if there's a workaround.

Revision history for this message
David Schneider (dnschneid) wrote :

Interestingly enough, I started having this same issue, but only after upgrading to Maverick today.
No interesting errors in console, typing is ignored, but keyboard shortcuts such as space, ctrl+q, ctrl+;, . , etc still worked.
Killing ibus-x11 restored proper operation.

Revision history for this message
David Schneider (dnschneid) wrote :

I've poked around with the code, and as far as I can tell, the keypresses are getting eaten by the IME, possibly because of the way the entry box works when it is hidden. IMEs have never worked very well with kupfer to begin with when the entry box is hidden (the preedit box is obscured and you have to use the IME blindly), so I believe it's safe to say that unless you hit period to open up the extended edit box, you aren't going to find the IME any use.
With that in mind, attached is one possible, slightly hacked solution to the issue. When the extended edit box is hidden, ALL key presses are absorbed. Characters in the ASCII range are appended to the entry, and backspace removes the last character.
At first I thought it was kind of lame that we'd lose standard editing, but then I realized that only ascii keys and backspace actually mean anything (in terms of text editing) if the extended entry box is hidden.
If you hit period to open up the entry box, everything functions as normal.

Revision history for this message
David Schneider (dnschneid) wrote :

Well, this is embarrassing. This updated patch also has the return key working as well.
As far as I can tell, with this patch Kupfer is now working properly even with ibus.

Revision history for this message
yk1000 (ykimura) wrote :

Awesome! Now I can finally keep ibus running with kupfer :) Thank you.

Revision history for this message
X (u78qir8a9-deactivatedaccount) wrote :

Hi, I do not fully understand the patch.

You only accept keyvalues < 128, this produces only ascii input then? It breaks all other input (think any keyvalue outside 128, for me it's Ö or € for example)?

This seems complicated, normally we don't hardcode Return key, it's simply GTK's key that activates the text entry, this is broken by ibus? Backspace is also broken, and this is why these two are handled specially in the patch?

Revision history for this message
X (u78qir8a9-deactivatedaccount) wrote :

By the way, I still have this question whose answer I'm very interested in:

* You can set the input method if you open the text entry menu. Normally you open the menu with Shift+F10, then you select the input method. Can you get Kupfer to work this way?

From https://bugs.launchpad.net/kupfer/+bug/601816

So what I mean: When you are in "not text mode", press Shift+F10 and set an input method. Try to choose something not-ibus. Does Kupfer an unpatched Kupfer work?

Revision history for this message
X (u78qir8a9-deactivatedaccount) wrote :

Please try the patch I'm posting in the duplicate bug.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.