diff --git a/Examples/src/ImageViewPage.qml b/Examples/src/ImageViewPage.qml
index 6709d65..ac69a1c 100644
--- a/Examples/src/ImageViewPage.qml
+++ b/Examples/src/ImageViewPage.qml
@@ -1,6 +1,6 @@
-import QtQuick 2.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
 
 import ViewSolutionsModule 1.0
 
diff --git a/Examples/src/VPGradientPage.qml b/Examples/src/VPGradientPage.qml
index cd5f6cf..3f33ef8 100644
--- a/Examples/src/VPGradientPage.qml
+++ b/Examples/src/VPGradientPage.qml
@@ -1,6 +1,6 @@
-import QtQuick 2.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
 
 import ViewSolutionsModule 1.0
 
diff --git a/Examples/src/ViewPortContainerPage.qml b/Examples/src/ViewPortContainerPage.qml
index bb9a2f7..0784a9e 100644
--- a/Examples/src/ViewPortContainerPage.qml
+++ b/Examples/src/ViewPortContainerPage.qml
@@ -1,6 +1,6 @@
-import QtQuick 2.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
 
 import ViewSolutionsModule 1.0
 
diff --git a/Examples/src/main.qml b/Examples/src/main.qml
index ebb4710..9004ab2 100644
--- a/Examples/src/main.qml
+++ b/Examples/src/main.qml
@@ -9,11 +9,11 @@
 **
 ****************************************************************************/
 
-import QtQuick 2.14
+import QtQuick 2.15
 import QtQuick.Layouts 1.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
