diff --git a/graf3d/eve7/src/REveGeomData.cxx b/graf3d/eve7/src/REveGeomData.cxx
index b47015c9acb31f51e410a760ad7fba720223411e..0655f4d118caede36ce1766cecea3861dcdeeb40 100644
--- a/graf3d/eve7/src/REveGeomData.cxx
+++ b/graf3d/eve7/src/REveGeomData.cxx
@@ -108,9 +108,12 @@ public:
       }
 
       auto &prnt = fDesc.fDesc[fParentId];
-      if (fChild+1 >= prnt.chlds.size()) return false;
+      if (++fChild >= prnt.chlds.size()) {
+         fNodeId = -1; // not valid node, only Leave can be called
+         return false;
+      }
 
-      fNodeId = prnt.chlds[++fChild];
+      fNodeId = prnt.chlds[fChild];
       return true;
    }
 
@@ -588,7 +591,7 @@ std::string ROOT::Experimental::REveGeomDescription::ProcessBrowserRequest(const
                reply.nodes.emplace_back(iter.GetName(), iter.NumChilds());
                if (toplevel) reply.nodes.back().expanded = true;
                request->number--;
-               iter.Next();
+               if (!iter.Next()) break;
             }
          }
       }
diff --git a/graf3d/eve7/src/REveGeomViewer.cxx b/graf3d/eve7/src/REveGeomViewer.cxx
index 73ffab95a0d330c5d34afd29bef286492543355b..8a4950508e44ea3ef9f3ebf6fd68423f84069c1d 100644
--- a/graf3d/eve7/src/REveGeomViewer.cxx
+++ b/graf3d/eve7/src/REveGeomViewer.cxx
@@ -26,7 +26,7 @@
 ROOT::Experimental::REveGeomViewer::REveGeomViewer(TGeoManager *mgr)
 {
    fWebWindow = ROOT::Experimental::RWebWindowsManager::Instance()->CreateWindow();
-   fWebWindow->SetDefaultPage("file:rootui5sys/geom/index.html");
+   fWebWindow->SetDefaultPage("file:rootui5sys/eve7/geom.html");
 
    // this is call-back, invoked when message received via websocket
    fWebWindow->SetDataCallBack([this](unsigned connid, const std::string &arg) { this->WebWindowCallback(connid, arg); });
diff --git a/ui5/geom/controller/GeomViewer.controller.js b/ui5/eve7/controller/GeomViewer.controller.js
similarity index 99%
rename from ui5/geom/controller/GeomViewer.controller.js
rename to ui5/eve7/controller/GeomViewer.controller.js
index 80e35836a56d598c19d549564f18fbb29f916047..190fa773da833dbf182957106008e4e9790859ab 100644
--- a/ui5/geom/controller/GeomViewer.controller.js
+++ b/ui5/eve7/controller/GeomViewer.controller.js
@@ -8,13 +8,13 @@ sap.ui.define(['sap/ui/core/Component',
                "sap/ui/core/ResizeHandler",
                "sap/ui/layout/HorizontalLayout",
                "sap/ui/table/Column",
-               "rootui5/geom/model/BrowserModel"
+               "rootui5/eve7/model/BrowserModel"
 ],function(Component, Controller, CoreControl, JSONModel, mText, mCheckBox, Splitter, ResizeHandler,
            HorizontalLayout, tableColumn, BrowserModel) {
 
    "use strict";
 
-   var geomColorBox = CoreControl.extend("rootui5.geom.controller.ColorBox", { // call the new Control type "my.ColorBox" and let it inherit from sap.ui.core.Control
+   var geomColorBox = CoreControl.extend("rootui5.eve7.controller.ColorBox", { // call the new Control type "my.ColorBox" and let it inherit from sap.ui.core.Control
 
       // the control API:
       metadata : {
@@ -63,7 +63,7 @@ sap.ui.define(['sap/ui/core/Component',
 
    });
 
-   CoreControl.extend("eve.GeomDraw", {
+   var GeomDraw = CoreControl.extend("rootui5.eve7.controller.GeomDraw", {
 
       metadata : {
          properties : {           // setter and getter are created behind the scenes, incl. data binding and type validation
@@ -189,7 +189,7 @@ sap.ui.define(['sap/ui/core/Component',
          }
 
          // placeholder for geometry painter
-         this.geomControl = new eve.GeomDraw({color:"#f00"});
+         this.geomControl = new GeomDraw({color:"#f00"});
          this.getView().byId("mainSplitter").addContentArea(this.geomControl);
 
          JSROOT.AssertPrerequisites("geom", function() {
diff --git a/ui5/geom/index.html b/ui5/eve7/geom.html
similarity index 97%
rename from ui5/geom/index.html
rename to ui5/eve7/geom.html
index 6f38302cab2b9b7c3695865dc8c9bb806ed8b664..4578ae48cac8cf33ab9d8dd8e1999c8ac8754c08 100644
--- a/ui5/geom/index.html
+++ b/ui5/eve7/geom.html
@@ -45,7 +45,7 @@
            sap.ui.require(["sap/ui/core/mvc/XMLView"], function(XMLView) {
               XMLView.create({
                  id: "TopEveId",
-                 viewName: "rootui5.geom.view.GeomViewer",
+                 viewName: "rootui5.eve7.view.GeomViewer",
                  viewData: { conn_handle: handle }
               }).then(function(oView) {
                  oView.placeAt("GeomDiv");
diff --git a/ui5/geom/model/BrowserListBinding.js b/ui5/eve7/model/BrowserListBinding.js
similarity index 100%
rename from ui5/geom/model/BrowserListBinding.js
rename to ui5/eve7/model/BrowserListBinding.js
diff --git a/ui5/geom/model/BrowserModel.js b/ui5/eve7/model/BrowserModel.js
similarity index 99%
rename from ui5/geom/model/BrowserModel.js
rename to ui5/eve7/model/BrowserModel.js
index 043248ed14bdb9b6d51e72a12c36428b7075af57..c8a9649376f6c6321b044af13c0ee08249414a42 100644
--- a/ui5/geom/model/BrowserModel.js
+++ b/ui5/eve7/model/BrowserModel.js
@@ -1,6 +1,6 @@
 sap.ui.define([
     "sap/ui/model/json/JSONModel",
-    "rootui5/geom/model/BrowserListBinding",
+    "rootui5/eve7/model/BrowserListBinding",
     "sap/base/Log"
 ], function(JSONModel, BrowserListBinding, Log) {
    "use strict";
diff --git a/ui5/geom/view/GeomViewer.view.xml b/ui5/eve7/view/GeomViewer.view.xml
similarity index 96%
rename from ui5/geom/view/GeomViewer.view.xml
rename to ui5/eve7/view/GeomViewer.view.xml
index a3faeeaa7e2c7f6efebfe6f36f15293a772ae946..1e7ea0648943a4540f7745cbf1e9324e839cacdb 100644
--- a/ui5/geom/view/GeomViewer.view.xml
+++ b/ui5/eve7/view/GeomViewer.view.xml
@@ -1,5 +1,5 @@
 <mvc:View height="100%" width="100%" class="sapUiSizeCompact"
-          controllerName="rootui5.geom.controller.GeomViewer"
+          controllerName="rootui5.eve7.controller.GeomViewer"
           xmlns="sap.m"
           xmlns:mvc="sap.ui.core.mvc"
           xmlns:t="sap.ui.table"
diff --git a/ui5/geom/Component.js b/ui5/geom/Component.js
deleted file mode 100644
index a555453085e47e3c0a76143f89a3b9888d62cf21..0000000000000000000000000000000000000000
--- a/ui5/geom/Component.js
+++ /dev/null
@@ -1,21 +0,0 @@
-sap.ui.define([
-   'sap/ui/core/UIComponent', 'sap/ui/core/mvc/XMLView', "rootui5/geom/model/BrowserModel"
-], function(UIComponent, XMLView, BrowserModel) {
-   "use strict";
-
-   var Component = UIComponent.extend("rootui5.geom.Component", {
-      metadata : {
-         manifest: "json"
-      },
-      init: function() {
-         UIComponent.prototype.init.apply(this, arguments);
-
-        // console.log('Creating browser model!!!');
-         // this.setModel(new BrowserModel());
-         // this.getRouter().initialize();
-      }
-   });
-
-   return Component;
-
-});
diff --git a/ui5/geom/manifest.json b/ui5/geom/manifest.json
deleted file mode 100644
index 29f1f4b2baec093b28a5a2e773b37f64391ae11e..0000000000000000000000000000000000000000
--- a/ui5/geom/manifest.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "sap.app": {
-        "id": "rootui5.geom"
-    },
-    "sap.ui5": {
-        "rootView": {
-            "viewName": "rootui5.geom.view.GeomViewer",
-            "type": "XML",
-            "async": true,
-            "id": "Geom"
-        },
-        "resources": {
-        },
-        "dependencies": {
-            "libs": {
-                "sap.ui.core": {},
-                "sap.ui.commons": {},
-                "sap.ui.layout": {},
-                "sap.m": {},
-                "sap.uxap": {},
-                "sap.ui.table": {}
-            }
-        }
-    }
-}