diff --git a/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.cpp b/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.cpp
index 62aefbe17b569cdb72ea4a642b9206b59f5a4b49..755c8b6dcd6038fb66766a5aa54a33ff9b308bab 100644
--- a/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.cpp
+++ b/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.cpp
@@ -61,6 +61,7 @@ bool ItemLibraryItem::setVisible(bool isVisible)
 {
     if (isVisible != m_isVisible) {
         m_isVisible = isVisible;
+        emit visibilityChanged();
         return true;
     }
 
diff --git a/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.h b/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.h
index e8ba2bebdd7d25aacc85746ca5c7fa90f22a9c26..9d7593ab39875619d5223919aa1cb8182d8104ff 100644
--- a/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.h
+++ b/src/plugins/qmldesigner/components/itemlibrary/itemlibraryitem.h
@@ -47,6 +47,7 @@ class ItemLibraryItem: public QObject {
     Q_PROPERTY(QString itemName READ itemName FINAL)
     Q_PROPERTY(QString itemLibraryIconPath READ itemLibraryIconPath FINAL)
     Q_PROPERTY(QVariant sortingRole READ sortingRole FINAL)
+    Q_PROPERTY(QVariant visible READ isVisible NOTIFY visibilityChanged FINAL)
 
 public:
     ItemLibraryItem(QObject *parent);
@@ -62,6 +63,9 @@ public:
     void setItemLibraryEntry(const ItemLibraryEntry &itemLibraryEntry);
     QVariant itemLibraryEntry() const;
 
+signals:
+    void visibilityChanged();
+
 private:
     ItemLibraryEntry m_itemLibraryEntry;
     bool m_isVisible;