<?xml version="1.0" encoding="UTF-8"?>


<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->


	
<helpdocument version="1.0">
<meta>
<topic id="textswriterguideresize_navigatorxml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">Docking and Resizing Windows</title>
<filename>/text/swriter/guide/resize_navigator.xhp</filename>
</topic>
<history>
<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
<lastedited date="2006-10-31T13:21:45">converted from old format - fpe</lastedited>
</history>
</meta>
<body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3145088"><bookmark_value>Navigator;docking and resizing</bookmark_value>
<bookmark_value>Styles and Formatting window;docking and resizing</bookmark_value>
<bookmark_value>Gallery;docking and resizing</bookmark_value>
<bookmark_value>docking; Navigator window</bookmark_value>
<bookmark_value>resizing;windows</bookmark_value>
</bookmark>
<paragraph role="heading" id="hd_id3145088" xml-lang="en-US" level="1" l10n="U" oldref="26"><variable id="resize_navigator"><link href="text/swriter/guide/resize_navigator.xhp" name="Docking and Resizing Windows">Docking and Resizing Windows</link>
</variable></paragraph>
<paragraph role="paragraph" id="par_id3155916" xml-lang="en-US" l10n="CHG" oldref="25">You can dock, undock and resize most $[officename] program windows such as the Navigator or the Styles and Formatting window.</paragraph>
<list type="unordered">
<listitem>
<paragraph role="paragraph" id="par_id3155861" xml-lang="en-US" l10n="CHG" oldref="27">To dock or undock the Navigator or the Styles and Formatting window, hold down the <item type="keycode">Ctrl</item> key and double-click on a gray area in the window. Alternatively, press <item type="keycode">Ctrl+Shift+F10</item>.</paragraph>
</listitem>
<listitem>
<paragraph role="paragraph" id="par_id3156096" xml-lang="en-US" l10n="CHG" oldref="28">To resize the window, drag a corner or an edge of the window.</paragraph>
</listitem>
</list>
<embed href="text/shared/00/00000004.xhp#related"/>
<embed href="text/shared/guide/autohide.xhp#autohide"/>
</body>
</helpdocument>
