Index: /extensions/gally/gally-grum-dark-II/conf/default.conf
===================================================================
--- /extensions/gally/gally-grum-dark-II/conf/default.conf	(revision 16019)
+++ /extensions/gally/gally-grum-dark-II/conf/default.conf	(revision 16020)
@@ -4,5 +4,5 @@
 # ------------------------------------------------------------------------------
 # file: gally-grum-dark-II/conf/default.conf
-# file release: 1.3.0
+# file release: 1.5.0
 # ------------------------------------------------------------------------------
 # author: grum at piwigo.org
@@ -71,5 +71,4 @@
 imageCenterTopBorder="imageHeaderBar"
 
-
 # The 'imageInterface' option can take theses values :
 #   "none" => no effect to switch the interface (on/off)
@@ -111,4 +110,9 @@
 interfaceTimerDelay=5000
 
+# The 'commentAnimated' option can take theses values :
+#   "yes" => use slide to switch the comment area (slide in/slide out)
+#   "no"  => no effect to switch the comment area (on/off)
+commentAnimated="no"
+
 # The 'animateDelay' option can take any positive integer value
 # This option define the duration (in milliseconds) of effects
@@ -183,10 +187,4 @@
 
 # -- 1.3.0 --
-# the 'displayHighResIcon' option can take theses values :
-#   "yes" => display an icon 'view full res' in the toolbar
-#   "no"  => don't display an icon 'view full res' in the toolbar
-displayHighResIcon="yes"
-
-# -- 1.3.0 --
 # the 'highResClickMode' option can take theses values :
 #   "close" => click on the high res picture close the high res picture
@@ -194,4 +192,23 @@
 highResClickMode="close"
 
+# -- 1.5.0 --
+# the 'manageTips' option can take theses values :
+#   "yes" => the interface uses the simpleTip.js script to display hints
+#   "no"  => the interface uses the default browser method to display hints
+manageTips="yes"
+
+# -- 1.5.0 --
+# the 'manageTipsPos' define the default position for tips ; the option can take
+# theses values :
+#   "tipOnTop"    => tip is displayed above the object
+#   "tipOnBottom" => tip is displayed under the object
+#   "tipOnLeft"   => tip is displayed on the left side of the object
+#   "tipOnRight"  => tip is displayed on the right side of the object
+manageTipsPos="tipOnBottom"
+
+# -- 1.5.0 --
+# the 'tipsSize' option can take any positive integer values.
+# This option define the size (Width&Height) of an arrow
+tipsSize=17
 
 # ------- Menu parameters ------------------------------------------------------
@@ -214,4 +231,6 @@
 # The 'menuWidth' option can also take any positive integer value wich define a
 # fixed width in pixels
+#
+# please note that under MSIE, the "auto" option don't work as well as other browser
 menuWidth = "auto"
 
