XWIN(1)

NAME
XWin - X Server for the Cygwin environment on Microsoft Windows

SYNOPSIS
XWin [ options ] ...

DESCRIPTION
XWin is an X Server for the X Window System on the Cygwin environment running on Microsoft Windows.

MODES
XWin can operate in five different and incompatible modes:
* Single Window: This is the default option. The X server appears as a single Windows window and all X windows are contained within this window. This mode requires an external window manager.
* No Decoration: This mode is like single window mode except that the X server window does not have a title bar or border, thus maximizing the amount of space available for X windows within the X server window. This mode requires an external window manager.
* Full Screen: This mode is like single window mode except that the X server window takes the full screen, covering completely the Windows desktop. This mode requires an external window manager.
* Rootless: The X server works on a window covering the whole screen but the root window (traditionally covered with an X hatch pattern) is hidden from view. This mode requires an external window manager.
* Multi-Window: In this mode XWin uses its own integrated window manager in order to handle the top-level X windows, in such a way that they appear as normal Windows windows.

NOTE: Multi-Window mode will crash if an external window manager such as twm or fvwm is launched since Multi-Window uses its own internal window manager; all other modes require an external window manager in order to move, resize, and perform other operations on the individual X windows.

LOG
As it runs XWin writes messages indicating the most relevant events to the console from which it was called and to a log file that by default is located at /tmp/XWin.log. This file is mainly for debugging purposes.

PREFERENCES FILE
On startup XWin looks for the file $HOME/.XWinrc or, if the previous file does not exist, /usr/X11R6/lib/X11/system.XWinrc. .XWinrc allows setting preferences for the following:
1- To include items into the menu associated with the XWin icon which is in the Windows system tray. This functions in all modes that have a tray icon.
2- To include items in the menu which is associated with the Windows window that XWin -multiwindow produces for each top-level X window. That can be done both for the generic case and for particular programs.
3- To change the icon that is associated to the Windows window that XWin -multiwindow produces for each top-level X-window. Again, that can be done both for the generic case and for particular programs.

The format of the .XWinrc file is given in the man page XWinrc(5).

OPTIONS
In addition to the normal server options described in the Xserver(1) manual page, XWin accepts the following command line switches, all of which are optional:

-clipboard
    Enables the integration between the Cygwin/X clipboard and Windows clipboard. Do not use in conjunction with the xwinclip program.

-clipupdates num_boxes
    Specify an optional threshold, above which the boxes in a shadow update operation will be collected into a GDI clipping region. The clipping region is then used to do a single bit block transfer that is constrained to the updated area by the clipping region. There is some overhead involved in creating, installing, destroying, and removing the clipping region, thus there may not be much benefit for a small number of boxes (less than 10). It is even possible that this functionality does not provide a benefit at any number of boxes; we can only determine the usefulness of this feature through testing. This parameter works in conjunction with engines 1, 2, and 4 (Shadow GDI, Shadow DirectDraw, and Shadow DirectDraw Non-Locking, respectively).

-emulate3buttons timeout
    Emulate a three button mouse; pressing both buttons within timeout milliseconds causes an emulated middle button press. The default timeout is 50 milliseconds. Note that most mice with scroll wheel have middle button functionality, usually you will need this option only if you have a two button mouse without scroll wheel.

-emulatepseudo
    Create a depth 8 PseudoColor visual when running in depths 15, 16, 24, or 32, collectively known as TrueColor depths.
     At this date (April 2004) this option is not still operative.

-engine engine_type_id
    This option, which is intended for Cygwin/X developers, overrides the server's automatically supported engine type. This parameter will be ignored if the specified engine type is not supported on the current system. The supported engine type ids are 1 - Shadow GDI, 2 - Shadow DirectDraw, and 4 - Shadow DirectDraw4. Additionally, there is a barely functional experimental engine type id 16 - Native GDI.

-fullscreen [-depth depth] [-refresh rate_in_Hz]
    Run the server in fullscreen mode, as opposed to the default windowed mode.

-depth depth
    Specify the color depth, in bits per pixel, to use when running in fullscreen with a DirectDraw engine. This parameter is ignored if -fullscreen is not specified.

-refresh rate_in_Hz
    Specify an optional refresh rate to use when running in fullscreen with a DirectDraw engine. This parameter is ignored if -fullscreen is not specified.

-help
    Write a help text to the console and to the log file.

-ignoreinput
    Ignore keyboard and mouse input. This is usually only used for testing and debugging purposes.

-[no]keyhook
    Enable [disable] a low-level keyboard hook for catching special key combinations like Alt+Tab and passing them to the X Server instead of letting Windows handle them.

