some more event handling

This commit is contained in:
Uwe Rathmann 2021-03-03 08:25:39 +01:00
parent 1dfcede463
commit 634fde4621

View File

@ -589,6 +589,7 @@ void QskQuickItem::sendEnabledChangeEvent()
bool QskQuickItem::event( QEvent* event ) bool QskQuickItem::event( QEvent* event )
{ {
const int eventType = event->type(); const int eventType = event->type();
const bool hasContents = flags() & QQuickItem::ItemHasContents;
switch( eventType ) switch( eventType )
{ {
@ -599,7 +600,7 @@ bool QskQuickItem::event( QEvent* event )
resetImplicitSize(); resetImplicitSize();
polish(); polish();
if ( flags() & QQuickItem::ItemHasContents ) if ( hasContents )
update(); update();
changeEvent( event ); changeEvent( event );
@ -609,10 +610,10 @@ bool QskQuickItem::event( QEvent* event )
{ {
resetImplicitSize(); resetImplicitSize();
if ( polishOnResize() ) if ( d_func()->polishOnResize )
polish(); polish();
if ( flags() & QQuickItem::ItemHasContents ) if ( hasContents )
update(); update();
changeEvent( event ); changeEvent( event );
@ -625,13 +626,31 @@ bool QskQuickItem::event( QEvent* event )
events - whatever it is good for. events - whatever it is good for.
*/ */
case QEvent::FontChange: case QEvent::FontChange:
{
resetImplicitSize();
polish();
if ( hasContents )
update();
changeEvent( event );
return true;
}
case QEvent::PaletteChange: case QEvent::PaletteChange:
{
if ( hasContents )
update();
changeEvent( event );
return true;
}
#endif #endif
case QEvent::ReadOnlyChange: case QEvent::ReadOnlyChange:
case QEvent::EnabledChange: case QEvent::EnabledChange:
case QEvent::LocaleChange: case QEvent::LocaleChange:
case QEvent::ParentChange: case QEvent::ParentChange:
case QEvent::LayoutDirectionChange:
{ {
changeEvent( event ); changeEvent( event );
return true; return true;