Index: /extensions/gally/gally-grum-dark-II/css/ASEgally-grum-dark-II.css
===================================================================
--- /extensions/gally/gally-grum-dark-II/css/ASEgally-grum-dark-II.css	(revision 16019)
+++ /extensions/gally/gally-grum-dark-II/css/ASEgally-grum-dark-II.css	(revision 16020)
@@ -31,8 +31,23 @@
 .ui-datepicker td.ui-datepicker-current-day { background-color:#303030; }
 .ui-datepicker td.ui-datepicker-current-day a { color:#f0f0f0; }
-.ui-category-selector-arrow { color:#303030; }
+.ui-category-selector-arrow {
+  background-image: url("./../icon/buttons_gpc.png");
+  background-position: -30px -30px;
+  background-repeat: no-repeat;
+  border: 0 none;
+  border-radius: 2px 2px 2px 2px;
+}
+.ui-category-selector-arrow:hover {
+  background-position: -30px -15px;
+}
 .ui-category-selector, .ui-category-selector-list { font-family:monospace; }
 li.ui-category-selector-item:hover, li.ui-tag-selector-list-item:hover { background-color:#606060; color:#f0f0f0; }
 .ui-category-selector-selected-item { background-color:#303030; color:#f0f0f0; }
+li.ui-category-selector-item div { margin:0;}
+li.ui-category-selector-item div.ui-category-selector-name { top:-1px; position:relative;}
+li.ui-category-selector-item div.ui-category-selector-status { margin:1px; }
+#iASECategoryCategory div.ui-category-selector-check {
+  position:relative;
+}
 
 
@@ -71,10 +86,43 @@
 }
 
-.iconEdit { background:url(./../icon/edit.png) no-repeat 0 0 transparent; }
-.iconDelete { background:url(./../icon/delete.png) no-repeat 0 0 transparent; }
-.iconMove { background:url(./../icon/asearchengine/move.png) no-repeat 0 0 transparent; }
-.iconMove:hover { background:url(./../icon/asearchengine/move_h.png) no-repeat 0 0 transparent; }
-.iconSwitchCondition  { background:url(./../icon/asearchengine/switch.png) no-repeat 0 0 transparent; }
-.iconSwitchCondition:hover { background:url(./../icon/asearchengine/switch_h.png) no-repeat 0 0 transparent; }
+
+.iconSwitchCondition,
+.iconMove,
+.iconEdit,
+.iconDelete {
+  background:url(./../icon/buttons_gpc.png) no-repeat 0 0 transparent;
+  -moz-border-radius:2px;
+  -webkit-border-radius:2px;
+  -khtml-border-radius:2px;
+  border-radius:2px;
+}
+
+
+.iconEdit {
+  background-position:-240px -30px;
+}
+.iconDelete {
+  background-position:-255px -30px;
+}
+.iconMove {
+  background-position:-285px -30px;
+}
+.iconSwitchCondition {
+  background-position:-300px -30px;
+}
+.iconEdit:hover {
+  background-position:-240px -15px;
+}
+.iconDelete:hover {
+  background-position:-255px -15px;
+}
+.iconMove:hover {
+  background-position:-285px -15px;
+}
+.iconSwitchCondition:hover {
+  background-position:-300px -15px;
+}
+
+
 .cbItemMultiple { border:1px solid #606060; }
 .cbItemOverGroup { border:1px dotted #606060; }
@@ -106,6 +154,35 @@
 
 div#iMenuCaddieBar div#iMenuCaddieItems { z-index:8600; }
-div#iMenuCriterions div#iMenuCItems { margin-left:-1px; }
+div#iMenuCriterions div#iMenuCItems { margin-left:-1px; margin-top:-1px;}
 div#iMenuCaddieText, div#iMenuCaddieText a { color:#303030;}
+
+.ui-tag-selector-selected-tag-list {
+  margin-bottom:1px;
+}
+
+#iASECategoryCategory .ui-category-selector-name li.ui-category-selector-selected-cat {
+  background:#606060;
+  border-radius: 8px;
+  color: #F0F0F0;
+  margin-right: 1px;
+  padding: 1px 4px;
+  -moz-border-radius: 8px;
+  -webkit-border-radius:8px;
+  -khtml-border-radius:8px;
+}
+#iASECategoryCategory .ui-category-selector {
+  padding:0px;
+}
+
+#iRequestCriterions li.cbItem {
+  background:#444444;
+  color:#ffffff;
+}
+
+div.ui-dialog li.valueItems {
+  background: none repeat scroll 0 0 #444444;
+  border: 0 none;
+  color: #ffffff;
+}
 
 /* AMD specific CSS */
@@ -116,4 +193,4 @@
 div.ruleTypeM, div.ruleTypeM2 { border:0px solid #666666; }
 .error, input.error { background:#FFAAAA; border:1px solid #800000; color:#800000; }
-#mdRulesArea { border-top:1px solid #303030; }
+#iDialogMetadataChoose #mdRulesArea { border-top:1px solid #303030; }
 
Index: /extensions/gally/gally-grum-dark-II/css/theme.css
===================================================================
--- /extensions/gally/gally-grum-dark-II/css/theme.css	(revision 16019)
+++ /extensions/gally/gally-grum-dark-II/css/theme.css	(revision 16020)
@@ -1,10 +1,10 @@
 /* -----------------------------------------------------------------------------
   GRUM:DARK-II
-  Theme for Piwigo
+  A Gally's theme for Piwigo
   ------------------------------------------------------------------------------
   file: gally/grum-dark II/theme.css
-  file version: 1.2.0
+  file version: 1.5.0
   ------------------------------------------------------------------------------
-  author: grum at grum.dnsalias.com
+  author: grum at grum.fr
   << May the Little SpaceFrog be with you >>
   ------------------------------------------------------------------------------
@@ -22,4 +22,17 @@
   font-weight:bold;
 }
+div.errors button {
+  color:#ffffff;
+  background:#802020;
+  outline:none;
+}
+div.errors button:hover {
+  color:#FFB0B0;
+}
+div.errors button:active {
+  color:#802020;
+  background:#ffffff;
+}
+
 
 div.infos {
@@ -32,4 +45,15 @@
   color:#008000;
   font-weight:bold;
+}
+div.infos button {
+  color:#ffffff;
+  background:#208020;
+}
+div.infos button:hover {
+  color:#B0FFB0;
+}
+div.infos button:active {
+  color:#208020;
+  background:#ffffff;
 }
 
@@ -63,4 +87,5 @@
   background:#000000 url(./../icon/backgd.png) repeat scroll 0 0;;
   color:#DEDEDE;
+  overflow-x:visible;
 }
 
@@ -72,4 +97,5 @@
   color: #ffff80;
 }
+
 
 a.button, a.navButton {
@@ -183,4 +209,11 @@
 #icon_calendar_created:hover {
   background-position:-56px -28px;
+}
+
+#icon_sort {
+  background-position:-1457px 0;
+}
+#icon_sort:hover {
+  background-position:-1457px -28px;
 }
 
@@ -307,4 +340,11 @@
 }
 
+#icon_derivatives {
+  background-position:-1428px 0;
+}
+#icon_derivatives:hover {
+  background-position:-1428px -28px;
+}
+
 /* tags.tpl */
 #icon_cloud {
@@ -491,5 +531,4 @@
 
 
-
 /*
  page : title
@@ -559,4 +598,8 @@
 }
 
+.fixHeight {
+    clear:both;
+}
+
 ul.thumbnailCategories li {
   width:50%;
@@ -599,7 +642,6 @@
   display:table-cell;
   margin:0;
+  padding:0;
   vertical-align:middle;
-  height:140px;
-  width:140px;
   -moz-border-radius: 8px;  /* round corners with Geko */
   -webkit-border-radius: 8px;  /* round corners with Geko */
@@ -618,4 +660,10 @@
 }
 
+div ul.thumbnails li {
+  width: auto;
+  height: auto;
+}
+
+
 /*
  * page :profile
@@ -624,4 +672,5 @@
   padding-bottom:20px;
 }
+
 
 /*
@@ -717,4 +766,5 @@
 }
 
+
 .calBackDate {
   color:#000000;
@@ -785,4 +835,6 @@
   border-top:1px #ffffff solid;
   border-left:1px #ffffff solid;
+  margin-top:1px;
+  cursor: pointer;
 }
 
@@ -811,4 +863,25 @@
   picture page
 */
+.switchBox {
+  -moz-border-radius:4px;
+  -webkit-border-radius:4px;
+  -khtml-border-radius:4px;
+  border-radius:4px;
+  background-color: #333333;
+  border: 1px solid #ffffff;
+  margin-left:4px;
+  z-index:15000;
+  margin-top:12px;
+}
+
+.switchBoxTitle {
+  font-size: 12px;
+  font-weight: bold;
+}
+
+.switchBoxCat {
+  margin-top:25px;
+}
+
 #thePicturePage #titrePageID {
   float: left;
@@ -833,42 +906,37 @@
 
 #theImgHighCloseButton {
-  background-image:url(./../icon/buttons.png);
-  background-repeat:no-repeat;
-  background-position:-1204px 0px;
+  width:15px;
+  height:15px;
+  background:transparent url(./../icon/buttons.png) no-repeat scroll -1204px 0px;
+  top:-8px;
+  right:8px;
+  cursor:pointer;
+}
+#theImgHighCloseButton:hover {
+  background-position:-1204px -28px;
+}
+
+#theImgHighZoomButton {
   width:15px;
   height:15px;
   top:-8px;
-  right:8px;
+  right:35px;
   cursor:pointer;
-}
-#theImgHighCloseButton:hover {
-  background-position:-1204px -28px;
-}
-
-#theImgHighZoomButton {
-  background-image:url(./../icon/buttons.png);
-  background-repeat:no-repeat;
-  width:15px;
-  height:15px;
-  top:-8px;
-  right:28px;
-  cursor:pointer;
+  background:transparent url(./../icon/buttons.png);
 }
 
 #theImgHighZoomButton.fit {
