Merge remote-tracking branch 'origin/1.5'

Conflicts:
	VERSION.cmake
This commit is contained in:
Olivier Goffart 2014-02-19 10:21:23 +01:00
commit 2de288c5f3
25 changed files with 199 additions and 102 deletions

View file

@ -1,6 +1,41 @@
ChangeLog
=========
version 1.5.1 (release 2014-02-13 )
* Added an auto updater that updates the client if a
more recent version was found automatically (Windows, Mac OS X)
* Added a button to the account dialog that gives information
about the encryption layer used for communication, plus a
certificate information widget
* Preserve the permission settings of local files rather than
setting them to a default (Bug #820)
* Handle windows lnk files correctly (Bug #1307)
* Detect removes and renames in read only shares and
restore the gone away files. (Bug #1386)
* Fixes sign in/sign out and password dialog. (Bug #1353)
* Fixed error messages (Bug #1394)
* Lots of fixes for building with Qt5
* Changes to network limits are now also applied during a
sync run
* Fixed mem leak after via valgrind on Mac
* Imported the ocsync library into miralls repository.
Adopted all build systems and packaging to that.
* Introduce a new linux packaging scheme following the
debian upstream scheme
* Use a refactored Linux file system watcher based on
inotify, incl. unit tests
* Wizard: Gracefully fall back to HTTP if HTTPS connection
fails, issuing a warning
* Fixed translation misses in the propagator
* Fixes in proxy configuration
* Fixes in sync journal handling
* Fix the upload progress if the local source is still
changing when the upload begins.
* Add proxy support to owncloud commandline client
* NSIS fixes
* A lot of other fixes and minor improvements
* Improve Qt5 compatability
version 1.5.0 (release 2013-12-12 ), csync 0.91.4 required
* New owncloud propagator that skips the vio abstraction layer
* Add owncloudcmd to replace the ocsync command line tool

View file

@ -1,12 +1,12 @@
Setting up an Account
=====================
If no account has been configured, ownCloud Client will automatically assist
you in connecting to your ownCloud Server after the application has been
If no account has been configured, the ownCloud Client will automatically
assist in connecting to your ownCloud server after the application has been
started.
As a first step, specify the URL to your Server, just
like you would when you open your ownCloud instance inside a browser.
As a first step, specify the URL to your Server. This is the same address
that is used in the browser.
.. image:: images/wizard_url.png
:scale: 50 %
@ -16,22 +16,30 @@ like you would when you open your ownCloud instance inside a browser.
This makes it easy for third parties to intercept your communication, and
getting hold of your password!
Next, you are prompted for your username and password. Again, use the same
credentials that you would use to log on via the web interface.
Next, enter the username and password. These are the same credentials used
to log into the web interface.
.. image:: images/wizard_user.png
:scale: 50 %
Finally, choose the folder that ownCloud Client is supposed to sync the
contents of your ownCloud account with. By default, this is a folder
called `ownCloud`, which will reside in your home directory.
called `ownCloud`, which will be created in the home directory.
.. image:: images/wizard_targetfolder.png
:scale: 50 %
After pressing `Connect`, ownCloud Client will commence with the syncing
process. The next screen will give you the opportunity to review your
settings:
At this time, the synchronization between the root directories of the
ownCloud server will begin.
.. image:: images/wizard_overview.png
:scale: 50 %
If selecting a local folder that already contains data, there are
two options that exist.
* Keep local data: If selected, the files in the local folder on the
client will be synced up to the ownCloud server.
* Start a clean sync: If selected, all files in the local folder on
the client will be deleted and therefore not synced to the ownCloud
server.

View file

@ -123,7 +123,7 @@ database. If the ETag is still the same, the file has not changed.
In case a file has changed on both, the local and the remote repository since
the last sync run, it can not easily be decided which version of the file is
the one that should be used. However, changes to any side must not be lost.
the one that should be used. However, changes to any side must not be lost.
That is called a **conflict case**. The client solves it by creating a conflict
file of the older of the two files and save the newer one under the original

View file

@ -51,21 +51,23 @@ Windows
There are two alternative approaches:
1. In ``HKEY_LOCAL_MACHINE\Software\ownCloud\ownCloud``, add a key of type DWORD
with the value ``skipUpdateCheck`` and the value 1 to the machine. This key
1. In ``HKEY_LOCAL_MACHINE\Software\ownCloud\ownCloud``, add a key ``skipUpdateCheck`` (of type DWORD) with the value 1 to the machine. This key
can be manually overrideen by the same value in ``HKEY_CURRENT_USER``.
2. In ``HKEY_LOCAL_MACHINE\Software\Policies\ownCloud\ownCloud``, add a key of
type DWORD the value ``skipUpdateCheck`` and the value 1 to the machine.
2. In ``HKEY_LOCAL_MACHINE\Software\Policies\ownCloud\ownCloud``, add a key
``skipUpdateCheck`` (of type DWORD) with the value 1 to the machine.
Setting the value here cannot be overridden by the user and is the preferred
way to control the updater behavior via Group Policies.
Mac OS X
^^^^^^^^
You can disable the update check via the system-wide ``.plist`` file located
You can disable the update check via a system-wide ``.plist`` file located
at ``/Library/Preferences/com.owncloud.desktopclient.plist``. Add a new root
level item of type bool and the name ``skipUpdateCheck`` and set it to ``true``.
You can also just copy the file
``owncloud.app/Contents/Resources/deny_autoupdate_com.owncloud.desktopclient.plist```
to ``/Library/Preferences/com.owncloud.desktopclient.plist``.
Linux
^^^^^

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 74 KiB

View file

@ -1,23 +1,19 @@
Introduction
============
This is the documentation for the ownCloud Sync Client, also referred to as
the ownCloud Client.
The ownCloud Sync Client is a desktop program installed on a users computer.
It allows a user to specify one or more directories on the local machine to
sync to the ownCloud server. It allows the user to always have the latest
files wherever they may be. When a change is made to the file on the
computer, it will sync to the ownCloud server via the sync client.
The ownCloud Sync Client is a desktop program you install on your computer.
Specify one ore more directories on the local machine to sync your ownCloud
server, and always have your latest files wherever you are. Make a change to the
files on one computer, it will flow across the others using these desktop sync
clients.
ownCloud Client is available for Windows, Mac OS X and various Linux
distributions. See below for details on how to obtain the Client.
The ownCloud Sync Client is available for Windows, MAC OS X, and various
Linux distributions.
Obtaining the Client
--------------------
The latest version of the ownCloud Client can be obtained at
http://owncloud.org/sync-clients/.
The latest version of the Client can be obtained on the ownCloud web site.
ownCloud client for **Windows** is provided as a NSIS-based setup file for
machine-wide install. Installing the ownCloud client on **Mac OS** follows
@ -29,9 +25,8 @@ the normal app bundle installation pattern:
folder.
3. On the right hand side From ``Applications``, choose ``ownCloud``.
The ownCloud Client is also provided as in a convenient repository for a wide
range of popular **Linux distributions**. If you want to build the sources
instead.
The ownCloud client is also provided as in a convenient repository for a wide
range of popular **Linux distributions**.
Supported distributions are Fedora, openSUSE, Ubuntu and Debian.
To support other distributions, a is required, see :ref:`building-label`

View file

@ -1,10 +1,14 @@
ownCloud Client supports the following command line switches:
When invoking the client from the command line, the following options are supported:
``-h``, ``--help``
shows all the below options (opens a window on Windows)
``--logwindow``
open a window to show log output.
``--logfile`` `<filename>`
write log output to file <filename>.
write log output to file <filename>. To write to stdout, specify `-`
as filename
``--logdir`` `<name>`
write each sync log output in a new file in directory <name>

View file

@ -3,25 +3,27 @@ Visual Tour
.. index:: visual tour, usage
ownCloud Client stays in the background, and is visible as an
icon in your system tray (Windows, KDE), status bar (Mac OS X)
or notification area (Ubuntu), like so:
Icon
----
The ownCloud Client remains in the background and is visible
as an icon in the system tray (Windows, KDE), status bar
(MAC OS X), or notification area (Ubuntu).
.. image:: images/icon.png
If a setup is still required, it will open the setup. Otherwise, the
main menu is opened, which provides several options and displays
progress information:
Menu
----
.. image:: images/menu.png
Here is an explanation of the individual items in the menu:
A right click on the icon (left click on Ubuntu and Mac OS X)
provides the following menu:
* ``Open ownCloud in browser``: Opens the ownCloud web interface
* ``Open folder 'ownCloud'``: Opens the local folder. If you have
defined multiple sync targets, you should see multiple entries
here.
* **Disk space indicator**: Shows how much space is used up on the server.
* ``Open folder 'ownCloud'``: Opens the local folder. If multiple
sync targets have been defined, an entry will exist for each local folder.
* **Disk space indicator**: Shows how much space is used on the server.
* Operation indicator: Shows the status of the current sync process, or
``Up to date`` if server and client are in sync.
* **Recent Changes**: shows the last six files modified by sync operations,
@ -29,28 +31,90 @@ Here is an explanation of the individual items in the menu:
since the last restart of ownCloud Client.
* ``Settings...``: provides access to the settings menu.
* ``Help``: Opens a browser to display this help.
* ``Quit ownCloud``: Quits ownCloud, ending a currently running sync run.
* ``Sign out``: Signs the client of of the server.
* ``Quit ownCloud``: Quits ownCloud Client, ending a currently running
sync run.
The settings dialog is split up in three categories: ``Account Settings``,
``General Settings`` and ``Network Settings``:
Settings
--------
Account Settings
~~~~~~~~~~~~~~~~
.. index:: account settings, user, password, Server URL
The ``Account Settings`` tab provides an executive summary about the synced
folders in your account and allows to modify them. It also provides a more
detailed report about the storage usage. Finally, it allows to change
the files that ownCloud Client should ignore (for details, see the
``Ignored Files Editor`` section below), and to modify various aspects
of the current account settings, such as user name, password and server URL.
The ``Account Settings tab`` provides an executive summary about the synced
folders in the account and gives the ability to modify them.
Where:
* ``Connected to <ownCloud instance> as <user>``: Indicates the ownCloud server
which the client is syncing with and the user account on that server.
* ``Add Folder...``: Provides the ability to add another folder to the sync
(see ``Adding a folder``).
* ``Pause/Resume``: Will pause the current sync or prevent the client from
starting a new sync. Resume will resume the sync process.
* ``Remove``: Will remove the selected folder from being synced. This is used,
for instance, when there is a desire to sync only a few folders and not the
root. First, remove the root from sync, then add the folders to sync as
desired.
* ``Storage Usage``: Provides further details on the storage utilization on the
ownCloud server.
* ``Edit Ignored Files``: Provides a list of files which will be ignored, i.e.
will not sync between the client and server. The ignored files editor allows
adding patterns for files or directories that should be excluded from the
sync process. Besides normal characters, wild cards may be used, an asterisk
* indicating multiple characters, or a question mark ? indicating a single
character.
* ``Modify Account``: Allows the user to change the ownCloud server being synced
to. It brings up the Setting up an Account (see above) windows.
.. image:: images/settings_account.png
:scale: 50 %
General Settings
~~~~~~~~~~~~~~~~
Adding a Folder
^^^^^^^^^^^^^^^
Adding a new sync is initiated by clicking ``Add Folder...`` in the ``Account``
settings.
..note: To add a folder, you must not already sync a folder that contains this
folder. By default, the wizard sets up the root folder of the ownCloud
server to sync all of your ownCloud account. In consequence, you will
first need to remove this folder prior to specifying new syncs.
.. image:: images/folderwizard_local.png
:scale: 50 %
The Directory and alias name must be unique.
.. image:: images/folderwizard_remote.png
:scale: 50 %
Select the folder on the server to sync with. It is important to note that, a
server folder can only sync to the client one time. So, in the above example,
the sync is to the server root directory and thus it is not possible to select
another folder under the root to sync.
Activity
~~~~~~~~
.. index:: activity, recent changes, sync activity
The Activity window, which can be invoked either from the main menu (``Recent
Changes -> Details…``) or the Activity tab on the left side of the settings
window, provides an in-depth account of the recent sync activity. It will show
files that have not been synced because they are on the ignored files list, or
because they cannot be synced in a cross-platform manner due to containing
special characters that cannot be stored on certain file systems.
.. image:: images/settings_activity.png
:scale: 50 %
General
~~~~~~~
.. index:: general settings, auto start, startup, desktop notifications
@ -59,20 +123,18 @@ The tab provides several useful options:
.. image:: images/settings_general.png
:scale: 50 %
* **Launch on System Startup**: This option is automatically activated
* ``Launch on System Startup``: This option is automatically activated
once a user has conimaged his account. Unchecking the box will cause
ownCloud client to not launch on startup for a particular user.
* **Show Desktop Nofications**: Do not show bubble notifications whenever
a set of sync operations has been performed.
* **Use Monochrome Icons**: Use less obstrusive icons. Especially useful
on Mac OS.
* ``Show Desktop Nofications``: When checked, bubble notifications when
a set of sync operations has been performed are provided.
* ``Use Monochrome Icons``: Use less obtrusive icons. Especially useful
on Mac OS X.
* ``About``: provides information about authors as well as build conditions.
This information is valuable when submitting a support request.
The acout menu provides information about authors as well as detailed
information about the build conditions. Those are particularly valuable
when filing a bug report.
Network Settings
~~~~~~~~~~~~~~~~
Network
~~~~~~~
.. index:: proxy settings, SOCKS, bandwith, throttling, limiting
@ -97,45 +159,22 @@ Proxy Settings
by the port number. HTTP proxies usually listen on Ports 8080 (default) or
3128. SOCKS server usually listen on port 1080.
* ``Proxy Server requires authentication``: Should be checked if the proxy
server does not allow anonymous usage. If you check this option, you must
provide username and password in the fields below, or ownless Cloud will no
longer be able to connect successfully.
server does not allow anonymous usage. If checked, a username and password
must be provided.
Bandwidth Limiting
^^^^^^^^^^^^^^^^^^
The ``Download Bandwidth`` (i.e. the bandwidth available for data flowing
from the ownCloud Server to the client) can be either ``Unlimited``
(the default), or limited to a custom value, specified in bytes
The Download Bandwidth can be either unlimited (default) or limited to a
custom value. This is the bandwidth available for data flowing from the
ownCloud Server to the client.
The ``Upload Bandwith`` (i.e. the bandwith available for data flowing
from the ownCloud Client to the server) additionally has the option
to ``Limit automatically``: When this option is checked, the ownCloud
Client will surrender available upstream bandwith to other applications.
Use this option if you expirience problems with real time communication,
such as Skype or other VoIP software, in conjunction with ownCloud Client.
This is commonly the case with asymmetric internet connection, such as
certain DSL lines with very limited upstream capacity.
The Upload Bandwidth, the bandwidth available or data flowing from the
ownCloud client to the server, has an additional option to limit automatically.
ownCloud Client will pick up changes immediately, but ongoing operations
will finish using the old settings.
The Sync Status Display
~~~~~~~~~~~~~~~~~~~~~~~
.. index:: sync status
The ``Sync Status`` window, which can be invoked from either from the main
menu (``Recent Changes`` -> ``Details...``) or the ``Account Settings``
(``Info`` button), will provide you with an in-depth summary of the recent
sync activity. It will also show files that have not been synched (ignored
files). Those are ignored either because they are listed in the ignored
files list (see ``Ignored Files Editor`` section below), or because they
cannot be synced in a cross-platform manner because they contain special
characters that cannot be stored on certain file systems.
.. image:: images/sync_protocol.png
:scale: 50 %
When this option is checked, the ownCloud client will surrender available
bandwidth to other applications. Use this option if there are issues with
real time communication in conjunction with the ownCloud Client.
.. _ignoredFilesEditor-label:

View file

@ -448,6 +448,8 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/mirall)
if(BUILD_OWNCLOUD_OSX_BUNDLE)
install(TARGETS ${owncloudcmd_NAME} DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/MacOS)
if (SPARKLE_FOUND)
install(FILES ${CMAKE_SOURCE_DIR}/admin/osx/deny_autoupdate_com.owncloud.desktopclient.plist
DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/Resources)
install(FILES ${CMAKE_SOURCE_DIR}/admin/osx/sparkle/dsa_pub.pem
DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/Resources)
endif()

View file

@ -69,7 +69,7 @@ void FolderWatcherPrivate::startWatching()
pathsToWatch,
kFSEventStreamEventIdSinceNow,
0, // latency
kFSEventStreamCreateFlagNone
kFSEventStreamCreateFlagNone+kFSEventStreamCreateFlagIgnoreSelf
);
FSEventStreamScheduleWithRunLoop(stream, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);

View file

@ -404,7 +404,7 @@ QVariant MirallConfigFile::getValue(const QString& param, const QString& group,
QVariant systemSetting;
qDebug() << Q_FUNC_INFO;
if (Utility::isMac()) {
QSettings systemSettings(QSettings::NativeFormat, QSettings::SystemScope, QCoreApplication::organizationName());
QSettings systemSettings(QLatin1String("/Library/Preferences/" APPLICATION_REV_DOMAIN ".plist"), QSettings::NativeFormat);
if (!group.isEmpty()) {
systemSettings.beginGroup(group);
}

View file

@ -202,7 +202,13 @@ QString Theme::updateCheckUrl() const
QString Theme::about() const
{
return QString::null;
return tr("<p>Version %1 For more information please visit <a href='%2'>%3</a>.</p>"
"<p>Copyright ownCloud, Inc.<p>"
"<p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>"
"%5 and the %5 logo are registered trademarks of %4 in the<br>"
"United States, other countries, or both.</p>")
.arg(MIRALL_VERSION_STRING).arg("http://"MIRALL_STRINGIFY(APPLICATION_DOMAIN))
.arg(MIRALL_STRINGIFY(APPLICATION_DOMAIN)).arg(APPLICATION_VENDOR).arg(APPLICATION_NAME);
}
QVariant Theme::customMedia( CustomMediaType type )

View file

@ -28,6 +28,7 @@
#include <QProcess>
#include <QThread>
#include <QDateTime>
#include <QSysInfo>
#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
#include <QDesktopServices>
@ -341,6 +342,11 @@ static bool checkDolphinCanSelect()
void Utility::showInFileManager(const QString &localPath)
{
if (isWindows()) {
#ifdef Q_OS_WIN
if (QSysInfo::windowsVersion() <= QSysInfo::WV_2003) {
return;
}
#endif
QString explorer = "explorer.exe "; // FIXME: we trust it's in PATH
if (!QFileInfo(localPath).isDir()) {