summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--connectivity/inc/connectivity/sqlnode.hxx1
-rw-r--r--connectivity/source/parse/sqlnode.cxx10
-rw-r--r--desktop/util/template.manifest2
-rw-r--r--drawinglayer/source/primitive2d/metafileprimitive2d.cxx2
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu2
-rwxr-xr-xreadlicense_oo/docs/readme/readme.xrm147
-rw-r--r--readlicense_oo/odt/CREDITS.odtbin56125 -> 24738 bytes
-rw-r--r--sfx2/source/appl/sfxhelp.cxx20
-rw-r--r--sfx2/source/appl/shutdowniconunx.cxx16
-rw-r--r--sfx2/source/doc/docfile.cxx329
-rw-r--r--svx/source/intro/ooo.src2
-rw-r--r--sysui/desktop/freedesktop/freedesktop-menus.spec4
-rw-r--r--sysui/desktop/mandriva/mandriva-menus.spec7
-rw-r--r--sysui/desktop/productversion.mk12
-rw-r--r--sysui/desktop/redhat/redhat-menus.spec5
-rw-r--r--sysui/desktop/share/create_tree.sh7
-rw-r--r--sysui/desktop/suse/suse-menus.spec5
-rw-r--r--xmlhelp/prj/build.lst2
-rw-r--r--xmlhelp/source/cxxhelp/provider/databases.hxx16
-rw-r--r--xmlhelp/source/cxxhelp/provider/provider.cxx6
-rw-r--r--xmlhelp/source/treeview/makefile.mk1
-rw-r--r--xmlhelp/source/treeview/tvread.cxx5
-rw-r--r--xmlhelp/util/makefile.mk1
23 files changed, 328 insertions, 274 deletions
diff --git a/connectivity/inc/connectivity/sqlnode.hxx b/connectivity/inc/connectivity/sqlnode.hxx
index 9a4ade8fefc9..a05384b3ae4c 100644
--- a/connectivity/inc/connectivity/sqlnode.hxx
+++ b/connectivity/inc/connectivity/sqlnode.hxx
@@ -232,6 +232,7 @@ namespace connectivity
character_string_type,
other_like_predicate_part_2,
between_predicate_part_2,
+ cast_spec,
rule_count, // letzter_wert
UNKNOWN_RULE // ID indicating that a node is no rule with a matching Rule-enum value (see getKnownRuleID)
};
diff --git a/connectivity/source/parse/sqlnode.cxx b/connectivity/source/parse/sqlnode.cxx
index 76978d4134d9..15ebb8f956d7 100644
--- a/connectivity/source/parse/sqlnode.cxx
+++ b/connectivity/source/parse/sqlnode.cxx
@@ -1427,7 +1427,8 @@ OSQLParser::OSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star:
{ OSQLParseNode::parenthesized_boolean_value_expression, "parenthesized_boolean_value_expression" },
{ OSQLParseNode::character_string_type, "character_string_type" },
{ OSQLParseNode::other_like_predicate_part_2, "other_like_predicate_part_2" },
- { OSQLParseNode::between_predicate_part_2, "between_predicate_part_2" }
+ { OSQLParseNode::between_predicate_part_2, "between_predicate_part_2" },
+ { OSQLParseNode::cast_spec, "cast_spec" }
};
size_t nRuleMapCount = SAL_N_ELEMENTS( aRuleDescriptions );
OSL_ENSURE( nRuleMapCount == size_t( OSQLParseNode::rule_count ), "OSQLParser::OSQLParser: added a new rule? Adjust this map!" );
@@ -2513,6 +2514,7 @@ void OSQLParseNode::parseLeaf(::rtl::OUStringBuffer& rString, const SQLParseNode
rString.append(m_aNodeValue);
rString.appendAscii("#");
break;
+
case SQL_NODE_INTNUM:
case SQL_NODE_APPROXNUM:
{
@@ -2525,6 +2527,12 @@ void OSQLParseNode::parseLeaf(::rtl::OUStringBuffer& rString, const SQLParseNode
rString.append(aTmp);
} break;
+ case SQL_NODE_PUNCTUATION:
+ if ( getParent() && SQL_ISRULE(getParent(),cast_spec) && m_aNodeValue.toChar() == '(' ) // no spaces in front of '('
+ {
+ rString.append(m_aNodeValue);
+ break;
+ }
// fall through
default:
if (rString.getLength() && m_aNodeValue.toChar() != '.' && m_aNodeValue.toChar() != ':' )
diff --git a/desktop/util/template.manifest b/desktop/util/template.manifest
index f5b196a5edf5..d3bd0c101f2f 100644
--- a/desktop/util/template.manifest
+++ b/desktop/util/template.manifest
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="x86" name="LibreOffice" type="win32" />
-<description>http://www.openoffice.org</description>
+<description>http://www.documentfoundation.org</description>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="x86"/>
diff --git a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
index e135a3509ba6..d205981205aa 100644
--- a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
@@ -2018,7 +2018,7 @@ namespace
if(nTextLength + nTextIndex > nStringLength)
{
- nTextLength = nStringLength - nTextIndex;
+ nTextLength = nTextIndex > nStringLength ? 0 : nStringLength - nTextIndex;
}
if(nTextLength && rPropertyHolders.Current().getTextColorActive())
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
index 634e026c8f9a..6ba9193364a6 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
@@ -466,7 +466,7 @@
</node>
<node oor:name=".uno:ClearContents" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
- <value xml:lang="en-US">Delete Contents</value>
+ <value xml:lang="en-US">Clear Contents</value>
</prop>
</node>
<node oor:name=".uno:AutoFill" oor:op="replace">
diff --git a/readlicense_oo/docs/readme/readme.xrm b/readlicense_oo/docs/readme/readme.xrm
index f11445015ed9..9e6dff905238 100755
--- a/readlicense_oo/docs/readme/readme.xrm
+++ b/readlicense_oo/docs/readme/readme.xrm
@@ -18,15 +18,14 @@
<body>
<div id="Intro">
<h1 id="Welcome" xml:lang="en-US">${PRODUCTNAME} ${PRODUCTVERSION} ReadMe</h1>
- <p id="LatestUpdates" xml:lang="en-US">For latest updates to this readme file, see <a href="http://www.libreoffice.org/welcome/readme/">http://www.libreoffice.org/welcome/readme/</a></p>
- <p id="A6" xml:lang="en-US">This file contains important information about this program. Please read this information very carefully before starting work.</p>
- <p id="A7" xml:lang="en-US">The LibreOffice Community, responsible for the development of this product, would like to invite you to participate as a community member. As a new user, you can check out the ${PRODUCTNAME} site with helpful user information at <a href="http://www.libreoffice.org/welcome/introduction/">http://www.libreoffice.org/welcome/introduction/</a></p>
- <p id="A9" xml:lang="en-US">Also read the sections below about getting involved in the LibreOffice project.</p>
- <h3 id="A10" xml:lang="en-US">Is ${PRODUCTNAME} really free for any user? </h3>
- <p id="A11" xml:lang="en-US">${PRODUCTNAME} is free for use by everybody. You may take this copy of ${PRODUCTNAME} and install it on as many computers as you like, and use it for any purpose you like (including commercial, government, public administration and educational use). For further details see the license text delivered together with ${PRODUCTNAME} or <a href="http://www.libreoffice.org/license/">http://www.libreoffice.org/license/</a></p>
- <h3 id="A12" xml:lang="en-US">Why is ${PRODUCTNAME} free for any user?</h3>
- <p id="A13" xml:lang="en-US">You can use this copy of ${PRODUCTNAME} today free of charge because individual contributors and corporate sponsors have designed, developed, tested, translated, documented, supported, marketed, and helped in many other ways to make ${PRODUCTNAME} what it is today - the world's leading open-source office software.</p>
- <p id="A13b" xml:lang="en-US">If you appreciate their efforts, and would like to ensure LibreOffice continues into the future, please consider contributing to the project - see <a href="http://www.libreoffice.org/contribution/">http://www.libreoffice.org/contribution/</a> for details. Everyone has a contribution to make.</p>
+ <p id="LatestUpdates" xml:lang="en-US">For latest updates to this readme file, see <a href="http://www.libreoffice.org/welcome/readme.html">http://www.libreoffice.org/welcome/readme.html</a></p>
+ <p id="A6" xml:lang="en-US">This file contains important information about the ${PRODUCTNAME} software. You are recommended to read this information very carefully before starting installation.</p>
+ <p id="A7" xml:lang="en-US">The ${PRODUCTNAME} community is responsible for the development of this product, and invites you to consider participating as a community member. If you are a new user, you can visit the ${PRODUCTNAME} site, where you will find lots of information about the ${PRODUCTNAME} project and the communities that exist around it. Go to <a href="http://www.libreoffice.org/">http://www.libreoffice.org/</a>.</p>
+ <h3 id="A10" xml:lang="en-US">Is ${PRODUCTNAME} Really Free for Any User?</h3>
+ <p id="A11" xml:lang="en-US">${PRODUCTNAME} is free for use by everybody. You may take this copy of ${PRODUCTNAME} and install it on as many computers as you like, and use it for any purpose you like (including commercial, government, public administration and educational use). For further details see the license text packaged with this ${PRODUCTNAME} download.</p>
+ <h3 id="A12" xml:lang="en-US">Why is ${PRODUCTNAME} Free for Any User?</h3>
+ <p id="A13" xml:lang="en-US">You can use this copy of ${PRODUCTNAME} free of charge because individual contributors and corporate sponsors have designed, developed, tested, translated, documented, supported, marketed, and helped in many other ways to make ${PRODUCTNAME} what it is today - the world's leading Open Source productivity software for home and office.</p>
+ <p id="A13b" xml:lang="en-US">If you appreciate their efforts, and would like to ensure that ${PRODUCTNAME} continues to be available far into the future, please consider contributing to the project - see <a href="http://www.documentfoundation.org/contribution/">http://www.documentfoundation.org/contribution/</a> for details. Everyone can make a contribution of some kind.</p>
</div>
<div id="Installation">
@@ -91,102 +90,88 @@
<p id="DLLA1" xml:lang="en-US">If you perform an administrative installation using setup /a, you need to make sure that the file msvc90.dll is installed on the system. This file is required for ${PRODUCTNAME} to start after an administrative installation. You can get the file from <a href="http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF">http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF</a></p>
<p class="note" id="AdminNeeded" xml:lang="en-US">Please be aware that administrator rights are needed for the installation process.</p>
</div>
- <div class="SOLSPARC" id="Sols2">
- <ul>
- <li>
- <p id="s2335" xml:lang="en-US">Solaris 10 operating system (SPARC platform) or higher</p>
- </li>
-
- <li>
- <p id="s253" xml:lang="en-US">256 MB RAM (512 MB RAM recommended)</p>
- </li>
-
- <li>
- <p id="s23seg" xml:lang="en-US">Up to 1.55 GB available hard disk space</p>
- </li>
-
- <li>
- <p id="s2s43gfe" xml:lang="en-US">X Server with 1024x768 resolution (higher resolution recommended), with at least 256 colors</p>
- </li>
-
- <li>
- <p id="n4234rw" xml:lang="en-US">Window Manager</p>
- </li>
-
- <li>
- <p id="wd2dff2" xml:lang="en-US">Gnome 2.6 or higher, with the gail 1.8.6 and the at-spi 1.7 packages, required for support of assistive technology tools (AT tools)</p>
- </li>
- </ul>
- </div>
- <div class="SOLX86" id="Solia2">
- <ul>
- <li>
- <p id="s23h" xml:lang="en-US">Solaris 10 operating system (x86 platform) or higher</p>
- </li>
-
- <li>
- <p id="s24f" xml:lang="en-US">256 MB RAM (512 MB RAM recommended)</p>
- </li>
-
- <li>
- <p id="fgheg" xml:lang="en-US">Up to 1.55 GB available hard disk space</p>
- </li>
-
- <li>
- <p id="fghfgh" xml:lang="en-US">X Server with 1024x768 resolution (higher resolution recommended), with at least 256 colors</p>
- </li>
-
- <li>
- <p id="mgjfg" xml:lang="en-US">Window Manager</p>
- </li>
-
- <li>
- <p id="wd2dff1" xml:lang="en-US">Gnome 2.6 or higher, with the gail 1.8.6 and the at-spi 1.7 packages, required for support of assistive technology tools (AT tools)</p>
- </li>
- </ul>
- </div>
<div class="LINUX" id="Linuxi2">
+ <p id="s2we10" xml:lang="en-US">As a general rule, you are recommended to install ${PRODUCTNAME} via the installation methods recommended by your particular Linux distribution (such as the Ubuntu Software Center, in the case of Ubuntu Linux). This is because it is usually the simplest way to obtain an installation that is optimally integrated into your system. Indeed, ${PRODUCTNAME} may well be already installed by default when you originally install your Linux operating system.</p>
+ <p id="s2we11" xml:lang="en-US">This "stand-alone" ${PRODUCTNAME} installer is provided for users in need of previews, having special needs, and for out-of-the-ordinary cases.</p>
<ul>
<li>
- <p id="s2we35" xml:lang="en-US">Linux Kernel version 2.6.18 or higher</p>
- </li>
-
- <li>
- <p id="s253we" xml:lang="en-US">glibc2 version 2.5 or higher</p>
+ <p id="s2we35" xml:lang="en-US">Linux Kernel version 2.6.18 or higher;</p>
</li>
<li>
- <p id="s256we" xml:lang="en-US">gtk version 2.10.4 or higher</p>
+ <p id="s253we" xml:lang="en-US">glibc2 version 2.5 or higher;</p>
</li>
<li>
- <p id="s2etfseg" xml:lang="en-US">Pentium compatible PC (Pentium III or Athlon recommended)</p>
+ <p id="s256we" xml:lang="en-US">gtk version 2.10.4 or higher;</p>
</li>
<li>
- <p id="s2ssdfe" xml:lang="en-US">256 MB RAM (512 MB RAM recommended)</p>
+ <p id="s2etfseg" xml:lang="en-US">Pentium compatible PC (Pentium III or Athlon recommended);</p>
</li>
<li>
- <p id="n42dfgf" xml:lang="en-US">Up to 1.55 GB available hard disk space</p>
+ <p id="s2ssdfe" xml:lang="en-US">256 MB RAM (512 MB RAM recommended);</p>
</li>
<li>
- <p id="ghjhhr" xml:lang="en-US">X Server with 1024x768 resolution (higher resolution recommended), with at least 256 colors</p>
+ <p id="n42dfgf" xml:lang="en-US">Up to 1.55 GB available hard disk space;</p>
</li>
<li>
- <p id="fhrtz5" xml:lang="en-US">Window Manager</p>
+ <p id="ghjhhr" xml:lang="en-US">X Server with 1024x768 resolution (higher resolution recommended), with at least 256 colors;</p>
</li>
<li>
- <p id="wd2dff" xml:lang="en-US">Gnome 2.16 or higher, with the gail 1.8.6 and the at-spi 1.7 packages, required for support of assistive technology tools (AT tools)</p>
+ <p id="wd2dff" xml:lang="en-US">Gnome 2.16 or higher, with the gail 1.8.6 and the at-spi 1.7 packages (required for support for assistive technology [AT] tools), or another compatible GUI (such as KDE, among others).</p>
</li>
</ul>
- <p id="Linuxi3a" xml:lang="en-US">There is a wide variety of Linux distributions, and even within the same distribution there may be different installation options (KDE vs Gnome, etc.). Some distributions ship with their own ‘native’ version of ${PRODUCTNAME}, which may have different features from this Community ${PRODUCTNAME}. Sometimes you can install the Community ${PRODUCTNAME} alongside the ‘native’ version. However, it’s usually safer to remove the ‘native’ version before installing this Community version. Consult the documentation for your distribution for details of how to do this.</p>
- <p class="note" id="Linuxi4a" xml:lang="en-US">It is recommended that you always backup your system before you remove or install software.</p>
+ <p id="Linuxi3a" xml:lang="en-US">There is a wide variety of Linux distributions, and there may be different installation options (KDE vs Gnome, etc.) available from the same Linux vendor. Some distributions ship with their own “native” version of ${PRODUCTNAME}, which may have different features from this community-supplied version of ${PRODUCTNAME}. In many cases, you can install the community-supplied ${PRODUCTNAME} alongside a native version. However, you may prefer to remove the “native” version before installing this community-supplied version. For details on how to do that, please consult the user help resources provided by your particular Linux vendor.</p>
+ <p class="note" id="Linuxi4a" xml:lang="en-US">It is a recommended best practice to back-up your system and data before you remove or install software.</p>
</div>
- <p id="Precautions" xml:lang="en-US">Please make sure you have enough free memory in the temporary directory on your system and that read, write and run access rights have been granted. Close all other programs before starting the installation.</p>
+ <p id="Precautions" xml:lang="en-US">Please make sure you have enough free memory in the temporary directory on your system, and please ensure that read, write and run access rights have been granted. Close all other programs before starting the installation process.</p>
+ <h3 id="sdfsdfgf42s" xml:lang="en-US">Installation of ${PRODUCTNAME} on Debian/Ubuntu-based Linux systems</h3>
+ <p id="debianinstall1" xml:lang="en-US">If you have a previous version of ${PRODUCTNAME} already installed, then you will need to de-install it before proceeding further. For instructions on how to do that, please read the section below entitled Deinstallation of a Previous Version of ${PRODUCTNAME}. For instructions on how to install a language pack (after having installed the US English version of ${PRODUCTNAME}), please read the section below entitled Installing a Language Pack.</p>
+ <p id="debianinstall2" xml:lang="en-US">When you unpack the downloaded archive, you will see that the contents have been decompressed into a sub-directory. Open a file manager window, and change directory to the one starting with "LibO_", followed by the version number and some platform information.</p>
+ <p id="debianinstall3" xml:lang="en-US">This directory contains a subdirectory called "DEBS". Change directory to the "DEBS" directory.</p>
+ <p id="debianinstall4" xml:lang="en-US">Right-click within the directory and choose "Open in Terminal". A terminal window will open. From the command line of the terminal window, enter the following command (you will be prompted to enter your root user's password before the command will execute):</p>
+ <p id="debianinstall5" xml:lang="en-US">sudo dpkg -i *.deb</p>
+ <p id="debianinstall6" xml:lang="en-US">The above dpkg command does the first part of the installation process. To complete the process, you also need to install the desktop integration packages. To do this, change directory to the "desktop-integration" directory that is within the "DEBS" directory, using the following command:</p>
+ <p id="debianinstall7" xml:lang="en-US">cd desktop-integration</p>
+ <p id="debianinstall8" xml:lang="en-US">Now run the dpkg command again:</p>
+ <p id="debianinstall9" xml:lang="en-US">sudo dpkg -i *.deb</p>
+ <p id="debianinstallA" xml:lang="en-US">The installation process is now completed, and you should have icons for all the ${PRODUCTNAME} applications in your desktop's Applications/Office menu.</p>
+ <h3 id="sdfsdfgf42t" xml:lang="en-US">Installation of ${PRODUCTNAME} on Fedora, Suse, Mandriva and other Linux systems using RPM packages</h3>
+ <p id="rpminstall1" xml:lang="en-US">If you have a previous version of ${PRODUCTNAME} already installed, then you will need to de-install it before proceeding further. For instructions on how to do that, please read the section below entitled De-installation of a Previous Version of ${PRODUCTNAME}. For instructions on how to install a language pack (after having installed the US English version of ${PRODUCTNAME}), please read the section below entitled Installing a Language Pack.</p>
+ <p id="rpminstall2" xml:lang="en-US">When you unpack the downloaded archive, you will see that the contents have been decompressed into a sub-directory. Open a file manager window, and change directory to the one starting with "LibO_", followed by the version number and some platform information.</p>
+ <p id="rpminstall3" xml:lang="en-US">This directory contains a subdirectory called "RPMS". Change directory to the "RPMS" directory.</p>
+ <p id="rpminstall4" xml:lang="en-US">Right-click within the directory and choose "Open in Terminal". A terminal window will open. From the command line of the terminal window, enter the following command (you will be prompted to enter your root user's password before the command will execute):</p>
+ <p id="rpminstall5" xml:lang="en-US">For Fedora-based systems: su -c 'yum install *.rpm'</p>
+ <p id="rpminstall6" xml:lang="en-US">For Mandriva-based systems: su urpmi *.rpm</p>
+ <p id="rpminstall7" xml:lang="en-US">For other RPM-based systems (Suse, etc.): rpm -Uvh *.rpm</p>
+ <p id="rpminstall8" xml:lang="en-US">The above command does the first part of the installation process. To complete the process, you also need to install the desktop integration packages. To do this, change directory to the "desktop-integration" directory that is within the "RPMS" directory, using the following command:</p>
+ <p id="rpminstall9" xml:lang="en-US">cd desktop-integration</p>
+ <p id="rpminstallA" xml:lang="en-US">Now run the installation command again:</p>
+ <p id="rpminstallB" xml:lang="en-US">For Fedora-based systems: su -c 'yum install *redhat*.rpm'</p>
+ <p id="rpminstallC" xml:lang="en-US">For Mandriva-based systems: su urpmi *mandriva*.rpm</p>
+ <p id="rpminstallD" xml:lang="en-US">For other RPM-based systems (Suse, etc.): rpm -Uvh *suse*.rpm</p>
+ <p id="rpminstallE" xml:lang="en-US">The installation process is now completed, and you should have icons for all the ${PRODUCTNAME} applications in your desktop's Applications/Office menu.</p>
+ <h3 id="sdfsdfgf42t2" xml:lang="en-US">Notes Concerning Desktop Integration for Linux Distributions Not Covered in the Above Installation Instructions</h3>
+ <p id="otherinstall1" xml:lang="en-US">It should be easily possible to install ${PRODUCTNAME} on other Linux distributions not specifically covered in these installation instructions. The main aspect for which differences might be encountered is desktop integration.</p>
+ <p id="otherinstall2" xml:lang="en-US">The desktop-integration directory also contains a package named libreoffice3.3-freedesktop-menus-3.3.1.noarch.rpm (or similar). This is a package for all Linux distributions that support the Freedesktop.org specifications/recommendations (<a href="http://en.wikipedia.org/wiki/Freedesktop.org">http://en.wikipedia.org/wiki/Freedesktop.org</a>), and is provided for installation on other Linux distributions not covered in the aforementioned instructions.</p>
+ <h3 id="sdfsdfgf42t3" xml:lang="en-US">Installing a Language Pack</h3>
+ <p id="linuxlangpack1" xml:lang="en-US">Download the language pack for your desired language and platform. They are available from the same location as the main installation archive. From the Nautilus file manager, extract the downloaded archive into a directory (your desktop, for instance). Ensure that you have exited all ${PRODUCTNAME} applications (including the QuickStarter, if it is started).</p>
+ <p id="linuxlangpack2" xml:lang="en-US">Change directory to the directory in which you extracted your downloaded language pack.</p>
+ <p id="linuxlangpack3" xml:lang="en-US">Now change directory to the directory that was created during the extraction process. For instance, for the French language pack for a 32-bit Debian/Ubuntu-based system, the directory is named LibO_, plus some version information, plus Linux_x86_langpack-deb_fr.</p>
+ <p id="linuxlangpack4" xml:lang="en-US">Now change directory to the directory that contains the packages to install. On Debian/Ubuntu-based systems, the directory will be DEBS. On Fedora, Suse or Mandriva systems, the directory will be RPMS.</p>
+ <p id="linuxlangpack5" xml:lang="en-US">From the Nautilus file manager, right-click in the directory and choose the command "Open in terminal". In the terminal window you just opened, execute the command to install the language pack (with all of the commands below, you may be prompted to enter your root user's password):</p>
+ <p id="linuxlangpack6" xml:lang="en-US">For Debian/Ubuntu-based systems: sudo dpkg -i *.deb</p>
+ <p id="linuxlangpack7" xml:lang="en-US">For Fedora-based systems: su -c 'yum install *.rpm'</p>
+ <p id="linuxlangpack8" xml:lang="en-US">For Mandriva-based systems: su urpmi *.rpm</p>
+ <p id="linuxlangpack9" xml:lang="en-US">For other RPM-using systems (Suse, etc.): rpm -Uvh *.rpm</p>
+ <p id="linuxlangpackA" xml:lang="en-US">Now start one of the ${PRODUCTNAME} applications - Writer, for instance. Go to the Tools menu and choose Options. In the Options dialog box, click on "Language Settings" and then click on "Languages". Dropdown the "User interface" list and select the language you just installed. If you want, do the same thing for the "Locale setting", the "Default currency", and the "Default languages for documents".</p>
+ <p id="linuxlangpackB" xml:lang="en-US">After adjusting those settings, click on OK. The dialog box will close, and you will see an information message telling you that your changes will only be activated after you exit ${PRODUCTNAME} and start it again (remember to also exit the QuickStarter if it is started).</p>
+ <p id="linuxlangpackC" xml:lang="en-US">The next time you start ${PRODUCTNAME}, it will start in the language you just installed.</p>
</div>
<div class="LINUX WIN" id="StartupProblems">
@@ -225,8 +210,8 @@
</div>
<div class="LINUX" id="Graphic Performance">
- <h2 id="gfh6w" xml:lang="en-US">Graphic Performance</h2>
- <p id="pji76w" xml:lang="en-US">By default, ${PRODUCTNAME} favours nice-looking graphics over speed. If you experience slow graphics, switching off 'Tools - Options - ${PRODUCTNAME} - View - Use Anti-Aliasing' may help.</p>
+ <h2 id="gfh6w0" xml:lang="en-US">Graphic Performance</h2>
+ <p id="pji76w0" xml:lang="en-US">By default, ${PRODUCTNAME} favours nice-looking graphics over speed. If you experience slow graphics, switching off 'Tools - Options - ${PRODUCTNAME} - View - Use Anti-Aliasing' may help.</p>
</div>
<div class="WIN" id="Mapi">
@@ -275,7 +260,7 @@
<p id="subscribelist4" xml:lang="en-US">General developer list: libreoffice@lists.freedesktop.org (heavy traffic)</p>
</li>
</ul>
- <h3 xml:lang="en-US">Joining one or more Projects</h3>
+ <h3 id="joining0" xml:lang="en-US">Joining one or more Projects</h3>
<p id="joining" xml:lang="en-US">You can make major contributions to this important open source project even if you have limited software design or coding experience. Yes, you!</p>
</div>
diff --git a/readlicense_oo/odt/CREDITS.odt b/readlicense_oo/odt/CREDITS.odt
index a6223b7ce7c2..673bf9f3aa56 100644
--- a/readlicense_oo/odt/CREDITS.odt
+++ b/readlicense_oo/odt/CREDITS.odt
Binary files differ
diff --git a/sfx2/source/appl/sfxhelp.cxx b/sfx2/source/appl/sfxhelp.cxx
index 7b867c284bfd..e24396435d2f 100644
--- a/sfx2/source/appl/sfxhelp.cxx
+++ b/sfx2/source/appl/sfxhelp.cxx
@@ -724,6 +724,17 @@ SfxHelpWindow_Impl* impl_createHelp(Reference< XFrame >& rHelpTask ,
return pHelpWindow;
}
+/// Check for built-in help
+static bool impl_hasHelpInstalled()
+{
+ String aHelpRootURL( DEFINE_CONST_OUSTRING("vnd.sun.star.help://") );
+ AppendConfigToken_Impl( aHelpRootURL, sal_True );
+ Sequence< ::rtl::OUString > aFactories = SfxContentHelper::GetResultSet( aHelpRootURL );
+
+ return ( aFactories.getLength() != 0 );
+}
+
+/// Redirect the vnd.sun.star.help:// urls to http://help.libreoffice.org
static bool impl_showOnlineHelp( const String& rURL )
{
String aInternal( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.help://" ) );
@@ -790,13 +801,8 @@ BOOL SfxHelp::Start( const String& rURL, const Window* pWindow )
}
}
- // check if help is available
- String aHelpRootURL( DEFINE_CONST_OUSTRING("vnd.sun.star.help://") );
- AppendConfigToken_Impl( aHelpRootURL, sal_True );
- Sequence< ::rtl::OUString > aFactories = SfxContentHelper::GetResultSet( aHelpRootURL );
- if ( 0 == aFactories.getLength() )
+ if ( !impl_hasHelpInstalled() )
{
- // no factories -> no help -> try online
if ( impl_showOnlineHelp( aHelpURL ) )
return TRUE;
else
@@ -850,7 +856,7 @@ BOOL SfxHelp::Start( ULONG nHelpId, const Window* pWindow )
{
String aHelpModuleName( GetHelpModuleName_Impl() );
String aHelpURL = CreateHelpURL( nHelpId, aHelpModuleName );
- if ( pWindow && SfxContentHelper::IsHelpErrorDocument( aHelpURL ) )
+ if ( impl_hasHelpInstalled() && pWindow && SfxContentHelper::IsHelpErrorDocument( aHelpURL ) )
{
// no help found -> try with parent help id.
Window* pParent = pWindow->GetParent();
diff --git a/sfx2/source/appl/shutdowniconunx.cxx b/sfx2/source/appl/shutdowniconunx.cxx
index 371140c21e2c..a25583445fe6 100644
--- a/sfx2/source/appl/shutdowniconunx.cxx
+++ b/sfx2/source/appl/shutdowniconunx.cxx
@@ -343,6 +343,22 @@ static void notify_file_changed(GFileMonitor * /*gfilemonitor*/, GFile * /*arg1*
}
#endif
+#ifdef ENABLE_GIO
+/*
+ * See rhbz#610103. If the quickstarter is running, then LibreOffice is
+ * upgraded, then the old quickstarter is still running, but is now unreliable
+ * as the old install has been deleted. A fairly intractable problem but we
+ * can avoid much of the pain if we turn off the quickstarter if we detect
+ * that it has been physically deleted.
+*/
+static void notify_file_changed(GFileMonitor * /*gfilemonitor*/, GFile * /*arg1*/,
+ GFile * /*arg2*/, GFileMonitorEvent event_type, gpointer /*user_data*/)
+{
+ if (event_type == G_FILE_MONITOR_EVENT_DELETED)
+ exit_quickstarter_cb(GTK_WIDGET(pTrayIcon));
+}
+#endif
+
void SAL_DLLPUBLIC_EXPORT plugin_init_sys_tray()
{
::SolarMutexGuard aGuard;
diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx
index 8323214bef29..e2bbea60b1d4 100644
--- a/sfx2/source/doc/docfile.cxx
+++ b/sfx2/source/doc/docfile.cxx
@@ -1012,135 +1012,148 @@ sal_Bool SfxMedium::LockOrigFileOnDemand( sal_Bool bLoading, sal_Bool bNoUI )
// returns true if the document can be opened for editing ( even if it should be a copy )
// otherwise the document should be opened readonly
// if user cancel the loading the ERROR_ABORT is set
+ sal_Bool bResult = sal_False;
- if ( pImp->m_bLocked && bLoading && ::utl::LocalFileHelper::IsLocalFile( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ) ) )
+ if ( !GetURLObject().HasError() ) try
{
- // if the document is already locked the system locking might be temporarely off after storing
- // check whether the system file locking should be taken again
- GetLockingStream_Impl();
- }
+ if ( pImp->m_bLocked && bLoading && ::utl::LocalFileHelper::IsLocalFile( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ) ) )
+ {
+ // if the document is already locked the system locking might be temporarely off after storing
+ // check whether the system file locking should be taken again
+ GetLockingStream_Impl();
+ }
- sal_Bool bResult = pImp->m_bLocked;
+ sal_Bool bResult = pImp->m_bLocked;
- if ( !bResult )
- {
- // no read-write access is necessary on loading if the document is explicitly opened as copy
- SFX_ITEMSET_ARG( GetItemSet(), pTemplateItem, SfxBoolItem, SID_TEMPLATE, sal_False);
- bResult = ( bLoading && pTemplateItem && pTemplateItem->GetValue() );
- }
-
- if ( !bResult && !IsReadOnly() )
- {
- sal_Bool bContentReadonly = sal_False;
- if ( bLoading && ::utl::LocalFileHelper::IsLocalFile( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ) ) )
+ if ( !bResult )
{
- // let the original document be opened to check the possibility to open it for editing
- // and to let the writable stream stay open to hold the lock on the document
- GetLockingStream_Impl();
+ // no read-write access is necessary on loading if the document is explicitly opened as copy
+ SFX_ITEMSET_ARG( GetItemSet(), pTemplateItem, SfxBoolItem, SID_TEMPLATE, sal_False);
+ bResult = ( bLoading && pTemplateItem && pTemplateItem->GetValue() );
}
- // "IsReadOnly" property does not allow to detect whether the file is readonly always
- // so we try always to open the file for editing
- // the file is readonly only in case the read-write stream can not be opened
- if ( bLoading && !pImp->m_xLockingStream.is() )
+ if ( !bResult && !IsReadOnly() )
{
- try
+ sal_Bool bContentReadonly = sal_False;
+ if ( bLoading && ::utl::LocalFileHelper::IsLocalFile( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ) ) )
{
- // MediaDescriptor does this check also, the duplication should be avoided in future
- Reference< ::com::sun::star::ucb::XCommandEnvironment > xDummyEnv;
- ::ucbhelper::Content aContent( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ), xDummyEnv );
- aContent.getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IsReadOnly" ) ) ) >>= bContentReadonly;
+ // let the original document be opened to check the possibility to open it for editing
+ // and to let the writable stream stay open to hold the lock on the document
+ GetLockingStream_Impl();
}
- catch( uno::Exception )
- {}
-#if EXTRA_ACL_CHECK
- // This block was introduced as a fix to i#102464, but removing
- // this does not make the problem re-appear. But leaving this
- // part would interfere with documents saved in samba share. This
- // affects Windows only.
- if ( !bContentReadonly )
+ // "IsReadOnly" property does not allow to detect whether the file is readonly always
+ // so we try always to open the file for editing
+ // the file is readonly only in case the read-write stream can not be opened
+ if ( bLoading && !pImp->m_xLockingStream.is() )
{
- // the file is not readonly, check the ACL
+ try
+ {
+ // MediaDescriptor does this check also, the duplication should be avoided in future
+ Reference< ::com::sun::star::ucb::XCommandEnvironment > xDummyEnv;
+ ::ucbhelper::Content aContent( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ), xDummyEnv );
+ aContent.getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IsReadOnly" ) ) ) >>= bContentReadonly;
+ }
+ catch( uno::Exception )
+ {}
- String aPhysPath;
- if ( ::utl::LocalFileHelper::ConvertURLToPhysicalName( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ), aPhysPath ) )
- bContentReadonly = IsReadonlyAccordingACL( aPhysPath.GetBuffer() );
- }
+#if EXTRA_ACL_CHECK
+ // This block was introduced as a fix to i#102464, but removing
+ // this does not make the problem re-appear. But leaving this
+ // part would interfere with documents saved in samba share. This
+ // affects Windows only.
+ if ( !bContentReadonly )
+ {
+ // the file is not readonly, check the ACL
+
+ String aPhysPath;
+ if ( ::utl::LocalFileHelper::ConvertURLToPhysicalName( GetURLObject().GetMainURL( INetURLObject::NO_DECODE ), aPhysPath ) )
+ bContentReadonly = IsReadonlyAccordingACL( aPhysPath.GetBuffer() );
+ }
#endif
- }
+ }
- // do further checks only if the file not readonly in fs
- if ( !bContentReadonly )
- {
- // the special file locking should be used only for file URLs
- if ( ::utl::LocalFileHelper::IsLocalFile( aLogicName ) )
+ // do further checks only if the file not readonly in fs
+ if ( !bContentReadonly )
{
-
- // in case of storing the document should request the output before locking
- if ( bLoading )
+ // the special file locking should be used only for file URLs
+ if ( ::utl::LocalFileHelper::IsLocalFile( aLogicName ) )
{
- // let the stream be opened to check the system file locking
- GetMedium_Impl();
- }
- sal_Int8 bUIStatus = LOCK_UI_NOLOCK;
+ // in case of storing the document should request the output before locking
+ if ( bLoading )
+ {
+ // let the stream be opened to check the system file locking
+ GetMedium_Impl();
+ }
- // check whether system file locking has been used, the default value is false
- sal_Bool bUseSystemLock = IsSystemFileLockingUsed();
+ sal_Int8 bUIStatus = LOCK_UI_NOLOCK;
- // TODO/LATER: This implementation does not allow to detect the system lock on saving here, actually this is no big problem
- // if system lock is used the writeable stream should be available
- sal_Bool bHandleSysLocked = ( bLoading && bUseSystemLock && !pImp->xStream.is() && !pOutStream );
+ // check whether system file locking has been used, the default value is false
+ sal_Bool bUseSystemLock = IsSystemFileLockingUsed();
- do
- {
- try
+ // TODO/LATER: This implementation does not allow to detect the system lock on saving here, actually this is no big problem
+ // if system lock is used the writeable stream should be available
+ sal_Bool bHandleSysLocked = ( bLoading && bUseSystemLock && !pImp->xStream.is() && !pOutStream );
+
+ do
{
- ::svt::DocumentLockFile aLockFile( aLogicName );
- if ( !bHandleSysLocked )
+ try
{
- try
- {
- bResult = aLockFile.CreateOwnLockFile();
- }
- catch ( ucb::InteractiveIOException& e )
+ ::svt::DocumentLockFile aLockFile( aLogicName );
+ if ( !bHandleSysLocked )
{
- // exception means that the lock file can not be successfuly accessed
- // in this case it should be ignored if system file locking is anyway active
- if ( bUseSystemLock || !IsOOoLockFileUsed() )
+ try
{
- bResult = sal_True;
- // take the ownership over the lock file
- aLockFile.OverwriteOwnLockFile();
+ bResult = aLockFile.CreateOwnLockFile();
}
- else if ( e.Code == IOErrorCode_INVALID_PARAMETER )
+ catch ( ucb::InteractiveIOException& e )
{
- // system file locking is not active, ask user whether he wants to open the document without any locking
- uno::Reference< task::XInteractionHandler > xHandler = GetInteractionHandler();
-
- if ( xHandler.is() )
+ // exception means that the lock file can not be successfuly accessed
+ // in this case it should be ignored if system file locking is anyway active
+ if ( bUseSystemLock || !IsOOoLockFileUsed() )
+ {
+ bResult = sal_True;
+ // take the ownership over the lock file
+ aLockFile.OverwriteOwnLockFile();
+ }
+ else if ( e.Code == IOErrorCode_INVALID_PARAMETER )
{
- ::rtl::Reference< ::ucbhelper::InteractionRequest > xIgnoreRequestImpl
- = new ::ucbhelper::InteractionRequest( uno::makeAny( document::LockFileIgnoreRequest() ) );
+ // system file locking is not active, ask user whether he wants to open the document without any locking
+ uno::Reference< task::XInteractionHandler > xHandler = GetInteractionHandler();
- uno::Sequence< uno::Reference< task::XInteractionContinuation > > aContinuations( 2 );
- aContinuations[0] = new ::ucbhelper::InteractionAbort( xIgnoreRequestImpl.get() );
- aContinuations[1] = new ::ucbhelper::InteractionApprove( xIgnoreRequestImpl.get() );
- xIgnoreRequestImpl->setContinuations( aContinuations );
+ if ( xHandler.is() )
+ {
+ ::rtl::Reference< ::ucbhelper::InteractionRequest > xIgnoreRequestImpl
+ = new ::ucbhelper::InteractionRequest( uno::makeAny( document::LockFileIgnoreRequest() ) );
- xHandler->handle( xIgnoreRequestImpl.get() );
+ uno::Sequence< uno::Reference< task::XInteractionContinuation > > aContinuations( 2 );
+ aContinuations[0] = new ::ucbhelper::InteractionAbort( xIgnoreRequestImpl.get() );
+ aContinuations[1] = new ::ucbhelper::InteractionApprove( xIgnoreRequestImpl.get() );
+ xIgnoreRequestImpl->setContinuations( aContinuations );
- ::rtl::Reference< ::ucbhelper::InteractionContinuation > xSelected = xIgnoreRequestImpl->getSelection();
- bResult = ( uno::Reference< task::XInteractionApprove >( xSelected.get(), uno::UNO_QUERY ).is() );
+ xHandler->handle( xIgnoreRequestImpl.get() );
+
+ ::rtl::Reference< ::ucbhelper::InteractionContinuation > xSelected = xIgnoreRequestImpl->getSelection();
+ bResult = ( uno::Reference< task::XInteractionApprove >( xSelected.get(), uno::UNO_QUERY ).is() );
+ }
}
}
- }
- catch ( uno::Exception& )
- {
- // exception means that the lock file can not be successfuly accessed
- // in this case it should be ignored if system file locking is anyway active
- if ( bUseSystemLock || !IsOOoLockFileUsed() )
+ catch ( uno::Exception& )
+ {
+ // exception means that the lock file can not be successfuly accessed
+ // in this case it should be ignored if system file locking is anyway active
+ if ( bUseSystemLock || !IsOOoLockFileUsed() )
+ {
+ bResult = sal_True;
+ // take the ownership over the lock file
+ aLockFile.OverwriteOwnLockFile();
+ }
+ }
+
+ // in case OOo locking is turned off the lock file is still written if possible
+ // but it is ignored while deciding whether the document should be opened for editing or not
+ if ( !bResult && !IsOOoLockFileUsed() )
{
bResult = sal_True;
// take the ownership over the lock file
@@ -1148,89 +1161,83 @@ sal_Bool SfxMedium::LockOrigFileOnDemand( sal_Bool bLoading, sal_Bool bNoUI )
}
}
- // in case OOo locking is turned off the lock file is still written if possible
- // but it is ignored while deciding whether the document should be opened for editing or not
- if ( !bResult && !IsOOoLockFileUsed() )
- {
- bResult = sal_True;
- // take the ownership over the lock file
- aLockFile.OverwriteOwnLockFile();
- }
- }
-
- if ( !bResult )
- {
- uno::Sequence< ::rtl::OUString > aData;
- try
+ if ( !bResult )
{
- // impossibility to get data is no real problem
- aData = aLockFile.GetLockData();
- }
- catch( uno::Exception ) {}
+ uno::Sequence< ::rtl::OUString > aData;
+ try
+ {
+ // impossibility to get data is no real problem
+ aData = aLockFile.GetLockData();
+ }
+ catch( uno::Exception ) {}
- sal_Bool bOwnLock = sal_False;
+ sal_Bool bOwnLock = sal_False;
- if ( !bHandleSysLocked )
- {
- uno::Sequence< ::rtl::OUString > aOwnData = aLockFile.GenerateOwnEntry();
- bOwnLock = ( aData.getLength() > LOCKFILE_USERURL_ID
- && aOwnData.getLength() > LOCKFILE_USERURL_ID
- && aOwnData[LOCKFILE_SYSUSERNAME_ID].equals( aData[LOCKFILE_SYSUSERNAME_ID] ) );
-
- if ( bOwnLock
- && aOwnData[LOCKFILE_LOCALHOST_ID].equals( aData[LOCKFILE_LOCALHOST_ID] )
- && aOwnData[LOCKFILE_USERURL_ID].equals( aData[LOCKFILE_USERURL_ID] ) )
+ if ( !bHandleSysLocked )
{
- // this is own lock from the same installation, it could remain because of crash
- bResult = sal_True;
+ uno::Sequence< ::rtl::OUString > aOwnData = aLockFile.GenerateOwnEntry();
+ bOwnLock = ( aData.getLength() > LOCKFILE_USERURL_ID
+ && aOwnData.getLength() > LOCKFILE_USERURL_ID
+ && aOwnData[LOCKFILE_SYSUSERNAME_ID].equals( aData[LOCKFILE_SYSUSERNAME_ID] ) );
+
+ if ( bOwnLock
+ && aOwnData[LOCKFILE_LOCALHOST_ID].equals( aData[LOCKFILE_LOCALHOST_ID] )
+ && aOwnData[LOCKFILE_USERURL_ID].equals( aData[LOCKFILE_USERURL_ID] ) )
+ {
+ // this is own lock from the same installation, it could remain because of crash
+ bResult = sal_True;
+ }
}
- }
- if ( !bResult && !bNoUI )
- {
- bUIStatus = ShowLockedDocumentDialog( aData, bLoading, bOwnLock );
- if ( bUIStatus == LOCK_UI_SUCCEEDED )
+ if ( !bResult && !bNoUI )
{
- // take the ownership over the lock file
- bResult = aLockFile.OverwriteOwnLockFile();
+ bUIStatus = ShowLockedDocumentDialog( aData, bLoading, bOwnLock );
+ if ( bUIStatus == LOCK_UI_SUCCEEDED )
+ {
+ // take the ownership over the lock file
+ bResult = aLockFile.OverwriteOwnLockFile();
+ }
}
- }
- bHandleSysLocked = sal_False;
+ bHandleSysLocked = sal_False;
+ }
}
- }
- catch( uno::Exception& )
- {
- }
- } while( !bResult && bUIStatus == LOCK_UI_TRY );
+ catch( uno::Exception& )
+ {
+ }
+ } while( !bResult && bUIStatus == LOCK_UI_TRY );
- pImp->m_bLocked = bResult;
+ pImp->m_bLocked = bResult;
+ }
+ else
+ {
+ // this is no file URL, check whether the file is readonly
+ bResult = !bContentReadonly;
+ }
}
+ }
+
+ if ( !bResult && GetError() == ERRCODE_NONE )
+ {
+ // the error should be set in case it is storing process
+ // or the document has been opened for editing explicitly
+
+ SFX_ITEMSET_ARG( pSet, pReadOnlyItem, SfxBoolItem, SID_DOC_READONLY, FALSE );
+ if ( !bLoading || (pReadOnlyItem && !pReadOnlyItem->GetValue()) )
+ SetError( ERRCODE_IO_ACCESSDENIED, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
else
- {
- // this is no file URL, check whether the file is readonly
- bResult = !bContentReadonly;
- }
+ GetItemSet()->Put( SfxBoolItem( SID_DOC_READONLY, sal_True ) );
}
- }
- if ( !bResult && GetError() == ERRCODE_NONE )
+ // when the file is locked, get the current file date
+ if ( bResult && DocNeedsFileDateCheck() )
+ GetInitFileDate( sal_True );
+ }
+ catch( uno::Exception& )
{
- // the error should be set in case it is storing process
- // or the document has been opened for editing explicitly
-
- SFX_ITEMSET_ARG( pSet, pReadOnlyItem, SfxBoolItem, SID_DOC_READONLY, FALSE );
- if ( !bLoading || (pReadOnlyItem && !pReadOnlyItem->GetValue()) )
- SetError( ERRCODE_IO_ACCESSDENIED, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
- else
- GetItemSet()->Put( SfxBoolItem( SID_DOC_READONLY, sal_True ) );
+ OSL_ENSURE( sal_False, "Unexpected problem by locking, high probability, that the content could not be created" );
}
-
- // when the file is locked, get the current file date
- if ( bResult && DocNeedsFileDateCheck() )
- GetInitFileDate( sal_True );
-
return bResult;
}
diff --git a/svx/source/intro/ooo.src b/svx/source/intro/ooo.src
index 58356a40ac53..249ee0d528b2 100644
--- a/svx/source/intro/ooo.src
+++ b/svx/source/intro/ooo.src
@@ -111,7 +111,7 @@ ModalDialog RID_DEFAULTABOUT
};
String ABOUT_STR_LINK
{
- Text[ en-US ] = "http://libreoffice.org/credits.html";
+ Text[ en-US ] = "http://www.libreoffice.org/credits.html";
};
StringArray ABOUT_STR_DEVELOPER_ARY
{
diff --git a/sysui/desktop/freedesktop/freedesktop-menus.spec b/sysui/desktop/freedesktop/freedesktop-menus.spec
index 01bec9ffe734..30c2dd61e839 100644
--- a/sysui/desktop/freedesktop/freedesktop-menus.spec
+++ b/sysui/desktop/freedesktop/freedesktop-menus.spec
@@ -318,6 +318,10 @@ done
# glibc breaks rpm unless rpm is build with internal glob-matching (issue 49374)
# https://bugzilla.redhat.com/beta/show_bug.cgi?id=134362
%defattr(-, root, root)
+%if %unixfilename != libreoffice
+# compat symlinks
+%attr(0755, root, root) /opt/%unixfilename
+%endif
%attr(0755, root, root) /usr/bin/*
/usr/share/applications/%unixfilename-base.desktop
/usr/share/applications/%unixfilename-calc.desktop
diff --git a/sysui/desktop/mandriva/mandriva-menus.spec b/sysui/desktop/mandriva/mandriva-menus.spec
index f02a468ea088..f06878857776 100644
--- a/sysui/desktop/mandriva/mandriva-menus.spec
+++ b/sysui/desktop/mandriva/mandriva-menus.spec
@@ -309,7 +309,12 @@ fi
%files
-%attr(0755,root,root) /usr/bin/%unixfilename
+%if %unixfilename != libreoffice
+# compat symlinks
+%attr(0755,root,root) /opt/%unixfilename
+%attr(0755,root,root) /usr/bin/libreoffice
+%attr(0755,root,root) /usr/bin/libreoffice-printeradmin
+%endif
%attr(0755,root,root) %verify(not size md5) /usr/bin/%unixfilename
%attr(0755,root,root) /usr/bin/%unixfilename-printeradmin
%defattr(0644, root, root)
diff --git a/sysui/desktop/productversion.mk b/sysui/desktop/productversion.mk
index e9bd131eff4f..6f41333370dc 100644
--- a/sysui/desktop/productversion.mk
+++ b/sysui/desktop/productversion.mk
@@ -65,11 +65,11 @@ PKGVERSION.libreoffice = $(PKGVERSION)
UNIXFILENAME.libreoffice = $(PRODUCTNAME.libreoffice:l)
ICONPREFIX.libreoffice = $(UNIXFILENAME.libreoffice:s/.//g)
-PRODUCTNAME.broffice.org = BrOffice.org
-PRODUCTVERSION.broffice.org = $(PRODUCTVERSION)
-PRODUCTVERSIONSHORT.broffice.org = $(PRODUCTVERSIONSHORT)
-PKGVERSION.broffice.org = $(PKGVERSION)
-UNIXFILENAME.broffice.org = $(PRODUCTNAME.broffice.org:l)
-ICONPREFIX.broffice.org = $(UNIXFILENAME.broffice.org:s/.//g)
+PRODUCTNAME.broffice = BrOffice
+PRODUCTVERSION.broffice = $(PRODUCTVERSION)
+PRODUCTVERSIONSHORT.broffice = $(PRODUCTVERSIONSHORT)
+PKGVERSION.broffice = $(PKGVERSION)
+UNIXFILENAME.broffice = $(PRODUCTNAME.broffice:l)
+ICONPREFIX.broffice = $(UNIXFILENAME.broffice:s/.//g)
diff --git a/sysui/desktop/redhat/redhat-menus.spec b/sysui/desktop/redhat/redhat-menus.spec
index ce9cdc29ab64..663fe2314573 100644
--- a/sysui/desktop/redhat/redhat-menus.spec
+++ b/sysui/desktop/redhat/redhat-menus.spec
@@ -268,7 +268,12 @@ for theme in gnome hicolor locolor; do
done
%files
+%if %unixfilename != libreoffice
+# compat symlinks
+%attr(0755,root,root) /opt/%unixfilename
%attr(0755,root,root) /usr/bin/libreoffice
+%attr(0755,root,root) /usr/bin/libreoffice-printeradmin
+%endif
%attr(0755,root,root) %verify(not size md5) /usr/bin/%unixfilename
%attr(0755,root,root) /usr/bin/%unixfilename-printeradmin
%defattr(0644, root, root)
diff --git a/sysui/desktop/share/create_tree.sh b/sysui/desktop/share/create_tree.sh
index 460a27c5fd9b..eef34d9549b2 100644
--- a/sysui/desktop/share/create_tree.sh
+++ b/sysui/desktop/share/create_tree.sh
@@ -92,7 +92,8 @@ fi
mkdir -p ${DESTDIR}/usr/bin
-office_root=/opt/${PREFIX}
+office_prefix=/opt
+office_root=${office_prefix}/${PREFIX}
#this symlink is needed to have the API boostrap functions running right
ln -sf ${office_root}/program/soffice ${DESTDIR}/usr/bin/libreoffice
@@ -101,7 +102,9 @@ cp printeradmin.sh ${DESTDIR}/usr/bin/${PREFIX}-printeradmin
chmod 0755 ${DESTDIR}/usr/bin/${PREFIX} ${DESTDIR}/usr/bin/${PREFIX}-printeradmin
if test "${PREFIX}" != libreoffice ; then
- cp openoffice.sh ${DESTDIR}/usr/bin/${PREFIX}
+ # compat symlinks
+ mkdir -p ${DESTDIR}${office_prefix}
+ ln -sf libreoffice ${DESTDIR}${office_root}
ln -sf /usr/bin/${PREFIX} ${DESTDIR}/usr/bin/libreoffice
ln -sf /usr/bin/${PREFIX}-printeradmin ${DESTDIR}/usr/bin/libreoffice-printeradmin
fi
diff --git a/sysui/desktop/suse/suse-menus.spec b/sysui/desktop/suse/suse-menus.spec
index 52df81fc8096..fe709694c3fd 100644
--- a/sysui/desktop/suse/suse-menus.spec
+++ b/sysui/desktop/suse/suse-menus.spec
@@ -280,7 +280,12 @@ for themedir in /opt/gnome/share/icons/gnome /opt/gnome/share/icons/hicolor /opt
done
%files
+%if %unixfilename != libreoffice
+# compat symlinks
+%attr(0755,root,root) /opt/%unixfilename
%attr(0755,root,root) /usr/bin/libreoffice
+%attr(0755,root,root) /usr/bin/libreoffice-printeradmin
+%endif
%attr(0755,root,root) %verify(not size md5) /usr/bin/%unixfilename
%attr(0755,root,root) /usr/bin/%unixfilename-printeradmin
%defattr(0644, root, root)
diff --git a/xmlhelp/prj/build.lst b/xmlhelp/prj/build.lst
index 7430bf6d7ba9..00e285cde858 100644
--- a/xmlhelp/prj/build.lst
+++ b/xmlhelp/prj/build.lst
@@ -1,4 +1,4 @@
-xh xmlhelp : comphelper ucbhelper LIBXSLT:libxslt unoil BERKELEYDB:berkeleydb LUCENE:lucene javaunohelper l10ntools NULL
+xh xmlhelp : comphelper ucbhelper LIBXSLT:libxslt unoil BERKELEYDB:berkeleydb LUCENE:lucene javaunohelper l10ntools unotools NULL
xh xmlhelp usr1 - all xh_mkout NULL
xh xmlhelp\inc nmake - all xh_inc NULL
xh xmlhelp\source\treeview nmake - all xh_treeview xh_inc NULL
diff --git a/xmlhelp/source/cxxhelp/provider/databases.hxx b/xmlhelp/source/cxxhelp/provider/databases.hxx
index 98c3c387ad6d..bbd050177a79 100644
--- a/xmlhelp/source/cxxhelp/provider/databases.hxx
+++ b/xmlhelp/source/cxxhelp/provider/databases.hxx
@@ -311,13 +311,15 @@ namespace chelp {
char* m_pCustomCSSDoc;
rtl::OUString m_aCSS;
-#define PRODUCTNAME 0
-#define PRODUCTVERSION 1
-#define VENDORNAME 2
-#define VENDORVERSION 3
-#define VENDORSHORT 4
-#define NEWPRODUCTNAME 5
-#define NEWPRODUCTVERSION 6
+ enum {
+ PRODUCTNAME = 0,
+ PRODUCTVERSION,
+ VENDORNAME,
+ VENDORVERSION,
+ VENDORSHORT,
+ NEWPRODUCTNAME,
+ NEWPRODUCTVERSION
+ };
int m_vAdd[7];
rtl::OUString m_vReplacement[7];
diff --git a/xmlhelp/source/cxxhelp/provider/provider.cxx b/xmlhelp/source/cxxhelp/provider/provider.cxx
index 713e2596ac58..3707903062a6 100644
--- a/xmlhelp/source/cxxhelp/provider/provider.cxx
+++ b/xmlhelp/source/cxxhelp/provider/provider.cxx
@@ -47,6 +47,7 @@
#include <com/sun/star/container/XNameReplace.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <unotools/configmgr.hxx>
#include <rtl/bootstrap.hxx>
#include "databases.hxx"
@@ -306,9 +307,10 @@ void ContentProvider::init()
* productversion,
*/
+ rtl::OUString productname;
+ ::utl::ConfigManager::GetDirectConfigProperty(::utl::ConfigManager::PRODUCTNAME) >>= productname;
+
xHierAccess = getHierAccess( sProvider, "org.openoffice.Setup" );
- rtl::OUString productname(
- getKey( xHierAccess,"Product/ooName" ) );
rtl::OUString setupversion(
getKey( xHierAccess,"Product/ooSetupVersion" ) );
diff --git a/xmlhelp/source/treeview/makefile.mk b/xmlhelp/source/treeview/makefile.mk
index 0c385862d772..3dc65457016d 100644
--- a/xmlhelp/source/treeview/makefile.mk
+++ b/xmlhelp/source/treeview/makefile.mk
@@ -57,6 +57,7 @@ SHL1STDLIBS=\
$(CPPULIB) \
$(COMPHELPERLIB) \
$(EXPATASCII3RDLIB) \
+ $(UNOTOOLSLIB) \
$(SALLIB)
SHL1VERSIONMAP=$(SOLARENV)/src/component.map
diff --git a/xmlhelp/source/treeview/tvread.cxx b/xmlhelp/source/treeview/tvread.cxx
index 73fad53c9647..991e978862e1 100644
--- a/xmlhelp/source/treeview/tvread.cxx
+++ b/xmlhelp/source/treeview/tvread.cxx
@@ -36,6 +36,7 @@
#include "tvread.hxx"
#include <expat.h>
#include <osl/file.hxx>
+#include <unotools/configmgr.hxx>
#include <com/sun/star/frame/XConfigManager.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
@@ -676,10 +677,12 @@ ConfigData TVChildTarget::init( const Reference< XMultiServiceFactory >& xSMgr )
/* reading setup */
/**********************************************************************/
+ rtl::OUString productName;
+ ::utl::ConfigManager::GetDirectConfigProperty(::utl::ConfigManager::PRODUCTNAME) >>= productName;
+
xHierAccess = getHierAccess( sProvider,
"org.openoffice.Setup" );
- rtl::OUString productName( getKey( xHierAccess,"Product/ooName" ) );
rtl::OUString setupversion( getKey( xHierAccess,"Product/ooSetupVersion" ) );
rtl::OUString setupextension;
diff --git a/xmlhelp/util/makefile.mk b/xmlhelp/util/makefile.mk
index 66551f15bffc..5bc5bc690bac 100644
--- a/xmlhelp/util/makefile.mk
+++ b/xmlhelp/util/makefile.mk
@@ -59,6 +59,7 @@ SHL1STDLIBS= \
$(COMPHELPERLIB) \
$(SALLIB) \
$(EXPATASCII3RDLIB) \
+ $(UNOTOOLSLIB) \
$(UCBHELPERLIB) \
$(BERKELEYLIB) \
$(XSLTLIB)