Version: 3.4.0 (using KDE 3.4.0, Gentoo) Compiler: gcc version 3.4.3 20050110 (Gentoo Linux 3.4.3.20050110, ssp-3.4.3.20050110-0, pie-8.7.7) OS: Linux (i686) release 2.6.11-bk2 My setup is Kicker on top, centered, ~50% of screen width. On the first click on Kmenu, the menu appears on the left most side of the screen (pixel 0) not where the kmenu button is (around pixel 400)
*** This bug has been marked as a duplicate of 85957 ***
WTF!? This is not a duplicate. a) My Kmenu is on Kicker not on a child AND b) this is CVS KDE_3_4_BRANCH as of yesterday and it is not fixed. Please re-open as I have no idea how to change status on this version of bugzilla (I can't find where those options are.) Thanks, Norberto
From other bugs merged there, in particular #100829, I believe this is the same issue. And please in particular read http://bugs.kde.org/show_bug.cgi?id=85957#c17
In 85957, Aaron says it's a Qt bug, but KDE 3.3.2 was working OK with the same Qt version (3.3.4). This seems like an uninitialized variable in kicker's code. You can reproduce this by killing kicker and restarting it. On the first click, Kmenu appears on pixel 0. Thanks, Norberto
> In 85957, Aaron says it's a Qt bug, that's because when you apply the proper patch in qt-copy which was designed to fix this problem in Qt, the menu pops up in the right place every time! remove the patch, the problem reappears. > KDE 3.3.2 was working OK with the same Qt version for some. the "menu pops up in the wrong place" bug dates back to at least 3.2, though back then it was primarily those running kicker in RTL mode that saw it. > This seems like an uninitialized variable in kicker's code no, in vanilla Qt the menu doesn't get sized properly before being shown so the sizeHint returns a bogus value the first time. this is what the simple one line patch labeled "0047-fix-kmenu-width.diff" does. of course, you could go looking for an uninitialized variable in kicker's code if you wish. i mean... why trust us, right? =) until you find that variable, though, this bug has been dealt with and i don't see why we should waste anyone's time further on it.
> remove the patch, the problem reappears. Tried the patch. The bug went away :) > of course, you could go looking for an uninitialized variable in kicker's > code if you wish. i mean... why trust us, right? =) I trust you, but I just wanted to be sure we were talking about the very same bug. I'll report this back to Gentoo's Qt maintainer. Thanks for your time and explanations. One more thing, what's RTL mode? Regards, Norberto
RTL is "right to left", which is used to render interfaces in Hebrew, Arabic or varoius Hindic scripts.
This bug still exist in 3.5, if you put kicker on the right, kmenu button at the top. Then just after login in, pressing Kmenu button will unfold it on the left. But pressing it for the second time, unfolds it on the right, properly. Now it doesn't seem to appear later, only when kmenu is pressed for the first time after login.
Łukasz: you need to patch your Qt, as i stated in comment #5.