diff --git a/src/MainWindow.cs b/src/MainWindow.cs
index 69cbfae..202cb79 100644
--- a/src/MainWindow.cs
+++ b/src/MainWindow.cs
@@ -1638,6 +1638,8 @@ namespace FSpot
 			
 			if (old_size != TagsIconSize) {
 				tag_selection_widget.ColumnsAutosize();
+				if (photo_view != null)
+					photo_view.UpdateTagView ();
 				Preferences.Set (Preferences.TAG_ICON_SIZE, TagsIconSize);
 			}
 		}
diff --git a/src/PhotoView.cs b/src/PhotoView.cs
index 6c79d10..fa822aa 100644
--- a/src/PhotoView.cs
+++ b/src/PhotoView.cs
@@ -221,6 +221,7 @@ namespace FSpot {
 
 		public void UpdateTagView ()
 		{
+			tag_view.DrawTags ();
 			tag_view.QueueDraw ();
 		}
 	
diff --git a/src/Widgets/TagView.cs b/src/Widgets/TagView.cs
index d97f7a9..14aa8e3 100644
--- a/src/Widgets/TagView.cs
+++ b/src/Widgets/TagView.cs
@@ -20,6 +20,12 @@ public class TagView : EventBox {
 	private static int TAG_ICON_VSPACING = 5;
 	Tooltips parent_tips = null;
 	
+	private bool HideTags {
+		get { 
+			return (FSpot.Preferences.Get<int> (FSpot.Preferences.TAG_ICON_SIZE) == (int) Tag.IconSize.Hidden); 
+		}
+	}
+
 
 	public TagView ()
 	{
@@ -40,7 +46,7 @@ public class TagView : EventBox {
 		set {
 			photo = value;
 
-			if (photo != null && photo.Tags != null) {
+			if (photo != null && photo.Tags != null && !HideTags) {
 				SetSizeRequest ((thumbnail_size + TAG_ICON_VSPACING) * photo.Tags.Length,
 						thumbnail_size);
 			} else {
@@ -64,9 +70,18 @@ public class TagView : EventBox {
 		if (photo != null)
 			tags = photo.Tags;
 
-		if (tags == null)
+		if (tags == null || HideTags) {
+			SetSizeRequest(0,thumbnail_size);
 			return base.OnExposeEvent (args);
-
+		}
+		
+		DrawTags();
+		
+		return base.OnExposeEvent (args);
+	}
+	
+	public void DrawTags()
+	{
 		SetSizeRequest ((thumbnail_size + TAG_ICON_VSPACING) * tags.Length,
 				thumbnail_size);
 
@@ -106,8 +121,7 @@ public class TagView : EventBox {
 		}
 		if (parent_tips != null)
 			parent_tips.SetTip (this, String.Join (", ", names), null);
-
-		return base.OnExposeEvent (args);
+		
 	}
 }
 }
