octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GUI - X Error: BadMatch


From: Daniel J Sebald
Subject: Re: GUI - X Error: BadMatch
Date: Sun, 27 Jan 2013 16:14:22 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.1.16-1.fc14 Thunderbird/3.1.16

On 01/27/2013 03:58 PM, Daniel J Sebald wrote:
On 01/27/2013 03:31 PM, marco atzeri wrote:
latest source build on cygwin.
At start:

X Error: BadMatch (invalid parameter attributes) 8
Major opcode: 42 (X_SetInputFocus)
Resource id: 0xa00005
X Error: BadMatch (invalid parameter attributes) 8
Major opcode: 42 (X_SetInputFocus)
Resource id: 0xa00005
X Error: BadMatch (invalid parameter attributes) 8
Major opcode: 42 (X_SetInputFocus)
Resource id: 0xa00005
X Error: BadMatch (invalid parameter attributes) 8
Major opcode: 42 (X_SetInputFocus)
Resource id: 0xa00005
X Error: BadMatch (invalid parameter attributes) 8
Major opcode: 42 (X_SetInputFocus)
Resource id: 0xa00005
X Error: BadMatch (invalid parameter attributes) 8
Major opcode: 42 (X_SetInputFocus)
Resource id: 0xa00005
GNU Octave, version 3.7.1+


$ hg tip
changeset: 15980:6c0fce0632a4
tag: tip
user: Torsten <address@hidden>
date: Sat Jan 26 20:33:46 2013 +0100
summary: gui: set keyboard focus when switching between dock widgets
(bug #36957)

Ideas how to debug ?

Look at the diff for this changeset:

http://hg.savannah.gnu.org/hgweb/octave/rev/6c0fce0632a4

and where there is ->setFocus, put into place some value from the table
listed here:

http://qt-project.org/doc/qt-4.8/qwidget.html#setFocus
http://qt-project.org/doc/qt-4.8/qt.html#FocusReason-enum

See what happens and whether you can make any sense of things. Notice
that an "8" (your result), is not a valid entry in the table. setFocus()
is an overloaded variant, so I don't know what the issue is. Maybe
that's a bug in Qt on the system you are using.

Wait, I think I see what the problem is. The overloaded function setFocus() will set the focus "if this widget or one of its parents is the active window". Perhaps the two lines in that change set need to be switched from:

    4.11 +  setFocus ();
    4.12 +  activateWindow ();

to

    activateWindow ();
    setFocus ();

Perhaps without an "activateWindow ()" the Qt widget doesn't yet have it's focus reason validated. Just guessing, but it's worth a try.

Dan


reply via email to

[Prev in Thread] Current Thread [Next in Thread]