diff --git a/Common/DefaultOptions.h b/Common/DefaultOptions.h
index beb4826417f4e06d0235a22634c5064282bc1f72..ef6f041c0d0fa70e1453b8a88c0358cb095c8ac9 100644
--- a/Common/DefaultOptions.h
+++ b/Common/DefaultOptions.h
@@ -467,6 +467,13 @@ StringXNumber GeneralOptions_Number[] = {
   { F|S, "GraphicsWidth" , opt_general_graphics_size0 , 800. ,
     "Width (in pixels) of the graphic window" },
 
+  { F|S, "HighOrderToolsPositionX" , opt_general_hot_position0 , 650. ,
+    "Horizontal position (in pixels) of the upper left corner of the high order "
+    "tools window" },
+  { F|S, "HighOrderToolsPositionY" , opt_general_hot_position1 , 150. ,
+    "Vertical position (in pixels) of the upper left corner of the high order "
+    "tools window" },
+
   { F|O, "InitialModule", opt_general_initial_context, 0. ,
     "Module launched on startup (0=automatic, 1=geometry, 2=mesh, 3=solver, "
     "4=post-processing) " },
diff --git a/Common/Options.cpp b/Common/Options.cpp
index 1106ad88cfb1d9914e50f40d1ee5814ab9836bea..1a6c89827e99fe61d79964e5b6dda4a817a06f71 100644
--- a/Common/Options.cpp
+++ b/Common/Options.cpp
@@ -2241,6 +2241,20 @@ double opt_general_manip_position1(OPT_ARGS_NUM)
   return CTX::instance()->manipPosition[1];
 }
 
+double opt_general_hot_position0(OPT_ARGS_NUM)
+{
+  if(action & GMSH_SET)
+    CTX::instance()->hotPosition[0] = (int)val;
+  return CTX::instance()->hotPosition[0];
+}
+
+double opt_general_hot_position1(OPT_ARGS_NUM)
+{
+  if(action & GMSH_SET)
+    CTX::instance()->hotPosition[1] = (int)val;
+  return CTX::instance()->hotPosition[1];
+}
+
 double opt_general_session_save(OPT_ARGS_NUM)
 {
   if(action & GMSH_SET)
diff --git a/Common/Options.h b/Common/Options.h
index 3bf7f93d9c2ae8e467cc1f11ada708fcf7d91ef7..46ca772bf6fadd0352368cf81cc7be9fce4b1d7f 100644
--- a/Common/Options.h
+++ b/Common/Options.h
@@ -156,6 +156,8 @@ double opt_general_clip_position0(OPT_ARGS_NUM);
 double opt_general_clip_position1(OPT_ARGS_NUM);
 double opt_general_manip_position0(OPT_ARGS_NUM);
 double opt_general_manip_position1(OPT_ARGS_NUM);
+double opt_general_hot_position0(OPT_ARGS_NUM);
+double opt_general_hot_position1(OPT_ARGS_NUM);
 double opt_general_session_save(OPT_ARGS_NUM);
 double opt_general_options_save(OPT_ARGS_NUM);
 double opt_general_rotation0(OPT_ARGS_NUM);