diff --git a/rtengine/imagedata.cc b/rtengine/imagedata.cc
index c1223c96f..bebf4a37d 100644
--- a/rtengine/imagedata.cc
+++ b/rtengine/imagedata.cc
@@ -790,13 +790,13 @@ std::string FramesMetaData::expcompToString(double expcomp, bool maskZeroexpcomp
 
     if (maskZeroexpcomp) {
         if (expcomp != 0.0) {
-            sprintf (buffer, "%0.2f", expcomp);
+            sprintf (buffer, "%+0.2f", expcomp);
             return buffer;
         } else {
             return "";
         }
     } else {
-        sprintf (buffer, "%0.2f", expcomp);
+        sprintf (buffer, "%+0.2f", expcomp);
         return buffer;
     }
 }
diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc
index 621a4105d..c3e9b0c00 100644
--- a/rtgui/editorpanel.cc
+++ b/rtgui/editorpanel.cc
@@ -1191,6 +1191,7 @@ void EditorPanel::open(Thumbnail* tmb, rtengine::InitialImage* isrc)
     }
 
     history->resetSnapShotNumber();
+    navigator->setMetaInfo(isrc->getMetaData());
     navigator->setInvalid(ipc->getFullWidth(),ipc->getFullHeight());
 
     history->setPParamsSnapshotListener(openThm);
diff --git a/rtgui/navigator.cc b/rtgui/navigator.cc
index 743ab098d..df583bc8a 100644
--- a/rtgui/navigator.cc
+++ b/rtgui/navigator.cc
@@ -38,9 +38,10 @@ Navigator::Navigator () : currentRGBUnit(options.navRGBUnit), currentLCHUnit(opt
     Gtk::VBox* mbox = Gtk::manage (new Gtk::VBox ());
     mbox->set_name("Navigator");
     previewWindow = Gtk::manage (new PreviewWindow ());
-    mbox->pack_start (*previewWindow, Gtk::PACK_SHRINK, 2);
-    dimension = Gtk::manage (new Gtk::Label ());
-    mbox->pack_start (*dimension, Gtk::PACK_SHRINK, 2);
+    mbox->pack_start(*previewWindow, Gtk::PACK_SHRINK, 2);
+    metaInfo = Gtk::manage(new Gtk::Label());
+    mbox->pack_start (*metaInfo, Gtk::PACK_SHRINK, 2);
+    
     position = Gtk::manage (new Gtk::Label ());
     mbox->pack_start (*position, Gtk::PACK_SHRINK, 2);
 
@@ -210,9 +211,9 @@ Navigator::Navigator () : currentRGBUnit(options.navRGBUnit), currentLCHUnit(opt
 void Navigator::setInvalid (int fullWidth, int fullHeight)
 {
     if (fullWidth > 0 && fullHeight > 0) {
-        dimension->set_text (Glib::ustring::compose (M("NAVIGATOR_XY_FULL"), fullWidth, fullHeight));
+        dimension = Glib::ustring::compose("%1 x %2", fullWidth, fullHeight);
     }
-    position->set_text (M("NAVIGATOR_XY_NA"));
+    position->set_text(Glib::ustring::compose("%1   (%2)", M("NAVIGATOR_XY_NA"), dimension));
 
     R->set_text (M("NAVIGATOR_NA"));
     G->set_text (M("NAVIGATOR_NA"));
@@ -225,6 +226,24 @@ void Navigator::setInvalid (int fullWidth, int fullHeight)
     LAB_L->set_text (M("NAVIGATOR_NA"));
 }
 
+void Navigator::setMetaInfo (const rtengine::FramesMetaData* idata)
+{
+    Glib::ustring infoString = Glib::ustring::compose("%1 %2   %3 sec   f/%4   %5 mm",
+                                                      M("QINFO_ISO"), idata->getISOSpeed(),
+                                                      Glib::ustring(idata->shutterToString(idata->getShutterSpeed())),
+                                                      Glib::ustring(idata->apertureToString(idata->getFNumber())),
+                                                      Glib::ustring::format(std::setw(3), std::fixed, std::setprecision(2), idata->getFocalLen()));
+
+    Glib::ustring expcomp = Glib::ustring(idata->expcompToString(idata->getExpComp(), true));
+
+    if (!expcomp.empty())
+    {
+        infoString = Glib::ustring::compose("%1   %2 ev", infoString, expcomp);
+    }
+
+    metaInfo->set_text(infoString);
+}
+
 void Navigator::getRGBText (int r, int g, int b, Glib::ustring &sR, Glib::ustring &sG, Glib::ustring &sB, bool isRaw)
 {
     if (isRaw) {
@@ -289,7 +308,7 @@ void Navigator::pointerMoved (bool validPos, const Glib::ustring &profile, const
     } else {
         Glib::ustring s1, s2, s3;
 
-        position->set_text (Glib::ustring::compose ("x: %1, y: %2", x, y));
+        position->set_text (Glib::ustring::compose ("x: %1, y: %2   (%3)", x, y, dimension));
 
         getRGBText (r, g, b, s1, s2, s3, isRaw);
         R->set_text (s1);
diff --git a/rtgui/navigator.h b/rtgui/navigator.h
index 9fa4d4b2b..56c61ce15 100644
--- a/rtgui/navigator.h
+++ b/rtgui/navigator.h
@@ -34,7 +34,8 @@ private:
     void cycleUnitsLCH(GdkEventButton *event);
 
 protected:
-    Gtk::Label* dimension;
+    Gtk::Label* metaInfo;
+    Glib::ustring dimension;
     Gtk::Label* position;
     Gtk::Label *R, *G, *B;
     Gtk::Label *L, *C, *H;
@@ -54,6 +55,7 @@ public:
     //  void pointerMoved (bool validPos, int x, int y, int r, int g, int b);
     void pointerMoved (bool validPos, const Glib::ustring &profile, const Glib::ustring &profileW, int x, int y, int r, int g, int b, bool raw = false) override;
     void setInvalid (int fullWidth = -1, int fullHeight = -1);
+    void setMetaInfo (const rtengine::FramesMetaData* idata);
 
     void getRGBText (int r, int g, int b, Glib::ustring &sR, Glib::ustring &sG, Glib::ustring &sB, bool isRaw = false) override;
     void getLCHText (float l, float c, float h, Glib::ustring &sL, Glib::ustring &sC, Glib::ustring &sH) override;