+  background-position:-1260px 0px;
+}
+#theImgHighZoomButton.fit:hover {
+  background-position:-1260px -28px;
+}
+
+#theImgHighZoomButton.full {
   background-position:-1232px 0px;
 }
-#theImgHighZoomButton.fit:hover {
+#theImgHighZoomButton.full:hover {
   background-position:-1232px -28px;
 }
-
-#theImgHighZoomButton.full {
-  background-position:-1260px 0px;
-}
-#theImgHighZoomButton.full:hover {
-  background-position:-1260px -28px;
-}
-
-
 
 .imageNumber {
@@ -935,4 +1003,12 @@
 #imageInfosContainer {
   padding-bottom:8px;
+}
+
+table.infoTable td.cTitle {
+  width:10%;
+}
+
+table.infoTable td.cNfo {
+  width:16%;
 }
 
@@ -945,5 +1021,4 @@
   border-collapse:collapse;
   position:relative;
-  left:25px;
 }
 
@@ -955,7 +1030,6 @@
 
 .infoTable td.value, .infoTable td.label {
-  padding-right:50px;
-}
-
+  padding-right:15px;
+}
 
 .infoTable .label {
@@ -987,5 +1061,9 @@
 #rateForm input[type="button"].rateButtonStarFull:focus,
 #rateForm input[type="submit"].rateButtonStarFull  {
-  background: url('./../icon/rating-stars.png') no-repeat scroll; background-position:-16px center; width:16px;
+  background: url('./../icon/buttons.png') no-repeat scroll;
+  background-position:-141px 1px;
+  width:16px;
+  height:16px;
+  outline:none;
 }
 