-import QtQuick.Controls.Universal 2.14
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
+import QtQuick.Controls.Universal 2.15
 
 ApplicationWindow {
     id: window
diff --git a/ViewSolutions/src/ViewSolutionsModule/ImageView.qml b/ViewSolutions/src/ViewSolutionsModule/ImageView.qml
index 18e713d..7a6448a 100644
--- a/ViewSolutions/src/ViewSolutionsModule/ImageView.qml
+++ b/ViewSolutions/src/ViewSolutionsModule/ImageView.qml
@@ -1,8 +1,8 @@
-import QtQuick 2.14
+import QtQuick 2.15
 import QtQuick.Layouts 1.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
-import QtQuick.Controls.Universal 2.14
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
+import QtQuick.Controls.Universal 2.15
 
 Item {
     id: root
diff --git a/ViewSolutions/src/ViewSolutionsModule/ViewPortDelegatBase.qml b/ViewSolutions/src/ViewSolutionsModule/ViewPortDelegatBase.qml
index 98a96b6..5db4c5c 100644
--- a/ViewSolutions/src/ViewSolutionsModule/ViewPortDelegatBase.qml
+++ b/ViewSolutions/src/ViewSolutionsModule/ViewPortDelegatBase.qml
@@ -1,13 +1,14 @@
-import QtQuick 2.14
+import QtQuick 2.15
 import QtQuick.Layouts 1.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
-import QtQuick.Controls.Universal 2.14
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
+import QtQuick.Controls.Universal 2.15
 
 Item {
     id: delegateItem
 
     property string source: ""
+    property alias imageSource: image
     property var background: Rectangle {
         border.color: "black"
         anchors.fill: parent
diff --git a/ViewSolutions/src/ViewSolutionsModule/ViewPortGradientPage.qml b/ViewSolutions/src/ViewSolutionsModule/ViewPortGradientPage.qml
index 75ed2c2..75ccfd6 100644
--- a/ViewSolutions/src/ViewSolutionsModule/ViewPortGradientPage.qml
+++ b/ViewSolutions/src/ViewSolutionsModule/ViewPortGradientPage.qml
@@ -1,15 +1,26 @@
-import QtQuick 2.14
+import QtQuick 2.15
 import QtQuick.Layouts 1.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
-import QtQuick.Controls.Universal 2.14
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
+import QtQuick.Controls.Universal 2.15
 import QtGraphicalEffects 1.14
 
 
 ViewPortPage {
     id: root
 
+    Connections {
+        target: imageSource
+
+        onStatusChanged: {
+            if (imageSource.status === Image.Ready) {
+                bacground.color = colorPicker.pick(source);
+            }
+        }
+    }
+
     background: Rectangle {
+        id: bacground
         color: colorPicker.pick(source)
         radius: 16
     }
diff --git a/ViewSolutions/src/ViewSolutionsModule/ViewPortPage.qml b/ViewSolutions/src/ViewSolutionsModule/ViewPortPage.qml
index 78cd945..3e4ca6d 100644
--- a/ViewSolutions/src/ViewSolutionsModule/ViewPortPage.qml
+++ b/ViewSolutions/src/ViewSolutionsModule/ViewPortPage.qml
@@ -1,8 +1,8 @@
-import QtQuick 2.14
+import QtQuick 2.15
 import QtQuick.Layouts 1.14
-import QtQuick.Controls 2.14
-import QtQuick.Controls.Material 2.14
-import QtQuick.Controls.Universal 2.14
+import QtQuick.Controls 2.15
+import QtQuick.Controls.Material 2.15
+import QtQuick.Controls.Universal 2.15
 import QtGraphicalEffects 1.14
 
 
diff --git a/ViewSolutions/src/qmlcolorpicker.cpp b/ViewSolutions/src/qmlcolorpicker.cpp
index 6077bec..928ceae 100644
--- a/ViewSolutions/src/qmlcolorpicker.cpp
+++ b/ViewSolutions/src/qmlcolorpicker.cpp
@@ -1,4 +1,7 @@
 #include "qmlcolorpicker.h"
+
+#include <QQmlApplicationEngine>
+#include <QQuickAsyncImageProvider>
 namespace ViewSolutions {
 
 QMLColorPicker::QMLColorPicker(QObject *parent) :
@@ -12,6 +15,56 @@ QMLColorPicker *ViewSolutions::QMLColorPicker::instance() {
 }
 
 QColor QMLColorPicker::pick(const QString &img) const {
+
+    if (img.left(6) == "image:") {
+        int urlBegin = img.indexOf('/', 8);
+        QString id = img.mid(8, urlBegin - 8);
+
+        if (!_engine)
+            return {};
+
+        QQuickImageProvider* provider = dynamic_cast<QQuickImageProvider*>(_engine->imageProvider(id));
+
+        if (!provider) {
+            return {};
+        }
+
+        QString url = img.mid(urlBegin + 1);
+
+        if (provider->imageType() & QQmlImageProviderBase::ImageResponse) {
+            auto async = static_cast<QQuickAsyncImageProvider*>(provider);
+            auto textureFacrory = async->requestImageResponse(url, {})->textureFactory();
+
+            if (!textureFacrory) {
+                return {};
+            }
+
+            QColor responce = ColorPicker::pick(textureFacrory->image());
+
+            delete textureFacrory;
+
+            return responce;
+        }
+
+        if (provider->imageType() & QQmlImageProviderBase::Texture) {
+            return ColorPicker::pick(provider->requestTexture(url, nullptr, {})->image());
+        }
+
+        if (provider->imageType() & QQmlImageProviderBase::Pixmap) {
+            return ColorPicker::pick(provider->requestPixmap(url, nullptr, {}).toImage());
+        }
+
+        if (provider->imageType() & QQmlImageProviderBase::Image) {
+            return ColorPicker::pick(provider->requestImage(url, nullptr, {}));
+        }
+
+        return {};
+    }
+
     return ColorPicker::pick(img);
 }
+
+void QMLColorPicker::setEngine(QQmlApplicationEngine *engine) {
+    _engine = engine;
+}
 }
diff --git a/ViewSolutions/src/qmlcolorpicker.h b/ViewSolutions/src/qmlcolorpicker.h
index 607eb48..4ca0c9a 100644
--- a/ViewSolutions/src/qmlcolorpicker.h
+++ b/ViewSolutions/src/qmlcolorpicker.h
@@ -3,6 +3,8 @@
 #include "colorpicker.h"
 
 #include <QObject>
+
+class QQmlApplicationEngine;
 namespace ViewSolutions {
 
 /**
@@ -14,18 +16,27 @@ class LOGINVIEW_EXPORT QMLColorPicker : public QObject, private ColorPicker
 public:
     explicit QMLColorPicker(QObject *parent = nullptr);
     /**
-     * @brief instance
+     * @brief instance This method return instance object of the QMLColorPicker setvice.
      * @return static instance of this ColorPicker
      */
     static QMLColorPicker* instance();
 
     /**
-     * @brief pick - this is override function for qml
-     * @param img - path to image
+     * @brief pick This is override function for qml
+     * @param img This is path to image
      * @return General color of image
      */
      Q_INVOKABLE QColor pick(const QString &img) const;
 
+    /**
+     * @brief setEngine This method set qml engine for working with image providers.
+     * @param engine This is new engine.
+     */
+    void setEngine(QQmlApplicationEngine *engine);
+
+private:
+
+    QQmlApplicationEngine *_engine = nullptr;
 };
 }
 #endif // QMLCOLORPICKER_H
diff --git a/ViewSolutions/src/viewsolutions.cpp b/ViewSolutions/src/viewsolutions.cpp
index 011dc51..7cdfca7 100644
--- a/ViewSolutions/src/viewsolutions.cpp
+++ b/ViewSolutions/src/viewsolutions.cpp
@@ -17,7 +17,10 @@ bool init(QQmlApplicationEngine *engine) {
 
     engine->addImportPath(":/");
 
-    root->setContextProperty("colorPicker", QMLColorPicker::instance());
+    auto picker = QMLColorPicker::instance();
+    picker->setEngine(engine);
+
+    root->setContextProperty("colorPicker", picker);
 
     return true;
 }