diff --git a/src/widgets/kernel/qwidgetaction.cpp b/src/widgets/kernel/qwidgetaction.cpp
index 3c0c203..c9842f9 100644
--- a/src/widgets/kernel/qwidgetaction.cpp
+++ b/src/widgets/kernel/qwidgetaction.cpp
@@ -218,10 +218,13 @@ bool QWidgetAction::event(QEvent *event)
 {
     Q_D(QWidgetAction);
     if (event->type() == QEvent::ActionChanged) {
+        qDebug() << "QWidgetAction::event" << d->defaultWidget << "en=" << isEnabled();
         if (d->defaultWidget)
             d->defaultWidget->setEnabled(isEnabled());
-        for (int i = 0; i < d->createdWidgets.count(); ++i)
+        for (int i = 0; i < d->createdWidgets.count(); ++i) {
+            qDebug() << "QWidgetAction::event also setting:" << d->createdWidgets.at(i);
             d->createdWidgets.at(i)->setEnabled(isEnabled());
+        }
     }
     return QAction::event(event);
 }
diff --git a/src/widgets/widgets/qlineedit.cpp b/src/widgets/widgets/qlineedit.cpp
index 0500907..ee48653 100644
--- a/src/widgets/widgets/qlineedit.cpp
+++ b/src/widgets/widgets/qlineedit.cpp
@@ -1436,7 +1436,9 @@ bool QLineEdit::event(QEvent * e)
         }
     } else if (e->type() == QEvent::ActionRemoved) {
         d->removeAction(static_cast<QActionEvent *>(e)->action());
+        qDebug() << __FUNCTION__ << e;
     } else if (e->type() == QEvent::Resize) {
+        qDebug() << __FUNCTION__ << e;
         d->positionSideWidgets();
     }
 #ifdef QT_KEYPAD_NAVIGATION
diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp
index 8c293c6..053310c 100644
--- a/src/widgets/widgets/qlineedit_p.cpp
+++ b/src/widgets/widgets/qlineedit_p.cpp
@@ -326,10 +326,12 @@ void QLineEditIconButton::paintEvent(QPaintEvent *)
 
 void QLineEditIconButton::actionEvent(QActionEvent *e)
 {
+    qDebug() << __FUNCTION__ << e;
     switch (e->type()) {
     case QEvent::ActionChanged: {
         const QAction *action = e->action();
         if (isVisible() != action->isVisible()) {
+            qDebug() << __FUNCTION__ << "isVisible changed";
             setVisible(action->isVisible());
             if (QLineEdit *le = qobject_cast<QLineEdit *>(parentWidget()))
                 static_cast<QLineEditPrivate *>(qt_widget_private(le))->positionSideWidgets();
@@ -415,6 +417,7 @@ QIcon QLineEditPrivate::clearButtonIcon() const
 
 void QLineEditPrivate::setClearButtonEnabled(bool enabled)
 {
+    qDebug() << __FUNCTION__ << enabled;
     foreach (const SideWidgetEntry &e, trailingSideWidgets) {
         if (e.flags & SideWidgetClearButton) {
             e.action->setEnabled(enabled);
@@ -426,6 +429,7 @@ void QLineEditPrivate::setClearButtonEnabled(bool enabled)
 void QLineEditPrivate::positionSideWidgets()
 {
     Q_Q(QLineEdit);
+    qDebug() << __FUNCTION__ ;
     if (hasSideWidgets()) {
         const QRect contentRect = q->rect();
         const QSize iconSize = QLineEditPrivate::iconSize();
@@ -433,12 +437,16 @@ void QLineEditPrivate::positionSideWidgets()
         QRect widgetGeometry(QPoint(QLineEditIconButton::IconMargin, (contentRect.height() - iconSize.height()) / 2), iconSize);
         foreach (const SideWidgetEntry &e, leftSideWidgetList()) {
             e.widget->setGeometry(widgetGeometry);
+            qDebug() << __FUNCTION__ << 'l' <<  e.widget << "vis=" << e.widget->isVisibleTo(q)
+                << "action->isVis" << e.action->isVisible();
             if (e.widget->isVisibleTo(q))
                 widgetGeometry.moveLeft(widgetGeometry.left() + delta);
         }
         widgetGeometry.moveLeft(contentRect.width() - iconSize.width() - QLineEditIconButton::IconMargin);
         foreach (const SideWidgetEntry &e, rightSideWidgetList()) {
             e.widget->setGeometry(widgetGeometry);
+            qDebug() << __FUNCTION__ << 'r' <<  e.widget << "vis=" << e.widget->isVisibleTo(q)
+                << "action->isVis" << e.action->isVisible();
             if (e.widget->isVisibleTo(q))
                 widgetGeometry.moveLeft(widgetGeometry.left() - delta);
         }
diff --git a/src/widgets/widgets/qtoolbutton.cpp b/src/widgets/widgets/qtoolbutton.cpp
index 6943276..92417d4 100644
--- a/src/widgets/widgets/qtoolbutton.cpp
+++ b/src/widgets/widgets/qtoolbutton.cpp
@@ -36,6 +36,7 @@
 
 #include <qapplication.h>
 #include <qdesktopwidget.h>
+#include <qdebug.h>
 #include <qdrawutil.h>
 #include <qevent.h>
 #include <qicon.h>
@@ -456,6 +457,7 @@ void QToolButton::actionEvent(QActionEvent *event)
     QAction *action = event->action();
     switch (event->type()) {
     case QEvent::ActionChanged:
+        qDebug() << "QToolButton::actionEvent enabled=" << action->isEnabled();
         if (action == d->defaultAction)
             setDefaultAction(action); // update button state
         break;
