Index: _source/plugins/toolbar/plugin.js
===================================================================
--- _source/plugins/toolbar/plugin.js	(revision 3386)
+++ _source/plugins/toolbar/plugin.js	(working copy)
@@ -46,6 +46,23 @@
 		}
 	};
 
+	var collapserFn = CKEDITOR.tools.addFunction(
+		function( collapser )
+		{
+			var toolbox = collapser.getPrevious();
+
+			if ( toolbox.isVisible() )
+			{
+				toolbox.hide();
+				collapser.addClass( 'cke_toolbox_collapser_min' );
+			}
+			else
+			{
+				toolbox.show();
+				collapser.removeClass( 'cke_toolbox_collapser_min' );
+			}
+		});
+
 	CKEDITOR.plugins.add( 'toolbar',
 	{
 		init : function( editor )
@@ -105,8 +122,11 @@
 					{
 						editor.toolbox = new toolbox();
 
-						var output = [ '<div class="cke_toolbox">' ];
+						var output = [ '<div class="cke_toolbox"' ],
+							expanded =  editor.config.toolbarStartupExpanded;
 
+						output.push( expanded ? '>' : ' style="display:none">' );
+
 						var toolbars = editor.toolbox.toolbars,
 							toolbar = 
 									( editor.config.toolbar instanceof Array ) ? 
@@ -181,6 +201,16 @@
 
 						output.push( '</div>' );
 
+						if ( editor.config.toolbarCanCollapse )
+						{
+							output.push( '<a class="cke_toolbox_collapser' );
+
+							if ( !expanded )
+								output.push( ' cke_toolbox_collapser_min' );
+
+							output.push( '" onclick="CKEDITOR.tools.callFunction(' + collapserFn + ',new CKEDITOR.dom.element(this))"></a>' );
+						}
+
 						event.data.html += output.join( '' );
 					}
 				});
@@ -264,3 +294,6 @@
  * <b>CKEDITOR.config.toolbar = 'Basic'; 
  */
 CKEDITOR.config.toolbar = 'Full';
+
+CKEDITOR.config.toolbarCanCollapse = true;
+CKEDITOR.config.toolbarStartupExpanded = true;
Index: _source/skins/office2003/images/arrowleft.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: _source\skins\office2003\images\arrowleft.gif
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: _source/skins/office2003/images/arrowright.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: _source/skins/office2003/images/arrowtop.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: _source\skins\office2003\images\arrowtop.gif
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: _source/skins/office2003/toolbar.css
===================================================================
--- _source/skins/office2003/toolbar.css	(revision 3385)
+++ _source/skins/office2003/toolbar.css	(working copy)
@@ -11,6 +11,39 @@
 	}
 }
 
+.cke_skin_office2003 a.cke_toolbox_collapser, 
+.cke_skin_office2003 a:hover.cke_toolbox_collapser
+{
+	background-image: url(images/arrowtop.gif);
+	background-repeat: no-repeat;
+	background-position: center center;
+	width: 11px;
+	height: 11px;
+	float: right;
+	border: outset 1px;
+	margin: 11px 2px 2px;
+	cursor: pointer;
+}
+
+.cke_skin_office2003 .cke_rtl a.cke_toolbox_collapser, 
+.cke_skin_office2003 .cke_rtl a:hover.cke_toolbox_collapser
+{
+	float: left;
+}
+
+.cke_skin_office2003 a.cke_toolbox_collapser_min, 
+.cke_skin_office2003 a:hover.cke_toolbox_collapser_min
+{
+	background-image: url(images/arrowleft.gif);
+	margin: 2px;
+}
+
+.cke_skin_office2003 .cke_rtl a.cke_toolbox_collapser_min, 
+.cke_skin_office2003 .cke_rtl a:hover.cke_toolbox_collapser_min
+{
+	background-image: url(images/arrowright.gif);
+}
+
 .cke_skin_office2003 .cke_toolbar
 {
 	background-color: #d6dff7;
Index: _source/skins/v2/images/arrowleft.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: _source\skins\v2\images\arrowleft.gif
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: _source/skins/v2/images/arrowright.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: _source/skins/v2/images/arrowtop.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: _source\skins\v2\images\arrowtop.gif
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: _source/skins/v2/toolbar.css
===================================================================
--- _source/skins/v2/toolbar.css	(revision 3385)
+++ _source/skins/v2/toolbar.css	(working copy)
@@ -16,6 +16,39 @@
 	}
 }
 
+.cke_skin_v2 a.cke_toolbox_collapser, 
+.cke_skin_v2 a:hover.cke_toolbox_collapser
+{
+	background-image: url(images/arrowtop.gif);
+	background-repeat: no-repeat;
+	background-position: center center;
+	width: 11px;
+	height: 11px;
+	float: right;
+	border: outset 1px;
+	margin: 11px 2px 2px;
+	cursor: pointer;
+}
+
+.cke_skin_v2 .cke_rtl a.cke_toolbox_collapser, 
+.cke_skin_v2 .cke_rtl a:hover.cke_toolbox_collapser
+{
+	float: left;
+}
+
+.cke_skin_v2 a.cke_toolbox_collapser_min, 
+.cke_skin_v2 a:hover.cke_toolbox_collapser_min
+{
+	background-image: url(images/arrowleft.gif);
+	margin: 2px;
+}
+
+.cke_skin_v2 .cke_rtl a.cke_toolbox_collapser_min, 
+.cke_skin_v2 .cke_rtl a:hover.cke_toolbox_collapser_min
+{
+	background-image: url(images/arrowright.gif);
+}
+
 .cke_skin_v2 .cke_toolbar
 {
 	padding-top: 1px;
