Bug 177328

Summary: text overlays icons in context menu (KStatusBar relevant)
Product: [Unmaintained] kdelibs Reporter: Mikolaj Machowski <mikmach>
Component: kdeuiAssignee: Unassigned bugs mailing-list <unassigned-bugs>
Status: RESOLVED FIXED    
Severity: major CC: ari.reads, digikam-bugs-null
Priority: NOR    
Version: SVN   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Broken menu screenshot
QLineEdit example
same issue in kdesvn

Description Mikolaj Machowski 2008-12-09 19:27:58 UTC
Version:            (using Devel)
Compiler:          gcc4.3.2 
OS:                Linux
Installed from:    Compiled sources

In context menu in quick search field of Albums GUI text overlays icons.

In context menus of other quick search fields layout is OK.
Comment 1 Mikolaj Machowski 2008-12-09 19:29:08 UTC
Created attachment 29187 [details]
Broken menu screenshot
Comment 2 caulier.gilles 2008-12-09 19:42:45 UTC
Mik,

Not reproductible here under Linux and win32.

Where is the "digiKam 0.10.0" banner on the left ? Sound like banner image file is not installed on your system, and this break the menu layout.

Gilles
Comment 3 Andi Clemens 2008-12-09 19:46:27 UTC
There is no image in this context menu of the quicksearch lineedit, or is there?
I can confirm the error, I will take a look at it.
Comment 4 Andi Clemens 2008-12-09 20:25:26 UTC
Hmm what can destroy the context menu layout? I replaced the SearchTextBar widget with a pure KLineEdit and also a QLineEdit, but still the context menu is broken. The error must come from AlbumIconFilter bar...

Andi
Comment 5 Mikolaj Machowski 2008-12-09 20:37:54 UTC
I don't have images in any quick search context menu - but only in Albums GUI it is broken.

BTW - after trying to call context menus on various elements of digikam it crashed:

Application: digiKam (digikam), signal SIGSEGV
 [?1034h[Thread debugging using libthread_db enabled]
[Current thread is 1 (Thread 0xb4abd6d0 (LWP 32656))]

Thread 10 (Thread 0xb358fb90 (LWP 32668)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb623db95 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb629b0b2 in QWaitCondition::wait () from /usr/lib/qt4/lib/libQtCore.so.4
#3  0x082660c9 in Digikam::ScanController::run ()
#4  0xb629a320 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#5  0x09c68818 in ?? ()
#6  0x00000000 in ?? ()

Thread 9 (Thread 0xb2323b90 (LWP 32677)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb623db95 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb629b0b2 in QWaitCondition::wait () from /usr/lib/qt4/lib/libQtCore.so.4
#3  0xb7671252 in Digikam::LoadSaveThread::run () from /home/mikolaj/kde/lib/libdigikamcore.so.1
#4  0xb629a320 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#5  0x09caa898 in ?? ()
#6  0x00000000 in ?? ()

Thread 8 (Thread 0xb2b24b90 (LWP 32678)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb623db95 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb629b0b2 in QWaitCondition::wait () from /usr/lib/qt4/lib/libQtCore.so.4
#3  0xb7671252 in Digikam::LoadSaveThread::run () from /home/mikolaj/kde/lib/libdigikamcore.so.1
#4  0xb629a320 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#5  0x09c779f8 in ?? ()
#6  0x00000000 in ?? ()

Thread 7 (Thread 0xaff65b90 (LWP 314)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb623dec2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb033840b in metronom_sync_loop (this=0x9efbaf8) at metronom.c:871
#3  0xb623a315 in start_thread () from /lib/i686/libpthread.so.0
#4  0xb57d3dde in clone () from /lib/i686/libc.so.6

Thread 6 (Thread 0xaf304b90 (LWP 321)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb57cc101 in select () from /lib/i686/libc.so.6
#2  0xb0361435 in xine_usec_sleep (usec=0) at utils.c:457
#3  0xb0345d8b in video_out_loop (this_gen=0x9cecd78) at video_out.c:1246
#4  0xb623a315 in start_thread () from /lib/i686/libpthread.so.0
#5  0xb57d3dde in clone () from /lib/i686/libc.so.6

Thread 5 (Thread 0xaeb03b90 (LWP 324)):
#0  0xb52602b9 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
#1  0xb5260dc4 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0xb52610a8 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0xb639b717 in QEventDispatcherGlib::processEvents () from /usr/lib/qt4/lib/libQtCore.so.4
#4  0xb63736fa in QEventLoop::processEvents () from /usr/lib/qt4/lib/libQtCore.so.4
#5  0xb63738ba in QEventLoop::exec () from /usr/lib/qt4/lib/libQtCore.so.4
#6  0xb62974c3 in QThread::exec () from /usr/lib/qt4/lib/libQtCore.so.4
#7  0xb0381879 in Phonon::Xine::XineThread::run () from /home/mikolaj/kde/lib/kde4/plugins/phonon_backend/phonon_xine.so
#8  0xb629a320 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#9  0x09cebfa0 in ?? ()
#10 0x00000000 in ?? ()

Thread 4 (Thread 0xae085b90 (LWP 754)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb623db95 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb629b0b2 in QWaitCondition::wait () from /usr/lib/qt4/lib/libQtCore.so.4
#3  0xb7671252 in Digikam::LoadSaveThread::run () from /home/mikolaj/kde/lib/libdigikamcore.so.1
#4  0xb629a320 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#5  0x0bdc44c8 in ?? ()
#6  0x00000000 in ?? ()

Thread 3 (Thread 0xad865b90 (LWP 861)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb623db95 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb0348980 in ao_loop (this_gen=0xc81eb30) at audio_out.c:345
#3  0xb623a315 in start_thread () from /lib/i686/libpthread.so.0
#4  0xb57d3dde in clone () from /lib/i686/libc.so.6

Thread 2 (Thread 0xad064b90 (LWP 862)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb57cc101 in select () from /lib/i686/libc.so.6
#2  0xb6358b87 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#3  0x00000006 in ?? ()
#4  0xad0642c8 in ?? ()
#5  0x00000000 in ?? ()

Thread 1 (Thread 0xb4abd6d0 (LWP 32656)):
[KCrash Handler]
#6  0x081de14b in Digikam::AlbumFolderView::slotContextMenu ()
#7  0x081df394 in Digikam::AlbumFolderView::qt_metacall ()
#8  0xb638680a in QMetaObject::activate () from /usr/lib/qt4/lib/libQtCore.so.4
#9  0xb6386d82 in QMetaObject::activate () from /usr/lib/qt4/lib/libQtCore.so.4
#10 0xb71efaff in Q3ListView::contextMenuRequested () from /usr/lib/qt4/lib/libQt3Support.so.4
#11 0xb70a7c4f in Q3ListView::contentsContextMenuEvent () from /usr/lib/qt4/lib/libQt3Support.so.4
#12 0xb7100024 in Q3ScrollView::viewportContextMenuEvent () from /usr/lib/qt4/lib/libQt3Support.so.4
#13 0xb710204c in Q3ScrollView::eventFilter () from /usr/lib/qt4/lib/libQt3Support.so.4
#14 0xb70a4f96 in Q3ListView::eventFilter () from /usr/lib/qt4/lib/libQt3Support.so.4
#15 0xb637419a in QCoreApplicationPrivate::sendThroughObjectEventFilters () from /usr/lib/qt4/lib/libQtCore.so.4
#16 0xb5a9380a in QApplicationPrivate::notify_helper () from /usr/lib/qt4/lib/libQtGui.so.4
#17 0xb5a9abb1 in QApplication::notify () from /usr/lib/qt4/lib/libQtGui.so.4
#18 0xb686585d in KApplication::notify () from /home/mikolaj/kde/lib/libkdeui.so.5
#19 0xb6374f91 in QCoreApplication::notifyInternal () from /usr/lib/qt4/lib/libQtCore.so.4
#20 0xb5a9d4fe in QCoreApplication::sendSpontaneousEvent () from /usr/lib/qt4/lib/libQtGui.so.4
#21 0xb5af92e9 in ?? () from /usr/lib/qt4/lib/libQtGui.so.4
#22 0x0bd7d558 in ?? ()
#23 0xbfe27314 in ?? ()
#24 0xbfe27360 in ?? ()
#25 0xbfe27358 in ?? ()
#26 0xbfe27368 in ?? ()
#27 0xb60cbc34 in ?? () from /usr/lib/qt4/lib/libQtGui.so.4
#28 0xbfe2736c in ?? ()
#29 0x00000477 in ?? ()
#30 0x000000c8 in ?? ()
#31 0x0000012c in ?? ()
#32 0xbfe272ec in ?? ()
#33 0xb6413674 in ?? () from /usr/lib/qt4/lib/libQtCore.so.4
#34 0x00000000 in ?? ()

Comment 6 Andi Clemens 2008-12-09 20:51:42 UTC
Here it doesn't crash... but still I have no clue why this is happening...
Comment 7 Andi Clemens 2008-12-10 00:23:38 UTC
Created attachment 29200 [details]
QLineEdit example

another widget with the same problem
Comment 8 Mikolaj Machowski 2008-12-10 15:22:55 UTC
#7 Andi

That is the child of the same widget :)
Comment 9 Andi Clemens 2008-12-10 16:00:31 UTC
Sure, but it is "pure"... not our modified widget... but also rating widget context menu is broken, so it doesn't matter.
It must come from the statusbar somehow.
Comment 10 caulier.gilles 2008-12-10 16:11:23 UTC
Reassigned to KDELibs/kdeui component

Gilles Caulier
Comment 11 Andi Clemens 2008-12-19 17:41:30 UTC
Created attachment 29451 [details]
same issue in kdesvn

I grabbed the kdesvn source code and added a LineEdit widget to the statusBar:
as you can see, same issue!

So it is not digikam's fault but kdelibs. Margins (and padding?) are set to zero.
Comment 12 Mikolaj Machowski 2009-02-15 13:02:45 UTC
Still valid for Qt4.4.3 and kdelibs 4.2svn
Comment 13 Andi Clemens 2009-02-15 17:29:18 UTC
This bug can also be found in Krita: There is a Combobox widget in the statusbar. If you right-click on it, the context menu shows the same behavior.
Comment 14 Christoph Feck 2009-03-20 04:03:01 UTC
SVN commit 941619 by cfeck:

Fix broken menus in status bar widgets

Parents: Watch your children's style!

KStatusBar sets a style sheet for "::item", without specifying any other selector.
This causes children that respect that sub control, such as QMenu, to inherit the
properties and break their appearance.

Reverting commit 641933. It is not required, because KStyle, as well as Oxygen,
do not render status bar frames. The nice side effect is that KStatusBar now
actually respects the platform's style.

BUG: 177328
CCMAIL: aseigo@kde.org


 M  +0 -2      kstatusbar.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=941619
Comment 15 Christoph Feck 2009-03-20 04:04:58 UTC
SVN commit 941621 by cfeck:

Fix broken menus in status bar widgets (backport 941619)

CCBUG: 177328


 M  +0 -2      kstatusbar.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=941621
Comment 16 Christoph Feck 2009-03-26 01:56:08 UTC
*** Bug 183629 has been marked as a duplicate of this bug. ***