pjs/widget/os2
Markus Stange 60801e919c Bug 598482 part 3 - Remove synchronous painting APIs from nsIWidget. r=roc 2011-12-23 22:52:21 -05:00
..
res
Makefile.in
MozSounds.cmd
README.firefox
README.seamonkey
README.thunderbird
nsAppShell.cpp
nsAppShell.h
nsBidiKeyboard.cpp
nsBidiKeyboard.h
nsClipboard.cpp
nsClipboard.h
nsDeviceContextSpecOS2.cpp
nsDeviceContextSpecOS2.h
nsDragService.cpp
nsDragService.h
nsFilePicker.cpp
nsFilePicker.h
nsGfxDefs.h
nsIdleServiceOS2.cpp
nsIdleServiceOS2.h
nsLookAndFeel.cpp
nsLookAndFeel.h
nsOS2Uni.cpp
nsOS2Uni.h
nsPrintOS2.cpp
nsPrintOS2.h
nsPrintOptionsOS2.cpp
nsPrintOptionsOS2.h
nsPrintdOS2.h
nsRwsService.cpp
nsRwsService.h
nsScreenManagerOS2.cpp
nsScreenManagerOS2.h
nsScreenOS2.cpp Bug 672166: Get rid of nsIScreen_MOZILLA_2_0_BRANCH and create nsBaseScreen for shared code. sr=roc 2012-01-04 18:12:48 -08:00
nsScreenOS2.h Bug 672166: Get rid of nsIScreen_MOZILLA_2_0_BRANCH and create nsBaseScreen for shared code. sr=roc 2012-01-04 18:12:48 -08:00
nsSound.cpp
nsSound.h
nsWidgetFactory.cpp
nsWindow.cpp Bug 598482 part 3 - Remove synchronous painting APIs from nsIWidget. r=roc 2011-12-23 22:52:21 -05:00
nsWindow.h Bug 598482 part 3 - Remove synchronous painting APIs from nsIWidget. r=roc 2011-12-23 22:52:21 -05:00
os2FrameWindow.cpp
os2FrameWindow.h
rws.h
rwserr.h
wdgtos2rc.h
widget.rc

README.thunderbird

================================================================================

= = = = = = = = = = = = = =   Thunderbird Read Me  = = = = = = = = = = = = = = =

================================================================================

Thunderbird is subject to the terms detailed in the license agreement
accompanying it.

This Read Me file contains information about system requirements and
installation instructions for the OS/2 build of Thunderbird.

For more info on Thunderbird, see http://www.mozilla.org/products/thunderbird/.
For more info on the OS/2 port see http://www.mozilla.org/ports/os2. To submit
bugs reports go to Bugzilla at https://bugzilla.mozilla.org.

For discussion and help for OS/2 specific problems, please use the newsgroup
mozilla.dev.ports.os2 on news.mozilla.org.  You can also get help by pointing
your IRC client to the #warpzilla channel on irc.mozilla.org.


================================================================================

                          Getting Thunderbird

================================================================================

Official Milestone builds of Thunderbird are published on the release page at

  http://www.mozilla.com/en-US/thunderbird/releases/

OS/2 releases are not created by Mozilla staff and may appear on the
page http://www.mozilla.org/ports/os2 before the releases page. Be sure to read
the release notes linked on the releases page for information on known problems
and installation issues.
OS/2 specific problems with this version are listed below.


================================================================================

                        System Requirements on OS/2

================================================================================

- This release requires the C runtime DLL (libc063.dll) from
     ftp://ftp.netlabs.org/pub/gcc/libc-0.6.3-csd3.zip
  in order to run.  You can unpack them in the same directory as the
  Thunderbird executable or somewhere else in your LIBPATH.

- Minimum hardware requirements
  + 400 MHz Pentium class processor
  + 128 MiB RAM plus 128 MiB free swap space
  + 40 MiB free harddisk space for installation
    plus storage space for messages and disk cache
  + Graphics card and driver capable of displaying more than 256 colors

- Recommended hardware for acceptable performance
  + 1.0 GHz processor
  + 512 MiB RAM plus 128 MiB free swap space
    NOTE: Thunderbird's performance and stability increases the more physical
    RAM is available.