-lesspointer
    Hide the Windows mouse cursor when the mouse is over any Cygwin/X window (regardless of whether that window is active or inactive). This prevents the Windows mouse cursor from being placed overtop of the X cursor.

-logfile File_Name
    Change the log file from the default located at /tmp/XWin.log to the one indicated by File_Name.

-logverbose level
    Control the degree of verbosity of the log messages with the integer parameter level. For level=0 only fatal errors are reported, for level=1 (default) simple information about configuration is also given, for level=2 a detailed log information (including trace and debug output) is produced. Bigger values will yield a still more detailed debug output. At this date (April 2004) the option is still not fully operative; the default value is 2 and the output is insensitive to the level value.

-multimonitors
    Create a root window that covers all monitors on a system with multiple monitors.

-multiwindow
    Start the integrated Windowsi-based window manager, which launches each top-level X window in its own Windows window. Not to be used together with -rootless nor -fullscreen.

-nodecoration
    Do not give the Cygwin/X window a Windows window border, title bar, etc. This parameter only applies to windowed mode screens, i.e., this parameter is ignored when the -fullscreen parameter is specified.

-nounicodeclipboard
    Do not use Unicode clipboard even if NT-based platform.

-rootless
    Run the server in rootless mode. Not to be used with -multiwindow nor with -fullscreen.

-screen screen_number width height
    This parameter may be used to specify the screen_number, height, and width of one or several Cygwin/X screens; each Cygwin/X screen will be opened in its own window. When using multiple screens, be sure not to duplicate any screen numbers. XWin default behavior is to create a single screen that is roughly the size of the current Windows display area. Screen specific parameters, such as -fullscreen, can be applied as a default to all screens by placing those screen specific parameters before any -screen parameter. Screen specific parameters placed after the first -screen parameter will apply only to the immediately preceeding -screen parameter.

-scrollbars
    In windowed mode, allow screens bigger than the Windows desktop. Moreover, if the window has decorations, one can now resize it.

-[no]trayicon
    Do not create a tray icon. Default is to create one icon per screen. You can globally disable tray icons with -notrayicon, then enable it for specific screens with -trayicon for those screens.

-[no]unixkill
    Enable or disable the Ctrl-Alt-Backspace key combination as a signal to exit the X Server. The Ctrl-Alt-Backspace key combination is disabled by default.

-[no]winkill
    Enable or disable the Alt-F4 key combination as a signal to exit the X Server. The Alt-F4 key combination is enabled by default.

-swcursor
    Disable the usage of the windows cursor and use the X11 software cursor instead. -silent-dup-error If another instance of XWin is found running, exit silently and don't display the error messge.

-xkblayout layout

-xkbmodel model

-xkboptions option

-xkbrules rule

-xkbvariant variant
    These options implement the xkeyboard extension for loading a particular keyboard map as the X server starts. The behavior is similar to the setxkbmap program. The layout data is located at /usr/X11R6/lib/X11/xkb/. Additional information is found in the README files therein and in the man page of setxkbmap. For example in order to load a German layout for a pc105 keyboard one uses the options:
    -xkblayout de -xkbmodel pc105

Alternatively one may use the setxkbmap program after XWin is running or even the xmodmap program for loading the old-style keyboard maps.

SEE ALSO
X(__miscmansuffix__), Xserver(1), xdm(1), xinit(1), XWinrc(1), setxkbmap(1)

BUGS
XWin and this man page still have many limitations. Some of the more obvious ones are:
- The display mode can not be changed once the X server has started.
- The XWin software is developing rapidly; it is therefore likely that this man page is not up to date. It is always prudent to look also at the output of XWin -help and to the Cygwin/X User Guide at /usr/share/doc/cygwin-x-doc-x.x.x/ug/cygwin-x-ug.xxx in order to check the options that are operative.

AUTHORS
This list is by no means complete, but direct contributors to the Cygwin/X project include (in alphabetical order by last name): Stuart Adamson, Michael Bax, Jehan Bing, Lev Bishop, Dr. Peter Busch, Biju G C, Robert Collins, Nick Crabtree, Early Ehlinger, Christopher Faylor, John Fortin, Brian Genisio, Fabrizio Gennari, Alexander Gottwald, Ralf Habacker, Colin Harrison, Matthieu Herrb, Alan Hourihane, Pierre A Humblet, Harold L Hunt II, Dakshinamurthy Karra, Kensuke Matsuzaki, Takuma Murakami, Earle F. Philhower III, Benjamin Riefenstahl, Suhaib Siddiqi, Jack Tanner, and Nicholas Wourms.