@@ -993,5 +1071,9 @@
 #rateForm input[type="button"].rateButtonStarEmpty:focus,
 #rateForm input[type="submit"].rateButtonStarEmpty {
-  background: url('./../icon/rating-stars.png') no-repeat scroll; background-position:0 center; width:16px;
+  background: url('./../icon/buttons.png') no-repeat scroll;
+  background-position:-112px 1px;
+  width:16px;
+  height:16px;
+  outline:none;
 }
 
@@ -1005,4 +1087,17 @@
 }
 
+#privacyLevelBox {
+  font-weight:normal;
+}
+
+#privacyLevelBox a {
+  cursor:pointer;
+}
+
+#iPrivacyLevelLink {
+  cursor:pointer;
+  font-style:italic;
+}
+
 .commentDetail {
   border-bottom:1px dotted #606060;
@@ -1013,5 +1108,4 @@
   padding:4px;
 }
-
 .commentDetail ul li {
   display:inline;
@@ -1074,11 +1168,18 @@
 }
 
+
 #theTabsContainer .navigationBar {
   text-align:right;
 }
 
+
+
 /*
   tags
 */
+#fullTagCloud, table.tagLetters  {
+    margin-left:120px;
+    margin-right:120px;
+}
 
 #fullTagCloud SPAN a:hover {
@@ -1104,9 +1205,17 @@
 
 .tagaddbutton {
-  left:-4px;
   position:relative;
-  top:-3px;
-}
-
+  top:-5px;
+}
+span.add_tag {
+  background:transparent url('./../icon/buttons.png') no-repeat scroll;
+  background-position:-672px 0px;
+  width:9px;
+  height:9px;
+  display:inline-block;
+}
+span.add_tag:hover {
+  background-position:-672px -28px;
+}
 
 .mandatorystar {
@@ -1148,4 +1257,64 @@
 }
 