- Software requirements
  + Installation on a file system supporting long file names
    (i.e. HPFS or JFS but not FAT)
  + OS/2 Warp 4 with Fixpack 15 or later (Warp 3 may work but is unsupported)
  + MPTS version 5.3
  + TCP/IP version 4.1
  + INETVER: SOCKETS.SYS=5.3007, AFOS2.SYS=5.3001, AFINET.SYS=5.3006
    NOTE: Do not attempt to use MPTS & TCP/IP versions below these INETVER
    levels. Although Thunderbird may seem to start and run normally with older
    stacks, some features Thunderbird needs are not implemented correctly in
    older MPTS versions, which may result in crashes and data loss.

  + Convenience Pack 2 or eComStation 1.0 or later meet these requirements
    out of the box.

  + Only Java plugins of version 1.4.1 or 1.4.2 are supported.
    (IBM Java 1.3.1 or earlier will crash the application!)

- Useful optional software
  The following packages enable additional features in Thunderbird. Download
  locations are listed below with a detailed description of the features.
  + Remote Workplace Server (RWS), version 0.8
  + Doodle's Screen Saver (DSSaver), version 1.8 or later

================================================================================

                          Installation Instructions

================================================================================

Unpack into a clean (new) directory. Installing on top of previously released
builds may cause problems with Thunderbird. It is therefore hightly recommended
to follow the instructions under "Separating profiles from installation
directory".

Note: These instructions do not tell you how to build Thunderbird.
For info on building the Thunderbird source, see
  https://developer.mozilla.org/en/Build_Documentation


OS/2 Installation Instructions
------------------------------

On OS/2, Thunderbird does not have an installation program. To install it,
download the .zip file and follow these steps:

1. Click the "Zip" link on the site you're downloading Thunderbird from to
   download the ZIP package to your machine. This file is typically called
   thunderbird-x.x.x.en-US.os2.zip where the "x.x.x" is replaced by the
   current Thunderbird version.

2. Navigate to where you downloaded the file and unpack it using your favorite
   unzip tool.

3. Keep in mind that the unzip process creates a directory "thunderbird" below
   the location you point it to, e.g.
      unzip thunderbird-3.0.en-US.os2.zip -d c:\thunderbird-3.0
   will unpack Thunderbird into c:\thunderbird-3.0\thunderbird.

4. Make sure that you are _not_ unpacking over an old installation. This is
   known to cause problems.

5. To start Thunderbird, navigate to the directory you extracted Thunderbird to,
   ensure that the C library DLL is copied to the installation directory or
   installed in the LIBPATH, and then double-click the thunderbird.exe object.


================================================================================

                      Tips and Problems

================================================================================

Running multiple versions concurrently
--------------------------------------

If you want to run more than one copy of Thunderbird, you have to use the
-no-remote parameter or set MOZ_NO_REMOTE=1 in your environment.

Because various members of the Mozilla family (i.e. SeaMonkey, Mozilla, Firefox,
Thunderbird, IBM Web Browser) may use different, incompatible versions of the
same DLL, some extra steps may be required to run them concurrently.

One workaround is the LIBPATHSTRICT variable. To run Thunderbird one can create
a CMD script like the following example (where an installation of Thunderbird
in the directory d:\internet\thunderbird is assumed):

   set LIBPATHSTRICT=T
   rem The next line may be needed when a different Mozilla program is listed in LIBPATH
   rem set BEGINLIBPATH=d:\internet\thunderbird
   rem The next line is only needed to run two versions of the same program
   rem set MOZ_NO_REMOTE=1
   d:
   cd d:\internet\thunderbird
   thunderbird.exe %1 %2 %3 %4 %5 %6 %7 %8 %9

Similarly, one can create a program object to start Thunderbird using the
following settings:

   Path and file name: *
   Parameters:         /c set LIBPATHSTRICT=T & .\thunderbird.exe "%*"
   Working directory:  d:\internet\thunderbird

(One might need to add MOZ_NO_REMOTE and/or BEGINLIBPATH as in the CMD script
above depending on the system configuration.)

Finally, the simplest method is to use the Run! utility by Rich Walsh that can
be found in the Hobbes Software Archive:

   http://hobbes.nmsu.edu/h-search.php?key=Run!

Read its documentation for more information.


Separating profiles from installation directory
-----------------------------------------------

To separate the locations of the user profile(s) (containing the bookmarks and
all customizations) from the installation directory to keep your preferences in
the case of an update even when using ZIP packages, set the variable
MOZILLA_HOME to a directory of your choice. You can do this either in Config.sys
or in a script or using a program object as listed above. If you add

   set MOZILLA_HOME=f:\Data

the Thunderbird user profile will be created in "f:\Data\Mozilla\Thunderbird".

If you are migrating from Mozilla, Thunderbird's import routine will only find
the existing Mozilla profile data if MOZILLA_HOME is correctly set to point to
it.


Other important environment variables
-------------------------------------

There are a few enviroment variables that can be used to control special
behavior of Thunderbird on OS/2:

- set NSPR_OS2_NO_HIRES_TIMER=1
  This causes Thunderbird not to use OS/2's high resolution timer. Set this if
  other applications using the high resolution timer (multimedia apps) act
  strangely.

- set MOZ_NO_REMOTE=1
  Use this to run two instances of Thunderbird simultaneously (like e.g. debug
  and optimized version).

- set MOZ_NO_RWS=1
  Use this to disable Remote Workplace Server support (see below).

Find more information on this topic and other tips on
   http://www.os2bbs.com/os2news/Warpzilla.html


Support for WPS objects
-----------------------

Thunderbird can make use of Rich Walsh's Remote Workplace Server (RWS) library
to access Workplace Shell objects from the application. This allows helper
applications for downloaded files to be selected based on their default WPS
association.

To enable this functionality, Thunderbird has to find the RWS DLLs. They have to
be located in a directory on the LIBPATH, in the Thunderbird directory, or
already be registered as a WPS class. For eComStation 2 this is already the
case. If RWS is not yet available on your system, download it from
   http://hobbes.nmsu.edu/h-search.php?key=rws08dll

If RWS is found on the system, it is used by Thunderbird automatically. In case
you need to disable RWS support, create an environment variable MOZ_NO_RWS and
set it to 1.


Idle timer for internal cleanups
--------------------------------

If Doodle's Screen Saver (DSSaver) v1.8 or later is installed, Thunderbird can
determine how long the user has been inactive. If the user has been inactive
for a while, cleanup operations may be performed.

DSSaver can be downloaded from
   ftp://ftp.netlabs.org/pub/dssaver/dssaver_v18.zip


Setting the OS/2 default mail and news program
----------------------------------------------

The default mail and news applications can be set by editing the USER_INI
file.

Two small applications make this change a bit easier and provide options to also
set default programs for other types of internet-related activities:

- ConfigApps
     http://hobbes.nmsu.edu/h-search.php?key=configapps1_1

- Internet Application Integration
     http://7cities.net/~mckinnis/os2/


Changed font handling
---------------------

To be able to display text, Thunderbird cannot make use of normal OS/2 routines
but has to use FreeType and FontConfig. This has the advantage that text can
be displayed with antialiasing, but at the same time has some caveats:

- Thunderbird cannot make use of OS/2 fonts like WarpSans and others which
  are not available in Type1 or TrueType format. It is therefore
  recommended to install the "Workplace Sans" font from
     http://users.socis.ca/~ataylo00/creative/fonts/
  or
     http://hobbes.nmsu.edu/h-search.php?key=wpsu_ttf
  which Thunderbird will use as a replacement of WarpSans.

- Display of text in some languages (e.g. Arabic) does not yet take into account
  that different forms of some characters exist.

To tweak the appearance of text, you can add two preferences, preferably using
about:config.

- gfx.os2.font.antialiasing (Boolean)
  This preference controls whether antialiasing is enabled, and defaults to
  true.

- gfx.os2.font.hinting (Integer)
  This preference controls the hinting level, and can be between 0 (no hinting)
  and 3 (full hinting). The default value is 2.
  Font hinting improves the contrast of displayed text, but may produce poor
  results for certain characters of some fonts, most notably the OS/2 version
  of "Times New Roman".

Note that these preferences only take effect when a font gets used for the first
time, so you may need to restart the application to see the full effect.


Known Problems of the OS/2 version
----------------------------------

Cross-platform problems are usually listed in the release notes of each
milestone release.

- Printing to normal OS/2 printer queues had to be disabled. It was slow even
  for simple pages and used huge amounts of RAM, so that in most cases the
  application crashed, see https://bugzilla.mozilla.org/show_bug.cgi?id=415522.
  While the queues are still displayed in the printing dialog, any printing
  operation will instead create a PDF file. By default this file is placed on
  the Desktop, with the name Thunderbird_<date>_<time>.pdf, where <date> and
  <time> are replaced by the current system time. If you want to use another
  name, select "Print to file" before pressing the Print button.
  The resulting PDF file can be printed using applications like Lucide, Acrobat
  Reader, or GSview.

- Fonts with names containing special characters (like Asian Unicode names)
  will not display correctly in the list of fonts in the Options panel.

- Thunderbird will beep when copying more than 64 kB of text to the clipboard.
  This is to alert users that many applications (most notably the system
  editor, EPM, and applications running in VIO windows) cannot paste more
  than this.

Other known problems can be found by following the link "Current Open Warpzilla
Bugs" on the OS/2 Mozilla page <http://www.mozilla.org/ports/os2/>.