+
+
+
+/*
+ * tips
+ */
+
+#iSimpleTipContent {
+  background: #ffffff;
+  border: none;
+  color: #303030;
+  font-family: sans-serif;
+  font-size: 11px;
+  max-width: 250px;
+  padding: 4px;
+  min-height: 15px;
+}
+#iSimpleTipShadow, #iSimpleTipContent {
+  -moz-border-radius:4px;
+  -webkit-border-radius:4px;
+  -khtml-border-radius:4px;
+  border-radius:4px;
+}
+
+#iSimpleTipContent span.title {
+  font-weight:bold;
+}
+#iSimpleTipContent ul, #iSimpleTipContent ol {
+  margin:4px;
+  padding-left:15px;
+}
+
+#iSimpleTipContent img {
+  margin:8px;
+}
+
+#iSimpleTipContent span.navDesc {
+  text-align:center;
+  display:block;
+}
+
+#iSimpleTipContent span.navAction {
+  font-weight:bold;
+}
+#iSimpleTipContent span.navTitle {
+  font-style:italic;
+}
+
+.cSimpleTipArrow {
+    background-image: url("./../icon/sTipArrows.png");
+}
+
+.cSimpleTipArrow {
+    background-repeat: no-repeat;
+    height: 12px;
+    position: absolute;
+    width: 12px;
+}
+
+
 /*
  vd language switch plugin
Index: /extensions/gally/gally-grum-dark-II/js/theme.js
===================================================================
--- /extensions/gally/gally-grum-dark-II/js/theme.js	(revision 16020)
+++ /extensions/gally/gally-grum-dark-II/js/theme.js	(revision 16020)
@@ -0,0 +1,82 @@
+/* -----------------------------------------------------------------------------
+  GALLY-GRUM-DARK-II
+  Template for Piwigo
+  ------------------------------------------------------------------------------
+  file: js/theme.js
+  file release:  1.0.0
+  theme release: 1.5.0
+  ------------------------------------------------------------------------------
+  author: grum at piwigo.org
+  << May the Little SpaceFrog be with you >>
+  ------------------------------------------------------------------------------
+  Specific JS for the theme
+
+  see the release_notes.txt file for more informations
+----------------------------------------------------------------------------- */
+
+var gallyGrumDarkII=null;
+
+$(document).ready(
+  function()
+  {
+    gallyGrumDarkII=new GallyGrumDarkII();
+  }
+);
+
+
+function GallyGrumDarkII ()
+{
+  function init()
+  {
+    // apply specific actions for categories pages
+    if($('#theCategoryPage').length>0)
+    {
+      setCatThumbHeight();
+      setTipPosition_Category();
+    }
+    // apply specific actions for picture pages
+    if($('#thePicturePage').length>0)
+    {
+      setTipPosition_Picture();
+    }
+    setTipPosition_Menu();
+  }
+
+  /**
+   * set the same height for all category block
+   */
+  function setCatThumbHeight()
+  {
+    var maxH=0;
+
+    $('div ul.thumbnailCategories li div.thumbnailCategory').each(
+     function (index)
+     {
+        height=$(this).height();
+        if(height>maxH) maxH=height;
+     }
+    );
+
+    $('div ul.thumbnailCategories li div.thumbnailCategory').height(maxH);
+  }
+
+  function setTipPosition_Category()
+  {
+    $('#categoryActionsID a.button').addClass('sTipOnLeft');
+    $('div ul.thumbnailCategories li div.thumbnailCategory').addClass('sTipOnTop');
+  }
+
+  function setTipPosition_Picture()
+  {
+    $('#imageToolBar div.navButtons a.navButton').addClass('sTipOnLeft').removeClass('sTipOnTop');
+    $('#imageToolBar div.randomButtons a.button').addClass('sTipOnRight').removeClass('sTipOnTop');
+  }
+
+  function setTipPosition_Menu()
+  {
+    $('#menubar span').removeClass('sTipOnTop');
+    $('#menuTagCloud a').removeClass('sTipOnTop').addClass('sTipOnRight');
+  }
+
+  init();
+}
Index: /extensions/gally/gally-grum-dark-II/themeconf.inc.php
===================================================================
--- /extensions/gally/gally-grum-dark-II/themeconf.inc.php	(revision 16019)
+++ /extensions/gally/gally-grum-dark-II/themeconf.inc.php	(revision 16020)
@@ -2,5 +2,5 @@
 /*
 Theme Name: Gally/Grum dark II
-Version: 1.4.5
+Version: 1.5.0
 Description: Dark theme
 Theme URI: http://piwigo.org/ext/extension_view.php?eid=371
