1
0
mirror of https://github.com/chylex/Nextcloud-Desktop.git synced 2024-09-29 09:42:45 +02:00
Commit Graph

6222 Commits

Author SHA1 Message Date
Daniel Molkentin
841973d399 Use correct values for items in version.rc 2016-02-17 14:16:29 +01:00
Daniel Molkentin
2918e45343 Add comment, transliterate copyright symbol 2016-02-16 17:56:51 +01:00
Daniel Molkentin
e3b56fb559 Add file description, copyright to win32 VERSIONINFO struct 2016-02-16 16:19:12 +01:00
Klaas Freitag
7f18d087e6 Utility: Make the timeAgoInWords method a bit more verbose 2016-02-15 17:59:24 +01:00
Klaas Freitag
3cc9019b37 ActivityWidget: Set timespec to UTC for JSON values.
This will fix the problem in #4439 that the time display
jumps if the timezone is changed on windows.
2016-02-15 17:59:24 +01:00
Daniel Molkentin
37924b9c7f Win32: More complete resource specification
Add application and vendor name

Addresses #4473
2016-02-15 15:51:48 +01:00
Olivier Goffart
dd89ab59e4 Use oc:size instead of quota-used-bytes to get the sizes of folder (#4459) 2016-02-11 15:09:47 +01:00
Olivier Goffart
cd83772112 SyncJounral: add an index on the error blacklist table
https://github.com/owncloud/enterprise/issues/1035
2016-02-11 14:38:38 +01:00
Olivier Goffart
c93ecfbfb5 Merge branch restore_backup 2016-02-10 17:47:06 +01:00
Olivier Goffart
893e22691d ConnectionValidator: Make sure we intercept propfind error
If the PROPFIND return an invalid code (like 200) then we would
not recieve the error signal and we would never sync again.

Found while investigating https://github.com/owncloud/enterprise/issues/1068
2016-02-10 15:38:21 +01:00
Olivier Goffart
e9307bb797 Use a constant for ConnectionValidator::DefaultCallingIntervalMsec
So there is no runtime initialization
2016-02-10 12:36:09 +01:00
Olivier Goffart
93308faeb9 Merge remote-tracking branch 'origin/2.1'
Conflicts:
	doc/building.rst
2016-02-08 14:28:25 +01:00
Jocelyn Turcotte
f140d3447c OS X: Fix the file system watcher ignoring unicode paths #4424
Add a missing string normalization when fetching the path
from the file system event.
2016-02-08 13:30:08 +01:00
Olivier Goffart
6b643c7501 Discovery: don't ignore recall file #4420
The ".sys.admin#recall#" is the recall file and should not be ignored
even if hidden.

The remote discovery do not need to detect hidden files because it
is already detected by csync in all cases. So this avoid code duplication
2016-02-08 12:07:34 +01:00
James Botting
f442195b8a Remove option from GUI, leaving config option only. 2016-02-05 15:48:17 +00:00
Olivier Goffart
54a278edb9 fix compilation with TOKEN_AUTH_ONLY 2016-02-05 15:30:29 +01:00
Daniel Molkentin
dd76d72d61 Merge remote-tracking branch 'origin/2.1' 2016-01-26 14:09:38 +01:00
James Botting
d8af949a6a Alter sync engine to check new setting before displaying prompt 2016-01-24 18:45:29 +00:00
James Botting
74a8c4aae8 Add additional configuration option to toggle display of delete prompt 2016-01-24 18:45:12 +00:00
Christian Kamm
7eba784b0c Share dialog: More error handling with password policy #4209 2016-01-22 14:49:30 +01:00
Jocelyn Turcotte
8486a2fd2b Bring back the automatic authentication popups
Users have complained that they don't see the notification when it is
shown and are not aware that their files aren't syncing.

Remove the non-interactive credentials fetch logic and add make sure
that the shibboleth popup will flash in the taskbar instead.
This will still not allow the popup to show in front in all cases,
but this is a compromise that we have to chose.

This reverts commit dcb687929f.
Issue https://github.com/owncloud/enterprise/issues/990
2016-01-22 14:25:36 +01:00
Christian Kamm
3b60f6e238 Sharing: Fix resharing items with limited permissions #4357 #4358 2016-01-21 14:21:25 +01:00
Olivier Goffart
47710d167a SyncEngine: fix inode after move if the file has moved on the file system
This is the fix for issue #4370

Step to reproduce the bug:
 1) have lots of files in directory "dir1"
 2) do mkdir dir2 && mv dir1/* dir2
 3) DURING the sync (which takes time because of the many moves) do mkdir dir3 && mv dir2/* dir3/
 4) observe that files are PUT in the next sync

The problem is that SyncJournalFileRecord::SyncJournalFileRecord will fail to
get the inode after the forst move because the files are already moved on the
filesystem.  Normaly it should use the inode from the discovery phase in that
case but that is not working because it comes from the remote node in case of
moves, so the code in SyncEngine::treewalkFile would not set the inode.

Test in https://github.com/owncloud/smashbox/pull/143
2016-01-20 13:49:12 +01:00
Christian Kamm
1534dad5b2 Sharing: Allow only one share dialog per path #3184 2016-01-20 13:17:54 +01:00
Christian Kamm
f705c56cb3 AccountSettings: Auto-expand only single folders #4283 2016-01-20 12:41:52 +01:00
Christian Kamm
4d52838e2b Share dialog: Error reporting with password policy #4209 2016-01-20 09:49:10 +01:00
Christian Kamm
7f44e83cc7 Share dialog: Remove unintended spinner when password required 2016-01-20 09:49:10 +01:00
Olivier Goffart
7a676a748a AccountSettings: fix Add Folder button size #4373 2016-01-19 17:39:43 +01:00
Christian Kamm
17895f3a30 Win: Fix filesystem detection for exFAT workaround #2701 2016-01-19 10:00:12 +01:00
Olivier Goffart
d12c0939b9 Upload: Chunk size can be changed in the config file
Added a new "chunkSize" entry in the General group of the owncloud.cfg
which can be set to the size, in bytes, of the chunks.

This allow user with hude bandwidth to select more optimal chunk size

Issue #4354
2016-01-15 13:16:52 +01:00
Jocelyn Turcotte
19a3a10524 Windows: Fix the progress text being cut but a few pixels
QFontMetrics::boundingRect doesn't return the right size for this
font size for some reason, while it works well if we remove the
smaller point size adjustment for the progress font.

To avoid having to debug the font system in Qt just increase the
existing +2px adjustment to +5px so that it renders fine.
2016-01-14 13:01:18 +01:00
Olivier Goffart
bbedeed1c5 SyncEngine: For server older than 8.1, ignore invalid char in new directories
Server older than 8.1 cannot cope with invalid char in the filename
so we must not send them from the client. We were already checking
for new files, but not for renames or new directories.

https://github.com/owncloud/enterprise/issues/1009
2016-01-13 17:53:12 +01:00
Olivier Goffart
a18b13d56e FolderDelegate: fix positions and margin
- Fix the margin of the progressbar to let some room for the '...' button

 - Fix the size of the "Add Folder" button
2016-01-13 11:57:15 +01:00
Jocelyn Turcotte
31da3e98c9 Fix the folder option button click
The height adjustment done to place the button in the middle of the
non-error area was only done for rendering. Make sure that we do the
same adjustment when mapping click events as well.

Also replace some wrong occurences of aliasMargin*2 for margin.
2016-01-13 11:44:36 +01:00
Olivier Goffart
272755e1ec ConfigFile: Create the directory when using --confdir and it does not exist
Previously we would fail to start if the directory was not existing.
This was working for relative directory, but it should also work for
absolute ones

https://github.com/owncloud/enterprise/issues/970
2016-01-13 10:31:02 +01:00
Olivier Goffart
9800101748 Sharing: feedback when there is no result while searching for an user #4348 2016-01-12 14:36:13 +01:00
Olivier Goffart
1ed02f6494 Sharing: Display the error from the server when trying to share with users or group 2016-01-12 14:36:13 +01:00
Markus Goetz
9c9b9f3931 Activities: Fix color when row is selected 2016-01-11 16:52:37 +01:00
Jocelyn Turcotte
54c2c9ac4e Windows: Fix HiDPI #3414
Use QT_DEVICE_PIXEL_RATIO=auto on Qt<=5.5 to enable automatic
scale factor settings on Windows. Also move the existing
Qt::AA_EnableHighDpiScaling logic to use the equivalent
QT_AUTO_SCREEN_SCALE_FACTOR=1 environment variable just to
keep the 5.5 and >=5.6 code at the same place.
2016-01-11 15:41:08 +01:00
Christian Kamm
abf5a5ad1e Propagation: Fix dir <-> file changes propagating to server #4302
* Ensure every time a file becomes a directory or the other way around
  the item is flagged as INSTRUCTION_TYPE_CHANGE.
* Delete the badly-typed entity if necessary in the propagation jobs.
2016-01-08 05:38:08 +01:00
Christian Kamm
d4b6b5cb1d Propagator: Remove warning when moving out of deleted folder 2016-01-08 05:38:08 +01:00
Jocelyn Turcotte
ce6f90397a Fix the rendering of the red error box text
QPainter::drawText uses the top of the font for the y position of its
rect argument, but uses the baseline when using a point argument.

Also use the margin variable that matches the font used instead of
the aliasMargin and make sure that the margin is only added between
the box and the text once.
2016-01-07 18:02:35 +01:00
Olivier Goffart
bb6a50be02 SettingsDialog: show "Account" for the tab name for branded client
https://github.com/owncloud/enterprise/issues/863
2016-01-07 17:59:21 +01:00
Jocelyn Turcotte
e7e918dafe Only clean the Not Synced list for the current account #3171 2016-01-07 16:14:18 +01:00
Olivier Goffart
81b7798ac2 HttpCredentials::slotAuthentication: fix comment
The recent revert did no fix the comment
2016-01-07 14:58:02 +01:00
Olivier Goffart
868d4c781a HTTP creds: Fix GUI blocking for 5 seconds when entering wrong password
The Qt HTTP thread calls authenticationRequired (indirectly) using a
BlockingQueuedConnection. So when we call invalidateToken from slot
connected to this signal and end up calling QNAM::clearAccessCache which
waits on the thread for 5 seconds

Backtraces:

Qt HTTP thread:
 #0  0x00007ffff20c707f in pthread_cond_wait@@GLIBC_2.3.2 ()
 #1  0x00007ffff43f0c0b in QWaitConditionPrivate::wait
 #2  QWaitCondition::wait
 #3  0x00007ffff43ea06b in QSemaphore::acquire
 #4  0x00007ffff45dcf6f in QMetaObject::activate
[...]
 #9  0x00007ffff45dd607 in QMetaObject::activate
 #10 0x00007ffff4edbaf7 in QHttpNetworkReply::authenticationRequired
 #11 0x00007ffff4e0b2b4 in QHttpNetworkConnectionPrivate::handleAuthenticateChallenge
 #12 0x00007ffff4e10753 in QHttpNetworkConnectionChannel::handleStatus
 #13 0x00007ffff4e11cc9 in QHttpNetworkConnectionChannel::allDone
 #14 0x00007ffff4e14605 in QHttpProtocolHandler::_q_receiveReply

Main Thread:
 #0  0x00007ffff20c7428 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
 #1  0x00007ffff43f0b56 in QWaitConditionPrivate::wait_relative (time=5000, this=0x136c580)
 #2  QWaitConditionPrivate::wait (time=5000, this=0x136c580)
 #3  QWaitCondition::wait (this=this@entry=0x136c788, mutex=mutex@entry=0x136c760, time=time@entry=5000)
 #4  0x00007ffff43efa6e in QThread::wait (this=<optimized out>, time=time@entry=5000)
 #5  0x00007ffff4e1edd3 in QNetworkAccessManagerPrivate::clearCache
 #6  0x00007ffff7b6fb03 in OCC::HttpCredentials::invalidateToken()
 #7  0x000000000057adb4 in OCC::AccountState::slotInvalidCredentials()
 #8  0x000000000057ac76 in OCC::AccountState::slotConnectionValidatorResult(OCC::ConnectionValidator::Status, QStringList const&) ()
 #9  0x00000000005ab45c in OCC::AccountState::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)
 #10 0x00007ffff45dcd30 in QMetaObject::activate
 #11 0x00007ffff7b78671 in OCC::ConnectionValidator::connectionResult(OCC::ConnectionValidator::Status, QStringList) ()
 #12 0x00007ffff7ae2514 in OCC::ConnectionValidator::reportResult(OCC::ConnectionValidator::Status) ()
 #13 0x00007ffff7ae39b7 in OCC::ConnectionValidator::slotAuthFailed(QNetworkReply*) ()
 #14 0x00007ffff7b784a9 in OCC::ConnectionValidator::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
 #15 0x00007ffff45dcd30 in QMetaObject::activate
 #16 0x00007ffff7b766dc in OCC::AbstractNetworkJob::networkError(QNetworkReply*)
 #17 0x00007ffff7af9f6e in OCC::AbstractNetworkJob::slotFinished()
 #18 0x00007ffff7b7654d in OCC::AbstractNetworkJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
 #20 0x00007ffff45dd607 in QMetaObject::activate
 #21 0x00007ffff4edd143 in QNetworkReply::finished
 #22 0x00007ffff4e3fec7 in QNetworkReplyHttpImplPrivate::finished
 #23 0x00007ffff4e41818 in QNetworkReplyHttpImpl::close
 #24 0x00007ffff7b7047b in OCC::HttpCredentials::slotAuthentication(QNetworkReply*, QAuthenticator*) ()
 #25 0x00007ffff7b79092 in OCC::HttpCredentials::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
 #27 0x00007ffff45dd607 in QMetaObject::activate
 #28 0x00007ffff4e1d6fb in QNetworkAccessManager::authenticationRequired
 #29 0x00007ffff4e1ea07 in QNetworkAccessManagerPrivate::authenticationRequired
 #30 0x00007ffff4e3c784 in QNetworkReplyHttpImplPrivate::httpAuthenticationRequired

Another case of Main Thread:
 #5  0x00007ffff4e1edd3 in QNetworkAccessManagerPrivate::clearCache
 #6  0x00007ffff7b6fb03 in OCC::HttpCredentials::invalidateToken()
 #7  0x000000000057b1e4 in OCC::AccountState::slotInvalidCredentials() ()
 #8  0x00000000005abb8a in OCC::AccountState::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
 #9  0x00007ffff45dcd30 in QMetaObject::activate
 #10 0x00007ffff7b76ed5 in OCC::Account::invalidCredentials() ()
 #11 0x00007ffff7ad55f5 in OCC::Account::handleInvalidCredentials()
 #12 0x00007ffff7afa69a in OCC::AbstractNetworkJob::slotFinished()
 #13 0x00007ffff7b7654d in OCC::AbstractNetworkJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
 #15 0x00007ffff45dd607 in QMetaObject::activate
 #16 0x00007ffff4edd143 in QNetworkReply::finished
 #17 0x00007ffff4e3fec7 in QNetworkReplyHttpImplPrivate::finished
 #18 0x00007ffff4e41818 in QNetworkReplyHttpImpl::close
 #19 0x00007ffff7b7047b in OCC::HttpCredentials::slotAuthentication(QNetworkReply*, QAuthenticator*) ()
 #20 0x00007ffff7b79092 in OCC::HttpCredentials::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
 #22 0x00007ffff45dd607 in QMetaObject::activate
 #23 0x00007ffff4e1d6fb in QNetworkAccessManager::authenticationRequired
2016-01-07 14:46:49 +01:00
Christian Kamm
71ad94ddb2 Fix crash when deleting account while sync is running #4337 2016-01-07 13:54:26 +01:00
Olivier Goffart
06ffc44073 Fix RTL languages in sync dialog #4336 2016-01-07 13:37:46 +01:00
Jocelyn Turcotte
e9ba7c612e Keep only active entries in the Not Synced list #3171
Now that we have a separate list for files that could not be synced,
we can make sure that it only shows entries for files that are still
not in sync with the server. This allows the user to treat this list
as action items in order to get everything synced, including the
blacklist.

Simply remove the keep-errors logic that was used when the lists were
merged to achieve this result.
2016-01-07 11:37:50 +01:00
Daniel Molkentin
9c7066ac47 Translation cleanups
- Disambiguation
- Remove potentially illigitmate concatenations
2016-01-06 16:50:59 +01:00
Daniel Molkentin
cede7ec971 Work around layouting issue for RTL languages
This has been fixed in the meanwhile, but we are still shipping
with Qt 5.4. Also, some Linux Distros will still have older Qt
versions.

Addresses issue #4301
2016-01-06 12:52:58 +01:00
Jocelyn Turcotte
2f355c473a Don't show parent folders in the error list #3796
The error status of children should only be used for the etag logic.
The SocketApi uses a path matching system to do this and the UI should
report errors only for individual involved files/directories.
2016-01-06 12:37:35 +01:00
Jocelyn Turcotte
a63ebe0904 Bring back the red box for errors #3796
This use the previous code by resetting the progress to hide
the progress back and then return errors in the FolderErrorMsg
data role of the folder model.

This also remove the unused FolderRemotePath role, remove FolderStatus
in favor of invalidating all roles in dataChanged and make sure
that the SyncRunning role is transfered properly from the SyncResult
to show the warning icon during sync.
2016-01-06 12:37:35 +01:00
Markus Goetz
ef9483c82d Revert "HTTP Creds: Do not send the password at every request"
We need this for #4326

This reverts commit ae17f58b80.
2016-01-06 11:50:52 +01:00
Jocelyn Turcotte
62df938465 Rename SyncFileStatus::STATUS_SYNC to STATUS_UPTODATE
Also use STATUS_UPDATED instead to match SyncFileItem::Success in the SocketAPI.
2016-01-05 15:41:15 +01:00
Markus Goetz
634dad033f Debug: Attempt to make log more useful 2016-01-05 15:12:00 +01:00
Jocelyn Turcotte
6e3809528e Fix OK statuses not being broadcasted during a sync #3944
Since the presence of any path in SyncEngine::_syncedItems
would translate in a SYNC status, platforms that don't refresh
all their status cache after an UPDATE_VIEW message like OS X
or Windows would keep displaying that status even after all
files are successfully synchronized.

- Read SyncFileItem::_status to determine the status to display mid-sync
- Match moved paths also to _renameTarget since this might be the
  path to match
- Make sure that PropagateDirectory jobs also set SyncFileItem::_status
  properly
2016-01-05 15:08:26 +01:00
Markus Goetz
60a6b2b0c3 OS X: Also show desktop notifications when app is active 2016-01-05 13:33:05 +01:00
Christian Kamm
2662203fb7 Windows: Fix deleting and replacing of read-only files #4308 2016-01-05 13:15:59 +01:00
Olivier Goffart
1bb76f5343 Attempt to recover from backup restoration on the server
If all the files bring us to past timestamp, it is possibly a backup
restoration in the server. In which case we want don't want to just
overwrite newer files with the older ones.

Issue #2325
2016-01-05 12:14:18 +01:00
Christian Kamm
d4edab02b0 Propagator: Deal with directories becoming files #4302
Note, in particular the revised order of directory deletion jobs.
2016-01-05 10:26:41 +01:00
Christian Kamm
5cc4c03b6a Propagator: Deal with files becoming directories #4302
This needed adjustments in reconcile, to mark the item as SYNC
as well as additions to the LocalMkdir job.
2016-01-05 10:26:41 +01:00
Jocelyn Turcotte
2e7a3f9e37 Fix a missing sync-exclude.lst file not failing the sync
After c3cf6aef7d the invokeMethod calls
should be adjusted to pass the new method arguments.

The result was currently a passing sync with this error message on
the console:
QMetaObject::invokeMethod: No such method OCC::Folder::slotSyncFinished()
2016-01-04 17:01:21 +01:00
Markus Goetz
c8b3df6668 OS X: Fix alignment of "Copy" button in protocol #4207 2016-01-04 16:16:15 +01:00
Olivier Goffart
639301e9e9 Merge remote-tracking branch 'origin/2.1'
Conflicts:
	VERSION.cmake
2016-01-04 12:38:59 +01:00
Olivier Goffart
970cdcfdbb SocketAPI: SHARE: Fix the paths when creating the share dialog
The socket api uses native folder separator. We need to use QDir::cleanPath
for anything else so we only work with '/' everywhere else in the code

This fixes the sharing dialog on window.

Issue #4311
2016-01-04 12:06:09 +01:00
Daniel Molkentin
16030a61eb Enable HiDpi scaling with Qt 5.6 2016-01-04 11:50:00 +01:00
Daniel Molkentin
5487fc1f9c Ensure Qt translator does always get loaded. 2016-01-04 11:50:00 +01:00
Klaas Freitag
a759ba1d9e Do not use nullptr, old compilers die on it. 2015-12-22 15:07:51 +01:00
Klaas Freitag
c607707580 Backport of #4245 2015-12-22 10:26:13 +01:00
Klaas Freitag
8f26bb698d Merge pull request #4245 from masoudcs/masoudcs-patch-1
Fixing bug in opening Activity log from tray icon menu 'Recent Changes/Details...'
2015-12-22 10:15:14 +01:00
Olivier Goffart
a0b913f65d gui: Word Wrap in QInputDialog (#4197) 2015-12-22 10:08:17 +01:00
Olivier Goffart
cf5b1e401c csync_vio_local_stat: Win: fetch mtime and size if not previously fetched
Since owncloud 2.1, csync_vio_local_stat was optimized because readdir
would already fetch most of the info.  This works for the discovery,
but not later.  And we used this function later for symliks and co.

So this fixes the .lnk on windows

Issue #4300
2015-12-21 14:25:30 +01:00
Olivier Goffart
11174ddf4c PropagateLocalRemove: Make it possible to remove read only files (#4277) 2015-12-21 13:25:10 +01:00
Olivier Goffart
48a0ffdc9e Systray: Use the original name for the rename notification #4295
Otherwise it shows twice as "newname was renamed to newname".
Because _file is set to the new name in PropagateLocalRename::start
2015-12-21 11:06:39 +01:00
Christian Kamm
0555c88425 User Sharing: Match user names and case insensitive #4269 2015-12-10 14:56:15 +01:00
Christian Kamm
e2d1a5a41d Share UI: Allow typing in a sharee
Previously you *had* to select one of the completion options, even
if the text in the lineedit was identical to one of the options.
2015-12-10 13:49:47 +01:00
Christian Kamm
df1b309b36 FolderWatcher: Remove IN_DONT_FOLLOW #3475
This fixes the case of the root folder being symlinked.
2015-12-10 13:05:43 +01:00
Christian Kamm
e3b53b7e74 Log: Remove scary messages :) 2015-12-10 11:50:19 +01:00
Christian Kamm
d8d9fcf2f4 Silence warning about zorder in .ui file. 2015-12-10 11:10:49 +01:00
Christian Kamm
ae806e8214 Merge remote-tracking branch 'origin/2.1' 2015-12-10 11:07:20 +01:00
Christian Kamm
8b5474ff67 SocketAPI: Don't use ERROR for SoftErrors #3944 2015-12-10 11:02:38 +01:00
Christian Kamm
f65a29df5d SocketAPI: Ensure messages are consistent #3944
Before we blindly broadcasted the result of a sync action. That was
often different from what a subsequent FILE_STATUS query would report.
2015-12-10 10:43:17 +01:00
Christian Kamm
fd18c565b0 SocketAPI: Fix file error cache #3944 2015-12-10 10:43:17 +01:00
Christian Kamm
fbb85fab81 Activity tab doesn't vanish with too many accounts #4188
The bug was introduced by a bad merge.
2015-12-10 09:43:16 +01:00
Christian Kamm
3572e7ffa4 Activity: Improve formatting of copied data #3498 2015-12-09 15:49:30 +01:00
Christian Kamm
fe75c6ad28 Wizard: Find user:pw even if redirected #4265 2015-12-09 14:48:51 +01:00
Christian Kamm
3de8f27a02 Force account wizard when last account is deleted #4266 2015-12-09 11:41:43 +01:00
Christian Kamm
4dfce57a58 Creds: Forget password on explicit sign-out #4241 2015-12-09 11:31:37 +01:00
Christian Kamm
179b25d289 AccountWizard: Don't crash when sync is running #4221
Running FolderMan::setupFolders() is redundant and just a leftover
from before multiaccount.
2015-12-09 09:08:21 +01:00
Christian Kamm
a2eee7e349 Share UI: Hide 'allow editing' for files #4211 2015-12-08 15:37:17 +01:00
Christian Kamm
cec4b803cf Share UI: Hide 'can share' if capability missing #4231 2015-12-08 12:58:56 +01:00
Christian Kamm
1a519ac1fb Share UI: Respect enfore-expire #4235 2015-12-08 12:16:05 +01:00
Christian Kamm
d92c8bec86 UI: Sign in/out -> Log in/out #4249 2015-12-08 12:05:14 +01:00
Christian Kamm
eb28d171f3 Doc: Add checksum overview 2015-12-08 10:59:42 +01:00
Olivier Goffart
68057c1c5a Sharee.cpp: Get rid of lambdas because we still need to support GCC 4.4 2015-12-03 14:47:59 +01:00
Masoud Kazemi
903dd8acef Fixing bug in opening Activity log from tray icon menu 'Recent Changes/Details...' 2015-12-03 15:25:59 +03:30
Markus Goetz
c4006795cc OS X: Attempt to fix account add oddities #4237 2015-12-02 17:59:41 +01:00
Klaas Freitag
cf06083d1b Utilities: Include math.h because of floor() 2015-12-02 17:56:37 +01:00
Markus Goetz
d15cf0c2ff Sharing: Remove mentioning of remote users from dialog #4234 2015-12-02 16:44:29 +01:00
Klaas Freitag
770ad54229 AccountSettings: Update the visibility of the add account button.
That fixes #4238
2015-12-02 16:33:37 +01:00
Markus Goetz
a75209d104 Account: Invalidate credentials when clicking "Sign out" #4241 2015-12-02 16:31:58 +01:00
Daniel Molkentin
ab5e543099 Use user-readable short folder path in the context menu 2015-12-02 15:46:42 +01:00
Klaas Freitag
451ebd447b Merge pull request #4169 from owncloud/2.1_file_exists_before_share
[Sharing] Make sure the file is actually synced to the server
2015-12-02 13:40:42 +01:00
Olivier Goffart
e27374324d AccountSettings: Remove the F5 reset folder shortcut
This secret key was used to wipe the database. In the past this was
usefull because of many bugs, but now this is not usefull anymore.
And cause trouble because it also erase the selective sync list.

Issue #4182
2015-12-02 12:27:53 +01:00
Klaas Freitag
4a2b5f7cc8 Merge pull request #4228 from owncloud/enforce_password-block
[Sharing] Do not allow users to uset the password if it is enforced
2015-12-02 10:07:04 +01:00
Klaas Freitag
52dc55d044 ShareLinkWidget: Stop editing progress animation if passwd is required. 2015-12-02 10:06:34 +01:00
Klaas Freitag
e6ab047751 ShareLinkWidget: Set state of passwd checkbox always. 2015-12-02 10:05:56 +01:00
Markus Goetz
c24a8ba208 Account removal: More crash fixes for Windows
Seems things happen a bit different here, maybe because of paint events.

For #4229 #4202
2015-12-01 19:21:52 +01:00
Markus Goetz
db7d70a929 Account removal: Do it inside global application object
For #4229 #4202
2015-12-01 16:32:04 +01:00
Roeland Jago Douma
01faf102ba [Sharing] Do not allow users to uset the password if it is enforced 2015-12-01 12:43:14 +01:00
Olivier Goffart
76d1296053 Disable some code that needs lambda with old GCC
It's just a feature that was not there in 2.0
It means that removed folder stay on the undecided list if it is removed
from the server until the user press apply in the selective sync widget.
Not a very bad bug anyway.
2015-12-01 10:30:11 +01:00
Roeland Jago Douma
c79879aa07 [Sharing] Default capabilitie for link sharing
Required to fix sharing for pre 8.1 servers
2015-11-30 16:55:06 +01:00
Roeland Jago Douma
b033a8e731 [Sharing] Files should not have create permissions 2015-11-30 15:47:10 +01:00
Arthur Schiwon
d62c51890e show displaynames of users in share dialog instead of userid 2015-11-27 15:19:39 +01:00
Klaas Freitag
b896d8aa15 ActivityWidget: Fix type (#4204) 2015-11-26 21:41:31 +01:00
Christian Kamm
9e66a6bec6 Settings dialog: Fix crash when deleting account #4202 2015-11-26 13:27:20 +01:00
Klaas Freitag
1ad8e539aa SyncJournalFileRecord: Fix comparison operator
Compare only full seconds, as milliseconds can disappear during storage
of the database.

This is needed to fix the syncjournaldb test reliably. And maybe
elsewhere.

Also see
http://www.qtcentre.org/threads/13618-Problem-with-comparing-two-QDateTime-objects
2015-11-25 21:11:58 +01:00
Roeland Douma
f1435c86ed Merge pull request #4199 from owncloud/permission_dropdown
[Sharing] Permissions now in dropdown menu
2015-11-25 14:04:39 +01:00
Roeland Jago Douma
ece164f679 [Share] Use more icon 2015-11-25 14:02:45 +01:00
Christian Kamm
698f47d5ad Blacklist: Treat all 403s the same #4071
We can't detect firewall errors due to error message localization.
2015-11-25 12:49:57 +01:00
Roeland Jago Douma
f1faf8745a [Sharing] Permissions now in dropdown menu
As discusses with jan.

* Detailed permissions displayed in qtoolboxmenu
* Made share rows slightly smaller

Bug fix:

* Do not show delete permissions for file shares
2015-11-25 11:26:21 +01:00
Christian Kamm
df63579071 Blacklist: Firewall errors are silenced for up to 1h only #4071 2015-11-25 10:39:43 +01:00
Christian Kamm
5216648d0b Share dialog: Work around painting bug #4189 2015-11-25 10:09:41 +01:00
Roeland Jago Douma
fcdab1e804 [Sharing] Also add sync status to SHARE_STATUS command 2015-11-25 09:40:21 +01:00
Roeland Jago Douma
9f15ba3972 [Sharing] Make sure the file is actually synced to the server
Before we attemt any sharing make sure the file is synced to the server.
2015-11-25 09:22:20 +01:00
Markus Goetz
76ce9ff8c4 Activity List: Improve double click handling on filenames #4168 2015-11-24 14:25:16 +01:00
Christian Kamm
23ed68c8dd Re-apply ee69ab2021 2015-11-24 13:45:02 +01:00
Christian Kamm
2982c79444 Settings: Fix "Choose what to sync" #4187
There was a duplicate connect() due to a merge problem (?) in
7e4c0bd515
2015-11-24 13:41:00 +01:00
Christian Kamm
7e56408331 SelectiveSync: Show Apply/Cancel less
Before the selective sync status text and apply/cancel buttons
were shown as soon as any folder was expanded. This changes it
to only show when the model is dirty (or a big folder confirmation
is needed).

This is nice because we auto-open the folder list sometimes
and having the apply/cancel buttons visible makes users think a
decision is needed.
2015-11-24 13:01:10 +01:00
Christian Kamm
bcfdcec3ee Share dialog: Adjust layout #4119 2015-11-24 12:30:53 +01:00
Christian Kamm
f96d94f143 ShareDialog: Only link share if capabilities allow #4179 2015-11-24 11:58:10 +01:00
Christian Kamm
adea301e5b Blacklist: Clear on successful chunk upload #3934 2015-11-24 10:09:55 +01:00
Christian Kamm
f9dc569b0a Share dialog: Don't close on enter
Setting default=false was not enough.
2015-11-24 09:58:18 +01:00
Christian Kamm
f7932bb0c7 ShareDialog: Completion uses MatchContains #4123
For Qt 5.2.0+ only.
2015-11-24 09:10:26 +01:00
Markus Goetz
b52a3a415c Connectivity: Improve reconnecting after network change/disconnect #4167 2015-11-23 21:48:26 +01:00
Markus Goetz
33dcb0c8d9 PropagateLocalRemove: Add debug
Was not in log so far
2015-11-23 21:48:25 +01:00
Markus Goetz
709da37be2 Activities: Only emit debug when actually refreshing 2015-11-23 21:48:25 +01:00
Christian Kamm
2458f07ca1 Checksums: Reuse the discovery checksum where possible 2015-11-23 14:13:10 +01:00
Christian Kamm
6cf5fc7f7d Permissions: Keep more user permissions
t4.pl discovered that it'd needlessly override permissions sometimes
2015-11-23 13:24:05 +01:00
Christian Kamm
10db6cee6c Rename files 2015-11-23 12:09:25 +01:00
Christian Kamm
a25f094c4c Checksums: Don't reupload if size and checksum are unchanged #3235
* Compute the content checksum (in addition to the optional
  transmission checksum) during upload (.eml files only)

* Add hook to compute and compare the checksum in csync_update

* Add content checksum to database, remove transmission checksum
2015-11-23 11:59:56 +01:00
Christian Kamm
bdf830f691 Add an experimental ProppatchJob #3235 2015-11-23 11:59:56 +01:00
Christian Kamm
bd72642a58 ShareLink: Always initialize expire date #4075 2015-11-23 09:42:16 +01:00
Olivier Goffart
0020211857 owncloudcmd: Don't do a check that file are older than 2s (#4160)
This is required for the smashbox test to pass
2015-11-20 15:16:09 +01:00
Klaas Freitag
94e7c762bf ActivityWidget: display if the server does not support acitivities.
If the server does not have the activities app enabled, it says so now.
Fix for #4163
2015-11-19 16:01:51 +01:00
Klaas Freitag
421c6a92f3 NetworkJobs: JSON network job now reports OCS reply code.
The signal jsonReceived() now not only delivers the raw json string, but
also the status code that came as OCS reply.

Also, fixed a typo in the signals name (recieved => received).
2015-11-19 16:01:51 +01:00
Olivier Goffart
d6aa667971 ShareDialog: remove the "Premissions" label and adjust the size of the scrollarea (#3737) 2015-11-19 12:32:50 +01:00
Olivier Goffart
575fc9acbd ShareDialog: show an error if the sharing API is disabled (#4126) 2015-11-19 12:00:53 +01:00
Olivier Goffart
d581550130 Fix compilation warning 2015-11-19 10:50:52 +01:00
Olivier Goffart
952a134745 Sharing: document that the two Type enum are linked 2015-11-19 10:50:21 +01:00
Olivier Goffart
887aa952fe ShareDialog: Keep default server permissions by default (#4152) 2015-11-19 10:49:39 +01:00
Phil Davis
55a96af7cc tagLastSuccessfullETagRequest comment wording
Improve this to say what I think it means.
2015-11-19 11:02:15 +05:45
Klaas Freitag
8abaf92083 Merge git://github.com/NvanAdrichem/client into 2.1, pull #4060 2015-11-18 17:00:19 +01:00
Klaas Freitag
b0c29d5c66 Merge pull request #4159 from owncloud/fix_3490
csync updater: Handle file firewall reply codes correctly: Ignore the files.

Fixes #3490
2015-11-18 16:55:53 +01:00
Olivier Goffart
41a6f6df84 FolderStatusModel: add hints for translators (#4158) 2015-11-18 16:35:11 +01:00
Olivier Goffart
4984da7e0d Activity Widget: Fix runtime warning
Fix the warning:
 QLayout: Attempting to add QLayout "" to OCC::ActivitySettings "", which already has a layout

It was caused because one layout was created with the wrong parent
2015-11-18 15:32:39 +01:00
Klaas Freitag
62d26814b2 SyncEngine: Handle 403 Forbidden properly.
A 403 is a reply code sent from the file firewall to indicate that
this directory is forbidden to use for the user.

The patch handles it by setting the state to IGNORED.

This addresses #3490
2015-11-18 15:31:55 +01:00
Markus Goetz
f2d8143511 Activity View: Update only if visible and when becoming visible #4083 2015-11-18 15:25:29 +01:00
Markus Goetz
3c1a605f62 Connectivity: Also accept SyncEngine etag as received ETag
Avoids requests on startup.
For #3964
2015-11-18 14:51:28 +01:00
Markus Goetz
65ec8a9e94 Connectivity: Decrease debug logging
For #3964
2015-11-18 12:13:21 +01:00
Klaas Freitag
60598c0d34 Use the configuration value of remotePollInterval rather than hardcoded. 2015-11-18 11:40:29 +01:00
Klaas Freitag
3d7fc711ca AccountState: Avoid ConnectionCheck if ETag job was just done.
This patch lets a successful etag job check mark a timestamp.
If next time a connection check is requested, it is checked if
the last ETag happened within the last 30 seconds and if so the
connection check can be checked.

This way we avoid half of the PROPFINDs if all goes well.
2015-11-18 11:40:29 +01:00
Klaas Freitag
46dbca1bf5 ShareDialog: Remove Qt4 incompatible property of QScrollView. 2015-11-18 10:30:02 +01:00
Klaas Freitag
f5da95a5b7 ActivityWidget: Make compile with Qt4 2015-11-18 10:30:01 +01:00
Daniel Molkentin
b37361e21c Remove spacer that would constrain a vertical resize
Fixes #4157
2015-11-18 10:06:38 +01:00
Klaas Freitag
5ec4fd94e0 ActivityWidget: No progress indic. for non connected accounts. 2015-11-17 15:05:54 +01:00
Klaas Freitag
c9ef4d5fa0 ActivityWidget: Detect new items in the list to refetch the activities.
On refresh, remove the activity list object from the models list.
2015-11-17 14:46:25 +01:00
Klaas Freitag
1cdf0e8597 ActivityWidget: Always combine the final activity list.
In cases where the activity app is not activated on the server, the
returned list of activities is empty, so it is better this way.
2015-11-17 14:46:25 +01:00
Olivier Goffart
e0f54428d0 ShareDialog: softer line separator (#3737) 2015-11-17 12:02:20 +01:00
Markus Goetz
52a11b0835 Activities: Fix on Mac #4083 2015-11-17 11:53:49 +01:00
Markus Goetz
ef17dc6482 Connectivity: Improve log output 2015-11-17 11:02:53 +01:00
Markus Goetz
9978dc3f6c QNAM: Use invalid configuration instead of default configuration
For #3969 and others.
2015-11-17 11:02:53 +01:00
Olivier Goffart
f618ed3dfb gui: Fix some icons in highdpi
QIcon does not need to use Theme::hidpiFileName because QIcon takes care
of the @2x images
2015-11-17 10:48:45 +01:00
Olivier Goffart
ef915fb2e5 SharedDialog: Fix the delete icon on windows and mac (#3737) 2015-11-17 10:40:45 +01:00
Olivier Goffart
6e42405113 ShareDialog: remove the search button (#3737) 2015-11-17 10:24:35 +01:00
Olivier Goffart
11ef07c74a ActivityWidget: fix compiler warnings 2015-11-17 09:54:38 +01:00
Klaas Freitag
8852911f67 Merge branch 'master' of github.com:owncloud/mirall 2015-11-16 18:16:58 +01:00
Klaas Freitag
e38bc6eab8 AcitivityWidget: Moved timespan-in-words method to utility.
Also added a second parameter, fixed plural translation and added
a less-than-a-minute-ago term.
2015-11-16 18:08:25 +01:00
Olivier Goffart
459e200ac0 ShareDialog: add a QScrollArea (issue #4125 ) 2015-11-16 18:01:11 +01:00
Klaas Freitag
c781155b60 General Settings page: Remove the add account button.
It is now in the toolbox on the account page.
2015-11-16 17:07:05 +01:00
Klaas Freitag
87aa1de67a Merge branch 'newactivity' 2015-11-16 17:02:05 +01:00
Klaas Freitag
ccb871c30b ActivityWidget: Show the subject in the Tooltip.
the original text might be elided.
2015-11-16 16:44:52 +01:00
Klaas Freitag
74ed0b4f09 Merge pull request #4139 from owncloud/account_toolbox
AccountSettings: Add a toolbox button for the account specific actions.
2015-11-16 15:53:30 +01:00
Klaas Freitag
becbb7b284 AccountSettings: Address jans suggestions in #4139
- Changed sequence of menu items
- lowercased entries
- removed the "Account" from entries, its in the toolbox button already
- added a little space between toolbox button label and the rectangle.
2015-11-16 15:50:32 +01:00
Klaas Freitag
ff76a842d0 Added some documentation. 2015-11-16 15:38:08 +01:00
Klaas Freitag
a56926b8d9 ActivityWidget: open local file in file manager if exists. 2015-11-16 15:31:24 +01:00
Olivier Goffart
0d21503ee5 ShareDialog: fix auto completion to actualy auto complete 2015-11-16 15:23:02 +01:00
Klaas Freitag
631cb095dd ActivityWidget: Show the local path in a tooltip.
Note that the activity has also entries of files that are not synced so
that not every activity entry has to have a local pendant.

Also, one activity entry can reference multiple files, so only the first
one is shown.
2015-11-16 15:07:02 +01:00
Klaas Freitag
caba719950 Folderman: Added method to find local files for a rel. server path. 2015-11-16 15:04:59 +01:00
Klaas Freitag
7e4c0bd515 AccountSettings: Add a toolbox button for the account specific actions.
Also move the 'Add Account' button from the General Tab, where it
is not properly found, to the new account toolbox.
2015-11-13 14:50:07 +01:00
Klaas Freitag
ddcec2971e ActivityDelegate: Gray out font if account is not connected.
This gives a visual indication of the account not being connected
and as a result maybe outdated activity data.
2015-11-13 12:48:25 +01:00
Roeland Jago Douma
72d119a05f [Sharing] Delete animation when share is removed 2015-11-13 11:03:51 +01:00
Roeland Jago Douma
d423cf2c7f [Sharedialog] Fix UI stuff
Implemented suggestions form
https://github.com/owncloud/client/issues/3737#issuecomment-156036279

* Removed Shares text
* Permissions now next to username
* Simplified permissions by default
* Button to get more detailed permissions
2015-11-13 10:27:26 +01:00
Klaas Freitag
731a13cfd1 ActivityWidget: Take the account state (connected or not) in account.
Display the activity entries in a different mode if the account is not
longer connected.
2015-11-12 17:52:00 +01:00
Klaas Freitag
81296fae9d AccountManager: new method to return AccountStatePtr from the name.
It uses the Account displayName to destinguish.
2015-11-12 17:50:00 +01:00
Klaas Freitag
aa38f7a4f2 ActivityWidget: implement removeAccount. 2015-11-12 15:39:07 +01:00
Klaas Freitag
ff4a8c9202 GeneralSettings: Remove references to protocolwidget.
The ProtocolWidget is now the Activitytab Widget
2015-11-11 14:49:11 +01:00
Christian Kamm
c871d721fd Tray tooltip: Use aliasGui #4096 2015-11-11 14:35:56 +01:00
Christian Kamm
05d1cc9a94 Sharing: Fix crash with share deletion #4111
The problem was that Share could be deleted *before*
the OcsShareJob itself finished. Since Share was the
parent of the network job, its object would be deleted
too early.

In general, it's unnecessary to assign parents to the OcsJobs
because they delete themselves when finished.
2015-11-11 13:28:20 +01:00
Christian Kamm
196ee05fcc Share dialog: Initialize expected expire date #4075 2015-11-11 13:01:12 +01:00
Christian Kamm
e50cfa4e1b Recent Activity: Don't reset for no reason #3889 2015-11-11 12:48:15 +01:00
Daniel Molkentin
3224a959a4 Forward-declare QModelIndex. Fixes Qt4 builds. 2015-11-11 11:52:10 +01:00
Christian Kamm
2ccb3648c7 Recent Activity: Filter metadata updates #3963 2015-11-11 11:19:04 +01:00
Christian Kamm
01aa647527 FolderMan: Fix infinite wait on pause #4093
If a folder was paused while being the next item in the scheduling
queue, the whole scheduling could get stuck.

This also fixes the progress information of paused folders possibly
getting stuck.
2015-11-11 10:59:04 +01:00
Christian Kamm
25c177ca3b SyncJournalFileRecord: Remove unused mode field 2015-11-11 09:42:31 +01:00
Daniel Molkentin
1d9c591c08 Fix OS X compilation: use mode_t instead of __mode_t 2015-11-11 09:36:17 +01:00
Klaas Freitag
5e98894a97 ActivityView: Add a progress indicator widget to indicate action. 2015-11-10 18:10:58 +01:00
Markus Goetz
15fe3b569b Merge pull request #4100 from mnutt/credentials-from-url
Populate account setup credentials from server URL
2015-11-10 16:12:34 +01:00
Klaas Freitag
0e0b6026fc Activity: Unify the GUI, and reactivate copy to clipboard for all. 2015-11-10 15:12:35 +01:00
Christian Kamm
17dd199cba Checksums: Treat more carefully in db #4034
In particular, preserve them on local rename or remote move.
2015-11-10 15:05:00 +01:00
Christian Kamm
8f7dbe71a1 CleanupPollsJobs: Preserve more journal data 2015-11-10 14:26:25 +01:00
Christian Kamm
4b5c3d8f09 Tray: Show settings dialog on click if it's not active
Before, you often had to click twice to bring the window
to the front, because the first click would close it.
2015-11-10 12:33:36 +01:00
Christian Kamm
9955b0756a Settings: Show first account page on startup #4036 2015-11-10 12:20:08 +01:00
Christian Kamm
76d9b9c0e2 Rename env variables to include unit #2939 2015-11-10 12:07:10 +01:00
Christian Kamm
175ad6fb77 Reflect read-only permissions in filesystem #3244 2015-11-10 10:14:25 +01:00
Christian Kamm
51896902e3 Silence warning by removing extra semicolon 2015-11-10 10:06:49 +01:00
Michael Nutt
bd65eb32b7 SetupWizard: populate credentials from HTTP server URL
If a user enters a server URL in the form of
https://user:pass@example.com/, pre-populate the following credentials
page with those values.
2015-11-09 18:21:33 -05:00
Olivier Goffart
b29d1e94b5 ShareDialog: fix autocompletion took the wrong user 2015-11-09 17:22:17 +01:00
Olivier Goffart
b74e812671 Share dialog: a few layout adjustements 2015-11-09 17:22:17 +01:00
Olivier Goffart
aa27b5db14 Discovery: silent static analysis warning
We do a check one line earlier that the size is smaller than the buffer
Then we don't need to call strncpy,  strcpy is enough
2015-11-09 17:22:17 +01:00
Markus Goetz
81e3a62360 Account: Show local path in tooltip 2015-11-09 16:39:08 +01:00
Markus Goetz
4784b327e7 Folder Status: Use same fat ... icon as web 2015-11-06 16:10:50 +01:00
Klaas Freitag
cf9fec73cf ActivityView: Add a second treeview for sync issues.
So there are three views now: One displaying the server activities, one for
the sync protocol and a third one for ignored files and issues.
2015-11-06 11:43:43 +01:00
Klaas Freitag
a1551ef6ab ActivityDelegate: Make the row height public accessible.
Now it can be used to be set on the other two treeviews.
2015-11-06 11:41:32 +01:00
Markus Goetz
0163839cfb OS X: Fix toolbar oddity #3719 2015-11-06 10:18:09 +01:00
Roeland Douma
914a942e33 Merge pull request #4055 from owncloud/user_group_sharing
User group sharing
2015-11-06 09:35:42 +01:00
Roeland Jago Douma
6431a2aa46 [Sharing] Build sharee list on every search 2015-11-05 15:01:29 +01:00
Niels van Adrichem
572d9bdf1a Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/gui/share.h
2015-11-05 14:42:26 +01:00
Roeland Jago Douma
4cf2422a83 [Sharing] Clear completer on activation 2015-11-05 13:16:52 +01:00
Roeland Jago Douma
806ec98eab [Sharing] Properly delete widget 2015-11-05 13:10:32 +01:00
Roeland Jago Douma
20fd349e17 [Sharing] Filter sharee list properly
You can't share with a user/group that you've already shared with
You can't share with yourself
2015-11-05 12:30:34 +01:00
Roeland Jago Douma
3e4612a1f0 [Sharing] Reorganized sharedialog code
Now we have 1 simple dialog that includes 2 widgets.
* ShareLinkWidget (for link shares)
* ShareUserGroupWidget (for user/group shares)

The ShareUserGroupWidget is only included if the server version is >=
8.2.0

For <8.2.0 the old behavior is preserved
2015-11-05 09:58:16 +01:00
Roeland Jago Douma
90cbd461ab [Sharing] Allow sharing with users/groups from desktop 2015-11-04 22:00:35 +01:00
Daniel Molkentin
5fccc25f36 Fix Qt4 build 2015-11-04 19:28:54 +01:00
Klaas Freitag
cb1571c6c5 ActivityWidget: Rather use accountState pointer directly.
Do not use it via a smart pointer class.
2015-11-04 16:40:22 +01:00
Klaas Freitag
3bccfb8993 ActivityView: Add information about the account. 2015-11-04 13:22:03 +01:00
Roeland Jago Douma
6fb4e59120 [Sharing] First step towards proper group sharing 2015-11-04 12:56:06 +01:00
Roeland Jago Douma
309be57a12 [Sharing] Add user/group sharing dialog
Dialog can now retrive current shares for path, set the permissions on
those shares and delete the share.
2015-11-04 12:53:07 +01:00
Roeland Jago Douma
37098c96f9 [Sharing] Add setpermission to sharing code
For user/group/remote shares we were just missing the setPermissions
functionality
2015-11-04 12:53:02 +01:00
Klaas Freitag
cb4fba7658 ActivityWidget: Created a delegate for prettier display of the activities 2015-11-03 17:54:37 +01:00
Niels van Adrichem
0bcb13f02e Fixxed compile error on src/gui/share.h 2015-11-03 13:44:59 +01:00
Niels van Adrichem
1ab44655e0 Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/cmd/cmd.cpp
2015-11-03 11:58:45 +01:00
Niels van Adrichem
8f5658bc01 Added Non Shibboleth WebDAV authentication and Dav Path customization to owncloudcmd 2015-11-02 22:57:17 +01:00
Klaas Freitag
b600ac882a ActivityListModel: Add method to refresh one Account (WIP) 2015-11-02 17:52:04 +01:00
Klaas Freitag
71849c4372 ActivityListModel: Add the page and pagesize parameter to ocs query. 2015-11-02 17:51:12 +01:00
Klaas Freitag
9545af0d43 JSONApiJob: Add method to add additional query parameter. 2015-11-02 17:37:23 +01:00
Klaas Freitag
6c6ee358d4 ActivityListModel: Check if the account is connected when fetching more. 2015-11-02 16:39:33 +01:00
Klaas Freitag
060f4f291b SettingsDialog: Add a tab with the SyncProtocol to ActivityWidget. 2015-11-02 15:46:00 +01:00
Klaas Freitag
3fb43d2322 ActivityWidget UI: Remove the preconfigured tabs from the tabwidget.
It is better to create the tabs from the code in SettingsDialog.
2015-11-02 15:45:17 +01:00
Klaas Freitag
4895683bab ActivityWidget: Do a proper asynchronous model to display the activity. 2015-11-02 15:44:13 +01:00
Klaas Freitag
3b8e1dcd89 SettingsDialog: Make ActivityWidget a member. 2015-11-01 22:30:46 +01:00
Klaas Freitag
302d6b321e ActivityWidget: Add a job to fetch activities, Activity object added 2015-11-01 22:30:37 +01:00
Olivier Goffart
3993a7f636 OwnSQL: add asserts in case of error that should not happen 2015-10-30 14:05:58 +01:00
Olivier Goffart
aaf16ff0e8 SyncJournalDB, clear all the queries before closing the database 2015-10-30 14:03:08 +01:00
Olivier Goffart
16c078963b owncloudcmd: add --max-sync-retries #4037
And limit by default to 3 retries
2015-10-30 13:36:31 +01:00
Klaas Freitag
9279bcdba4 Add a tabwidget to Settings dialog for activity. 2015-10-30 13:26:27 +01:00
Olivier Goffart
0c467ef5b4 Sync engine: fix signal/slot connection 2015-10-30 13:21:34 +01:00
Olivier Goffart
49cd53ee44 FolderStatusModel: attempt to detect removed undecided files #3612 2015-10-30 12:43:33 +01:00
Olivier Goffart
0e6a463564 Discovery: Don't leak DiscoveryDirectoryResult in case of error
Also remove redundent Q_FUNC_INFO
2015-10-30 12:43:33 +01:00
Roeland Douma
d38b190317 Merge pull request #4033 from owncloud/share_object
Add share manager and the share objects
2015-10-30 11:01:03 +01:00
Roeland Jago Douma
c7b814337a Use proper QFlags
Now the ShareTypes and Permissions are part of the Share class (which is
a bit better abstracted away).
2015-10-29 21:47:47 +01:00
Roeland Jago Douma
dd8d02b8ef Act properly if OCS endpoint returned an error (OCS error)
For now pass it on to the gui. So at least they know something is wrong.
2015-10-29 16:56:23 +01:00
Olivier Goffart
c3cf6aef7d SyncEngine: Don't whipe the white list if the sync was aborted
Issue #4018
2015-10-29 16:47:39 +01:00
Olivier Goffart
38a8e5ee03 Discovery: conding style: use const references for function parameters 2015-10-29 16:47:36 +01:00
Klaas Freitag
46269dac4e Merge branch '2.0'
Conflicts:
	ChangeLog
2015-10-29 16:34:15 +01:00
Roeland Jago Douma
8c0297f688 Use QLatin1Char 2015-10-29 16:03:47 +01:00
Klaas Freitag
ee65315520 Merge branch '2.0.2' into 2.0
Conflicts:
	ChangeLog
2015-10-29 15:44:56 +01:00
Roeland Jago Douma
12f7cfde87 Shares do not have parents
Also some pointer cleanups
2015-10-29 15:42:25 +01:00
Roeland Jago Douma
6d80f3d756 Proper foreach 2015-10-29 15:42:25 +01:00
Roeland Jago Douma
b32f752d31 Properly cleanup OCS jobs 2015-10-29 15:42:25 +01:00
Roeland Jago Douma
cf8be7de91 Proper const usage 2015-10-29 15:42:25 +01:00
Roeland Jago Douma
30a3498c22 Fix typos 2015-10-29 15:42:25 +01:00
Roeland Jago Douma
239603e24c Make sure enforced passwords are properly respected
Fixes for old and new servers
2015-10-29 15:42:25 +01:00
Roeland Jago Douma
390daed3de Added getPublicUpload to LinkShare
so the gui does not have to know abou the internal permissions
2015-10-29 15:42:25 +01:00
Roeland Jago Douma
918c06aba3 Add share manager and the share objects 2015-10-29 15:42:20 +01:00
Klaas Freitag
726be08917 Revert "Config: Use monochrome icons per default on MacOSX."
This reverts commit 546cab3f62.
For OEMs this patch causes an empty tray icon set.
2015-10-29 15:37:31 +01:00
Olivier Goffart
a127debc54 Quota: handle special negative value for the quota #3940
Don't show a progress bar if there is an unkown or unlimited total
2015-10-29 14:33:29 +01:00
Olivier Goffart
6aa26654f6 Merge remote-tracking branch 'origin/2.0' 2015-10-29 12:44:28 +01:00
Olivier Goffart
0fde7f0e6b Propagator: Keep a meaningfull error with old server and invalid file names
We changed the discovery code not to ignore files whose filename contains
charachter invalid on windows. (Because newer versions of the server
supports them)
Servers older than 8.1 will just say "Bad Request" as an error and it's a
regression against previous client version. So keep nice error even with
older server.

Relates to #3736
2015-10-29 12:44:08 +01:00
ckamm
251679253a Merge pull request #3951 from ckamm/checksum
Checksums stored in database #3735
2015-10-29 10:40:24 +01:00
Christian Kamm
64756c5dce --version also shows Qt version
That makes it much easier for people reporting bugs.
2015-10-29 09:48:36 +01:00
Christian Kamm
9788055147 Propagator: Add blacklisting of disk space errors #2939 2015-10-29 09:36:59 +01:00
Daniel Molkentin
4737c16996 State application name in update notification
Fixes #4020
2015-10-28 20:45:57 +01:00
Christian Kamm
496b1e907d Checksum: Don't lose it on metadata update #3735
Also improve tests.
2015-10-28 14:49:55 +01:00
Christian Kamm
566131209d Checksum: Fixes after review 2015-10-28 14:46:20 +01:00
Christian Kamm
b7823dc648 Checksum: Put checksum type into separate column #3735 2015-10-28 14:46:20 +01:00
Olivier Goffart
6d28a1b645 Fix Qt4 compilation 2015-10-28 13:26:35 +01:00
Markus Goetz
a6c9e8c5b4 Merge branch 'kill_legacy_propagator' 2015-10-28 11:06:50 +01:00
Markus Goetz
9337927722 legacy propagator: Remove more code 2015-10-28 10:59:02 +01:00
Christian Kamm
5ea09d2668 Checksum: Disallow ADLER32, use Adler32 #3735 2015-10-28 09:59:33 +01:00
Christian Kamm
b9fc4c5994 Checksum: Fix recomputation when forced in cfg file #3735
Don't recompute the checksum on each upload when the server does not
advertise supporting checksums.
2015-10-28 09:56:39 +01:00
Christian Kamm
f1b500d3e0 Checksum: Add env variables to disable #3735 2015-10-28 09:56:39 +01:00
Christian Kamm
dff37e11eb Propagate: Store computed checksums in db during upload #3735 2015-10-28 09:56:39 +01:00
Christian Kamm
b1387f801b Propagate: On download store checksum header in db #3735 2015-10-28 09:56:39 +01:00
Christian Kamm
60b2312ab6 SyncJournal: Add checksumHeader column to metadata table #3735 2015-10-28 09:56:39 +01:00
Christian Kamm
0354289795 Checksums: Improvement in async computation and validation #3735 2015-10-28 09:56:39 +01:00
Christian Kamm
c11c35c459 Revert "In case of empty checksum type, emit validated."
This reverts commit b05ca526a4.

The checksum type setting should not matter for downloads.
2015-10-28 09:56:39 +01:00
Christian Kamm
7c5e70ac3c PropagateUpload: Fix double-emission of finished #3844 2015-10-28 09:53:54 +01:00
Klaas Freitag
0c9568f6dc Merge pull request #4004 from owncloud/fix_hidden_detection
Fix hidden detection
2015-10-28 09:28:35 +01:00
Olivier Goffart
f1d48a9356 Folder Model: The item needs to be selectable for the currenIndex to appear selected
And we set the current index in AccountSettings::slotLinkActivated
2015-10-27 17:37:12 +01:00
Olivier Goffart
89f2a9e6dc Account Settings: A link should make sure all the parents are expanded 2015-10-27 17:37:12 +01:00
Klaas Freitag
a203da3919 FolderStatusModel: Check for null argument at start. 2015-10-27 17:37:12 +01:00
Klaas Freitag
1c1ef52cf1 AccountSettings: Display a link for undecided dirs in the sub text.
This only works in case the index is known. If not, no link is
shown, but we wait for the next update of the model.
2015-10-27 17:37:12 +01:00
Klaas Freitag
40c82c5c36 AccountSettings: Add index to undecided folder to be able to select it. 2015-10-27 17:37:12 +01:00
Klaas Freitag
81f0c6535e Enable external links in the label. 2015-10-27 17:37:12 +01:00
Klaas Freitag
46558d79a5 Add slot to handle clicks on folder names. 2015-10-27 17:37:12 +01:00
Olivier Goffart
e86b4203b9 IgnoreFiles: Fix the socket API would not load the new custom ignored files #3496
We did not flush or closed the file after having modified it from the UI.
So when the socket api was reloading it, it wouldn't be able to load
the newly added rules
2015-10-27 16:07:59 +01:00
Olivier Goffart
05dd9554f9 SocketApi: Fix returning ignore for the root item all the time 2015-10-27 16:06:38 +01:00
Olivier Goffart
26e1223f9a FolderStatusModel: reset also if a folder was renamed #4011 2015-10-27 13:51:56 +01:00
Olivier Goffart
84a04de7be Settings Dialog: don't put padding on the toolbar extension
Otherwise the extension just disapear with some styles (see Issue #3795)
2015-10-27 13:42:25 +01:00
Olivier Goffart
3f2a2cb14b FolderDelegate: put the progressbar in place of the remote or local folder #3403 #3569
So the size of the delegate does not change
2015-10-27 12:52:33 +01:00
Olivier Goffart
fac00348d9 Use the term folder sync connection in more places #3757 2015-10-27 12:12:21 +01:00
Olivier Goffart
3c93fd4fb7 AccountSettings: don't disable pause when offline (#4010) 2015-10-27 10:32:33 +01:00
Klaas Freitag
6b71273380 Discovery: Fix detection of hidden files.
In the discovery phase we want to detect that dot-files are hidden
on Linux and Mac.

This fixes strange behaviour seen in issue #3980
2015-10-26 14:24:05 +01:00
Olivier Goffart
dccf4e9c34 Download: Soft errors for error while resuming (#4000) 2015-10-26 12:31:07 +01:00
Olivier Goffart
39289a3164 SocketAPI: don't trim the command #3297 2015-10-26 10:15:50 +01:00
Olivier Goffart
84f1bdbc87 Folder::wipe: We need to shut the socket API down before removing the DB
Because the DB stays open and locked.

Should fix #3824
2015-10-23 17:43:01 +02:00
Olivier Goffart
c93defc82d SyncEngine: remove unused functions 2015-10-23 17:11:19 +02:00
Olivier Goffart
bd39c64798 Delete all files: make the 'Keep' on by default
On windows, we need to specify at least one AcceptRole.
Otherwise the DestructiveRole might become the default

Issue #3824
2015-10-23 17:06:14 +02:00
Olivier Goffart
42a6b242c7 SettingsDialog: use QWidgetAction for the toolbar so the extension works
When the toolbar is full because there is no enough room, make the extension
of the toolbar work, by using QWidgetAction::createWidget instead of
QToolBar::insertWidget

There should not be prolem when the window is too narrow.

Relates #3832
2015-10-23 16:23:37 +02:00
Joas Schilling
6d87bd15cd Make returncode 0 for --version and --help 2015-10-23 15:17:29 +02:00
Olivier Goffart
d657c00b11 FolderStatusModel: fix getting the size of the folder in the selective sync (#3986)
Regressed since d610693af1. The problem
is that the _size vector contains the pathToRemove and that it was removed
before.
Reorganize a bit the code so there is only one loop that has still all the
 information.
2015-10-23 15:13:15 +02:00
Olivier Goffart
6a0633083d Network Settings: Adjust the bandwidth limit option with old Qt
- Disable the whole group box
- Add a tooltip explaining why it is disabled
- Make sure it is disabled in the settings in case of upgrade
- Do a runtime check in case the running Qt is greater
2015-10-22 17:57:34 +02:00
Daniel Molkentin
899f52be4f Revert "Settings dialog: remove the close button #3713"
This reverts commit ebee6f0bc2.

Unix window managers do not have a reliable way of hinting buttons,
so we need the close button.
2015-10-22 16:20:59 +02:00
Olivier Goffart
a608b4e9e0 Folder: set csync verbosity to 0 if the Logger is not there
csync_log was still accounting for 8% of the local discovery (because
of vsnprintf and asprintf)
2015-10-22 01:13:35 +02:00
Olivier Goffart
f6a543ada3 Logger: speedup the sync discovery when the log is innactive
The sync throw a lot of log message, and QDateTime::fromCurrentTime is
quite expensive. So don't call it if it's not needed.
2015-10-22 00:22:25 +02:00
Daniel Molkentin
c7bf09c3d4 Merge remote-tracking branch 'origin/2.0' 2015-10-21 18:49:58 +02:00
Olivier Goffart
c80e72da83 Sharing: change coding style of enum
From all upper case to camel case

This hopefully fix the Windows build which fails because DELETE seems
to be a macro
2015-10-21 18:40:04 +02:00
Roeland Douma
ec351e00ad Merge pull request #3773 from owncloud/split_sharedialog
Split sharedialog code
2015-10-21 16:55:59 +02:00
Olivier Goffart
cf242871ea SyncEngine: keep a static pointer to the codec
The QTextCodec for UTF-8 is not going to change during the application life time.
So no need to look it up for every file
2015-10-21 16:38:26 +02:00
Olivier Goffart
597d36dcf2 csync_statedb: Use the index in csync_statedb_get_below_path
Make an index from the path, and make a query that uses the index
2015-10-21 16:38:26 +02:00
Olivier Goffart
9c388787bb csync_update: Don't fetch the etag in the local discovery from the DB
We don't need it, and it's slow.
This saves a lot of DB queries

(Also replaced a strlen>0 with a faster check)
2015-10-21 16:38:26 +02:00
Markus Goetz
f739d8fdd3 sqlite: Update to version 3.9.1
For OS X and Windows.
This is in line with the tests/benchmarks Olivier is doing on ArchLinux.
2015-10-21 15:55:41 +02:00
Markus Goetz
c8590c4468 Remove legacy propagator and neon
The code was already uneeded/unbuilt on Windows and OS X.
2015-10-20 17:57:43 +02:00
Markus Goetz
98b966d274 OS X: Use Cocoa Pasteboard instead of QClipBoard #3300 2015-10-20 15:42:43 +02:00
Olivier Goffart
674b6f2373 Account Settings: clear the focus of the "Sign In" button when clicked
So that the focus does not go to the "Remove Account" button instead
which would be wierd
2015-10-20 13:56:35 +02:00
Olivier Goffart
407ff0a99d Theme: cache the QIcon::fromTheme
We are calling that every time we draw the folder delegate.
Which is a lot when the sync is runing and the progress bar is moving
2015-10-20 13:24:11 +02:00
Olivier Goffart
0b6d21e3d5 Logger: don't call qFormatLog when unessesary
That's a lot of string operations that can be avoided if the log window
is not shown
2015-10-20 13:22:48 +02:00
Markus Goetz
4c9bc42b69 Revert libqsqlite changes for now
QtWebKit depends on it unfortunately
2015-10-20 13:04:33 +02:00
Olivier Goffart
557b704069 Fix compilation warning
shibbolethcredentials.h:59:10: warning: 'askFromUser' overrides a member
function but is not marked 'override' [-Winconsistent-missing-override]
2015-10-20 11:35:25 +02:00
Olivier Goffart
4369e31a49 Folder Model: don't try to fetch data if the account is disconnected
Now that it expands automatically, it would do lots of query to the
server when the account is disconnected. (all resulting in 401)
2015-10-19 18:32:34 +02:00
Olivier Goffart
23b5a74c17 Account Settings: Don't expand while clicking on the '...' button 2015-10-19 18:23:56 +02:00
Olivier Goffart
ee69ab2021 Account Settings: Don't disable double click expanding for sub folders
The root folder open on simple click,  but the sub folder don't, so keep
this behaviour which is the native behaviour
2015-10-19 18:12:49 +02:00
Olivier Goffart
374f29c4d3 Account Settings: Fix crash for acocunts withour folder
Was broken by  027a865fbc
2015-10-19 18:08:11 +02:00
Markus Goetz
67910e7d60 Discovery: Call it "Checking for changes in" in UI
For #3431
2015-10-19 15:59:16 +02:00
Markus Goetz
ccec186b98 ETagJob: Depth 0 for server >= 8.1 #3730 2015-10-19 15:31:27 +02:00
Klaas Freitag
c66c259447 SettingsDialog: Add new widet called ActivityWidget.
This is the new widget to display server activity.
2015-10-19 14:41:53 +02:00
Klaas Freitag
4ad165ce26 Utility: add method fileNameForGuiUse(), pimp up filename for GUI
Currently, this one only replaces colons by / on Mac platform. This makes
the function resuseable.
2015-10-19 14:36:55 +02:00
Markus Goetz
24a801dfd3 CMake/NSIS: We don't need QtSql (more) 2015-10-19 13:56:36 +02:00
Markus Goetz
af79bc9211 CMake/NSIS: We don't need QtSql
The NSIS change also had a redundant libsqlite3 DLL entry
2015-10-19 13:46:46 +02:00
Klaas Freitag
a3904f4d32 Theme: Revert logic of singleAccount switch.
To use the same logic as the other clients and unify ownBrander
implementations, the switch is now called multiAccount() rather
than singleAccount() with a reverse logic.
Desktop Client stays with the default of having multiaacount
enabled.

Note that existing brandings need to rename the switch.

https://github.com/owncloud/ownbrander/issues/443
2015-10-19 12:26:42 +02:00
Olivier Goffart
5cac90b3eb SelectiveSyncTreeView: show the size for the root item (#3755) 2015-10-19 10:58:54 +02:00
Olivier Goffart
df135a0bb2 Merge branch '2.0'
Conflicts:
	src/gui/folder.cpp
2015-10-19 10:57:37 +02:00
Klaas Freitag
546cab3f62 Config: Use monochrome icons per default on MacOSX. 2015-10-16 18:55:07 +02:00
Roeland Jago Douma
4a04dc1a3e Typos 2015-10-16 12:51:24 +02:00
Roeland Jago Douma
0e97fbb730 Use overloaded functions 2015-10-16 12:48:48 +02:00
Olivier Goffart
0c59c85127 SyncEngine: Folders with ignored files should not count when counting none files
If there is a any none files, we do not show the dialog saying that all
files have been removed. If a directory contiains ignored files, we still
want to show this message box even if the directory will not be deleted
2015-10-16 11:43:52 +02:00
Markus Goetz
0d5f2b5d31 Propagator: Reset upload blacklist if a chunk suceeds
For #3934
2015-10-16 10:06:45 +02:00
Olivier Goffart
87fa1794a1 Updater: remove unused function
It was even throwing a warning because it is an infinite recursion
2015-10-16 09:56:26 +02:00
Olivier Goffart
81e30cd8d2 Merge pull request #3695 from owncloud/nomkpath3692
Folder: Do not create the sync folder if it does not exist #3692
2015-10-16 09:21:15 +02:00
Markus Goetz
983671c8cb Shibboleth: Add our base user agent to WebKit
For #3913
2015-10-16 09:15:47 +02:00
Roeland Jago Douma
40ab3ee751 Now only 1 constructor to ocssharejob
* Pass the share_id to the functions that need it
2015-10-16 08:28:13 +02:00
Roeland Jago Douma
f95fea9866 Move permissions to OcsShareJob 2015-10-16 08:09:57 +02:00
Roeland Jago Douma
03719334ea Remove unused members 2015-10-15 22:27:55 +02:00
Roeland Jago Douma
4441053b1c Thumbnailjob fixes
* Comments
* Use the path of the abstractnetworkjob
2015-10-15 22:18:22 +02:00
Roeland Jago Douma
a34b663828 Now add parameters in a less crappy way 2015-10-15 21:58:16 +02:00
Roeland Jago Douma
db1f4d4016 OCSJob -> OcsJob and more docs 2015-10-15 20:54:52 +02:00
Roeland Jago Douma
3ea944d1b3 Added setPublicUpload to OcsShareJob 2015-10-15 20:34:56 +02:00
Roeland Jago Douma
b293aa762c Split sharing code
There is now a generic OCSJob which must be inherited by other jobs. This is in
prepartion for the other OCS job that will come (for the Sharee API endpoint
for example).

More logic is moved from the sharedialog to the OcsShareJob. So in the GUI code
we now only say what we want (a new share, set the password etc). And the code
in libsync will make that happen. Error handling is for now still done in the
GUI part.

For now the ocsjob and ocssharejob live in gui but probabaly we should
create a libshare or libocs at some point.
2015-10-15 20:05:47 +02:00
Markus Goetz
b5e75afc17 General settings: Align checkbox #3758 2015-10-15 19:15:50 +02:00
Markus Goetz
027a865fbc Account Settings: Show selective sync buttons after list load
Especially nice when having a slower network.
For #3839
2015-10-15 18:52:16 +02:00
Markus Goetz
132b5f5130 Account Settings: Expand selective sync on show #3585 2015-10-15 17:27:38 +02:00
Markus Goetz
c3754e1fdd folderstatusmodel.h: Fix warning 2015-10-15 17:27:29 +02:00
Christian Kamm
c418d67920 Merge remote-tracking branch 'origin/2.0' 2015-10-15 15:54:09 +02:00
Christian Kamm
67e9a06d30 Progress estimation: Adjust low-transfer detection #3942
Progress estimation is usually based on transfer speed. That makes no
sense when we're doing operations like deletes, that need very little
data transfer but nevertheless take a long time.

This hack attempts to detect this case better and switches to a
different estimate.

We should rewrite this to maintain and update estimates for the
transfer speed, per-file overhead and chunk-assembly overhead each
time an item finishes. Then we could provide more consistent progress
estimates without ad-hoc fixes like this one.

Also, there's an issue where resuming a partial download will lead
to exaggerated transfer speed estimates.
2015-10-15 15:04:11 +02:00
Christian Kamm
abd63035c1 ETag: Allow parsing of weak tags #3946 2015-10-15 14:57:34 +02:00
Markus Goetz
745cf55abb SelectiveSync: Increase folder list timeout to 60
Already done for 2.1 in 05eee16959
For #3524
2015-10-15 14:43:11 +02:00
Olivier Goffart
e1c634d000 Don't show the settings if another instance is started less than 10 secs after the apps.
Issue #3273

isSessionRestored was not set correctlty so ignore it
2015-10-15 14:25:23 +02:00
Roeland Douma
df2418d9c5 Merge pull request #3661 from rullzer/public_upload
Allow setting of public upload on link shares
2015-10-14 15:34:25 +02:00
Roeland Jago Douma
2fdae6d72f Allow setting op public upload on link shares 2015-10-14 15:30:28 +02:00
Roeland Jago Douma
05471d0acd Also parse capabilitie for public uploads 2015-10-14 15:30:23 +02:00
Christian Kamm
05eee16959 SelectiveSync: Show in-progress label #3524
We now show 'Fetching data...' after a second.

This also increased the timeout to 60s, making the error
condition much less likely.
2015-10-14 13:05:53 +02:00
Roeland Douma
a752eadd0f Merge pull request #3923 from owncloud/check_shareapi_available
Provide information about share availablity for files
2015-10-14 12:38:03 +02:00
Roeland Jago Douma
028dc8d6c3 Add SHARE_STATUS socketAPI command
This command allows to retrieve the share status of a file. In other
words if it can be shared.
2015-10-14 12:36:32 +02:00
Roeland Jago Douma
4a7242c8f9 Extended capabilities API
* Naming of capabilities is now a bit more consistent
2015-10-14 11:45:34 +02:00
Christian Kamm
efdb29d2f9 AccountSettings: Show disabled 'Add Folder' tooltip on click #3645 2015-10-14 11:34:30 +02:00
Christian Kamm
51a2e6c580 Exclusion: Fix confusion with relative and absolute paths 2015-10-13 12:53:38 +02:00
Christian Kamm
7fe03c715d SelectiveSync: Don't adjust removed path 2015-10-13 12:37:27 +02:00
Klaas Freitag
419d18c128 FileSystem: Reuse the FileInfo object that is created in the caller.
With that, a lot of stats can be avoided, ie. in SocketAPI
2015-10-09 13:02:02 +02:00
Klaas Freitag
74a7755ad9 SocketAPI: String concat optimization as learned on QtWS. 2015-10-08 18:26:30 +02:00
Klaas Freitag
c1ba927b37 Propagatorjobs: Removed superflous semicolon. 2015-10-08 16:20:42 +02:00
Klaas Freitag
a8eb913535 SyncLogDialog: Do not delete SyncLogDialog after close.
Keep one instance for the lifetime of the generalsettings widget.
2015-10-07 18:59:48 +02:00
Klaas Freitag
6d6903ef62 Merge pull request #3919 from phil-davis/libsynctypos
libsync comment and message typos for master
2015-10-06 14:49:54 +02:00
Phil Davis
b8ccbbc72a GUI comment and message typos for master 2015-10-05 10:06:19 +05:45
Phil Davis
f0e17fd9c0 libtypos comment and message typos for master 2015-10-05 09:05:09 +05:45
Christian Kamm
d610693af1 SelectiveSync: Apply excludes #3876 2015-10-02 15:56:39 +02:00
Christian Kamm
7d1886684e FolderWatcher: Use csync exclude code #3805
Introduce a global ExcludedFiles instance to avoid loading the global
exclude lists several times.

One could still add per-folder exclude lists by checking these after
the global ones.
2015-10-02 15:56:39 +02:00
Christian Kamm
95fc792745 Tray: Change texts #3657 2015-10-02 15:48:44 +02:00
Christian Kamm
efefc2d986 Merge branch '2.0'
Conflicts:
	doc/images/menu.png
	doc/images/settings_network.png
2015-10-02 15:44:50 +02:00
Christian Kamm
9f8d109a7e Network errors: Use exception name, if message is empty #2718 2015-10-02 15:25:34 +02:00
Christian Kamm
cf9e5ffb0b Remove dead code
no_recursive_propfind does not exist anymore.
2015-10-02 15:17:19 +02:00
Christian Kamm
3cbd63a77a Propagation: Try another sync on 423 Locked #3387
(cherry picked from commit 24c41ed0da)
2015-10-02 14:49:38 +02:00
Christian Kamm
62eeed5201 Propagation: Make 423 Locked a soft error #3387
(cherry picked from commit 20ea9015ca)
2015-10-02 14:49:30 +02:00
Christian Kamm
1383023b2e Fix the Qt4 build. 2015-10-02 11:05:15 +02:00
Klaas Freitag
afd081f40b Settings: Move synclog widget to a seperate dialog.
This a first step to integrate the server activity view, see #3732
2015-10-01 16:57:37 +02:00
Christian Kamm
7bf31e56ab Ignores: Sync after update #3876 2015-10-01 15:39:28 +02:00
Christian Kamm
3812fd0866 Checksums: Prepare 'supported checksums' capability #3735
It currently always returns the empty list and thus has no effect.
2015-10-01 15:00:33 +02:00
Christian Kamm
24c41ed0da Propagation: Try another sync on 423 Locked #3387 2015-10-01 13:05:07 +02:00
Christian Kamm
36e8e9ebf5 Propagator: Download disk space checks #2939
* There's a critical 50 MB threshold under which syncs abort
  (OWNCLOUD_CRITICAL_FREE_SPACE)
* The sync client always keeps 250 MB free
  (OWNCLOUD_FREE_SPACE)
2015-10-01 12:59:05 +02:00
Christian Kamm
12dc372b21 Sync: An initial diskspace check #2939
* Before each sync, check that there are at least
  250 MB of space available and abort otherwise.
* Can be overridden with OWNCLOUD_MIN_FREE_SPACE
2015-10-01 10:25:35 +02:00
Christian Kamm
20ea9015ca Propagation: Make 423 Locked a soft error #3387 2015-09-30 14:00:53 +02:00
Klaas Freitag
0c148025a3 SyncLog Dialog WIP 2015-09-30 12:02:05 +02:00
Christian Kamm
d0c2ce276a Application: Fix crash on early shutdown #3898 2015-09-30 11:40:33 +02:00
Klaas Freitag
440687af21 AccountSettings: Disable context menu of sync folders when not connected.
This is the second part to fix #3860
2015-09-29 18:19:26 +02:00
Klaas Freitag
77a9b28e14 SetupWizard: Removed unused member variables. 2015-09-29 09:30:40 +02:00
Markus Goetz
641dece89a Linux: Don't show settings dialog always when launched twice
For #3273 #3771 #3485
See also d503221b2e
2015-09-28 23:00:19 +02:00
Markus Goetz
574c699382 GUI: Change tray menu order #3657 2015-09-26 00:25:06 +02:00
Klaas Freitag
b72e2b146d AccountSettings: only expand root elements on single click.
Also, toggle expanding on single click for root elements.
2015-09-25 13:57:44 +02:00
Klaas Freitag
a1421ff74f AccountSettings: Do not allow to expand the folder list when disconnected.
This is supposed to fix #3860
2015-09-25 12:22:51 +02:00
Christian Kamm
c1045af500 FolderMan: Fix for removing a syncing folder #3843
We can't schedule the next folder if we aren't notified that
the removed folder has finished syncing...
2015-09-18 14:34:40 +02:00
Christian Kamm
c5c1a7a1c3 ConnectionMethodDialog: Don't be insecure on close #3863 2015-09-18 12:12:53 +02:00
Christian Kamm
4144d4672f Updater: Ensure folders are not removed #3747 2015-09-18 11:59:49 +02:00
Christian Kamm
68947525a0 Settings: Add debug output #3820 2015-09-17 13:49:00 +02:00
Christian Kamm
8f8bf98ca6 Folder settings: Ensure path is cleaned #3811
Paths with a trailing backslash lead to a failing sync beforehand.
These paths can appear in some migration scenarios.
2015-09-17 12:31:37 +02:00
Christian Kamm
ef0ab93e05 Propagator: Simplify sub job finished counting #3844 2015-09-17 10:12:23 +02:00
Markus Goetz
c09b4e1477 Share dialog: Hide settings dialog before showing #3783 2015-09-16 11:17:00 -04:00
Markus Goetz
ca95276298 UI: Only expand 1 level in folder list #3585 2015-09-16 11:06:32 -04:00
Markus Goetz
c2431f2c3b ConnectionValidator: Fix warning 2015-09-15 21:10:21 -04:00
Markus Goetz
15e4d9e317 UI: Allow folder expanding from button click #3585 2015-09-15 21:10:14 -04:00
Markus Goetz
ef607e29de UI: Expand folder treeview on single click #3585 2015-09-15 20:59:27 -04:00
Daniel Molkentin
abfd97949d Merge pull request #3810 from owncloud/phil-davis-remove-all
Remove all files text edit
2015-09-14 14:06:56 +02:00
Daniel Molkentin
5347a991cf Merge pull request #3806 from owncloud/phil-davis-sync-remove
Adjust message box text for sync removal
2015-09-14 14:05:39 +02:00
Daniel Molkentin
f1a9e669b4 SyncEngine: fix typo 2015-09-14 13:57:51 +02:00
Markus Goetz
5a791ec11e Merge pull request #3818 from owncloud/phil-davis-patch-1
OCUpdater description text
2015-09-14 00:46:55 +02:00
Markus Goetz
cb6522e735 ConnectioNValidator: Fix redundant error message
For #3794
2015-09-12 20:57:49 -04:00
Phil Davis
d0aef138c3 OCUpdater decription text
Make it say something understandable. Looking at previous versions with git blame, the word "not" fits here.
2015-09-12 07:25:59 +05:45
Phil Davis
6058b507c8 Remove all files text edit 2015-09-11 15:04:53 +05:45
Phil Davis
1aff9bca95 Adjust message box text for account removal
Since the context menu text was changed to "Remove Account" it seems sensible to also change the title of this message box to match.
https://github.com/owncloud/client/issues/3793
2015-09-11 08:46:53 +05:45
Phil Davis
d76f76f429 Adjust message box text for sync removal
Since the context menu text was changed to "Remove Sync" it seems sensible to also change the title of this message box to match.
https://github.com/owncloud/client/issues/3745
2015-09-11 08:42:02 +05:45
Markus Goetz
1de4d96ab1 Account: Also display non-standard port in tray menu
For #3658
2015-09-10 19:27:16 -04:00
Klaas Freitag
eb154de2a1 Merge pull request #3802 from owncloud/alt_webdav_url2
Branding option: Alternative WebDAV URL
2015-09-10 17:44:46 +02:00
Klaas Freitag
8c2b5af7f0 Account: Fixed typo in comment. 2015-09-10 17:44:20 +02:00
Klaas Freitag
9004fd6d11 Utility: Fix the size display back to JEDEC standard.
Also updated the test.
2015-09-10 17:36:28 +02:00
Klaas Freitag
5f660bf080 GUI: Replace term "sign in" with "Log in" and friends.
Also with doc changes.
2015-09-10 17:36:28 +02:00
Klaas Freitag
9eec45f9c4 SetupPage: Fix crash caused by uninitialized Account object.
Since the webdav path is read from account now, it needs to be
initialized first thing.
2015-09-10 16:03:22 +02:00
Klaas Freitag
cf7726353a Always use the webdav path from the Account object.
The Account object has the themed webdav path if it is branded.
2015-09-10 15:39:37 +02:00
Klaas Freitag
93e1ad088c Account: Make sure that davPath() always comes with trailing slash. 2015-09-10 15:38:40 +02:00
Phil Davis
b490be2267 cmd and crashreporter minor typos
nothing important here
2015-09-10 17:34:26 +05:45
Klaas Freitag
16d6418d10 Use a themable WebDAV path all over.
This is needed for enterprise#481
2015-09-10 13:04:26 +02:00
Klaas Freitag
995b42d0fc Units: Back to the "usual" mix units.
Now we display units again numerically wrong (based on 1024) but back
to how it was before in ownCloud.
2015-09-10 12:08:20 +02:00
Daniel Molkentin
c0f8ff1030 Account: Display non-standard port as part of the hostname
Addresses #3658
2015-09-10 10:17:31 +02:00
Daniel Molkentin
be3529ebcb Adjust strings in settings dialogs
Implements  #3745 & #3793
2015-09-10 01:46:28 +02:00
Phil Davis
613736aa41 Coin the term 'folder sync connection'
Proposed wording for issue
https://github.com/owncloud/client/issues/3757
2015-09-10 01:35:58 +02:00
Daniel Molkentin
d823809021 Merge pull request #3781 from phil-davis/FSC
Coin the term 'folder sync connection'
2015-09-10 01:35:25 +02:00
Daniel Molkentin
b83c723e3f Allow (partial) translations even when run from build dir
Makes it easier to catch translation issues earlier
2015-09-10 01:25:16 +02:00
Individual IT Services
6b222c3db7 fix unicode issue #3753
fixes the unicode issue #3753

I don't know much CPP and Qt but after some google research I found this http://wiki.qt.io/Strings_and_encodings_in_Qt
it does mention trUtf8() that has done the trick for me on Linux with Gnome 3.16.
Haven't tested it on other systems
2015-09-10 01:24:11 +02:00
Klaas Freitag
088c0d471a AccountSettings: Do not prepend the folder alias to the undecided folders
This fixes bug #3685
2015-09-09 17:52:39 +02:00
Klaas Freitag
98e6d61d1b General settings: Set left margin of layout to zero.
This fixes the vertical alignment of the checkboxes, see bug #3758
2015-09-09 15:52:22 +02:00
Klaas Freitag
df534753b1 csync_update: Handle permission denied as soft error in discovery.
For that, treat the not accessible directory as if it were ignored.

This will fix #3767
2015-09-09 14:12:13 +02:00
Phil Davis
fdfab07d07 Coin the term 'folder sync connection'
Proposed wording for issue
https://github.com/owncloud/client/issues/3757
2015-09-08 17:22:57 +05:45
Individual IT Services
cc5f8e5122 fix unicode issue #3753
fixes the unicode issue #3753

I don't know much CPP and Qt but after some google research I found this http://wiki.qt.io/Strings_and_encodings_in_Qt
it does mention trUtf8() that has done the trick for me on Linux with Gnome 3.16.
Haven't tested it on other systems
2015-09-08 13:59:43 +05:45
Olivier Goffart
21dbf97a02 Merge remote-tracking branch 'origin/2.0' 2015-09-07 10:32:16 +02:00
Daniel Molkentin
66f340734c Consistency: Use folder instead of directory in user visible strings 2015-09-07 08:51:40 +02:00
Christian Kamm
c6794afc3a Tray: Enable workaround for Qt5 only #3765 2015-09-07 07:44:07 +02:00
Olivier Goffart
39bff056a6 Merge remote-tracking branch 'origin/2.0' 2015-09-05 18:14:30 +02:00
Jocelyn Turcotte
128d46e19a Remove *Credentials::_fetchJobInProgress
Now that fetchFromKeychain is solely called from AccountState::slotInvalidCredentials
and that this one already protects the fetch call using _waitingForNewCredentials,
we can remove that extra check.
2015-09-05 16:00:45 +02:00
Jocelyn Turcotte
6d027ebd40 Separate the credential dialog from their fetch #3350
This moves the responsibility of asking the user or not for
credentials from the Credentials classes back to the AccountState.
fetch() now only extract credentials from the keychain, reports
the result to the AccountState which then decides if askFromUser()
should be called or not. The result is once more reported to the
AccounState.

This also replaces the HttpCredentials::queryPassword virtual
which now lets HttpCredentialsGui and HttpCredentialsText do it
the way that they prefer.
2015-09-05 16:00:45 +02:00
Jocelyn Turcotte
89f69209dd Simplify the authentication code paths #3350
The AccountState is now the only class responsible for triggering credentials
fetching from the keychain or from the user.

With the ShibbolethRefresher out of the question it's possible
to remove the invalidateAndFetch virtual and manually call invalidateToken.
This also allows us to move that code from Account to AccountState.
In the end this also allows us to move the fetch() call from the
ConnectionValidator and use the same code path as for invalid credentials.
2015-09-05 16:00:45 +02:00
Jocelyn Turcotte
94a57fe8d5 Get rid of ShibbolethRefresher
This is only for neon and not necessary if we want to show a notification
instead of a login window when the network reports invalid credentials.
2015-09-05 15:45:54 +02:00
Christian Kamm
699acc99e4 Tray: Don't use the tray workaround with the KDE theme #3706
That just triggers another bug...
2015-09-04 15:31:36 +02:00
Christian Kamm
90338499d3 ShareDialog: Fix folder display #3659
Sometimes having a double starting / broke the display logic.
2015-09-04 15:16:25 +02:00
Christian Kamm
641f56664e FolderStatus: Show 'waiting for other folder' #3619
We monitor the scheduling queue and show messages like
"Waiting for 5 other folders...".
2015-09-04 10:42:21 +02:00
Christian Kamm
419deff861 AccountSettings: Restore from legacy only once #3565
And also introduce a Accounts/version int at the same time. That
may make future account settings migrations easier to manage.
2015-09-04 09:25:12 +02:00
Olivier Goffart
e49a8a9ffe SSL Certificate Error Dialog: show account name #3729
Change the wording of the certificate error dialog to include the
account URL and be a bit more accurate.

(Do not mention "SSL" in user facing messages)
2015-09-03 16:19:53 +02:00
Christian Kamm
7bfbc21770 Settings: Allow adding at least one account #3721
We always show the 'Add Account' button when no account exists,
even When the 'singleAccount' option is enabled.
2015-09-03 06:14:49 +02:00
Olivier Goffart
d853b4f083 FolderDefinition: Escape the alias of a folder before writing to the config
Issue #3707
2015-09-02 16:07:34 +02:00
Christian Kamm
d8939184db Tray: Clicks work even with Qt 5.5.0 workaround #3722 2015-09-02 15:51:23 +02:00
Olivier Goffart
e54253d845 PropagateLocalRemove: remove entries from the DB even if there was an error.
Previously, in case of an error while deleting a directory, we would not
remove the entries from the local db, despite most of the files would
be deleted.

Which means that if the files re-appear on the server with the same etag,
we would think the file were deleted from the client and propagate the change.

In 1.8.0 we had this bug that we would not see some directory in the server in
some cases. This would lead us to delete the file on the client.  Normaly the
files are deleted from the local database and next sync would re-download the files.
But in the cases where there was an error deleting one of the file (for example
if it was locked) we would then propagate the delete to the server.

Fix this by always deleting from the database the files that we deleted.

Issue #3206
2015-09-02 15:26:50 +02:00
Jocelyn Turcotte
dcb687929f Show a notification instead of a login window on startup #3350
The original problem is that showing a popup not originated
from the main settings window while it's focused won't be
shown in front to the user.

This try not to highjack the user's attention of the user
by showing a notification when checking the connection for
valid credentials, and require the user to sign in through
the UI. There are still issues with showing that popup from
the tray icon, but the user will most likely be looking for
the popup in that case. The new sign in button directly in
the settings account works properly.
2015-09-01 18:40:20 +02:00
Jocelyn Turcotte
628957de21 Remove the _readPwdFromDeprecatedPlace codepath
This was introduced in 1.6.2 to read the password from earlier versions.
People upgrading from 1.5 to 2.1 will sadly need to re-enter their password.
2015-09-01 18:40:20 +02:00
Jocelyn Turcotte
bcfc16c0f6 Add a sign in button in the settings window
It's not obvious for users that they should sign in through
the tray icon, especially if they were automatically signed out.
2015-09-01 18:40:20 +02:00
Olivier Goffart
3ba5e27d02 Merge branch '2.0' 2015-09-01 17:57:56 +02:00
Olivier Goffart
0fa4353841 Remove the accountmigrator.cpp It is not used
This was used to convert the config from the community client to
the  branded client. But we don't need this feature anymore
https://github.com/owncloud/client/issues/3515#issuecomment-133394443
2015-09-01 17:03:58 +02:00
Jocelyn Turcotte
688aaadb60 Don't show a sync success status toolip when signed out 2015-09-01 15:35:10 +02:00
Olivier Goffart
f77ae28ed1 AccountSettings: Fix coverity warning
FolderMan::folder might return null
2015-09-01 11:39:55 +02:00
Olivier Goffart
0d08bbec74 AccountSettings: remove unused member
Fix a coverity warning
2015-09-01 11:37:47 +02:00
Olivier Goffart
ebee6f0bc2 Settings dialog: remove the close button #3713 2015-09-01 11:32:59 +02:00
Olivier Goffart
db8f9586cb Tray notification: Don't show a message about modified folder #3613 2015-09-01 11:29:37 +02:00
Olivier Goffart
950bc578d0 Merge branch '2.0' 2015-08-31 14:34:04 +02:00
Jocelyn Turcotte
c48c5b9286 Move the progress bar to the right of the quota label
Also change the label to show the free space and show
the used and total space only on a tooltip of the bar.

Related to #3644
2015-08-31 12:33:21 +02:00
Olivier Goffart
9172a5fc4c FolderStatusModel: add a function to get a QModelIndex from the path
Will be usefull to solve #3704
2015-08-31 10:14:58 +02:00
Felix Böhm
3ebc422bb5 Fix qtmacgoodies submodule
* was broken by 514372db6b
2015-08-30 17:51:43 +02:00
Olivier Goffart
1a0d0c0a31 Account Settings: rework the toolbar
Modifications ask by Jan:

 - Elide the label in the actions
 - Minimum sizes for the actions
 - No separatcions between the accounts

Issue #3516
2015-08-30 15:31:13 +02:00
Olivier Goffart
8fb4adf40d AccountWizard: fix when the theme specify a override URL #3699 2015-08-29 18:51:27 +02:00
Jocelyn Turcotte
cb1bcdc8e0 Tweak the settings UI
- Move the cancel and apply buttons side by side
- Hide the notification label when empty
- Clamp elements at the top together a bit
2015-08-28 15:51:11 +02:00
Olivier Goffart
1f43c47861 Folder: Do not create the sync folder if it does not exist #3692 2015-08-28 14:40:45 +02:00
Jocelyn Turcotte
f38deb44fb Don't disable the selective sync cancel button
This makes its interaction more consistent versus other
kinds of dialogs or versus when the selective sync config
has been changed or not.
2015-08-28 12:14:56 +02:00
Christian Kamm
ed28a21cb0 Tray: Hide while modifying menus #3656 #3672
This may help workaround the dbus tray issue in Qt 5.5.0.
2015-08-25 09:46:03 +02:00
Christian Kamm
035e57cf37 AddFolder: Improve remote path selection error handling #3573 2015-08-24 15:08:35 +02:00
Christian Kamm
92f6134ed3 AccountSettings: Adjust quota info design #3644 #3651 2015-08-24 15:06:11 +02:00
Christian Kamm
a0f9b834b6 Adjust buttons on remove folder/account questions #3654 2015-08-24 15:05:40 +02:00
Christian Kamm
6c5328e4ca Utility: Fix constants for 32-bit arch #3670 2015-08-24 13:56:10 +02:00
Christian Kamm
6cf1caeaf3 Theme: Fix wizardSelectiveSyncDefaultNothing #3671 2015-08-24 12:55:44 +02:00
Christian Kamm
3414b58b99 Systray: Workaround for issue with Qt 5.5.0 #3656 2015-08-21 09:45:02 +02:00
Christian Kamm
7aae5e494a AccountSettings: Fix margins on 'Add folder' button #3650 2015-08-20 13:25:19 +02:00
Christian Kamm
0711a2fc12 SettingsDialog: Fix typo in showFirstPage() 2015-08-20 11:57:44 +02:00
Olivier Goffart
92fc902e0c Account Settings: Hide the add folder button when Theme::singleSyncFolder is set 2015-08-19 18:00:11 +02:00
Christian Kamm
791c550a8e FolderStatusDelegate: Add margin to button #3650 2015-08-19 16:58:27 +02:00
Christian Kamm
344d3565f8 Another account deletion wording update #3649 2015-08-19 15:55:29 +02:00
Christian Kamm
73785d0473 SettingsDialog: Activate the first page on startup 2015-08-19 15:51:48 +02:00
Christian Kamm
b155503fa2 FolderStatusModel: Undo accidental debug change 2015-08-19 15:05:30 +02:00
Christian Kamm
2c011dcae6 FolderStatusModel: Fix typo in error message #3524 2015-08-19 15:04:39 +02:00
Christian Kamm
0e0af1da07 FolderStatusModel: No italic text #3524 2015-08-19 15:02:08 +02:00
Christian Kamm
a7d0f0cdd4 Adjust wording of delete account/folder message #3643 2015-08-19 10:59:34 +02:00
Olivier Goffart
38aa4cf304 Folder Model: add an error item when one cannot fetch the list of folders #3524 2015-08-18 13:21:02 +02:00
Olivier Goffart
0638f99b79 Selective Sync dialog: add the quota-used-bytes to the request
Mentioned in https://github.com/owncloud/client/issues/3524#issuecomment-132144532
2015-08-18 12:26:52 +02:00
Olivier Goffart
f0e6864639 FolderModel: Refresh the tree when new folder are added or removed. #3570 2015-08-17 12:50:22 +02:00
Markus Goetz
6c57d71ca4 Settings dialog: Move more common hostname prefixes in toolbar
For #3577
2015-08-17 12:39:32 +02:00
Olivier Goffart
64bd6b204b Folder Wizard: always make an alias that does not conflict with anything 2015-08-17 11:54:01 +02:00
Olivier Goffart
7ca8040788 Show a shortened version of the path in the account settings and activity
Issue #3576, #3567
2015-08-17 11:43:30 +02:00
Olivier Goffart
0da6184f84 Setup Wizard: adjust the layout #3588 2015-08-14 14:01:01 +02:00
Olivier Goffart
ab52c8bcd7 Merge #3611 2015-08-14 13:32:48 +02:00
Markus Goetz
1ad80878b2 Account: Additional on top fix for #3617 2015-08-14 12:37:19 +02:00
Olivier Goffart
81c19232a5 Account Settings: Remove the ability to select 2015-08-14 12:12:16 +02:00
Olivier Goffart
dcfa6b97e3 Account Settings: add more margin on the overall text
Attempt to fix https://github.com/owncloud/client/issues/3584#issuecomment-131009787
2015-08-14 12:01:28 +02:00
Olivier Goffart
593016718d Account Settings: Align the progressbar with the icon #3567 2015-08-14 11:52:09 +02:00
Olivier Goffart
2dbe822972 Account Settings: remove the storage use label #3567 2015-08-14 11:52:09 +02:00
Markus Goetz
38b8508f15 Account: Save accepted SSL certs immediatly #3617 2015-08-14 11:31:01 +02:00
Klaas Freitag
76ce5adbf0 Abort the request and reset the QNAM if user does not ACK a new cert.
This is supposed to fix bug #3283

(cherry picked from commit 75b38d1a2f)
2015-08-14 10:31:20 +02:00
Markus Goetz
2a14c121db Account settings: Make version selectable/copyable #3600 2015-08-13 17:27:18 +02:00
Markus Goetz
01855302a0 Shibboleth: Use sslErrors() handler of rest of client #3593 2015-08-13 17:09:39 +02:00
Olivier Goffart
5c9b865cec Setup wizard: remove some spacing in the result page #3588 2015-08-13 15:22:43 +02:00
Olivier Goffart
5f832b5b39 Account Settings: Reorder the options in the context menu #3584 2015-08-13 15:07:51 +02:00
Olivier Goffart
b75b5a5a0c Account Settings: remove the down arrow in the 'more' button #3584
It's ugly on mac
2015-08-13 14:11:13 +02:00
Olivier Goffart
f32c8d0570 Account settings: add a button to show the context menu #3584 2015-08-13 12:34:22 +02:00
Olivier Goffart
b49e9e8f30 Account Settings: rename and re-order the options in the context menu 2015-08-13 12:32:59 +02:00
Olivier Goffart
bf20a0d2f8 Account Settings: remove unused signals 2015-08-13 11:55:51 +02:00
Olivier Goffart
6fcb48a0c7 Account settings: Double click no longer open in the file browser #3585
Add a separate option in the context menu for it
2015-08-13 11:53:00 +02:00
Olivier Goffart
5685aa7ff0 Setup Wizard: add more space in the result page: #3588 2015-08-13 11:27:41 +02:00
Olivier Goffart
3238d61ef6 SocketApi: fix small leak (found with valgrind) #3369 2015-08-13 10:42:54 +02:00
Olivier Goffart
299faae830 Fix compiler warning 2015-08-13 10:26:35 +02:00
Olivier Goffart
6b003f96f5 Theme: add a method to hide the 'add account' button #3517 2015-08-13 09:39:44 +02:00
Kirill Bychkov
1fe82ac70c define OpenBSD 2015-08-13 09:54:53 +03:00
Kirill Bychkov
7786f1f9a9 Fix linking with libinotify on OpenBSD. 2015-08-13 09:44:55 +03:00
Markus Goetz
ace847d177 ShareDialog: Improve UX #3526
Don't spin progress while user needs to set a password.
Have password input as Call To Action.
2015-08-12 18:22:51 +02:00
Markus Goetz
dc44ebf41b UI: Fix up 6152ce4187 #3595 2015-08-12 09:08:30 +02:00
Daniel Molkentin
aa6c09d942 Rename "Sync all files with" to "Sync selected files with"
as per discussion with Jan
2015-08-12 08:31:54 +02:00
Daniel Molkentin
a9acb185a0 SettingsDialog: Fixup default action setting
This broke silently when switching from pure actions to widgets
2015-08-11 21:45:27 +02:00
Daniel Molkentin
3267c15aff SettingsDialog: Use separator instead of custom spacer
... and make sure to hide if when there are no accounts
2015-08-11 21:44:35 +02:00
Daniel Molkentin
f25df3311c Remove debug output 2015-08-11 21:42:30 +02:00
Daniel Molkentin
9c63740d26 Fix compilation on Windows 2015-08-11 18:15:46 +02:00
Daniel Molkentin
379beb268f More improvements for high contrast themes
- Invert icon color depending on the darkness of the theme
- Ensure icons and colors are changed when theme or colors
  get changed during application run

Final patch for #3582
2015-08-11 17:56:11 +02:00
Christian Kamm
5bd631e8e7 Rename jobCompleted -> itemCompleted.
Because that's what's going on. A job can 'complete an item' or 'finish'.
Note that several jobs could complete the same item: a new directory
will complete on the PropagateRemoteMkdir and the PropagateDirectory
jobs.
2015-08-11 15:19:09 +02:00
Christian Kamm
fe42c1a818 Activity: Skip PropagateDirectory jobs #3580
Previously, PropagateDirectory jobs didn't emit the completed() signal.
Now that they do, we need to make sure to not add extra lines to the
protocol widget for them.

To accomplish that, the jobCompleted() signal now also contains the job
that completed the item.
2015-08-11 15:19:09 +02:00
hefee
a87602af3f use SHAREDIR for i18n
SHAREDIR is used in src/gui/application.cpp and should also use that in
CMakeLists.txt.
2015-08-11 15:14:59 +02:00
Markus Goetz
6152ce4187 UI: Avoid showing folder alias #783 #3576 2015-08-11 15:12:43 +02:00
Markus Goetz
3b59960fb3 Fix Qt4 build (SSL sessionTicket()) 2015-08-11 13:53:21 +02:00
Markus Goetz
bd71fdc388 SslButton: Fix harder #3534 #3536 2015-08-11 12:18:25 +02:00
Markus Goetz
6110a99afc SyncEngine: Fix previous cherry-pick 2015-08-11 11:35:12 +02:00
Christian Kamm
0dd20ccf3b Remove deleted accounts from tool bar #3583 2015-08-11 11:33:04 +02:00
Daniel Molkentin
9698324c4e More color scheme adjustments 2015-08-11 11:32:00 +02:00
Olivier Goffart
9dcce01e54 csync: ignore files/folder for which stat fails
instead of pretending it suicceed and not recursing in it.

This fixes a bug in which a folder with a too long name would be properly
created, then removed on the server in the next sync.

(cherry picked from commit 4bbf7669091cde7ec726b1708d8c54427b68f016)

Conflicts:
	csync/src/csync.h
	csync/src/csync_exclude.h
	csync/src/csync_update.c
2015-08-11 11:17:20 +02:00
Christian Kamm
e0cf5c3920 Progress: Robust against bad 'completed' values #3579
Increasing the 'total' for bogus values of 'completed' is a bad idea.
2015-08-11 10:44:27 +02:00
Christian Kamm
3ab49143e1 Progress: Guard against decreasing progress #3579
Ensure that progress going backwards won't lead to outrageous
transfer speeds.
2015-08-11 10:38:04 +02:00
Daniel Molkentin
fad9a3056c Settings dialog: Try to improve adherance to high contrast schemes
Adresses #3582
2015-08-11 07:42:52 +02:00
Christian Kamm
0176ffd25d FolderWatcher win: Skip unneeded notifications #3353 2015-08-10 14:59:05 +02:00
Daniel Molkentin
385c3882a7 Fix regression in PassiveUpdateNotifier
When overriding backgroundCheckForUpdates(), also call the original
implementation.
2015-08-10 14:26:57 +02:00
Christian Kamm
85f5424a13 SocketAPI: Show excluded hidden files as ignored #2086 2015-08-10 13:41:19 +02:00
Christian Kamm
3c82f66219 Windows: Limit tray tooltip length #3412 2015-08-10 13:23:31 +02:00
Lukas Reschke
9bbf9b86b7 Use HTTPS links
No need to have an additional redirect
2015-08-10 12:30:33 +02:00
Lukas Reschke
f74053f8ed Use HTTPS links
No need to have an additional redirect
2015-08-10 12:15:45 +02:00
Christian Kamm
a6d70c9c63 IgnoreEditor: Rename confusing checkbox
The label was the negation of its name.
2015-08-10 11:15:39 +02:00
Christian Kamm
c2c924931b Ignore hidden: Default to enabled #2086
It was 'false' for migrated folders and folders created by the OC
setup wizard.
2015-08-10 11:15:39 +02:00
Daniel Molkentin
6b4a9d9cd9 Settings dialog: improve layout a bit 2015-08-10 10:51:05 +02:00
Jocelyn Turcotte
55e55b0806 Windows: Fix the progress bar with high contrast themes #2654
Setting the palette seems to interfere with Qt's Windows Vista theme
and this isn't set on the QStyleOptionProgressBarV2 by QProgressBar.
2015-08-10 09:55:31 +02:00
Olivier Goffart
b967359a74 Account setting: properly disable the 'add account' button #3571
When upgrading from 1.8 and syncing the whole account, then the
remote folder is empty
2015-08-07 14:32:51 +02:00
Olivier Goffart
ae7b2509a5 Selective sync: When applying selective sync, put new folder that were just checked in the white list
Issue #3560

Otherwise the just checked folder will be chacked again for their size.
We do not want that.
2015-08-07 13:37:52 +02:00
Olivier Goffart
8b52a121bb AccountSettings: Show the wizard to add an account when the last account was deleted #3564 2015-08-07 13:15:02 +02:00
Daniel Molkentin
b906c70a86 ownSql: Do not use sqlite3 method not present in older version
Was only used for debug output anyway and broke RHEL/CentOS6
2015-08-07 11:14:14 +02:00
Daniel Molkentin
ecf545a0b9 Updater: update Linux updater code to work with changes in master
master moved much of the responsibility of the updating process
to the updater class.

This also fixes a build failure
2015-08-06 19:34:23 +02:00
Markus Goetz
7c52e925b9 Propagator: Use fetchAndAddAcquire to get parallelism 2015-08-06 18:13:48 +02:00
Markus Goetz
b5edc635a1 Windows: Don't use UTF-8 arrows #3095 2015-08-06 18:08:05 +02:00
Daniel Molkentin
6a20ea5e73 Merge pull request #3472 from owncloud/linux_restart_on_new_version
On Linux restart if new version is found on disk
2015-08-06 17:47:10 +02:00
Markus Goetz
2d49f4c844 AbstractNetworkJob: Make sure to print URL on timeout 2015-08-06 17:33:33 +02:00
Markus Goetz
049d49eba8 OwnSql: Show potential error on close #3421 2015-08-06 15:47:38 +02:00
Markus Goetz
593aa003d6 Propagator: Re-order statement of previous commit
The user should be allowed to override.
For issue #3382
Will also help for #3095
2015-08-06 15:28:50 +02:00
Olivier Goffart
29d7903c22 Propagator: do not use parallelism when we have bandwidth limit
When user wants to limit the bandwidth, he does not care about speed
anymore. And parallelism on slow network might cause problems.

For issue #3382
Will also help for #3095

(cherry picked from commit b20f29f22797367c7aa92bd74389c99b10c852a4)
2015-08-06 15:27:18 +02:00
Markus Goetz
1feb74981e Progress: Show real speed and all filenames #3403 #3095 2015-08-06 15:25:16 +02:00
Olivier Goffart
2cf29352b8 SyncJournalDB: clear all the prepared query when closing the database
Not closing it may keep the file open (issue #3421)
2015-08-06 14:28:02 +02:00
Olivier Goffart
7202bbcf5d Fix Qt4 build 2015-08-06 13:58:03 +02:00
Markus Goetz
aee20e0ed3 1.8 Migration: Fix password overwrite #3539 2015-08-06 12:49:18 +02:00
Daniel Molkentin
72b2c52e15 Merge branch 'master' into linux_restart_on_new_version
Conflicts:
	src/gui/application.cpp
	src/gui/owncloudsetupwizard.cpp
2015-08-06 11:11:52 +02:00
Markus Goetz
7985c0d7f1 Merge pull request #3531 from jturcotte/master
Remove need for UPDATE_VIEW to refetch the status #2340
2015-08-06 11:03:28 +02:00
Jocelyn Turcotte
a9858d4ed2 Revert "Use dynamic library loading for detecting the correct path for links" 2015-08-06 10:41:33 +02:00
Olivier Goffart
8ec4d0f19b Utility: use SI units for the sizes in bytes 2015-08-05 16:22:09 +02:00
Olivier Goffart
dc299b0bf9 Account settings: Fix a label
The feature is for all folder, not only shared folder
2015-08-05 16:12:58 +02:00
Olivier Goffart
952c249039 Selective sync: on the first sync, do not ask confirmation for every folders
Since we already confirmed a previous selective sync dialog
2015-08-05 16:11:59 +02:00
Olivier Goffart
0e3262b181 Theme: add a settings for configuring the default of newBigFolderSizeLimit 2015-08-05 15:33:51 +02:00
Olivier Goffart
ba896eabfb FolderStatusModel: do not expand the unconfimred folder themselfs 2015-08-05 15:33:51 +02:00
Olivier Goffart
646890abb3 SettingsDialog: use the same short display name on Win/Linux than on Mac
Issue #3516
2015-08-05 15:33:51 +02:00
Markus Goetz
9a9cefbcc5 SslButton: Improve reliability and usefulness #3534 #3536 2015-08-05 13:04:30 +02:00
Olivier Goffart
38da1b7de1 AccountSettings: automatically refresh and expands the undecided folders #3541 2015-08-05 12:51:49 +02:00
Olivier Goffart
b470d0f7b8 Folderman: make the backup number starts with 2: #3512 2015-08-05 10:46:33 +02:00
Markus Goetz
f6cd2c79d5 CSync: Proper error for invalid filenames #2777 #3128 #2240 2015-08-04 22:13:38 +02:00
Phil Davis
8216727553 Notify of big folders that are greater than or equal to the limit
This should allow for the case when a user has set the limit to 0 and a new empty folder appears on the server. The folder will have size 0 (no files in it). Doing the >= test here will mean that the user will be prompted about the new folder, which I think is the behaviour they would expect.
The side-effect of this change is that if the user has a limit of, for example, 10,000,000 and a new folder comes along with exactly 10,000,000 of content then they will now be prompted about it. Before the change such a new folder would have been auto-synced without prompting the user. I do not think this is a big deal - I cannot believe that users will be counting exact bytes for this limit, they are just setting a rough number of MB at the UI.
Should fix https://github.com/owncloud/client/issues/3542
2015-08-04 19:28:23 +05:45
Markus Goetz
514372db6b Exclude list: Add entries from other sync programs #2814 2015-08-04 09:40:53 +02:00
Aputsiaĸ Niels Janussen
cd19ee5020 Minor typo: Ingored -> Ignored
Issue raised by user 'kant' in Transifex on the 1st of August.
2015-08-03 17:35:58 +02:00
Markus Goetz
7da4a081d3 Startup: Don't notify other instance when session restored #3070 2015-08-03 17:32:41 +02:00
Jocelyn Turcotte
48624fe033 SocketApi: Force fowarding an OK STATUS for all parent directories
This fixes a few issues with the new FinderSync integration on OSX which
can't easily clear its status cache when receiving an UPDATE_VIEW message
except by unregistering the folder, but which causes flickering.

This fix should also make the regeneration of the cache unnecessary on other
platforms through possibly expensive RETRIEVE_FILE_STATUS commands.
2015-07-31 21:59:58 +02:00
Jocelyn Turcotte
78b63c34cb Do not add all remote directories to the SyncItemVector
To allow forwarding all OK states of sync jobs to the socket API
we need to make sure that the vector doesn't contain unneeded items.

This initially was intended to force updating the metadata for parent
folders, but since then the should_update_metadata flag check was
added both here and in PropagateDirectory::finalize where the metadata
is actually updated for parent folders. We can safely remove the inclusion
of all remote directory items.
2015-07-31 21:59:58 +02:00
Jocelyn Turcotte
26d137cac6 SocketApi: Remove an unneeded emit syncItemDiscovered
The signal is emitted in this case if the instruction is NONE
but in the only ultimately connected slot to this signal,
SocketApi::slotSyncItemDiscovered, we return early according
to the same condition.

The emission of the same signal at the end of treewalkFile remains
and take care of the normal cases.
2015-07-31 21:59:58 +02:00
Markus Goetz
d51bd94447 FolderMan: Fix up previous commit #3528 2015-07-31 18:31:54 +02:00
Markus Goetz
a501bf5b83 FolderMan: Use sync() on config after migration #3528 2015-07-31 17:10:12 +02:00
Markus Goetz
0a93dc5e63 OS X Settings Dialog: Two-lined account name #3516 2015-07-31 14:56:14 +02:00
Markus Goetz
eafc45d83c CheckServerJob: Only show SSL ticket warning when actually suceeded 2015-07-30 18:16:37 +02:00
Vincent Petry
79d895ed9e cmd: properly initialize random seed to avoid transferid collisions #3522 2015-07-30 18:08:28 +02:00
Markus Goetz
fd5330b469 Propagator: Log chunk transferid 2015-07-30 17:47:06 +02:00
Klaas Freitag
817a165da7 utility: Put the config include to top of includes. 2015-07-30 16:38:30 +02:00
Klaas Freitag
6992631c4c cmake: rather use SHAREDIR than DATADIR define.
DATADIR is a reserved structure name in win32, using it like us here
leads to very nifty compile problems. SHAREDIR is clean.
2015-07-30 16:38:30 +02:00
Markus Goetz
7fc7925d17 Propagator: Don't corrupt file with broken webserver #3373 2015-07-30 14:40:24 +02:00
Markus Goetz
f01b7bb5db Propagator: More debug output for downloads/uploads 2015-07-30 14:40:24 +02:00
Markus Goetz
48dac23b0f Folder: Version debug at end
Often users send us parts of logs with this information missing.
2015-07-30 14:40:24 +02:00
Markus Goetz
7f8e9a0e70 Sparkleupdater: Use qDebug not qWarning
Else QT_FATAL_WARNINGS triggers.
2015-07-30 14:40:24 +02:00
Klaas Freitag
527fd1ac47 Capabilities: Add macro to make win compile again. 2015-07-30 11:04:49 +02:00
Olivier Goffart
795922e2a0 Fix compilation with old GCC
that does not understand nullptr

Note that we can't just replace nullptr by 0 in createIndex otherwise
it would be ambiguious.
So leave it commented to show that your intention is to create it with
a null pointer  (which is the default because of the default parameter)
2015-07-30 10:44:07 +02:00
Olivier Goffart
3b261bc612 Wizard: Make the name of the backup folder more user friendly
Issue #3512
2015-07-29 12:23:33 +02:00
Olivier Goffart
07ddf18b3b Account Capabilities: style fixup
- Remove the copy constructor. The default constructor is fine. Having
   a user defined copy constructor inhibit the move constructor.
 - Pass QVariantMap arguments via const references
 - Do not return a pointer to Capabilities from the account. It is a
   value type and should not be used by pointer.
2015-07-29 12:07:57 +02:00
Jürgen Weigert
0642e63246 Merge pull request #3232 from flocke/master
[Unix] Install architecture-independent files to DATADIR.

DATADIR is already used elsewhere. So this even adds consistency!

Thanks!
2015-07-29 12:00:48 +02:00
Markus Goetz
dccaba98af Merge pull request #3439 from rullzer/use_caps
Use server capabilities for share dialog
2015-07-29 11:50:35 +02:00
Jocelyn Turcotte
73209717ec Update the qtmacgoodies submodule
Include a fix for an assert.
2015-07-28 15:19:09 +02:00
Klaas Freitag
b07ab14c31 Merge pull request #3470 from rullzer/use_ocs_url
If the OCS Share API returns an url use that
2015-07-28 14:26:23 +02:00
Klaas Freitag
c95bbe27e7 Merge pull request #3495 from rullzer/dont_share_root
Don't allow sharing of the root folder
2015-07-28 14:00:38 +02:00
Olivier Goffart
d9c52f6316 owncloudcmd: fix --httpproxy
It was only used for csync, but not for QNAM

Issue #3465
2015-07-28 13:33:58 +02:00
Olivier Goffart
ec86d1a151 Wizards: allow adding a folder in a non-existing directory and create that folder
The owncloud wizard already created the directory, but the recent addition
of FolderMan::checkPathValidityForNewFolder stopped allowing unexisting directories.

So change FolderMan::checkPathValidityForNewFolder to allow non existing directory
and whange the FolderWizard to create the directory if it does not exist.

Issue #3492
2015-07-28 12:14:52 +02:00
Olivier Goffart
22013eb528 ConfigFile: remove some unused functions 2015-07-28 12:05:34 +02:00
Roeland Jago Douma
6c8ff7c61a Added capabilities class 2015-07-28 12:04:24 +02:00
Olivier Goffart
4016e0863f Fix warning 2015-07-28 11:20:22 +02:00
Olivier Goffart
ff6c11f126 Confirm feature: tray noticiation message when a new folder need to be confirmed
Issue #3148
2015-07-27 10:33:05 +02:00
Olivier Goffart
45b598cacb Confirm feature: default to 500MB
Issue #3148
2015-07-27 10:04:53 +02:00
Olivier Goffart
0ccaae9a22 Confirm feature: Confirm for any folder, not only shared ones
issue #3148
2015-07-27 09:54:20 +02:00
Roeland Jago Douma
6f498aea3b Do not open the share dialog if the user tries to share the root folder 2015-07-24 10:10:41 +02:00
Roeland Jago Douma
a2f9ba47fb If the OCS Share API returns an url use that
To avoid us having to construct the URL for public shares just rely on the
server to do it.

This makes it easier to maintain. For example if (in the not do distat future)
the index.php part is removed the server would just server this new url.
2015-07-23 21:10:53 +02:00
Markus Goetz
fea997c84a Bandwidth Limit: Fix new "Automatic Download" setting #1485 2015-07-23 13:46:42 +02:00
Klaas Freitag
316427c801 Merge branch 'regular_update_check'
Conflicts:
	src/gui/application.cpp
	src/gui/application.h
	src/gui/updater/ocupdater.h
2015-07-23 11:34:12 +02:00
Klaas Freitag
c34641f4f7 Updater: Added a class UpdaterSchedule.
It schedules the regular update checks. Keeps Application and
other classes easy.
2015-07-22 13:44:19 +02:00
Klaas Freitag
21f7cea609 ConfigFile: Let updateCheckInterval return int instead of quint64.
QTimer wants that in setInterval()
2015-07-22 13:42:54 +02:00
Markus Goetz
59a7ae56d4 UI: Add more tooltips #3385 2015-07-20 19:06:40 +02:00
Markus Goetz
a58cb049b2 OS X: Fix layout of quota info in SettingsDialog 2015-07-20 18:43:18 +02:00
Markus Goetz
a6f493ff94 OS X Overlay Icons: Use waitForFinished() with timeout 2015-07-20 18:32:02 +02:00
Markus Goetz
afed400ac6 SettingsDialog: Make bigger and more native on OS X
On OS X, the width of the dialog must not change, only its height.
2015-07-20 18:16:33 +02:00
Klaas Freitag
89b8555aa7 PassiveUpdateNotifier: Fix condition on when to show the update. 2015-07-20 15:33:44 +02:00
Klaas Freitag
320cc1c7dd Updater: Avoid to show the update notification to often.
If the update is only available through the system, the notification
is only shown once.
2015-07-20 15:33:17 +02:00
Klaas Freitag
0a08a51a41 Updater: really do not forget to start the updater timer. 2015-07-20 15:32:27 +02:00
Klaas Freitag
b22e284191 Application: Remove unused connection to updater. 2015-07-20 15:32:00 +02:00
Klaas Freitag
adc239c9d0 UpdateCheck: Clean up Application class and move most to updater.
Add the update timer also to the update class and remove all the
proxy slots from the Application class.
2015-07-20 12:17:31 +02:00
Klaas Freitag
681466213f ConfigFile: Return proper type for update check interval. 2015-07-20 12:10:30 +02:00
Klaas Freitag
cb4bfd8060 ConfigFile: Fix spelling. 2015-07-20 12:10:00 +02:00
Olivier Goffart
a9dfcdd463 FolderDefinition: fix uninitialized variable 2015-07-19 11:33:17 +02:00
Christian Kamm
5d9e752c71 HttpCreds: Add keychain failure hint. #3268 2015-07-17 14:39:43 +02:00
Christian Kamm
44870fae9f Proxy auth: Fix cred invalidation on Windows. 2015-07-17 13:00:16 +02:00
Klaas Freitag
92513207eb Application: On Linux, restart the app if a different version is on HD.
Together with the updater timer, check on linux, if the version on the
disk has still the same version string as the one that is running. If
not, restart if nothing is currently syncing.
2015-07-17 12:12:00 +02:00
Klaas Freitag
2cebd8bc2e SetupWizard: remove unused variable defintion. 2015-07-17 12:09:16 +02:00
Christian Kamm
9acc9d2d44 Fix Qt4 build.
QMap::first is new in Qt 5.2
2015-07-17 12:07:48 +02:00
Christian Kamm
2124098f84 System proxy: Ask for credentials if needed.
The proxyAuthenticationRequired() signal now goes to the
ProxyAuthHandler class. That class will try to read the proxy settings
from the keychain or ask the user about them.

We won't ask the user for credentials for explicitly configured proxies.
It also does not change how the credentials for explicitly configured
proxies are stored. (see #261)
2015-07-17 11:54:46 +02:00
Olivier Goffart
944564258c Fix the Utility Test
1 should be printed as "1" and not as "1.00"
2015-07-17 10:27:03 +02:00
Olivier Goffart
0a6aa88d72 Merge remote-tracking branch 'origin/hidden_file_handling' 2015-07-17 09:32:29 +02:00
Roeland Douma
bc542a4b80 Merge pull request #3426 from rullzer/thumbnail
Sharedialog show thumbnail of file (if available)
2015-07-17 08:58:06 +02:00
Daniel Molkentin
59f93b77c3 Merge pull request #3468 from owncloud/3368
Win32: Do not silent-update if the application is already up-to-date
2015-07-16 23:02:06 +02:00
Roeland Jago Douma
7e79a78901 Use already available password field 2015-07-16 20:55:54 +02:00
Klaas Freitag
2f2ae09190 Utility: Added function versionOfInstalledBinary()
It calls the binary with param --version and returns the first line of
the output. For owncloud, that is the version string.
2015-07-16 18:16:16 +02:00
Olivier Goffart
b59fc39d13 Fix warnings about unused parametters 2015-07-16 18:15:07 +02:00
Klaas Freitag
d284b48db4 Application: Add a new command line switch --version.
It simply prints the version of the client and exists.
2015-07-16 18:12:45 +02:00
Daniel Molkentin
724c0c2953 Win32: Do not silent-update if the application is already up-to-date
Fixes #3368
2015-07-16 17:26:53 +02:00
Olivier Goffart
bdf5029d47 HTTP cred: properly forget the password when signing out #3462
QNAM do not sign out by itself, it keeps the password in cache.

Qt5 has a function to clear the cache. On Qt4 we reset the QNAM
2015-07-16 17:00:14 +02:00
Klaas Freitag
4ad9b7d72d Change default check frequency to every ten hours. 2015-07-16 14:19:02 +02:00
Markus Goetz
3d55191573 OS X: Fix settings dialog after multi-account introduction
For #3459 #3386 #3401
2015-07-16 14:11:06 +02:00
Markus Goetz
55e1f8a060 OS X Overlay Icons: Don't use waitForReadyRead()
Somehow this sometimes glitched for me and hanged.
2015-07-16 14:08:45 +02:00
Christian Kamm
031d35de03 Network: Fix enabling of proxy auth text fields. 2015-07-16 10:27:15 +02:00
Klaas Freitag
a5528b7cd4 AccountSettings: When adding a new folder, set ignore hidden flag.
The value is taken from existing folder definitions, or defaults to true.
2015-07-15 15:54:41 +02:00
Klaas Freitag
cfe5150037 IgnoreListEditor: handle the ignore hidden files checkbox.
Write the setting of the checkbox to all folder definitions.
2015-07-15 15:54:41 +02:00
Klaas Freitag
1aa17cdb69 owncloudcmd: add option to not ignore hidden files. 2015-07-15 15:54:41 +02:00
Klaas Freitag
7195e40ffa FolderMan: Set ignore hidden files in the folder watcher.
The flag is read from the folder configuration and passed on to
the folder watcher so that it ignores events to hidden files
accordingly.
2015-07-15 15:54:41 +02:00
Klaas Freitag
3ba6e20f66 Folder: Getter and Setter for ignore hidden files for folder config.
With these, the ignore hidden files flag can be set and get from the
folder configuration file.
2015-07-15 15:54:41 +02:00
Klaas Freitag
711ae1d347 FolderWatcher: Add flag to ignore hidden files (or not). 2015-07-15 15:54:41 +02:00
Klaas Freitag
a4336092f6 Hidden Files: Add a setting to ignore hidden files or not.
This setting goes to the folder definition. By default, no hidden
files are synced.
2015-07-15 15:54:41 +02:00
Klaas Freitag
3a5f66e976 SyncEngine: Remove bogus logging. 2015-07-15 15:54:41 +02:00
Klaas Freitag
9461e4ccd1 Sync: Only copy the hasIgnoredFlag for the remote side.
Also added some documentation about the handling.
2015-07-15 15:53:58 +02:00
Klaas Freitag
7b8dc9777e Sync: Rename ignored file member to _serverHasIgnoredFiles.
This should make it more obvious that only the server state about
ignored files is stored in the db.
2015-07-15 15:51:15 +02:00
Klaas Freitag
b0aedef4b0 Sync: Store information about ignored files on the server in database.
That allows better handling of remove requests that should not be done
because the directory is not empty on the remote side (as it contains
ignored files).
2015-07-15 15:49:27 +02:00
Klaas Freitag
da87a47eaf discovery: handle dot files on server as hidden. 2015-07-15 15:20:46 +02:00
Klaas Freitag
7aa2b50828 csync_update: Handling hidden files as excluded files, as intended. 2015-07-15 15:20:46 +02:00
Christian Kamm
65a3847a35 Tray menu: Make sign in/out actions more consistent.
In particular:
* It's always possible to sign out, even if there's currently a
  network problem or the service is unavailable.
* You can only sign in when you explicitly signed out before.
2015-07-15 15:07:23 +02:00
Roeland Douma
3344249297 Merge pull request #3425 from rullzer/sharedialog_wait_for_con
Wait until we retrieved shares before showing checkbox
2015-07-15 14:38:38 +02:00
Roeland Jago Douma
b686a3dbdb Sharedialog show thumbnail of file (if available) 2015-07-15 14:33:04 +02:00
Roeland Jago Douma
454e9d9906 Wait until we retrieved shares before showing checkbox
If we have a slow connection we do now want to show the share checkbox until we
have retrieved the shares (so we know the state). Else we might try to enable
sharing on an already shared file.
2015-07-15 14:20:35 +02:00
Christian Kamm
908881cbf7 AccountSettings: Fix label for ServiceUnavailable state. 2015-07-15 14:02:45 +02:00
Christian Kamm
2ac8646320 AccountSettings: Improve error reporting. #3084
Previously the errors were only visible in the tray icon tooltip!
2015-07-15 12:04:44 +02:00
Christian Kamm
7edb57e46c Fix error message for invalid chars in filename #3432 2015-07-15 10:38:33 +02:00
Olivier Goffart
92dc3047d0 Qt4 SelectiveSyncDialog: Give a better size to the column by default
Issue #3239
The feature to dynamically resize the column only came with Qt5,
But give a better default size of the name column so we can read the
contents.
2015-07-14 15:18:55 +02:00
Olivier Goffart
cdb88d621c Qt4 build: Qt::ItemNeverHasChildren was added in Qt 5.1 2015-07-14 15:01:33 +02:00
Olivier Goffart
b485e8f97f AccountSettings: disable the add folder button when syncing the entire owncloud #3438 2015-07-14 11:03:25 +02:00
Olivier Goffart
ab23368764 FolderStatusModel: init all private members 2015-07-14 10:15:19 +02:00
Olivier Goffart
6030b4416d Account Settings: hide the [add folder] button when syncing the entire owncloud #3438 2015-07-13 16:29:01 +02:00
Olivier Goffart
aabad22cef Wizard: show an error if the folder already exists
Issue #3444
2015-07-13 15:37:01 +02:00
Olivier Goffart
247771fbba Wizard: remove the configExists state
The wizard is now only used to create new account, not update existing ones
2015-07-13 15:21:18 +02:00
Olivier Goffart
e5568b5d13 Wizard: remove the check for mutliple folders
It does not make sens now that we have multi account
2015-07-13 14:52:24 +02:00
Olivier Goffart
4dbe0693df FolderMan::checkPathValidityForNewFolder
factorize the function to check the validity of a new folder out of
the folder wizard to the FolderMan.

There is even a test for it now.

That way we can also use it in the normal wizard
2015-07-13 14:35:19 +02:00
Roeland Jago Douma
c052f6d4c9 Use capabilities to not allow removing of expiredate and password
If the server admin has enforced the expiration date and the password our UI
should not give the user the option to remove those.
2015-07-10 15:50:01 +02:00
Roeland Jago Douma
7f893aa676 Fore password request if required by capabilities 2015-07-10 15:26:26 +02:00
Olivier Goffart
45180a024d Rename should_update_etag to should_update_metadata
This should avoid some confusion
2015-07-09 15:05:37 +02:00
Olivier Goffart
992d375e90 owncloudGui: Do not reset folders when login in or out.
This made no sens. Folders are setup when the account is setup.

Also this had the bad side effect to shut the sync engine too early,
leaving the SyncEngine::_syncRunning to true, and leading to ASSERT later

Issue #3427
2015-07-09 13:25:27 +02:00
Olivier Goffart
644486871b owncloudGui: Fix crash when sign in
The sign in action from within that menu might change the account state
and call setupContextMenu. We must not delete the menu from there

Issue #3427
2015-07-09 12:17:27 +02:00
Olivier Goffart
08fcf650eb Fix Qt4 build 2015-07-08 19:48:57 +02:00
Klaas Freitag
e28fab0c61 Folder: let path() always end on "/" rather than on platform spec. delim. 2015-07-08 18:13:41 +02:00
Klaas Freitag
c7ba7c8e9f Fix comment for c_path_to_UNC, plus cleanup of superflous debug. 2015-07-08 18:13:41 +02:00
Klaas Freitag
b8077d2f5b FileSystem: Use long file name handling method from csync.
This helps to only maintain one version of the function.
2015-07-08 18:13:40 +02:00
Klaas Freitag
02a5a8ea3b SyncJournal: Use proper long path handling. 2015-07-08 18:13:40 +02:00
Klaas Freitag
56954c6482 FileSystem: Add missing EXPORT macro. 2015-07-08 18:13:40 +02:00
Klaas Freitag
bb1b1ab7e3 FolderWatcher Win: Use proper lang path handling in folder watcher. 2015-07-08 18:13:40 +02:00
Klaas Freitag
e74801fd3d Win32 long filename format for Qt functions. 2015-07-08 18:13:39 +02:00
Olivier Goffart
68668e25bd FolderStatusModel: uses int64 for the sizes to prevent overflow
Issue #3420

(The change in Utility just make sure never to use the scientific notation,
even if it should never happen)
2015-07-08 14:52:58 +02:00
Olivier Goffart
e2cb6e8086 Utility: remove useless QList
Not used anymore
2015-07-08 11:16:32 +02:00
Olivier Goffart
d1bfc7a636 Settings: fix broken signal/slot connection:
No such slot OCC::GeneralSettings::slotForceRemoteDiscoveryOnFolders()
      (sender name:   'OCC__IgnoreListEditor')
      (receiver name: 'OCC__GeneralSettings')

The slot was in another settings page (because the button 'edit ignored files'
was moved.

Move the actual code to IgnoreListEditor where it logically belong.
Add a comment on the why this code is there.
2015-07-07 20:46:39 +02:00
Olivier Goffart
41111541c5 Confirm feature: Add an option for it 2015-07-07 16:28:48 +02:00
Olivier Goffart
f87d0139e1 AccountState: fix Sing-in of a connected account
Issue #3413

There was two problem:
 - First, when singing in we were setting an account that was connected
   to disconnected  (AccountState::State)
 - Second, while getting the result from the ConnectionValidator, we would
   not set the state to connected if the previous call to ConnectionValidator
   was ConnectionValidator::Connected, regardless of the old state of the account
2015-07-07 14:44:16 +02:00
Olivier Goffart
ceddbe248e FolderStatusDelegate: style the Add Folder button 2015-07-06 16:04:06 +02:00
Olivier Goffart
ef1f2d2b79 FolderStatusDelegate: Fix identation and remove empty functions 2015-07-06 14:44:53 +02:00
Olivier Goffart
9c9ff886c9 Fix qt4 build
Qt5 automatically declares many types as QMetaType.
Qt4 needs them manually declared
2015-07-06 11:04:17 +02:00
Markus Goetz
ed0fb76cd7 Merge pull request #3404 from owncloud/fix-2702
Command Line: clear error hint with wrong command line options
2015-07-04 12:56:06 +02:00
Arthur Schiwon
263fa5882b clear error hint went wrongly use command line options 2015-07-03 16:01:24 +02:00
Christian Kamm
ae69ff032b Folders: Show as disconnected when account is disconnected.
Previously you could get a green folder icon even when the account
was signed out or disconnected for another reason.
2015-07-03 15:03:18 +02:00
Christian Kamm
1a58e6606c TrayMenu: Show submenus per account.
This addresses the inability to sign out from one account while
keeping the other active. See #3399, #3400, #3379
2015-07-03 14:54:20 +02:00
Christian Kamm
e390c22f96 FolderStatusModel: Minor cleanup. 2015-07-03 14:28:04 +02:00
Christian Kamm
7053f76d1e Password dialog: Include account name.
Users with accounts on multiple servers could easily use the same
username on both servers. The password dialog did not tell users
what server the password is for. I added the account name to the
dialog.
2015-07-03 11:39:44 +02:00
Christian Kamm
030d1e636b Progress UI: Properly reset bar after a sync. 2015-07-03 11:26:03 +02:00
Christian Kamm
9ad79cfc52 TrayMenu: Ensure it updates when accounts are added or removed. 2015-07-03 11:13:19 +02:00
Olivier Goffart
76903fb55a Settings: Aling the non-accounts button on the right 2015-07-03 11:04:03 +02:00
Olivier Goffart
0b8163fae1 Folder: the limit for the confirm featur is 100MB, not 100kB 2015-07-03 10:42:20 +02:00
Daniel Molkentin
0fb43dbc3a Merge pull request #3397 from owncloud/uselibcpp
OS X: Force linkage against libc++
2015-07-02 14:26:55 +02:00
Daniel Molkentin
0610d3ea8d Merge pull request #3347 from jturcotte/shell_integration_findersync
shell_i: Add a FinderSync-based implementation #2340
2015-07-02 14:20:24 +02:00
Christian Kamm
ba613a152a FolderStatusModel: Always update on sync state change.
Previously the icon and progress report could easily get
somewhat stale and go out of sync with the tray icon.
2015-07-02 14:17:38 +02:00
Christian Kamm
7e6804fda8 ProgressDispatcher: Minor cleanups. 2015-07-02 14:17:38 +02:00
Daniel Molkentin
a1b6571d53 Revert "Do not use std::unique_ptr"
This reverts commit 2db7ab5c46.
2015-07-02 13:31:42 +02:00
Daniel Molkentin
1d8c919645 Force linkage against libc++ 2015-07-02 13:31:25 +02:00
Olivier Goffart
2db7ab5c46 Do not use std::unique_ptr
The class is not existing on all platform we support
(namely macos 10.7)
2015-07-02 12:55:54 +02:00
Christian Kamm
5ff733cfb7 Fix travis build.
It does not like 'constexpr const' and for object declarations like
this one it should indeed be redundant.
2015-07-02 11:40:16 +02:00
Christian Kamm
bf183f425d SslConfig: Reset when QNAM is reset. #3394
It seems running a CheckServerJob with the existing ssl config after
resetting QNAM will produce a ssl config without a cert chain.
2015-07-02 11:28:40 +02:00
Christian Kamm
1b31f45435 SslButton: Only show menu when info is available.
For unencrypted connections there used to be a small arrow indicating
that more information was available, but clicking the button had no
effect. That indicator is now gone because we unset the SslButton's
menu for these cases.
2015-07-02 10:49:18 +02:00
Christian Kamm
4420d52919 QuotaInfo: Ensure label fits into progress bar. #3393 2015-07-02 10:28:33 +02:00
Christian Kamm
2d08e02dda Propagation: Make 503 a fatal error.
Running further propagation jobs when the server is likely to be
503 for a time does not seem very useful.
2015-07-01 14:53:07 +02:00
Christian Kamm
8aeb3cc8d2 Improve account connectivity tooltips. #3200
* Show connection errors for all failing accounts in the tooltip.
* Don't hide the 'service unavailable' state. We don't want intrusive
  pop ups, but we don't want to pretend we're syncing when we aren't.
* Show sync-running icon also for SyncPrepare state. In my tests I
  very rarely saw the sync-running icon before.
2015-07-01 14:53:07 +02:00
Christian Kamm
2fa00168cf Sync scheduling: fix per-account scheduling. #3379
application.cpp still had a global folder syncing on/off switch
when an account connected or disconnected. That couldn't work with
multiaccount.

Instead FolderMan listens to accountStateChanged messages and
schedules or de-schedules the folders for accounts that change state.
2015-07-01 14:53:07 +02:00
Olivier Goffart
575ca50aac csync: Do not ignore hard links anymore
There is no reason to ignore them. Downloading a file that is hardlinked
will break the link.

Will solve syncing NTFS directories #3241
2015-07-01 13:05:08 +02:00
Olivier Goffart
4a541a9ab4 Merge remote-tracking branch 'origin/maser' 2015-06-30 13:52:38 +02:00
Olivier Goffart
ec5894ef7a Fix Qt4 build 2015-06-30 11:29:59 +02:00
Daniel Molkentin
66e8aaeabc Use doxygen style everywhere 2015-06-29 18:56:09 +02:00
Daniel Molkentin
eff4daa00b Merge remote-tracking branch 'origin/master' into doxygenify
Conflicts:
	src/gui/quotainfo.h
2015-06-29 18:45:55 +02:00
Daniel Molkentin
0735aa1fbd Structure developer documentation
- rename target "doc-dev"
- group into modules
- move to doc/dev
2015-06-29 18:43:21 +02:00
Olivier Goffart
076f8ea105 Merge pull request #3097 from owncloud/translatable-remaining-time
make the remaining time string translatable and support plural forms
2015-06-29 18:30:44 +02:00
Markus Goetz
ef1e6add4f Settings: Auto download bandwidth limit #1485 2015-06-29 17:43:25 +02:00
Olivier Goffart
ec3fc50e0e FolderMan: store folders in a QMap instead of a QHash so they are kept in order
Issue #1529
2015-06-29 15:49:47 +02:00
Olivier Goffart
7a324ff25b Utility: improve the function to conver a duration to string
- Make it translatable
 - Make use of the %n so that it supports plurals (but this will only
   take effect if we have an english translation)
 - Only put two units.  eg:  "5 years 7 months" instead of
   "5 years 7 months 12 days 34 minutes 23 seconds"
   Even when it is "2 hours 23 minutes" the amount of second does not
   matter, especially since the estimation is likely to be boggus anyway

Issues #2672 and #3097
2015-06-29 14:59:28 +02:00
Olivier Goffart
23ccaa2821 QuotaInfo: add a comment about long running job
To document the change made two commits ago
2015-06-29 10:57:32 +02:00
Olivier Goffart
51c10de672 QuotaInfo: make sure that we always check the quota every 30 seconds 2015-06-26 18:04:27 +02:00
Olivier Goffart
236951d9b3 QuotaInfo: allow only one job at the same time 2015-06-26 16:58:34 +02:00
Olivier Goffart
e7d7646151 QuotaInfo: only request the quota when the UI is visible 2015-06-26 15:43:19 +02:00
Olivier Goffart
7757886ebc SystemTray menu: remove the quota information
It makes no sens anymore with multi account and users will see it
from the dialog anyway.
2015-06-26 13:32:02 +02:00
Olivier Goffart
61a1a0bb2d PropfindJob: fix a debug output message
Prpfind job can be used for more than getting the quota
2015-06-26 13:32:02 +02:00
Christian Kamm
77941b5ba7 IgnoreEditor: Make UI more explicit. #3172
People were mistaking the checkbox for something that enables
and disables specific ignore patterns. Now it's much more
explicit.
2015-06-26 10:46:13 +02:00
Christian Kamm
10aaf18129 FolderMan: Make folderSyncStateChange() signal reliable. #3354 2015-06-26 10:09:03 +02:00
Olivier Goffart
db87d2a18e QuotaJob: remove and use a PropfindJob instead
This remove code duplication because the QuotaJob was just a duplication
of the propfind jobs with the properties hardcoded.
2015-06-25 14:39:48 +02:00
Olivier Goffart
29fecb029e Merge remote-tracking branch 'origin/1.8'
Conflicts:
	VERSION.cmake
        src/gui/accountsettings.cpp
	src/gui/accountsettings.h
2015-06-25 12:30:52 +02:00
Olivier Goffart
494f08de8c Theme: add a non-inline destructor
That way we do not need to include QIcon in theme.h
So the header can be included (indirrectly) from cmd.cpp
which is not compiled with the QtGui include paths
2015-06-24 10:14:55 +02:00
Olivier Goffart
c56cb2235c Missing EXPORT macro 2015-06-23 00:53:32 +02:00
Jocelyn Turcotte
9797782682 shell_i: Build the extension with the '-' identity by default
This allows developers to build and run the extension by default.
Official packages bundles will be re-signed after the build, we

The SocketApi prefix can be set at configure time through cmake and
should match the key that will be used to sign the whole .app bundle
(including the embedded FindexSync .appex bundle).
2015-06-22 13:55:19 +02:00
Christian Kamm
deb5e68e15 Ignores: Force a remote discovery after ignore list change #3172
The problem was that the modified ignore pattern was not applied
to the parts of the remote tree we simply retrieve from the db
because the folder etag didn't change.

Even worse, if one removed an ignore pattern, the un-ignored
files would not be synced correctly.

With this change, a modification to the ignore list always results
in a full remote discovery. This guarantees that we find un-ignored
files.
2015-06-19 14:58:47 +02:00
Jocelyn Turcotte
9a9897ea1e Shibboleth: Let the webview use its own QNAM #3359
Since we periodically recreatet the QNAM owned by the Account,
the web view could end up holding a dangling pointer to it.

Let the web view use its own QNAM, but make sure that the cookie
jars are shared so that we can grab the session token given
by the server.
2015-06-19 12:33:11 +02:00
Olivier Goffart
bb85db6cc5 Fix windows build 2015-06-18 10:24:40 +02:00
Olivier Goffart
dd5ddf2166 AbstractNetworkJob: move to its own file 2015-06-17 17:29:11 +02:00
Jocelyn Turcotte
85938ab1f1 shell_i: Remove the ICON_PATH socket API message #2340
It was only used on OS X and couldn't be used by the FinderSync
extension since that one runs in a sandbox. So use the same system
to load images in the legacy extension by shipping them in the
extension bundle instead of the owncloud.app bundle.

This is also given that the legacy extension needs padded icons
while the FinderSync one needs unpadded icons.
2015-06-17 17:15:50 +02:00
Klaas Freitag
79cc902673 FolderMan: Save migratated folder definitions to Configfile. 2015-06-17 14:54:51 +02:00
Klaas Freitag
214bc6b29b Folder: Simplify Folder constructor: No need for AccountState.
Do not pass AccountState in constructor of Folder, set with a
new method called setAccountState after creation. Thus the
parameter does not need to be passed through all over.
2015-06-17 14:54:51 +02:00
Christian Kamm
84bae92264 AccountSettings: Fix initial visibility of sel sync panel #3355 2015-06-17 14:43:38 +02:00
Christian Kamm
191d66fc6f Propagator: Add entry with dummy etag on local mkdir. #2761 2015-06-17 14:38:51 +02:00
Jocelyn Turcotte
c98bcc8e9e OS X: Fix a few warnings 2015-06-17 14:32:34 +02:00
Jocelyn Turcotte
a4f519eaeb Reduce the amount of rebuild needed after a git commit
Since GIT_SHA1 would need to be updated in config.h, all files
including it would be rebuilt by make.

Reduce the number of files to rebuild by moving this variable
to version.h instead.
2015-06-17 14:32:34 +02:00
Olivier Goffart
c11358219a FolderStatusModel: fix a coverity warning 2015-06-17 12:46:49 +02:00
Christian Kamm
28d6d0dc1e Download: Gracefully skip files with 404. #2227 2015-06-17 12:24:21 +02:00
Jocelyn Turcotte
977b1464b5 shell_i: Don't load the old extension in >= 10.10 #2340 2015-06-16 15:30:43 +02:00
Olivier Goffart
d902a37dfd Fix Qt4 compilation
This header is not included in Qt4's QAbstractItemModel header
2015-06-16 12:14:04 +02:00
Olivier Goffart
0cfc518c33 Fix coverity build which does not support nsdmi 2015-06-16 09:30:29 +02:00
Olivier Goffart
f8cbed34c2 Should fix coverity build
Issue #3346
2015-06-15 17:59:08 +02:00
Olivier Goffart
2e177590a6 libsync: Remove some Theme dependency
Theme will eventually be moved to the GUI

Theme::appNameGUI and QApplicaiton::applicationName are the same, it is currently
set in the constructor of ConfigFile
2015-06-15 17:39:28 +02:00
Olivier Goffart
7f0735a955 Account: don't use the Theme from the account
The Theme will be moved to GUI
The server URL is anyway overriden by the wizard or the accountmanager
2015-06-15 17:39:28 +02:00
Olivier Goffart
ce0a0e3f0d Credential: move the implementation to the gui 2015-06-15 17:39:28 +02:00
Olivier Goffart
6e337ad242 Move Account::settings to AccountState::settings
It is only used by the GUI. Also return a unique_ptr to make the ownership clearer
2015-06-15 17:39:28 +02:00
Jocelyn Turcotte
bfcfdeec64 shell_i: Use an NSConnection instead of a local socket #2340
This prepares the switch to the official FinderSync API on Yosemite
which requires the extension to run in a sandbox. This complicates
the usage of a local socket to communicate with a non-sandboxed GUI
client. An NSConnection is easier to use in this case, which we can
use as long as the server name (i.e. Mach port registered name) is
prefixed with the code signing Team Identifier.

A placeholder server implementation is also added to the client's
SocketApi which basically reproduces the interface of a QLocalSocket.
Most of the references to individual sockets we're only using
QIODevice methods so the type was simply reduced. A typedef to
replace the QLocalServer was the only other part needed.
2015-06-15 15:28:17 +02:00
Olivier Goffart
e321280eae AccountManager: remove export macro 2015-06-15 14:53:36 +02:00
Olivier Goffart
a3c543a627 Move FolderStatusDelegate to its own file 2015-06-15 14:16:21 +02:00
Klaas Freitag
fa0faee8ba Frequent update check: read check frequency from config file. 2015-06-15 12:24:18 +02:00
Olivier Goffart
bea8896012 Merge remote-tracking branch 'origin/master' into new-ui 2015-06-14 10:39:30 +02:00
Olivier Goffart
1dabdc7df1 discoveryphase: initialize DiscoveryMainThread::_currentGetSizeResult 2015-06-12 14:43:18 +02:00
Olivier Goffart
11c8415cd6 Coverity do not support non-static data initializer
Fixes #3337
2015-06-12 13:57:17 +02:00
Olivier Goffart
81c10da8dc Accountsettings: Show a notification when there are new unconfirmed folders 2015-06-12 12:19:24 +02:00
Olivier Goffart
2296f6a4a5 Fix Qt4 build
QSharedPointer::create with arguments is new in Qt5
2015-06-12 08:13:08 +02:00
Olivier Goffart
53f2468430 Confirm: Set the limit to 100MB
TODO: make this configurable
2015-06-11 15:54:39 +02:00
Olivier Goffart
cc3543dbd2 Confirm feature: The UI part in the selective sync view
Folder that are over the threshold will appear in red in the
selective sync view and will be deselected by default
2015-06-11 15:46:01 +02:00
Olivier Goffart
05ed126bfd Account config: add the size in the selective sync part 2015-06-11 14:13:09 +02:00
Olivier Goffart
5ab20e64bf AccountSettings: fix selective sync checking
We need to set the root item to partially checked in case there
is some folders in the blacklist

The root item do not have checkmark so it is good
2015-06-10 17:00:08 +02:00
Olivier Goffart
e9e11d251f Fix compilation after merge of the confirm and the new-ui branch 2015-06-10 16:22:14 +02:00
Olivier Goffart
139b28b471 Merge branch 'master' into new-ui
Conflicts:
	src/gui/folder.cpp
        src/gui/folder.h
	src/gui/folderman.cpp
2015-06-10 15:57:55 +02:00
Olivier Goffart
16786eed54 Merge pull request #3281 from owncloud/confirm
Confirm feature (sync engine part only)
2015-06-10 13:39:52 +02:00
Olivier Goffart
e135d4cccf Merge remote-tracking branch 'origin/1.8' 2015-06-10 13:42:02 +02:00
Klaas Freitag
c8cb604c18 Updater: Do a tray notification if a new update is available. 2015-06-09 08:35:15 +02:00
Klaas Freitag
5b65bbf8e5 App: Do a regular check for updates, currently hardcoded every two hours. 2015-06-09 08:35:15 +02:00
Olivier Goffart
67f7892958 SocketAPI: Do not leak open DB or query
We could leak it in case of errors. Or when the folder is removed.
Make use of QSharedPointer to avoid leaks
2015-06-08 15:49:37 +02:00
Olivier Goffart
6df7551bdd DiscoveryPhase: Fix the unlikely case the server resturns utf-8 in permissions
UTF-8 size might be bigger than the size of the QString
In that case we would end up with a non-nill terminated permissions.
2015-06-08 15:40:06 +02:00
Olivier Goffart
1b9d82679c OwnSQL: fix initialisation of variables 2015-06-08 15:30:39 +02:00
Olivier Goffart
2c6c21d753 AccountState: do not change the state when we stay connected
This would cause a full sync every 30 seconds.
2015-06-08 12:14:37 +02:00
Volkan Gezer
03eb11b927 from translators on transifex 2015-06-07 14:19:59 +02:00
Klaas Freitag
fc2ceb88fb Rename thread to SyncEngine Thread to avoid confusion about Neon. 2015-06-06 10:49:47 +02:00
Christian Kamm
ee08b3759d SyncScheduling: Avoid new resyncs on local mkdir.
(cherry picked from commit bacf6166c1)
2015-06-05 10:27:28 +02:00
Christian Kamm
bacf6166c1 SyncScheduling: Avoid new resyncs on local mkdir. 2015-06-04 15:02:24 +02:00
Christian Kamm
2ed329e025 Improve reporting of server error messages. #3220
In particular the 'unsupported client version' error message
is now visible to the user when trying to connect to a
server that no longer supports the current client version.
2015-06-04 10:07:24 +02:00
Christian Kamm
4c10f1e40c Wizard: Show server error message if possible. #3220 2015-06-03 16:33:09 +02:00
Olivier Goffart
02ffbf8989 confirm feature: fix typos spotted by ckamm 2015-06-03 15:20:42 +02:00
Christian Kamm
89376e14d6 Nicer fix for the security issue #3283. 2015-06-03 11:37:26 +02:00
Christian Kamm
e32bd5a59f Merge remote-tracking branch 'origin/1.8' 2015-06-03 11:36:52 +02:00
Olivier Goffart
12f760535d Fix folder concatenation with Qt4
QUrl in Qt4 do not simplify double slashes like Qt5 does, so we have
to take in account different slashes possibilities
2015-06-02 20:47:06 +02:00
Olivier Goffart
e1f94cea4f FolderStatusModel: handle network error in the LSCol 2015-06-02 20:47:06 +02:00
Olivier Goffart
fc23e810fd folderstatusmodel: clean includes 2015-06-02 20:01:13 +02:00
Olivier Goffart
e587c8e2dc multi-account: compile with Qt4 2015-06-02 19:57:41 +02:00
Olivier Goffart
984434c728 AccountSettings: move the progress handling in FolderStatusModel
This is required to compile with Qt4 because signals were protected.
And the logic anyway belongs to the model
2015-06-02 19:45:23 +02:00
Klaas Freitag
75b38d1a2f Abort the request and reset the QNAM if user does not ACK a new cert.
This is supposed to fix bug #3283
2015-06-02 12:21:49 +02:00
Christian Kamm
2435ba7e7d Windows: Fix unit test build. 2015-05-27 14:59:28 +02:00
Olivier Goffart
28a66cb393 SettingsDialogMac: adapt to multi-account 2015-05-26 17:37:15 +02:00
Olivier Goffart
507206367f Merge branch 'master' into new-ui 2015-05-26 14:56:08 +02:00
Olivier Goffart
9e17ddffae Confirm feature: document the white/black/unconfirmed lists 2015-05-26 14:41:29 +02:00
Olivier Goffart
a621223cc8 SyncEngine: add an api to set the maximum size of new shared folder that do not require confirmation 2015-05-26 14:41:01 +02:00
Olivier Goffart
7bb2834d8b Confirm feature (The sync engine part) 2015-05-26 12:34:07 +02:00
Olivier Goffart
10d9e53159 Confirm feature: Use selective sync in the database 2015-05-26 12:34:07 +02:00
Olivier Goffart
2c67692958 JournalDb: add a table in the db for the selective sync 2015-05-26 12:33:54 +02:00
Olivier Goffart
5cb10bf6a1 PropfindJob: fix parsing of properties that have a sub element
The default argument of readElementText is ErrorOnUnexpectedElement which
abort the parsing of remaining elements
2015-05-26 12:33:54 +02:00
Olivier Goffart
54a42e401b More compilation fixes after the merge 2015-05-26 12:33:19 +02:00
Olivier Goffart
6b27d2e703 Merge remote-tracking branch 'origin/1.8' 2015-05-26 12:28:31 +02:00
Klaas Freitag
6c46713701 include qtconcurrentrun header rather than QtConcurrent for Qt4 2015-05-22 14:46:29 +02:00
Olivier Goffart
3754e6c781 Disable the curruption workaround on mac and windows
The binaries we ship have a patched Qt
2015-05-22 14:19:44 +02:00
Olivier Goffart
6b9e123816 Merge remote-tracking branch 'origin/checksum_1.8' into 1.8 2015-05-22 10:32:37 +02:00
Olivier Goffart
fb2295fcec Merge branch 'recall' into 1.8 2015-05-22 10:32:26 +02:00
Christian Kamm
0af2f7e5ed ConValidator: Always run with new credentials. #3266 2015-05-22 09:38:44 +02:00
Christian Kamm
1c84d01584 Windows: Fix build of tests. 2015-05-22 09:17:24 +02:00
Olivier Goffart
3fcce08a22 recall: move the recall code in a namespace 2015-05-21 16:23:54 +02:00
Olivier Goffart
289800c1ba Recall: make it work even if it is not in the root directory 2015-05-21 16:06:53 +02:00
Olivier Goffart
9a02a0f3a8 Recall feature: Fix some style issues 2015-05-21 16:06:52 +02:00
Jakub Moscicki
4e79093f84 recall file prototype 2015-05-21 16:06:52 +02:00
Klaas Freitag
d2fff2c3e3 Theme: Allow to change the transmission checksum through theming. 2015-05-21 15:59:24 +02:00
Klaas Freitag
8f277e46d6 TransmissionChecksumming: Remove SyncFileItem dependency. 2015-05-21 15:51:48 +02:00
Klaas Freitag
c33d962712 TransmissonChecksumValidator: Add documentation. 2015-05-21 14:32:08 +02:00
Klaas Freitag
3870915118 TransmissionChecksumValidator: Reduce verbosity. 2015-05-21 14:31:39 +02:00
Klaas Freitag
b05ca526a4 In case of empty checksum type, emit validated. 2015-05-21 14:31:18 +02:00
Klaas Freitag
4e28a24af3 Let checksumType() read the config to destinguish checksum type. 2015-05-21 14:30:21 +02:00
Olivier Goffart
aebadfcda2 FolderWizard: Add missing Q_OBJECT which prevent translations from working 2015-05-21 12:53:55 +02:00
Klaas Freitag
dec3bd4a02 Some more minor cleanups based on the pull request review. 2015-05-20 22:44:12 +02:00
Klaas Freitag
64ce0cd7a2 Improved implementation efficiency of checksum calculation.
Based on Oliviers suggestions the file read routine now reuses
one buffer to read the entire file.

Other cleanups.
2015-05-20 21:42:08 +02:00
Klaas Freitag
5b5a636cc1 Make TransmissionChecksumValidator child of the job for auto delete.
That way no explicit memory management is needed as the allocation
is freed when the job (parent) is deleted automatically.
2015-05-20 16:54:04 +02:00
Daniel Molkentin
5c6a6529a6 Merge pull request #3258 from binwiederhier/bugfix/issue3256-mkcol
Add 'Content-Length: 0' header to MKCOL request; fixes #3256
2015-05-20 15:48:33 +02:00
Philipp Heckel
68fa190cf7 Add 'Content-Length: 0' header 2015-05-20 14:40:20 +01:00
Olivier Goffart
d148464efe SyncJournalDb::updateErrorBlacklistEntry: lock the mutext at the beginning
The mutex need to be locked before checkConnect, that's what all the other functions are doing
2015-05-20 15:30:19 +02:00
Klaas Freitag
17fe4c3b29 PropagateUpload: Fix typo in warn message. 2015-05-20 12:30:00 +02:00
Klaas Freitag
dd6c97abb6 Propagator: Added a log that tells if transmission checksumming is used. 2015-05-20 12:27:54 +02:00
Markus Goetz
330b352001 ProgressInfo: Fix Windows build 2015-05-20 11:59:33 +02:00
Klaas Freitag
ddfe3fa7ab TransmissionChecksum: Fix identation. 2015-05-20 10:49:18 +02:00
Klaas Freitag
1f7274c2f2 TransmissionChecksum: Removed "pseudo" thread worker functions
Removed the Worker postfix from the method names to reflect their non
threaded character, they moved into a thread in the Validator class.

Thanks ckamm for review.
2015-05-20 10:45:20 +02:00
Klaas Freitag
8b371c42b7 Propagate Download: Handle malformed checksum header as error.
Plus some cleanup, bool ok was not needed actually.
2015-05-19 17:09:40 +02:00
Klaas Freitag
c7f759fedf Propagator: Use the TransmissionChecksumValidator class. 2015-05-19 17:09:40 +02:00
Klaas Freitag
830daa40d1 Add a class TransmissionChecksumValidator, incl. unit test.
This does all needed to manage checksums that go with http headers
ensuring that the transmission was correct.
2015-05-19 17:09:40 +02:00
Klaas Freitag
f016d25b4c Propagate downloads: Handle checksum transmission header.
Read a checksum from the HTTP header, and if its there, compare the
downloaded tmp file against it. In case of corruption, schedule a
redownload.
2015-05-19 17:09:40 +02:00
Klaas Freitag
e18fd62f34 Propagator: checksum constants go to propatorjobs header.
So they can be used from both up- and download propagator jobs.
2015-05-19 17:09:40 +02:00
Klaas Freitag
3701fbcbfe PropagateUpload: Add checksum calculation if required by config.
If the config file has an transmissionChecksum entry, a checksum
is added to the PUT requests in a header.
2015-05-19 17:09:39 +02:00
Klaas Freitag
67d38bc87b Filesystem Utilities: Add Checksum calculation methods. 2015-05-19 17:09:39 +02:00
Klaas Freitag
ec83295b99 Branding: Append the appName short to the user agent string. 2015-05-19 17:09:39 +02:00
Klaas Freitag
e36252a845 Theme: (minor) remove some more mirall's 2015-05-19 17:09:39 +02:00
Klaas Freitag
d0d8de9f2f MirallConfigFile: Add an option of transmission checksumming. 2015-05-19 17:09:39 +02:00
Daniel Molkentin
9693048f78 Find & use QtConcurrent 2015-05-19 17:09:39 +02:00
Klaas Freitag
101d2268ff SyncFileItem class: Add member _checksum 2015-05-19 17:09:39 +02:00
Klaas Freitag
2fcad760b9 StopWatch: return the duration from the stop() command. 2015-05-19 17:09:39 +02:00
Olivier Goffart
f595fc2f9c Fix opening external links for some labels
Issue #3135
2015-05-15 18:44:19 +02:00
Markus Goetz
06c889630c AccountState: Run only a single validator, allow error message overriding #3236 #3153 2015-05-15 12:27:35 +02:00
Markus Goetz
8a39748654 SyncJournalDB: Don't use NULL value
Olivier says we should try to not be the same as the possible value
for not existing entries.
2015-05-13 14:57:14 +02:00
Markus Goetz
3556ed416c SyncJournalDB: Simplify code 2015-05-13 13:15:53 +02:00
Olivier Goffart
d7fa03cf2e Systray menu: consider multiple account to choose the status 2015-05-13 13:10:14 +02:00
Markus Goetz
e5e2ce2b22 SyncEngine: Force re-read of folder Etags for upgrades from 1.8.0 and 1.8.1
This is a better fix than the previous one for the local-files-missing bug
because it does not depend on the sync run to run fully through.
2015-05-13 12:54:49 +02:00
Olivier Goffart
af94e8943d Systray menu: show one entry per account to open in a browser 2015-05-13 12:54:31 +02:00
Markus Goetz
39d103adf7 OwnSql: Fix numRowsAffected() 2015-05-13 12:54:03 +02:00
Jakob Nixdorf
a0e3858a7c Install architecture-independent files to DATADIR.
Change the installation target for the translations and the .desktop
file to the architecture-independent DATADIR.
2015-05-13 09:54:01 +02:00
Markus Goetz
08184d07cf Merge branch '1.9' 2015-05-12 23:03:45 +02:00
Markus Goetz
ac0e08cc91 Merge branch '1.8' into 1.9 2015-05-12 23:02:58 +02:00
Olivier Goffart
76166c6252 SyncEngine: Fix comment
A comment should descibe the code, and not a patch.
2015-05-12 17:53:02 +02:00
Olivier Goffart
dd5a49bc78 Application: Disable to workaround of QLockFile bug for Qt versions that are fixed 2015-05-12 17:26:32 +02:00
Markus Goetz
2a45ebde33 Networkjobs: Fix Qt 4 compile (again) 2015-05-12 17:19:17 +02:00
Markus Goetz
cdfafa2180 Propagator: Mention name of conflict file (for debugging) 2015-05-12 17:11:21 +02:00
Olivier Goffart
299fa2dee6 FolderMan: fix a #warning in the migration path 2015-05-12 16:49:37 +02:00
Olivier Goffart
c2dacd03a5 BandwidthManager: fix warnings
Unused variables
2015-05-12 16:35:27 +02:00
Olivier Goffart
de9770f52a FolderMan: fix some signal-slot broken connection
In many cases the alias was changed to a Folder pointer
2015-05-12 15:50:38 +02:00
Olivier Goffart
389c4f8ef9 AccountManager: remove unused variable 2015-05-12 15:38:16 +02:00
Olivier Goffart
3a7bd3f95c AccountManager: save the config after removing an account 2015-05-12 15:37:16 +02:00
Olivier Goffart
1136b969b2 Folder: fix compilation after merge 2015-05-12 15:27:20 +02:00
Olivier Goffart
716b0c68da Merge remote-tracking branch 'origin/master' into new-ui 2015-05-12 15:20:40 +02:00
Olivier Goffart
1edd46b995 Multi-Account: add possibility to delete an account 2015-05-12 15:16:32 +02:00
Markus Goetz
00a075b0d8 Merge branch '1.9' 2015-05-12 13:49:55 +02:00
Markus Goetz
3b34d5b54e Account: Fix Qt4 compile 2015-05-12 13:49:07 +02:00
Jocelyn Turcotte
0f51de20c4 Fix the neon build 2015-05-12 13:04:47 +02:00
Jocelyn Turcotte
ea39e457f5 Fix the build 2015-05-12 10:35:57 +02:00
Daniel Molkentin
b54f2b3b31 Merge remote-tracking branch 'origin/1.9'
Conflicts:
	VERSION.cmake
	src/libsync/propagatedownload.cpp
	src/libsync/propagateupload.cpp
2015-05-12 10:03:38 +02:00
Daniel Molkentin
a36df4aa4b Merge remote-tracking branch 'origin/1.8' into 1.9 2015-05-12 09:57:22 +02:00
Markus Goetz
9e7779a476 Bandwidth Manager: Comment out qDebug
We have not received any grave bug reports for it, not needed anymore.
2015-05-11 16:07:34 +02:00
Markus Goetz
625e61516f Propagator: Limit length of temporary file name #2789 (fixup)
Fix 22c35c4d15
2015-05-11 15:42:35 +02:00
Klaas Freitag
41614ec851 Application: ifdef lock file issue as it only happens on Qt>5.1
However, the fix breaks Qt4 compile, so it needs to be ifdefed.
Not viel hilft viel.
2015-05-11 13:35:04 +02:00
Markus Goetz
22c35c4d15 Propagator: Limit length of temporary file name #2789 2015-05-08 16:42:03 +02:00
Christian Kamm
9507bb4be6 ShareDialog: Password ui fixes. #3189
* Change the textedit-empty text to be just "Password"
* Hide the 'Copy link' button when the share isn't created yet
* Show the checked and disabled 'Password required' checkbox
  when a password is required.
2015-05-08 14:53:38 +02:00
Markus Goetz
f2004da867 SSL: Re-use encryption session for different TCP connections #3159
This also improves the SSL configuration creation and fixes #3027
2015-05-08 14:21:27 +02:00
Christian Kamm
e1c370a9a2 Fix startup hang by removing QSettings lock file. #3175
In some situations the .lock file would stay around and
cause subsequent starts of the client to get stuck before
showing the ui.
2015-05-08 14:02:44 +02:00
Christian Kamm
b9eafaaf24 Wizard: Allow SSL cert dialog to show twice. #3168
Normally we never ask twice for the same url, but in the setup wizard
it makes sense to do so.
2015-05-08 12:32:14 +02:00
Christian Kamm
909368025f ProtocolWidget: Fix rename message. #3210
For remote renames that are replicated locally the _file member is
overwritten by the target file name when the new entry is added to
the metadata table. Using _originalFile here guarantees that
the affected local file is mentioned.
2015-05-08 11:33:34 +02:00
Markus Goetz
0359c775e0 Discovery: Test better, treat invalid hrefs as error #3176 2015-05-07 17:19:48 +02:00
Jocelyn Turcotte
1053153ec4 Fix the Qt4 build
Following a6500d8068
Qt4's moc doesn't expand macros and wouldn't evaluate QT_VERSION_CHECK.
2015-05-07 14:49:01 +02:00
Christian Kamm
79ac61684c Propagator: Overwrite local data only if unchanged. #3156 2015-05-07 14:43:33 +02:00
Christian Kamm
441eca86c4 ShareDialog: Improve error reporting for share API fails.
This would have made debugging #3204 and #3136 easier.
2015-05-07 14:16:13 +02:00
Markus Goetz
f07d3d069e Updater on OS X: Only allow if in /Applications #2931 2015-05-07 13:04:25 +02:00
Markus Goetz
e300e3c744 Wizard: Fix lock icon #1447 2015-05-07 13:04:25 +02:00
Christian Kamm
73e2254a80 AccountState: Treat *any* 503 as a temporary error. #3113 2015-05-07 09:21:52 +02:00
Jocelyn Turcotte
7ea1baaf2d Merge pull request #2920 from remixtj/utility_SHGetKnownFolderPath
Use dynamic library loading for detecting the correct path for links
2015-05-06 17:22:46 +02:00
Daniel Molkentin
77a28a81eb Bump to 1.9 2015-05-06 17:01:05 +02:00
Jocelyn Turcotte
a6500d8068 Work around the Qt PUT corruption bug with Qt < 5.4.2 #2425
Since QNonContiguousByteDeviceThreadForwardImpl::reset will
call UploadDevice::reset with a BlockingQueuedConnection, this
allows us to reset the HTTP channel along with its buffers
before they get the chance to be reused with a subsequent request.
2015-05-06 16:56:50 +02:00
Luca Lorenzetto
027365aaa6 Additional code cleanup 2015-05-06 15:09:41 +02:00
Jocelyn Turcotte
58867baf33 Merge pull request #3183 from christian-burger/fix-for-windows-explorer-extension-when-syncing-whole-drive
Windows Explorer: fix issues when syncing whole drive.
2015-05-06 14:54:19 +02:00
Daniel Molkentin
bceb40ed80 Disable setSslConfiguration calls for older Qt version
This is only required for client certs, which currently have
no GUI anyway and are experimental.
2015-05-06 11:20:16 +02:00
Daniel Molkentin
f315423811 Merge remote-tracking branch 'origin/1.8'
Conflicts:
	VERSION.cmake
2015-05-06 10:04:22 +02:00
Christian Kamm
9e3c3353bd IgnoreListEditor: Remove invalid connect. #3201
This has been around ever since the ignore editor was
added and the slot never existed.
2015-05-06 09:34:45 +02:00
Christian Burger
79f7ea0965 refactoring as requested in pull request 2015-05-05 16:34:01 +01:00
Markus Goetz
07ffff3d77 SyncEngine: Fix accidental re-discovery because of broken version table
Bug had been triggered by d63abef718
Broken version table in there since some time it seems like.
2015-05-05 17:07:13 +02:00
Luca Lorenzetto
f3bdfef9cf Integrating feedbacks provided by jturcotte 2015-05-05 16:42:34 +02:00
Daniel Molkentin
bfba6f752c Remove dead code 2015-05-05 10:23:59 +02:00
Klaas Freitag
d63abef718 SyncEngine: Handle upgrade case from 1.8.0
If 1.8.0 caused missing data in the local tree, this patch gets it
back. For that, the usage of the journal for remote repository is
disabled at the first start.
2015-05-04 13:40:25 +02:00
Christian Burger
018cc54a94 Windows Explorer: fix issues when syncing whole drive.
When the local sync target is just a drive letter (e.g. "X:\"), neither
the display of the sync status via file icon overlay, nor the creation of a
share link works. In the latter case no pop-up comes up and no server
request is done.

QDir::cleanPath() usually removes trailing slashes, but not if the path to
be cleaned is just "X:\". In that case the trailing slash is kept. This
commit accounts for that exception.
2015-05-04 10:29:25 +01:00
Markus Goetz
4700c604b1 Proxy: Register meta type #3170 2015-04-29 14:54:08 +02:00
Olivier Goffart
e02f1a222e FolderMan: refactor some function to take a Folder* instead of an alias
I want to remove this dependency of alias in the code because we might get
rid of it entierly later
2015-04-28 17:49:05 +02:00
Olivier Goffart
e4694a6db8 Setup wizard: Do not remove all the folders of all theother acocunts when adding an account
Also we need the alias to be unique
2015-04-28 17:46:45 +02:00
Olivier Goffart
e5ad1b27b4 Settings dialog: show the first account page at start 2015-04-28 11:39:27 +02:00
Olivier Goffart
92e259c276 Add folder: Do not add at other accounts folder to know if you can add a folder 2015-04-28 11:29:35 +02:00
Olivier Goffart
f81918173b Account settings: show the folder of the right account 2015-04-27 19:09:48 +02:00
Olivier Goffart
4006bcdaed Wizard: Setup the folder in the right account 2015-04-27 17:43:07 +02:00
Olivier Goffart
3e4886725a Folder: remove the member references to the FolderDefinition members 2015-04-27 17:33:59 +02:00
Olivier Goffart
f688bda759 Wizard: Save the settings after adding an account
So the account persist even if the client is not properly closed
2015-04-27 17:19:46 +02:00
Olivier Goffart
ac855858de owncloud gui: move a comment where it belongs
The code was moved long time ago in commit ea1c95100 but the comment
stayed.  I have no idea if the comment is still accurate
2015-04-27 17:14:25 +02:00
Olivier Goffart
ae17f58b80 HTTP Creds: Do not send the password at every request 2015-04-27 16:28:37 +02:00
Olivier Goffart
23dc464ea2 Folderman: Fix crash when adding an account
Clang is picky if we forget to return a value
2015-04-27 14:34:39 +02:00
Olivier Goffart
04382c467b Progress: Fix broken signal connection 2015-04-27 12:34:15 +02:00
Olivier Goffart
be1b39067d Merge branch 'master' into new-ui 2015-04-27 12:32:12 +02:00
Olivier Goffart
ddfb7f3b7a Merge remote-tracking branch 'origin/1.8' 2015-04-27 12:20:11 +02:00
Christian Kamm
78e82eb920 AccountWizard: Fix auth error handling. #3155
The problem was that on network error the networkError() and
finishedWithError() signals both fired. To fix it, I collapse all
error handing into a slot triggered by finishedWithError().

I tested the redirection case and the invalid credentials case.
2015-04-24 16:03:28 +02:00
Christian Kamm
27159104a9 Folders: Store inside account config. 2015-04-24 13:42:35 +02:00
Christian Kamm
a13a974e2d Account: Generate shorter account ids. 2015-04-24 09:54:42 +02:00
Markus Goetz
3a52db46ad Discovery: Fix another empty-local-directory bug 2015-04-23 16:15:13 +02:00
Christian Kamm
f184d66ea2 Save and restore multiple accounts. 2015-04-23 16:08:20 +02:00
Christian Kamm
11927d625d Fix crash on exit by not making Account parent of AccountState. 2015-04-23 16:08:20 +02:00
Christian Kamm
abfdc574d4 Add a basic random Account::id() 2015-04-23 15:47:49 +02:00
Christian Kamm
d64373c610 Never use 'new Account' directly, prefer Account::create() 2015-04-23 15:47:49 +02:00
Christian Kamm
28306e5dfb Move AccountState::displayName to Account. 2015-04-23 15:47:49 +02:00
Christian Kamm
89bb58ac30 Ensure 'user' is available early enough for ui in httpcreds 2015-04-23 15:47:49 +02:00
Christian Kamm
3cc2e1a968 Fix bad connect/disconnects. 2015-04-23 14:24:54 +02:00
Christian Kamm
8390b0b930 Determine right account in ownCloudGui::slotShowShareDialog 2015-04-23 14:14:28 +02:00
Christian Kamm
dbddabfcd7 Remove SelectiveSyncText
It is unused and there were compiler warnings about it not
appearing it various switch() statements.
2015-04-23 14:13:33 +02:00
Christian Kamm
0d30e01e98 Add explanations to fixmes 2015-04-23 14:13:13 +02:00
Markus Goetz
137bce6dd0 Folder: Clear _syncResult better
I had a situation here where we were showing stale desktop notifications when a remote folder
errored out and then sync finished with _syncResult data from previous sync.
2015-04-23 13:30:30 +02:00
Christian Kamm
7c1281dd06 Windows: Fix rename of finished file. #3073
The file was still open and therefore couldn't be renamed...
2015-04-22 14:46:04 +02:00
Christian Kamm
68bf22f469 Revert "AccountSettings: Update progress only twice per second. #3014"
This reverts commit 0f33e266ce.

The change was not meant to be merged, see discussion in #3014.
2015-04-22 11:46:00 +02:00
Christian Kamm
96ecdb866d Time estimate: Refactor remaining time guess. #2328 2015-04-22 11:20:31 +02:00
Christian Kamm
7d68c628db Time estimation: Use a consistent check for size dependence. #2328 2015-04-22 10:45:41 +02:00
Christian Kamm
509b83e73e Time estimation: Avoid a progress reset before finish. #2328
The current algorithm doesn't care much, but resetting progress
to 0 just before completing a job is confusing anyway.
2015-04-22 10:45:41 +02:00
Christian Kamm
0f33e266ce AccountSettings: Update progress only twice per second. #3014 2015-04-22 10:45:41 +02:00
Markus Goetz
6c5ca055c4 ShareDialog: Unused/invalid forward declaration 2015-04-21 10:33:38 +02:00
Olivier Goffart
cf5100a20b Merge remote-tracking branch 'origin/1.8' 2015-04-20 14:58:45 +02:00
Jocelyn Turcotte
ffbf2fb6ce Fix the neon build 2015-04-20 11:31:02 +02:00
Olivier Goffart
b039c2ce86 More change to compile with 5.5
The problem is again that QStringList no longer include QDataStream
2015-04-20 09:47:25 +02:00
Olivier Goffart
ba65187ad3 Fix compilation with Qt 5.5
Because of commit 90e7cc172a7521396bb2d49720ee4ceb9a9390b3 in qtbase,
we now need to explicitly include QDataStream

Fixes #2809
2015-04-19 11:02:43 +02:00
Jocelyn Turcotte
12d7484b85 Pass SyncFileItems by pointer instead of by value
Use a QSharedPointer to keep the same ownership and
continue passing the SyncFileItems as a const& when
ownership isn't taken. This allows sharing the same
allocations between the jobs and the result vectors.

This saves about 20MB of memory (off 120MB) once all
jobs are created.
2015-04-18 14:26:40 +02:00
Olivier Goffart
a932eac832 Multi-account WIP 2015-04-17 17:56:17 +02:00
Jocelyn Turcotte
155c965866 Prevent another crash in ~SocketApi #3118
Since the QLocalServer parent of the QLocalSockets gets destroyed
after the _listeners QList, onLostConnection might try to update
an already destroyed list.

Fix the issue by simply making sure that _localServer is destroyed
first.
2015-04-17 12:42:40 +02:00
Olivier Goffart
6c73f25747 HTTP creds: Fix translation of the password input dialog
tr() needs Q_OBJECT
2015-04-17 12:19:37 +02:00
Olivier Goffart
2da3bfb96f Merge branch 'master' into new-ui 2015-04-16 12:50:21 +02:00
Olivier Goffart
5dffd11755 Merge branch '1.8' 2015-04-16 12:49:31 +02:00
Olivier Goffart
8bb4af067a Propagate download: Fix restoring files for which the conflict file exists
For issue #3106

1) Always use the actual timestamp from the file in the file system
to create the conflict file.  This is important because if one edit a
file several time, they should have different name. Also it makes more
sens to have the mtime of the modified file.

2) Give the correct size to the job so we know when the temporary file
is complete in case of resuming.
2015-04-16 11:36:01 +02:00
Olivier Goffart
458f336405 PropagateDownload: Read the mtime from the file system after writing it
Because file system like FAT only have two second accuracy and would result
in a upload if the mtime in the database is not the same as the one that was
downloaded

Issue #3103
2015-04-15 15:50:20 +02:00
Markus Goetz
7c9cffa5ae ConfigFile: Remove unused functions 2015-04-15 14:58:27 +02:00
Daniel Molkentin
ed80a712ab Sort folder sizes SelectiveSyncTreeView numerically
Fixes #3112
2015-04-14 20:00:42 +02:00
Markus Goetz
2866e56c51 LsColXMLParser: More testing 2 2015-04-14 14:56:25 +02:00
Klaas Freitag
4283ab3b44 LsColJob: Create a XML parser object for better unit testability. 2015-04-14 13:43:05 +02:00
Klaas Freitag
c579069071 LsColXMLParser: let parse return bool. 2015-04-14 13:41:51 +02:00
Markus Goetz
9ffacd4ecd Discovery: Explicitly check for XML parser errors
..instead of relying that our state machine does not do anything in that case.
2015-04-13 16:04:24 +02:00
Markus Goetz
9d5f5ea3bc Discovery: Initialize error with EIO in constructor
This is safer, initializing it in remote_vio_opendir_hook was enough though.
2015-04-13 15:54:08 +02:00
Markus Goetz
2dbd27af76 Discovery: Initialize error with EIO 2015-04-13 15:36:07 +02:00
Markus Goetz
0634a4d0c6 Discovery: Add a sanity check when results are parsed 2015-04-13 15:10:04 +02:00
Klaas Freitag
7b99877c68 owncloudcmd: Filter out empty lines in selectivesync 2015-04-12 12:59:25 +02:00
Klaas Freitag
ec81cdefb0 Networkjobs: Only log a subset of the account url.
This avoids disclosing of user and password in the logfile which can
happen in some cases.
2015-04-12 12:37:14 +02:00
Christian Kamm
9d8fc4aa4d ProtocolWidget: Fix adding of seconds. #2535 2015-04-10 12:11:35 +02:00
Christian Kamm
57ac1d9ea2 AuthRedirect: Use the configured DAV path. #3082 2015-04-10 09:24:25 +02:00
Christian Kamm
d9ea6936ab Handle redirect of auth request. #3082 2015-04-10 09:18:15 +02:00
Olivier Goffart
afdd01488f AccountManager: Move out of libsync
The AccountManager does not belong in the libsync because it is not
part of the synchronisation algorithm, but is just an helper class
for the UI to maintain the account and read/save the config
2015-04-09 16:19:17 +02:00
Olivier Goffart
f3cb5f8a9d Merge remote-tracking branch 'origin/1.8' 2015-04-09 14:24:26 +02:00
Olivier Goffart
85ff245aef Account settings: add the progress back on the new ui 2015-04-09 12:06:47 +02:00
Christian Kamm
adcf40afc3 Discovery: Speed up initial run. #2796 2015-04-08 15:43:49 +02:00
Christian Kamm
d986011067 Sync: Fix sync of deletions during 503. #2894 2015-04-08 10:50:08 +02:00
Roeland Jago Douma
5a83636f81 Only show share dialog if we are connected. 2015-04-08 09:53:57 +02:00
Jocelyn Turcotte
4a890eae38 SyncEngine: Fix a crash caused by an invalid DiscoveryDirectoryResult::iterator #3051
The default constructor of the iterator points to NULL, which makes
it != end() but invalid to dereference.

Use an integer index instead to keep 0 as a valid default value that
can always correctly be checked against size().

Also make sure that no data is shared between threads by making the
csync_vio_file_stat_t copyable and passing it as const.
2015-04-08 09:35:43 +02:00
Christian Kamm
760e11bc5d Sharedialog: Fix compiler warnings. 2015-04-08 08:59:36 +02:00
Klaas Freitag
4a6f4919d7 More GUI refinements. 2015-04-07 13:38:01 +02:00
Klaas Freitag
b98040c7d5 ShareDialog: handle resize properly with elided text 2015-04-07 13:38:01 +02:00
Klaas Freitag
1240a8163d ShareDialog: Some GUI rework requested by Jan. 2015-04-07 13:38:01 +02:00
Olivier Goffart
e15b9b5358 Merge remote-tracking branch into 1.8 2015-04-07 10:42:27 +02:00
Olivier Goffart
1617c9d482 PropfindJob: fix xml parsing
It would only find the first property
2015-04-07 10:35:27 +02:00
Olivier Goffart
50ba73860c Merge remote-tracking branch into 1.8 2015-04-07 08:02:55 +02:00
Markus Goetz
750cdc1910 AbstractSslErrorHandler: Also give QSslConfiguration 2015-04-06 21:46:03 +02:00
Olivier Goffart
f4e2c84111 AccountState: Fix uninitialized memory access spotted by valgrind
QuotaInfo's constructor uses the AccountState's _state which is
initialized after
2015-04-06 16:21:05 +02:00
Olivier Goffart
71d9f23068 theme: fix compilation of libsync without QtGui 2015-04-03 11:27:06 +02:00
Markus Goetz
7f2213416a Discovery: Add warning if returned etag is 0
There will be another bugfix which fixes
https://gist.github.com/jturcotte/3d5a7874d26bc27b1be9
directory.
2015-04-02 16:57:53 +02:00
Markus Goetz
9b9f0bdd4d SyncEngine: Show more timing measurements #3064 2015-04-02 15:18:46 +02:00
Jocelyn Turcotte
c2fd7d6ebd Clean up remains of SOCKETAPI_TCP 2015-04-01 15:03:42 +02:00
Jocelyn Turcotte
4a893c5267 Fix a crash on shutdown in ~SocketApi #3057
Deleting the QLocalSocket while iterating the QList with qDeleteAll
would trigger onLostConnection, which would modify the list mid-air
and leave dangling pointers in it.
2015-04-01 15:03:42 +02:00
Jocelyn Turcotte
2473183f19 Windows: Add version information for owncloud.exe
This should help us know what version or build number a crash report was generated with.
2015-04-01 15:03:41 +02:00
Daniel Molkentin
f2fa812b0b Updater: Give context as to which app is about to be updated
Fixes #3040
2015-03-30 14:44:34 +02:00
Markus Goetz
ef89582d7e Propagator: Fix compile 2015-03-30 08:41:53 +02:00
Olivier Goffart
426d2338d9 Settings: New UI that intergate the selective sync within the account settings 2015-03-27 16:50:35 +01:00
Christian Kamm
ba0c3256fa Remove unused HttpConfigFile. 2015-03-27 13:20:10 +01:00
Markus Goetz
b6fe5d2cff Propagator: Debug output regarding OC-ETag
We can remove this in some time, but currently it is interesting
to see for what server setup is no ETag but an OC-ETag.
2015-03-27 13:16:11 +01:00
Markus Goetz
9123fac545 owncloudcmd: Always trail path with /
Else the csync code vs the Qt code get confused.
2015-03-27 13:15:43 +01:00
Markus Goetz
c6bc388001 Proxy: More debug, always set returned system proxy 2015-03-27 11:53:58 +01:00
Christian Kamm
ea985a85af ProtocolWidget: Always add seconds to the DateTime locale. #2535 2015-03-27 11:25:30 +01:00
Christian Kamm
dfd9d8725c Merge remote-tracking branch 'origin/1.8'
Conflicts:
	doc/installing.rst
2015-03-27 11:19:59 +01:00
Christian Kamm
2578832002 Fix clang warnings about deleting incomplete 'Account'. 2015-03-27 11:11:44 +01:00
Markus Goetz
cfada67aa6 Proxy: Fix compile harder 2015-03-27 11:02:19 +01:00
Christian Kamm
5483682281 CookieJar: Don't accidentally overwrite cookies. #2808
Calling save() in the CookieJar destructor was problematic. For instance
we sometimes create a new QNAM with a new CookieJar and then call
setCookieJar() on it to assign some other jar. That destroy the fresh
jar and potentially overwrite cookies.

Also explicitly saving the account's cookies when the account is saved
is more explicit and thus more reliable than counting on the Account
destructor to do it.
2015-03-27 10:49:24 +01:00
Christian Kamm
2a8c23aac3 Account: Destroy on exit.
During shutdown we want the account object to be deleted and
therefore we need to be able to remove the strong reference
in AccountManager.
2015-03-27 10:43:14 +01:00
Christian Kamm
88bc96fc4c ConValidator: Delete instance if no credentials. 2015-03-27 10:43:14 +01:00
Christian Kamm
588129d852 HttpCreds: Delete password from old location. #2186 2015-03-27 10:40:19 +01:00
Markus Goetz
5c87a35fe4 Proxy: Fix compile 2015-03-26 18:36:37 +01:00
Markus Goetz
418185af9a Qt4: Fix compile 2015-03-26 15:17:16 +01:00
Roeland Jago Douma
4b56cc6e08 On creation of a share always retrieve the share
This makes sure that if a default expiration date is set this is reflected in
the dialog. #2889
2015-03-26 13:48:33 +01:00
Christian Kamm
3cef771868 HttpCreds: Fill pw dialog with previous password. #2848 #2879 2015-03-26 09:25:45 +01:00
Markus Goetz
e0ae34f01b SslButton: Make menu creation lazy
Saves ~200msec on my not-so-old MBP on OS X.
For #3007 #2990
2015-03-25 15:41:23 +01:00
Christian Kamm
a9a24c96fc Themes: Cache icons instead of rebuilding a lot. 2015-03-25 14:59:28 +01:00
Markus Goetz
a202203325 Proxy: Fix issues with previous patch
This is for #2993 and #2802
2015-03-25 12:25:49 +01:00
Markus Goetz
83c3d76966 Proxy: Look up system proxy from different thread
We should actually upstream this into QNAM.

This is for #2993 and #2802
2015-03-25 08:52:23 +01:00
Markus Goetz
99734f8d72 Account: Unusued variable 2015-03-25 08:52:23 +01:00
Olivier Goffart
dafc2d2b73 Sync engine: Check the blacklist for the right tree
When the operation is download, we have a INSTRUCTION_NONE for the local
tree, but we should not check the blacklist just yet.
2015-03-24 12:23:04 +01:00
Olivier Goffart
9c05150c12 SSLButton: Fix a crash
Made with danimo.
Attempt to fix a crash seen on breakpad reports.
(cc06b990-0c10-40eb-bcec-4d3902150320)
2015-03-23 18:30:53 +01:00
Daniel Molkentin
c7eb85ef78 Activity: Correctly restore column sizes
Fixes: #3005
2015-03-23 18:22:25 +01:00
Olivier Goffart
4df455f2e0 Add-folder Wizard: Select the newly created folder 2015-03-23 16:50:37 +01:00
Olivier Goffart
653a00d63d Add-folder wizard: Make sure there is a scrollbar if folder names are too long
Fixes #2962
2015-03-23 16:32:41 +01:00
Jocelyn Turcotte
3c9acdf724 Fix a crash when accessing a dangling UploadDevice pointer #2984
This is largely a guess, but this is the only place where we use
a QIODevice to push data through QNAM and that the QIODevice isn't
a direct child of the QNetworkReply.

Fix the issue by making sure that we don't go back to the event loop
and possibly handle network events between the destruction of the
upload QIODevice and the QNetworkReply, which might lead to QNAM
dereferencing a dangling QIODevice pointer.
2015-03-23 16:14:54 +01:00
Olivier Goffart
e81d1ab9b8 application: --confdir option with invalid direcotry now exit
Show an error and exit if an invalid directory (eg, a file) is passed to --confdir

Fixes: #2453
2015-03-23 15:02:27 +01:00
Olivier Goffart
9d7cf6b852 Merge remote-tracking branch 'origin/1.8' 2015-03-23 14:37:16 +01:00
Christian Kamm
4ef0ce112c CookieJar: Session cookies should *not* be stored in cookies.db. 2015-03-19 11:57:25 +01:00
Christian Kamm
57c14a0eba Windows: Reset QNAM as a workaround. #2899 #2895 #2973
The QNetworkAccessManager is reset when we are disconnected, just
before attempting to fetch the server's status.php.

This may help fix the problem described in various issues where we
get 'Connection closed' or timeout errors after the OS has woken
from sleep.
2015-03-19 11:40:47 +01:00
Christian Kamm
89f831e7d4 Remote delete: Consider 404 a success. #2919 2015-03-19 10:04:02 +01:00
Markus Goetz
06a2f58c51 Propagator: Introduce custom property to make error soft
This can be set by a custom credential QNAM.
2015-03-17 23:31:30 +01:00
Jocelyn Turcotte
5264a8c7f6 shell_integration: Fix disappearing context menus on Windows #2898
Since each new connection to the socket API would trigger a broadcast
of REGISTER_PATH to all existing connections, opening the context menu
would trigger a SHChangeNotify call of the root directory through
the overlay icon extension, which is currently also connected to the
socket API, waiting for changes.

Fix the issue by sending the initial REGISTER_PATH automatic response
only to the connecting socket.
2015-03-13 20:53:59 +01:00
Luca Lorenzetto
9351c5eefa Cleaner creation of link path. Using QDir ensures that every needed / is present 2015-03-13 16:23:43 +01:00
Markus Goetz
c42c9f0002 Propagator: Add comment 2015-03-13 15:48:35 +01:00
Daniel Molkentin
457f9b587d Merge remote-tracking branch 'origin/1.8'
Conflicts:
	src/gui/sharedialog.cpp
	src/gui/sharedialog.h
2015-03-13 14:03:03 +01:00
Christian Kamm
95f299f865 Remote folder wizard: Add optional manual entry #2613 2015-03-13 09:52:21 +01:00
Jocelyn Turcotte
e93c1ccb73 Install the crash handler earlier during startup
This moves the crash handler installation during the OCC::Application
contruction. This still leaves a window where crashes wouldn't be
caught, leaving the QtSingleApplication and theme initialization
code unreported, but isn't requiring any refactoring for now.

Issue #2952
2015-03-12 17:16:05 +01:00
Jocelyn Turcotte
0f84510e6f Fix the build with GCC 4.7
Disable bitfields completely in SyncFileItem with that compiler.
2015-03-12 14:54:11 +01:00
Christian Kamm
1dd3488973 Uploads: Fix big seeks on Windows. #2954 2015-03-12 13:18:08 +01:00
Christian Kamm
9249d6c2f9 Logging: Print instruction when job completed. 2015-03-12 10:26:44 +01:00
Christian Kamm
d0f07ee3a9 FolderMan: fix folderSyncStateChange emission. #2896
It was not emitted when a removed folder finished its sync,
and that left the UI in an old state sometimes.

Removing the Folder explicitly is unnecessary as a QSignalMapper
will automatically remove mappings for deleted QObjects.
2015-03-12 10:00:45 +01:00
Christian Kamm
3992fba168 Activity: Set a message for conflicts. #2792
Also show size when conflicting files are downloaded.
2015-03-12 10:00:45 +01:00
Markus Goetz
f13dfc19a0 OS X: Fix UI glitches related to sync folder
For #2113 and #2947
2015-03-11 16:42:12 +01:00
Jocelyn Turcotte
0fccf5e50d Completely disable the crash handler if the user disabled it
The config currently only disable the reporter, but still leaves
the crash handler installed on startup. This causes conflicts
when running those builds in lldb.

Work around the issue by requiring the crash reporter to be
disabled in the settings before owncloud can be run in lldb.
This has the negative side-effect of not covering the
initial ConfigFile loading with the crash handler.

Issue #2946
2015-03-11 15:49:49 +01:00
Klaas Freitag
a2aab28ba6 ShareDialog: Connect the proper DateEdit signal. 2015-03-11 15:46:05 +01:00
Klaas Freitag
8e7b7caf04 ShareDialog: If the password is empty, disable button 2015-03-11 14:57:55 +01:00
Klaas Freitag
8cc5ff0e70 ShareDialog: Consider if resharing is not allowed on a share.
If a file or directory is shared without resharing permission, the
share dialog displays an error. This is not the optimal solution, but
best for now, as we do not have the permissions available for the file
manager plugin.

This fixes #2923
2015-03-11 14:12:08 +01:00
Klaas Freitag
9086f09fe2 SocketAPI: If filename has a trailing slash, remove it.
The SyncJournal stores the the names of directories without trailing slash.
2015-03-11 14:11:18 +01:00
Christian Kamm
efe9f1b442 Lnk: Work around QFile::rename() #2792
QFile::rename() fails if the source file is a shortcut to a file
or directory that does not exist.
2015-03-11 12:29:33 +01:00
Jocelyn Turcotte
db7919dc2f Shrink sizeof(SyncFileItem) by 20%
Move all small fields together in the struct and make them use bitfields.
Also remove the unused log::_other_remotePerm field.
2015-03-11 11:49:11 +01:00
Olivier Goffart
4a01644625 Disable parallel uploads for server versions <= 8.0.2
Issue #2938
2015-03-11 11:31:51 +01:00
Klaas Freitag
071177cee2 Output a more sensible error message for auth errors 2015-03-10 12:14:14 +01:00
Klaas Freitag
c88742fad3 Revert "SetupW: Display proper error messages if password or user was wrong."
This reverts commit 396f38598f.

This adds redundant code and potentially breaks Shibboleth
2015-03-10 11:17:35 +01:00
Markus Goetz
3b12b9d81d Revert "Propagator: Delete job on finish"
Needs a bit more thinking.

This reverts commit 8746914f3b.
2015-03-09 16:19:16 +01:00
Markus Goetz
31e4009737 Propagator: Use QBA for responseTimestamp instead of QString 2015-03-09 15:52:52 +01:00
Markus Goetz
8746914f3b Propagator: Delete job on finish 2015-03-09 15:41:43 +01:00
Klaas Freitag
2fa6839ac7 Make win32 build work again. 2015-03-09 15:14:55 +01:00
Klaas Freitag
b09e08c06f ShareDialog: Made it less "webbish" for better usability.
- Check the share checkbox automatically on open of the dialog
- Use the date picker with popping up calendar
- Proper initial size
- no resizing and appearing and disappearing.

Fixes probably #2917, also #2764
2015-03-09 14:33:02 +01:00
Jocelyn Turcotte
99f51998f2 Fix a crash in the crash reporter on OSX
The install_name of dependent libraries need to be updated
like we do for cmd and gui.
2015-03-06 19:28:53 +01:00
Klaas Freitag
396f38598f SetupW: Display proper error messages if password or user was wrong.
If the password or user was wrong during setup, the client showed a
ConnectionClosed error instead of a proper Username or password wrong
message. This was because in HTTPCredentials::slotAuthentication, the
reply is closed, and a property is set to indicate the auth problem.

This patch now checks at all occurences of networkErrors if it might
have been an authentication problem, and displays something useful.

There is a good chance that this is a sufficient fix for
owncloud/enterprise#556
2015-03-06 16:41:59 +01:00
Klaas Freitag
d2848b9c26 Theme: Return the correct version string from version() 2015-03-06 16:41:59 +01:00
Markus Goetz
b622981b23 SyncEngine: Show a debug msg only when relevant 2015-03-06 09:28:50 +01:00
Markus Goetz
668de9bf31 Propagate: Don't retry direct download on abort 2015-03-05 21:56:39 +01:00
Markus Goetz
3f712dce02 ETags: For Folder and RequestEtagJob, always use Concatenation 2015-03-05 17:49:12 +01:00
Markus Goetz
2eaeaf33fa Discovery: Change abort code a bit
Now pressing pause in the UI will not show an error to the user.
2015-03-05 16:50:33 +01:00
Luca Lorenzetto
4e56b0d266 Use dynamic library loading for detecting the correct path for links 2015-03-04 17:28:43 +01:00
Klaas Freitag
398bca9fe4 Add OWNCLOUDSYNC_EXPORT prefix to make windows build. 2015-03-04 13:50:55 +01:00
Olivier Goffart
46d5d22f72 PropagateUpload: also read the OC-ErrorString header from the poll job 2015-03-04 12:01:41 +01:00
Olivier Goffart
97c221d860 PropagateUpload: add a few comments 2015-03-04 12:00:55 +01:00
Jocelyn Turcotte
a5d29e6d56 Fix missing symbols on XP
Import a fix from libcrashreporter-qt that should remove
usage of symbols not available in XP's msvcrt.dll

This should help solving #2907 with the crash reporter enabled.
2015-03-04 09:51:54 +01:00
Markus Goetz
131cf63d8d Propagator: Don't use 0,0 progress signals.
They seemed to have messed up the calculation sometimes for
the last chunk.
2015-03-03 17:46:57 +01:00
Olivier Goffart
4d85f1daec setup wizard: use a PROPFIND instead of a GET on the webdav url
In order to initiate the conneciton, we should not send a GET on the
webdav URL because that is not a valid webdav command on a collection.

Issue #2911
2015-03-03 16:03:53 +01:00
Klaas Freitag
f913cd97ee DiscoveryJob: Fix progress display.
This fixes #2909
2015-03-03 16:01:17 +01:00
Olivier Goffart
ccbeb86140 Fix build of the legacy propagator 2015-03-03 10:05:38 +01:00
Olivier Goffart
b43e0f5ebd Do not ask for the password when the check server job times up
QNetworkReply::OperationCanceledError may be both because of anthentication
error (because the HTTPCredentials abort the reply) or because of a timeout
(the timer abort the reply). We should only ask for the password if the
reply was canceled because the password was wrong.
2015-03-03 09:21:24 +01:00
Markus Goetz
fe574dbbf9 Discovery: Free some memory before propagate (#2902) 2015-03-02 15:08:21 +01:00
Markus Goetz
7595c7e697 Discovery: Free some memory on VIO dir close (#2902) 2015-03-02 14:09:01 +01:00
Olivier Goffart
bd6769a3fd LsColJob: one must now specify the properties
So the discovery phase don't ask for the quota, and the selective sync
don't ask for all the other properties

Issue #2906
2015-03-02 11:03:25 +01:00
Markus Goetz
80f3c7584b libowncloudsync: Don't link to Qt SQL and Qt XML
For issue #2901 ..
2015-02-27 16:20:25 +01:00
Klaas Freitag
05624e3fc8 FileSystem: Remove QFileInfo based implementations.
QFileInfo has to be refreshed if the underlying file has been
modified in between. That is dangerous so ckamm and me decided
to eliminate the QFileInfo based implementations.

This was triggered by a bug that the client uploaded files that
it should not have.
2015-02-27 15:27:49 +01:00
Christian Kamm
e381143a8f Ensure good sync state if in-progress folder is deleted. #2896
The slotFolderSyncFinished() didn't reliably trigger because
the folder was being deleted before the syncFinished signal could
fire.
2015-02-27 12:39:19 +01:00
Christian Kamm
b03209ccef Inform user about ignored long files. #2882 2015-02-27 12:12:39 +01:00
Markus Goetz
ec03ebd69f Token Auth: Allow empty token
Just username/password. The received token will automatically be stored
inside the QNetworkCookieJar.
2015-02-27 11:58:18 +01:00
Roeland Jago Douma
51c617801d static member QFileInfo::exists is not available on 4.8 2015-02-27 08:43:33 +01:00
Klaas Freitag
8507aba9f8 SocketAPI: Append trailing slash for directories in UPDATE_VIEW.
This fixes #2233
2015-02-26 16:41:55 +01:00
Olivier Goffart
d8b6e00fe7 Propagator: Let network propagator job understand a new header OC-ErrorString
This allows the server to send a readable error string in many cases
2015-02-26 15:53:09 +01:00
Christian Kamm
c8167b77c9 Remove mention of allprop #2865 2015-02-26 12:36:11 +01:00
Christian Kamm
c37792f58f Propagator: Upload files with future timestamps. #2880 2015-02-26 11:00:06 +01:00
Christian Kamm
842e5ba5e0 Sharing: Fix for folders containing &. #2892 2015-02-26 09:58:09 +01:00
Roeland Jago Douma
fba9020950 Added copyright header 2015-02-25 18:32:25 +01:00
Klaas Freitag
506cc3908a Add proper copyright headers to some files, fixes #2869 2015-02-25 17:00:27 +01:00
Klaas Freitag
ca00b02b0a ShareDialog: Improve some GUI, fix #2850
This improves some wording and fixes some show/hide issues with password
setting.
2015-02-25 13:44:27 +01:00
Klaas Freitag
201075827f Sharedialog: Add a Share button. 2015-02-25 13:44:27 +01:00
Christian Kamm
5c7fd24ea8 Handle 503 due to maintenance more gracefully. #2884 2015-02-25 12:02:10 +01:00
Christian Kamm
76ac628153 Discovery: Distinguish 503 Storage not available. #2884 2015-02-25 12:02:10 +01:00
Christian Kamm
6f71bd9353 SocketAPI: Don't mark .lnk files as ignored on windows. #2447 2015-02-25 11:55:48 +01:00
Christian Kamm
f88398e776 lnk files: Fix exists() calls. #2792 2015-02-25 11:50:32 +01:00
Christian Kamm
08c33cd1dc Discovery: Fix handling of 503 on a folder. #2884 2015-02-25 08:09:07 +01:00
Klaas Freitag
1929040bb7 Discovery: Preserve the error message. 2015-02-24 22:02:31 +01:00
Klaas Freitag
3af936c8a1 Some minor cleanups. 2015-02-24 22:02:29 +01:00
Daniel Molkentin
f38aa698eb Don't translate dummy strings 2015-02-20 10:12:31 +01:00
Daniel Molkentin
366f3f68b8 Activity view: Always add date
Fixes #2223
2015-02-20 10:12:19 +01:00
Jocelyn Turcotte
03e23da6a3 Show the settings also when no arguments are passed
sendMessage would only be called if there were options to
be sent to the running application.
Fix the issue by having explicitly named messages and always
send the show settings message.

Issue #2374
2015-02-19 16:57:16 +01:00
Jocelyn Turcotte
2ddaf5a06a Add a NO_MSG_HANDLER cmake option
This allows QDebug to output to stdout or OutputDebugString
to ease development.
2015-02-19 16:57:16 +01:00
Olivier Goffart
5e1aa7d383 SyncEngine: Fix move would re-upload the file
Because SyncJournalDb::postSyncCleanup was deleting the entries in the database
2015-02-19 15:00:37 +01:00
Olivier Goffart
e1871eb325 libsync: Fix qWarning in SyncEngine::slotJobCompleted saying we cannot find the sync item when moving
We need to compare against the original file name, that's why it's there
2015-02-19 13:13:45 +01:00
Olivier Goffart
1998b602b9 SyncEngine: better merge of the renames node
The same file is on the two sync trees under different names in case of a rename
We must therefore use the rename target as the key in the _syncItemMap to ensure
that the trees are correctly merged.

Also use the same UTF-8 decoding for the target than for the actual file in order
to catch invalid utf-8 in the rename target
2015-02-18 12:41:06 +01:00
Olivier Goffart
193fca4a8b SyncFileItem::operator<: must return false when two items are equal
Fixes #2852
2015-02-18 12:41:06 +01:00
Olivier Goffart
fb77cd5f7e SyncEngine: Fix detection of the server reconfiguration
Some files might be kept (like the default files)
The files should be considered as NONE only if they are NONE on both trees

issue #2847
2015-02-17 16:44:13 +01:00
Daniel Molkentin
99d674c346 Default shiboolethwebview to 900x700, remember last size
Also add host to the title

Addresses #2285
2015-02-17 15:28:14 +01:00
Daniel Molkentin
9690ca0198 Explain the "crash now" button to translators 2015-02-17 14:03:09 +01:00
Olivier Goffart
9351c7485f Try another way to fix the build 2015-02-17 14:04:16 +01:00
Olivier Goffart
d43b82dc82 Fix compilation with clang
The compilation error was

 account.h:140:113: error: expected ')'
 const QList< QPair<QString, QString> > &queryItems = QList< QPair<QString, QString> >());
                                                                                   ^
followed by more errors.

The problem is because the compiler has hard time disambiguiating the comma

int foo(const QPair<int, int> &p = QPair<int, int>());
                                            ^
It is indeed quite hard for the compiler to know if this comma is a separation
between complate arguments or the separation between arguments of the functions.

Use the C++11 construct instead which does not need commas
2015-02-17 11:09:45 +01:00
Olivier Goffart
ce195bd599 SyncEngine: add an getter to the journal 2015-02-17 11:08:16 +01:00
Olivier Goffart
c0c8a22fa3 SyncEngine: pass a non-const reference to the SyncFileItemVector in aboutToPropagate
That way, users of the library  can change the contents of the sync item vector.
2015-02-17 11:08:16 +01:00
Jocelyn Turcotte
a955defae5 Raise the share window to make sure that the user sees it 2015-02-16 16:47:00 +01:00
Daniel Molkentin
2423aa592f Add new icons by Jan 2015-02-16 14:47:32 +01:00
Olivier Goffart
151228b2a6 Fix build when compiling libsync without QtGui
Utility must stay QtGui-free, move the hidpiFileName to the theme which
is the only part in libsync which uses it, and already has #ifdefs
2015-02-16 10:24:42 +01:00
Volkan Gezer
bd4f68233f some typos, grammar and sentence fixes 2015-02-14 23:47:07 +01:00
Olivier Goffart
d6bdbf9f34 Logger: use qFormatLogMessage with Qt 5.4 so it respects the Qt logging preferences 2015-02-14 14:23:01 +01:00
Christian Kamm
40dbc78407 concatUrl: Remove manual parsing, add test. #2817 2015-02-13 14:53:55 +01:00
Daniel Molkentin
957c9f060d GeneralSettings: Add OpenSSL version number to about text 2015-02-12 23:23:47 +01:00
Daniel Molkentin
0bf0bab1eb One more Qt4 compile fix 2015-02-12 22:13:58 +01:00
Olivier Goffart
a7c97388a9 Fix Qt4 build for another error 2015-02-12 20:16:02 +01:00
Olivier Goffart
86c480ee09 Fix Qt4 build 2015-02-12 20:10:31 +01:00
Olivier Goffart
0184a00151 PropagateDirectory: make the code a bit more readable
Do not call slotSubJobFinished when there is are no sub jobs because
no sub jobs were finished.  Instead just call a finalize method
2015-02-12 20:00:04 +01:00
Olivier Goffart
b9161aa06c libsync: Fix a case in which canceling the sync would result in some folder never being sync'ed
The problem occurs because of the sorting of items when we have things like

bigfolder
bigfolder/bigsubfolder
bigfolder-2

Then, because dashes come before slash in ascii, the bigfolder-2 would come before its content
and the propagator would thinkg bigfolder is empty and save the etag before it is processed

Should fix issue #2832
2015-02-12 20:00:04 +01:00
Daniel Molkentin
00e42d1177 More HIDPI support
Except for the non-native activity tab
icon in settings, this should fix #11
2015-02-12 19:44:40 +01:00
Klaas Freitag
d37dd040d0 Sharedialog: Use new share link from ownCloud Server 8 on.
This is derived from pull request https://github.com/owncloud/client/pull/2813
2015-02-12 17:04:03 +01:00
Christian Kamm
a2aef04f21 ConValidator: Avoid a double auth check during startup. #2801 2015-02-12 15:25:44 +01:00
Christian Kamm
8f75434558 QuotaInfo: Ensure only one QuotaJob during startup. #2801 2015-02-12 15:25:44 +01:00
Daniel Molkentin
3dd6bcc323 Disable GUI support for TLS client certificates
The feature needs mor work
2015-02-12 15:17:59 +01:00
Olivier Goffart
063271e978 propagateupload: Disable parallel chunk upload for owncloud < 8
Issue #2743
2015-02-12 14:50:42 +01:00
Olivier Goffart
438c4fe72e Account: put the server version in the account 2015-02-12 14:50:42 +01:00
Klaas Freitag
f4144d6d38 Merge pull request #2827 from rullzer/fix_2812
Added push button to sharedialog to set password
2015-02-12 13:49:56 +01:00
Klaas Freitag
eada70ba44 Sharedialog: Removed Thumbnail retrieval.
It uses an unstable API that the server does not really support.
We need to postpone that. Removed for now.
2015-02-12 13:47:07 +01:00
Daniel Molkentin
3439ea395b Remove one more mention of certDate 2015-02-12 12:43:41 +01:00
Daniel Molkentin
ba3bab8f49 Remove certificateDate property and other superfluous code 2015-02-12 12:37:42 +01:00
Christian Kamm
9ba88f6baf Windows: Sync .lnk files correctly. #2792 2015-02-12 11:27:58 +01:00
Christian Kamm
e4fce1250b Progress: Ensure overall progress is between 0 and 100. #2648
This should *already* be the case - but @dahan1999 reported that
it fixed #2648.
2015-02-12 10:09:07 +01:00
Roeland Jago Douma
8523803d94 Added push button to sharedialog to set password
Added button to explicitly set the password (makes is clear the user has to do
somethign!). Patch for #2812
2015-02-11 22:14:51 +01:00
Olivier Goffart
4f202e5f4c Fix TokenCredentials compilation 2015-02-11 18:10:01 +01:00
Christian Kamm
91ae912373 ShareDialog: Don't crash with bad response. #2811 2015-02-11 16:02:50 +01:00
Christian Kamm
5cdf448693 SyncJournal: Use DELETE journal mode on FAT filesystems. #2693 2015-02-11 14:03:55 +01:00
Christian Kamm
89c69250ef Fix crash in discovery thread dtor.
Occasionally on Windows ~DiscoveryMainThread() triggered a crash.

Probably because the QMutableLinkedListIterator was destroyed after
it's underlying data had been removed (from the map).

Cleaning up the map and lists was redundant anyway, so the
destructor is changed to only explicitly destroy the vio_file_stat
objects.
2015-02-11 14:00:23 +01:00
Christian Kamm
e79e2b80c8 SocketApi: Fix crash on exit. #2798
The _listeners list is destroyed before the _localServer.
And since _localServer is the parent of all generated QLocalSockets,
they get destroyed in turn - which triggers onLostConnection() and
thus accessed the destroyed _listeners list.

To avoid that, delete all active QLocalSockets in SocketApi before
its members are destructed.

We also now delete sockets when we're done with them. I think
disconnected sockets would otherwise linger until SocketApi destruction.
2015-02-11 09:50:10 +01:00
Christian Kamm
f8b24ac34d Fix reconnection after long network outage #2321
The problem was that StatusNotFound can indicate either a transient
network problem or a permanent server configuration problem.
2015-02-11 09:24:56 +01:00
Christian Kamm
51b9ec30a9 Remove connect to removed slot.
This seems to have slipped back in, probably during a complex merge
in ba8b1bbe06.
2015-02-11 08:12:09 +01:00
Klaas Freitag
d45d3892cb Account: Fix path assembling with QUrl, add query items separately.
Otherwise Qt does encode the delimiter between path and query items.
This fixes bug #2804
2015-02-10 17:13:27 +01:00
Klaas Freitag
0bf6a220ae Merge pull request #2807 from rullzer/sharedialog_force_password_multshare
Reset _public_share_id after we delete the share, thanks
2015-02-10 12:18:10 +01:00
Roeland Jago Douma
c44abf4918 Reset _public_share_id after we delete the share 2015-02-10 07:53:35 +01:00
Roeland Jago Douma
d7f5e89a1d Sharedialog: retrive thumbnail from server for shares
Initial patch for #2726. Request a thumbnail from the server if files are to be
shared.
2015-02-09 22:17:37 +01:00
Olivier Goffart
51337a10af LSCOL job: Fix getting the list of folders when there are non-ascii
Task #2795
2015-02-08 12:23:47 +01:00
Markus Goetz
d4132072d8 OS X: Send notification natively
For #2728
2015-02-07 18:23:40 +01:00
Klaas Freitag
4849c31add Sharing: Handle "Enforce password" for public shares properly.
If a 403 is received from the attempt to create a public link, the
dialog shows the password field, as this is server enforced.

This fixes #2774
2015-02-06 16:27:11 +01:00
Daniel Molkentin
01bca39138 s/mirall/client in transifex & translations
Last part of #2470
2015-02-06 15:16:55 +01:00
Olivier Goffart
6e8527e66d Wizard: Show the remote folder name when the theme has one
Relates to issue #2788
2015-02-06 14:50:52 +01:00
Jocelyn Turcotte
0d2b7967bc Windows: Fix opening activity entries with a space in the name
This fixes #2601
2015-02-06 13:44:06 +01:00
Olivier Goffart
70c8803a79 SelectiveSync: show a message in case of error or if there is no subfolder
Usefull when the folder does not exist (for example in case the theme
has a defaultServerFolder that does not yet exist, #2788)

But also to avoid confusion (issue #2663)
2015-02-06 12:27:54 +01:00
Olivier Goffart
0d2fb0754c Wizard: Fix the advanced setup page when the theme has a defaultServerFolder
Especially the selective sync dialog

Task #2788
2015-02-06 12:27:54 +01:00
Markus Goetz
1e57432aae Propagator: Fix crash
This crash was uncovered when testing parallel chunks when one chunk
finished the upload. The propagate was then finished with the other
UploadDevices still being in-flight in the QNAM.
2015-02-06 11:19:41 +01:00
Markus Goetz
7c0d3b8485 Sharing: tr()s added 2015-02-06 11:11:09 +01:00
Daniel Molkentin
46abd47bfe Merge pull request #2787 from cmeh/patch-1
Orthography: "an folder" corrected to "a folder"
2015-02-06 10:31:57 +01:00
Olivier Goffart
5ec793e045 propagateupload: Save the mtime given by the server in the reply to GET
There could be a race condition if the file was updated on the server
between the discovery and the propagate phase. By taking the mtime from
the server, we make sure that we do not have a race.

This is tested by t6.pl with BIG3.file because the script was modifying
the file between the two phases
2015-02-06 10:23:20 +01:00
cmeh
1554f41441 Orthography: "an folder" corrected to "a folder" 2015-02-06 10:22:49 +01:00
Daniel Molkentin
9e945eb471 Settings dialog: better color for separator line 2015-02-06 08:30:51 +01:00
Daniel Molkentin
c4dd1cfb69 Mac Settings Dialog: Native icons for account 2015-02-06 07:54:25 +01:00
Volkan Gezer
eaa9c4fdf8 json capital 2015-02-05 20:41:08 +01:00
Markus Goetz
94e61c3205 Notifications: Fix creation of notification (fixup2)
For #2728
2015-02-05 17:20:52 +01:00
Markus Goetz
c4cf13bd97 Notifications: Fix creation of notification (fixup)
For #2728
2015-02-05 16:55:32 +01:00
Markus Goetz
71e22ffe2c Notifications: Fix creation of notification
For #2728
2015-02-05 16:46:40 +01:00
Olivier Goffart
3169a6f170 SelectiveSync: change the wording of the dialog on the wizard
Have different wording depending on the wizardSelectiveSyncDefaultNothing theme option

Relates to #2580
2015-02-05 16:22:04 +01:00
Markus Goetz
446e2b27d7 OS X Sparkle: Fix warning 2015-02-05 15:49:46 +01:00
Olivier Goffart
856df4c5f6 libsync: Get the capabilities and store it in the account 2015-02-05 15:42:56 +01:00
Olivier Goffart
34237f604e JsonApiJob: Refactor out of the shibbolethuserjob 2015-02-05 15:42:01 +01:00
Olivier Goffart
21345b81f1 wizard: fix the EntityExistJob URL
We need to add the davPath in there.
Otherwise there will be a redirect which will break shiboleth
(We want to only enter the password once)

Issue #2739 and #2780
2015-02-05 12:53:04 +01:00
Olivier Goffart
3dd8ce08b8 Parallel chunk upload: Fix a off-by-one while saving the done chunk in the DB
We should assume that the chunk currently uploading is NOT done (hence the -1)

il task 405
2015-02-04 18:52:26 +01:00
Markus Goetz
f233af04f6 Windows XP: Possible fix for #2648 2015-02-04 18:49:04 +01:00
Olivier Goffart
acb7e972ea Merge pull request #2778 from jturcotte/master
Allow building natively on Windows with MinGW
2015-02-04 17:11:56 +01:00
Jocelyn Turcotte
1ac523ec01 Output libocsync and libowncloudsync in the bin directory
Windows finds DLLs using PATH or the directory of the process'
executable. By outputing those dependend DLLs together with
owncloud.exe, the developer only need to have OpenSSL's bin
and the qtkeychain build directory in his PATH to let the
dynamic linker find them.

As the documentation of RUNTIME_OUTPUT_DIRECTORY points out,
this only affects windows as other platforms don't consider
libraries as runtime targets.
2015-02-04 15:00:22 +01:00
Olivier Goffart
ca56e5d9ca SyncEngine: Fix crash
We must check if 'it' is not == to begin() before doing it-1
Also i believe the logic was reversed if it was begin()

Task #2765
2015-02-04 14:52:41 +01:00
Jocelyn Turcotte
43a51c1bef Fix the MinGW build
- qtkeychain isn't necessarily in a qt5keychain subdirectory.
- Explicitly add OpenSSL to the include directories
- Make sure that the USE_OUR_OWN_SQLITE3 code is initialized
  for csync by calling find_package.
2015-02-04 14:50:38 +01:00
Olivier Goffart
26132fd14e owncloudconnectionmethoddialog: typo 2015-02-04 13:42:49 +01:00
Olivier Goffart
ca68ccd76a Fix Qt4 build 2015-02-03 20:04:04 +01:00
Olivier Goffart
1f9d7c41e8 owncloudconnectionmethoddialog: Change order of buttons, fix wording, and add the URL 2015-02-03 17:55:01 +01:00
Roeland Jago Douma
48254579a2 Sharedialog: add copy button text and actually connect the button 2015-02-03 13:02:52 +01:00
Daniel Molkentin
a3106b1771 Client Dialog Support: Fix certificate dialog 2015-02-02 23:35:39 +01:00
Jeroen Hoek
227b7ccabd Add dialog to connection wizard
When connecting to a https:// URL fails, present the user with three
choices:

 * Try again with a http:// URL
 * Configure client-side TLS certificates
 * Go back and enter a different URL

This allows users connecting with an ownCloud server secured with
client-side TLS certificates to start the certificate import wizard
manually instead of relying on a custom server error message.
2015-02-02 22:29:21 +01:00
Christian Kamm
49021fd96d SyncJournal: Reset all prepared statements. #2757
Makes closing of the database actually release file locks.
2015-01-30 15:35:42 +01:00
Olivier Goffart
db6214e090 SyncEngine: Do not assert when the neon session is 0
It can now be 0 if neon is not in used

Issue #2755
2015-01-30 01:05:46 +01:00
Markus Goetz
df214cd6c1 Folder: Make debug message clearer
The thread was actually already started in the discovery phase.
2015-01-29 20:47:45 +01:00
Klaas Freitag
d2f1e6e03e ShareDialog: Disable sharing of external files.
See https://github.com/owncloud/client/issues/2732 for discussion.
2015-01-29 18:11:04 +01:00
Daniel Molkentin
332601ed26 Remove noisy debug output 2015-01-29 15:37:21 +01:00
Christian Kamm
43d6dbb0f2 SQL: Add debugging options. #2693
OWNCLOUD_SQLITE_JOURNAL_MODE: To use something else than WAL
OWNCLOUD_SQLITE_TEMP_STORE: To test with storing temporaries in memory.
2015-01-29 11:02:01 +01:00
Christian Kamm
cd0ad21132 SQL: Improve error reporting of failed exec(). #2693 2015-01-29 09:47:48 +01:00
Daniel Molkentin
6fa73e073f Certificate Wizard: Remove dead code, cleanup style 2015-01-28 17:38:38 +01:00
Christian Kamm
5fc231cda4 Shib: Fix fetching of 'user'. #2751 2015-01-28 15:15:35 +01:00
Daniel Molkentin
1ca8ab81c7 Fix for non C++11 compilers 2015-01-28 14:19:37 +01:00
Olivier Goffart
d70e146c1f Merge remote-tracking branch 'origin/ssl_client_cert'
Conflicts:
	CMakeLists.txt
	csync/src/CMakeLists.txt
	csync/src/csync_owncloud.c
2015-01-28 14:13:40 +01:00
Daniel Molkentin
989005d616 Clientcert support: Explictly link libsync against openssl 2015-01-28 13:31:17 +01:00
Christian Kamm
2cee591b0e Merge branch 'sharedialog_fixes' of git://github.com/rullzer/client
Fix missing OcsShareJob constructor.

Conflicts:
	src/gui/sharedialog.cpp
2015-01-28 12:19:40 +01:00
ckamm
8a71d7d254 Merge pull request #2730 from rullzer/filebrowser_integration
Sharedialog: 404 is also an acceptable response when retriving shares
2015-01-28 12:09:33 +01:00
Christian Kamm
7950eb8ed6 sqlite: Update to version 3.8.8.1. #2750 2015-01-28 11:52:04 +01:00
Christian Kamm
f59515883d FolderMan: Require 2s minimum delay.
Otherwise we run into "can't upload because it's too recent" issues
when the folder watcher triggers a sync.

We used to do this, but my recent refactoring started counting the
time since the last sync against this minimum delay, leading to
1ms delays in practice. This fixes the regression.
2015-01-28 11:24:47 +01:00
Daniel Molkentin
524f04f34e Wizard: Give useful error message when server access is forbidden
Final fix for #2607
2015-01-28 11:06:41 +01:00
Daniel Molkentin
9e7ee42eb7 Wizard Remove unused pointer 2015-01-28 11:06:41 +01:00
Daniel Molkentin
6f82e80698 Remove debug 2015-01-28 11:06:41 +01:00
Christian Kamm
37680a0909 ShareDialog: Prepare for multiaccount. #43
Also fix a possible bug with the share dialog when no account
is configured.
2015-01-28 10:52:55 +01:00
Christian Kamm
350ad98c27 Folderwizard: Prepare for multiaccount. #43
Avoid accessing the global account instance and instead pass it in
from the outside.
2015-01-28 10:40:32 +01:00
Olivier Goffart
b0dbb49ca8 Shib: fix broken signal/slot connections 2015-01-26 16:23:43 +01:00
Olivier Goffart
3169833cd7 gui: Still give a decent experience if there is no system tray
Helps for tasks #1138, #2023, #2123
2015-01-26 13:00:45 +01:00
Joachim Schiele
9abc3e1333 fixes required by upstream 2015-01-23 19:22:56 +00:00
Olivier Goffart
dcba129a98 Make it compile without neon 2015-01-23 17:56:46 +01:00
Olivier Goffart
b856266e91 Remove neon link flag when not required 2015-01-23 17:35:17 +01:00
Olivier Goffart
fe51ada1e8 Don't require NEON with Qt 5.4 2015-01-23 17:11:34 +01:00
Olivier Goffart
807277c0ae Socket API: Do not broadcast the shared menu entry on all socket when one connects to the socket API
Now we reply to the command SHARE_MENU_TITLE
2015-01-23 16:09:38 +01:00
Markus Goetz
12ac9f9aa9 Discovery: Fix broken signal/slots 2015-01-23 15:37:36 +01:00
Markus Goetz
3885d5d706 Discovery: Report root etag from engine to folder
For #2352
2015-01-23 15:30:44 +01:00
Markus Goetz
c54621eb19 OS X: Share menu for Finder 2015-01-23 12:00:31 +01:00
Klaas Freitag
2943b4a85a CMake: Fixed the rpath settings to make the nighlies build again. 2015-01-23 11:50:42 +01:00
Klaas Freitag
ed0b4e48d5 Sharedialog: Fix some error display. 2015-01-23 11:50:42 +01:00
Roeland Jago Douma
f9938c90ff Sharedialog: 404 is also an acceptable response when retriving shares
When we try to get the shares for a file/dir that has no shares yet 404 is an
acceptable response from the server.
2015-01-23 10:29:12 +01:00
Roeland Jago Douma
bcdc19f0e3 Sharedialog: Moved more logic to OcsShareJob
To make the Sharedialog a bit cleaner and to only have the logic in one place.
The postdata is now passed as a QList<QPair<QString, QString>> to the
OcsShareJob.
2015-01-23 09:41:10 +01:00
Roeland Jago Douma
fb967427e8 Sharedialog: We always want json return format
Cleanup the code a bit and set that we want json as return format for all
replies.
2015-01-23 09:17:00 +01:00
Roeland Jago Douma
0b10761291 Sharedialog: emit proper error code, only show error label if there is one 2015-01-23 09:10:02 +01:00
Olivier Goffart
0f98a90858 Wizard: Add an option in the theme to default to nothing selected in the selective sync
Issue #2580
2015-01-22 15:57:55 +01:00
Christian Kamm
094da51d82 FolderWatcher: Fix ignore list usage.
All patterns with started with a ] were not working correctly.
2015-01-22 15:42:47 +01:00
Olivier Goffart
3c26bfa618 Propagate Remote mkdir: save the fileid to the database early
It's important so that if we delete or rename  a diectory that is being
uploaded, this is properly detected
2015-01-22 15:11:04 +01:00
Olivier Goffart
168c89aba7 Wizard: fix spacing 2015-01-22 15:11:03 +01:00
Markus Goetz
0502f684e9 Discovery: Even less qDebug 2015-01-22 14:45:08 +01:00
Markus Goetz
45cb679ea7 Discovery: Less verbose debug 2015-01-22 14:37:35 +01:00
Markus Goetz
c9f9d55658 Merge branch 'qnam_csync_update'
Conflicts:
	src/libsync/networkjobs.cpp
2015-01-22 14:34:36 +01:00
Markus Goetz
dde8e35785 Discovery: Put results into proper place in map
The map is for memory management.
It can later be used as a cache for the recursive PROPFIND
(if we decide to activate it again)
2015-01-22 14:25:24 +01:00
Christian Kamm
fa4e6d8261 Exponential backoff for rapid follow up syncs. #2355 2015-01-22 08:55:52 +01:00
Christian Kamm
145df8ec67 Pause between sync runs (particularly long ones) #2355 2015-01-22 08:55:52 +01:00
Christian Kamm
af5cbdbed8 Folder: Add timer for sync duration. 2015-01-22 08:55:52 +01:00
Nourredine
ba8b1bbe06 adds 'SSL client certificate' support from n.octeau with qknight changes as:
* removed broken QSsl::SslV3 default
* rewrote slotHandleErrors(): no longer claim errors which are none.
* hack reverted: lib64 was not the cause for NixOS issues related to libraries.
* refactored csync/src/csync_owncloud.c and discovered+fixed why the dav_connect was never getting the certPath+certPassoword
* cleanup of code but seems this crushed the ssl client certificate support
* fixes the https://github.com/owncloud/client/issues/69#issuecomment-69358377 issue
* lots of cleanup
* From TODO list : translate all french comments into english
* changed _pemCertificate type from QString to QByteArray
2015-01-21 23:55:11 +00:00
Olivier Goffart
f2a7e0b28f Selective sync dialog: give a proper size by default 2015-01-21 15:37:00 +01:00
Olivier Goffart
0e86ceff73 Connection Validator: let the user cancel the password dialog
And don't ask for the password again if this happens
2015-01-21 15:33:51 +01:00
Olivier Goffart
c91de092e5 Setup wizard: Fix the http fallback logic
Also don't allow to go back from the advanced settings page because
this break everything
2015-01-21 15:33:51 +01:00
Markus Goetz
7a173f6e62 OS X: Fix path rewrite for owncloudcmd
It was broken after the folder restructuring (cmd/ and client/)
2015-01-21 15:17:40 +01:00
Klaas Freitag
95f7e83c5c Sharedialog: Some more refinements after the merge of the branch.
- Some dialog changes: Made it less vertical space comsuming
- Some variable cleanups
- Allow to share files that are not within the synced dir by
  copying them to the root of a sync dir first.
2015-01-21 15:05:23 +01:00
Olivier Goffart
d8b621d05f LsColJob: fix getting the sizes when the path contains %-encoded chars 2015-01-21 12:04:54 +01:00
Markus Goetz
fb87ad1442 OS X: Fix path rewrite for owncloudcmd
It was broken after the folder restructuring (cmd/ and client/)
2015-01-20 19:03:56 +01:00
Markus Goetz
c580275a01 Discovery: Delete file entries on destruction 2015-01-20 18:49:27 +01:00
Olivier Goffart
5c2298fa37 Discovery phase: fix a few warnings 2015-01-20 18:50:03 +01:00
Markus Goetz
906779c4b1 SyncEngine: Use QNAM for csync_update
This is for #2507
2015-01-20 18:27:25 +01:00
Klaas Freitag
bd80c034ba Merge pull request #2723 from rullzer/filebrowser_integration
Sharedialog: link sharing from desktop
2015-01-20 17:45:34 +01:00
Daniel Molkentin
00ed37dd02 Merge pull request #2709 from rullzer/monochrome-state-info-icon
Resepct theming when no syncs are configure
2015-01-20 08:21:42 +01:00
Daniel Molkentin
4de815ad67 Merge pull request #2710 from rullzer/sort_folder_order
Manged folder list in the tray icon is now sorted
2015-01-19 18:56:55 +01:00
Daniel Molkentin
86eed7cb81 Fix SSL button icons 2015-01-18 15:34:48 +01:00
Roeland Jago Douma
63f18a7ebb Sharedialog: Pass QDate around instead of QString
Now pass a QDate object around so we only do the conversion in one place in
case the API changes.
2015-01-17 09:57:17 +01:00
Roeland Jago Douma
233f0423fa Sharedialog: Also reply on delete should be checked 2015-01-17 09:48:18 +01:00
Roeland Jago Douma
d5bddca01d Sharedialog: More Q_FOREACH 2015-01-17 09:29:13 +01:00
Roeland Jago Douma
00cb6f71da Sharedialog: Set correct minimum date
The minimum date should always be the current date + 1 day.
2015-01-17 09:10:42 +01:00
Roeland Jago Douma
9ac35d5869 Sharedialog: Use arg instead of append 2015-01-17 09:01:24 +01:00
Roeland Jago Douma
bd1db30eea Sharedialog: Minor fixes
The server generates a new share when a password is set/deleted so we need to
refetch the shares once that is done.

It is not possible to set an expiration date in the past for a share. So do not
allow the user to select a date in the past.
2015-01-17 08:50:28 +01:00
Roeland Jago Douma
6c3a5b1d69 Sharedialog: Do not hard code error reply messages
The server provides error messages in the json return code. Use those error
messages.
2015-01-17 08:29:20 +01:00
Roeland Jago Douma
c233baab5b Sharedialog: grouped sharelink stuff in one widget
A bit of grouping in the UI requiring less ->hide() and ->show() calls
2015-01-17 08:10:18 +01:00
Christian Kamm
aa6a5e4ac2 Credentials: Use the bound account everywhere.
This is preparation for multiaccount.
2015-01-16 15:22:56 +01:00
Roeland Jago Douma
71560ace71 Sharedialog: Show general info about a share
A start with some general share info in the share dialog.
2015-01-16 14:48:56 +01:00
Roeland Jago Douma
0fba4eee98 Sharedialog: Removed user/group sharing 2015-01-16 14:06:34 +01:00
Christian Kamm
91fce3ea73 Make public API explicit about blacklist kind. #2301
'blacklist' can mean the selective sync blacklist or the error
blacklist. Names in public API are now explicit about which
blacklist is meant.
2015-01-16 10:17:19 +01:00
Christian Kamm
b50475bc17 SQL: Fix error reporting on prepare fail. #2697 2015-01-16 09:12:25 +01:00
Klaas Freitag
40c802b148 Download: Handle locking problems as soft errors, enterprise #455 2015-01-15 20:51:30 +01:00
Klaas Freitag
7d9f917810 Filesystem: Check more return values and more logging. 2015-01-15 20:51:30 +01:00
Klaas Freitag
a5ae1a9734 Folder: Only count error free downloads for the gui notification. 2015-01-15 20:51:30 +01:00
Klaas Freitag
506360716a FolderMan: Removed too explicit logging that scares users. 2015-01-15 20:51:30 +01:00
Olivier Goffart
22ad34fa0e Merge branch '1.7'
Conflicts:
	admin/win/nsi/l10n/French.nsh
	src/mirall/propagator_qnam.cpp
2015-01-15 17:58:43 +01:00
Olivier Goffart
ce0e7e4a5d Propagator download: Do not assume the server do not support ranges if we cannot parse the Content-Range header
There are several reason why start==0
* The Content-Range header was not present
* We can't parse it
* Or it is actually 0

If we can't parse it, we cannot assume anything and must error out.
So only in the first case we should discard the temporary file and continue.

Issue #2708
2015-01-15 17:56:49 +01:00
Olivier Goffart
907b79d3b8 Utility: Use appropriate unit when converting from bytes to human readable units
We must not use the SI units if we use power of 2

I believe that we should use SI units and power of 10
But since the server still use power of 2, we need to show the same numbers

But at least we use the proper standard IEC unit that are explicit
2015-01-15 14:06:17 +01:00
Olivier Goffart
863731fd6a Revert "Utility: Use SI units"
This reverts commit 7445fa7ef7.
and commit f654c53c35.

The server still use wrong powers, so we still need to use the same
2015-01-15 13:56:51 +01:00
Olivier Goffart
c9f1b3229b Add Folder Wizard: fix wording
(Relates #2663)
2015-01-15 13:55:48 +01:00
Olivier Goffart
2b8b204cfc SelectiveSyncDialog::estimatedSize: return qint64 because -1 in case of error 2015-01-15 13:07:16 +01:00
Olivier Goffart
264471af43 csync: cleanup some unused error code 2015-01-15 12:19:06 +01:00
Olivier Goffart
08d3ae9f02 csync_statedb: Have more granular error reporting when the loaddb fails
In order to distiguish error from sqlite_open or from the integrity check

Issue #2673
2015-01-15 11:36:24 +01:00
Roeland Jago Douma
cd0c9b2ddb Sharedialog: More error checking 2015-01-14 19:47:25 +01:00
Roeland Jago Douma
b80bbe6587 Sharedialog: more const 2015-01-14 19:36:42 +01:00
Roeland Jago Douma
879d41bf2d Sharedialog: Fix spinners and passwordfield
The password field now show correct info when a password is entered etc.
Maybe we should have an extra info part where we state that the user needs to
press enter to submit the password
2015-01-14 19:08:04 +01:00
Roeland Jago Douma
7b1cfd69d7 Sharedialog: use QProgressIndicator
This is a merge from the movie in the original commit (which was local) to the
QProgressIndicator. However, on all connections I tested it, it did not add
much since the API is in gernal pretty quick. So maybe we can just remove this.
2015-01-14 18:42:56 +01:00
Luca Lorenzetto
ef9f2a965d Fix for issue #2703 2015-01-14 17:39:14 +01:00
Olivier Goffart
ac0e8b1fe1 Qt 4 fix 2015-01-14 16:30:10 +01:00
Olivier Goffart
da0f7317b4 Wizard: Show the size of the folders that will be downloaded
Part of #2580
2015-01-14 16:11:07 +01:00
Roeland Jago Douma
3e81839af5 Sharedialog: Removed duplicted code
Handling of updated shares is identical from users and groups
2015-01-14 15:27:15 +01:00
Christian Kamm
0af5574951 Propagate upload: code cleanup 2015-01-14 15:20:02 +01:00
Olivier Goffart
0ae9055ea6 Propagator upload: Fix UploadDevice::seek 2015-01-14 15:08:09 +01:00
Olivier Goffart
885aafcea3 SelectiveSync dialog: Show the sizes of the folder 2015-01-14 15:08:09 +01:00
Olivier Goffart
7445fa7ef7 Utility: Use SI units 2015-01-14 15:08:09 +01:00
Markus Goetz
a544133d73 Propagator: Guard access to BandwidthManager
Shouls fix #2623
2015-01-14 14:28:47 +01:00
Christian Kamm
b3c02798a3 Propagator: Use FILE_SHARE_DELETE on Windows. #2070 #2597 2015-01-14 14:16:05 +01:00
Roeland Jago Douma
0bd6eb1792 Sharedialog: fix changes due to rebase 2015-01-14 13:51:02 +01:00
Olivier Goffart
3ec19ee355 Propatage upload: Preload the chunk in memory and close the file
This should solve #2675 and #1981

By preloading the chunks in memory before sending them, we don't keep the
file open and therefore we let other program open the file for writing.

If the file is modified between two chunks, we detect that and abort anyway
2015-01-14 13:46:51 +01:00
Olivier Goffart
0215b250af UploadDevice: mark overrided method as Q_DECL_OVERRIDE 2015-01-14 13:46:51 +01:00
Olivier Goffart
6a0c9fdd34 Propagate upload: Change the default chunk size to 5MiB and make chunk upload parallel
The server is slow to process each chunk. As a result the time between
the chunks is not neglectible. Therefore we gain a lot of time by
uploading the chunks in parallel. So the bandwitdh is used when the
server is waiting between chunks.
2015-01-14 13:46:51 +01:00
Olivier Goffart
7f1593c5d7 PropagateUpload: The PUTJob owns the chunk device, so make it a QScopedPointer instead of a QSharedPointer 2015-01-14 13:46:51 +01:00
Roeland Jago Douma
e420a689dc Sharedialog: More reply checking and removing some duplicated code 2015-01-14 13:43:01 +01:00
Roeland Jago Douma
9addd56f9b Sharedialog: follow correct behavior for files when editing permissions 2015-01-14 13:43:01 +01:00
Roeland Jago Douma
a7e69a5dc5 Sharedialog: Started parsing server replies 2015-01-14 13:43:01 +01:00
Roeland Jago Douma
f6a83d5de2 ShareDialog: UI is different for files/dirs
Bunch of if statements to make sure that we do not display delete/create on
files.
2015-01-14 13:43:01 +01:00
Roeland Jago Douma
d1d8a40acf Sharedialog: fix unused var compiler warnings 2015-01-14 13:39:07 +01:00
Roeland Jago Douma
cb18dfaaef Sharedialog: Of course users can also have create and delete privileges 2015-01-14 13:39:07 +01:00
Roeland Jago Douma
a22a03e501 ShareDialog: Group sharing is now also possible
Basically the same functionality as for user sharing. Maybe it would be wise to
merge the two functionalities. Should be rather straight forward if we also
merge the UI parts.
2015-01-14 13:39:06 +01:00
Roeland Jago Douma
9a35b5670e ShareDialog: Allow sharing with users
This commit needs a lot of cleaning up. And a lot of error checking needs to be
added. However it is now possible to change and add new shares with users.
Sharing with groups should be just copy paste.

Also the UI needs some love.
2015-01-14 13:39:06 +01:00
Roeland Jago Douma
017b54f9a8 Sharedialog: Allow modifications of permission for users 2015-01-14 13:39:06 +01:00
Christian Kamm
9b7e6cc5c1 Fix warnings.
* remove Unused variable
* zorder for spacers makes no sense
2015-01-14 11:28:53 +01:00
Klaas Freitag
209276efa8 ShareDialog: Moved open slot from Application object to Gui object.
Also set auto delete flag for the dialog explicitely.
2015-01-13 13:50:41 +01:00
Daniel Molkentin
31e584e3e3 Fix win32 build 2015-01-12 13:53:40 +01:00
Klaas Freitag
ad09f6491b ShareDialog: Fix const ref for arguments. 2015-01-12 11:35:11 +01:00
Klaas Freitag
efbe033bfb Sharedialog: Fix merge problem (use AccountPtr) plus cleanup. 2015-01-12 11:30:02 +01:00
Klaas Freitag
2c6f0950f6 Merge pull request #2674 from rullzer/filebrowser_integration
Add Sharing from the desktop, SocketAPI and Dialog.
2015-01-12 11:16:28 +01:00
Roeland Jago Douma
b680788f48 Sharedialog: Allow setting and retrieving of experiation data for public urls 2015-01-12 10:14:45 +01:00
Daniel Molkentin
5e0d4ab31d Further Windows compile fix 2015-01-12 09:50:37 +01:00
Daniel Molkentin
488f993f45 Fix compilation on Windows 2015-01-12 09:40:11 +01:00
Roeland Jago Douma
811cbc27c0 Sharedialog: Construct correct public url for existing shares 2015-01-11 14:16:49 +01:00
Volkan Gezer
cefa31eb82 fix typo
suggested by transifex translator
2015-01-11 14:07:04 +01:00
Roeland Jago Douma
25e90ff658 Sharedialog: use Q_FOREACH 2015-01-11 13:56:23 +01:00
Roeland Jago Douma
fa390299f9 Added Q_FUNC_INFO at several places 2015-01-11 13:41:15 +01:00
Roeland Jago Douma
accb036507 Removed some unused outcommented code 2015-01-11 13:36:45 +01:00
Roeland Jago Douma
44690ff596 ShareDialog: fixed "" -> QString 2015-01-11 13:27:32 +01:00
Roeland Jago Douma
e20f819c1d Sharedialog: QString("") -> QString() 2015-01-11 13:24:40 +01:00
Roeland Jago Douma
1d011a2f9a ShareDialog: make visible text translatable 2015-01-11 13:22:48 +01:00
Roeland Jago Douma
bc84a78b0f ShareDialog: Made slot arguments const 2015-01-11 11:19:12 +01:00
Daniel Molkentin
6034bd0946 Wizard: Never attempt to hide server page
The wizard code used to call hide() on hardcoded wizards.
This means that for a brief moment, the first page with the URL
(disabled line edit) may be seen. I think that's completely
legitimate from a feedback perspective. The alternative would
be to unhide on error, but this is rather unelegant...
2015-01-11 07:38:09 +01:00
Klaas Freitag
786a877986 SocketAPI: Some cleanups plus added some consts 2015-01-09 11:44:01 +01:00
Daniel Molkentin
c86d8e5acf Clean up BSD support patch 2015-01-08 22:40:47 +01:00
Daniel Molkentin
4a819026df Merge pull request #2634 from ryo-on/netbsd-support
Support NetBSD like FreeBSD or Linux.
2015-01-08 22:35:44 +01:00
Olivier Goffart
7671ae8df7 Application: Initialize the folderman after we checked for existance
So we don't start the SocketAPI if we are going to quit.
We also do not log any message anymore before we install the hooks

Should solve #2666
2015-01-08 16:52:23 +01:00
Daniel Molkentin
df555d5321 Merge remote-tracking branch 'origin/master' into accountstate
Conflicts:
	src/cmd/cmd.cpp
2015-01-08 15:38:41 +01:00
Daniel Molkentin
c3468b7ed6 Merge remote-tracking branch 'origin/master' into accountstate
Conflicts:
	src/gui/owncloudsetupwizard.cpp
	src/gui/owncloudsetupwizard.h
	src/libsync/propagatedownload.cpp
	src/libsync/propagatedownload.h
2015-01-08 15:33:39 +01:00
Olivier Goffart
bbf0e7c0a5 owncloudcmd: add --unsyncedfolders to test selective sync 2015-01-08 15:27:02 +01:00
Daniel Molkentin
3f5c1d2ade Merge pull request #2678 from chrodan/master
Hide Ignored files in context menu
2015-01-08 14:29:36 +01:00
Daniel Molkentin
dd063d0207 Add hack to make old themes work 2015-01-08 14:21:58 +01:00
Christoph Dann
309ff2997c potential fix for #1865
Do not show ignored files in context menu
2015-01-08 11:42:14 +01:00
Daniel Molkentin
8e8ca97eec Fix build 2015-01-08 09:42:26 +01:00
Daniel Molkentin
51d7559a2c Simplify checkDowngradeAdvised logic
Also, show() and back() belong into slotConnectionCheck only
2015-01-07 18:22:44 +01:00
Daniel Molkentin
5c4f706fe4 Setup Wizard: Make sure to reset auth type when URL changes 2015-01-07 18:01:18 +01:00
Daniel Molkentin
7ac32a19b5 Do not show the HTTP-reconnect popup when its not warranted
Fixes usability issues in the workaround of #2607
2015-01-07 18:01:11 +01:00
Olivier Goffart
8e3dbcb7c0 SocketAPi: use absoluteFilePath unstead of canonicalFilePath
Because canonicalFilePath is way too slow.

Issue #2671
2015-01-07 14:37:05 +01:00
Olivier Goffart
ab0bc75e43 PropagateUploadFileQNAM::slotUploadProgress: Fix inverted condition
( Apply this commit 2d8053a9df )
2015-01-05 17:32:12 +01:00
Olivier Goffart
414ac5433d Merge branch '1.7'
Conflicts:
	binary
	doc/accountsetup.rst
	doc/architecture.rst
	doc/navigating.rst
	doc/owncloudcmd.rst
	doc/troubleshooting.rst
2015-01-05 14:40:53 +01:00
Olivier Goffart
b2c01ffe21 SyncEngine: Show an error when a file name is not encoded with valid UTF-8
... instead of uploading the file with replacement character, and asserting
on the next sync.

Issue #2649

If the file or folder on the file system has a name with invalid UTF-8,
We would convert the name to utf-8, and the conversion would result in
replacement character placeholder.  And we would upload that file on the server
with that name, and save it with this name on the database.
Fix this issue by showing an error to the user for invalid files.
2015-01-05 13:54:31 +01:00
Olivier Goffart
517dea6958 accountsettings: Use right palette when using reversed palette
Issue #2654

The problem is that the WindowsVistaStyle does something wierd with the palette
when drawing the text, and we should do the same then.
2015-01-05 12:17:05 +01:00
Roeland Jago Douma
ee2e6e5dce Also allow sharing if we only sync a part 2014-12-28 20:13:11 +01:00
Roeland Jago Douma
facb6b2e81 Check box public link now works multiple times
When deleting a share (public link) and recreating it we need to store the new
id.
2014-12-28 20:13:11 +01:00
Roeland Jago Douma
ec3c83c0c9 Minor sharedialog.ui fixes 2014-12-28 20:13:10 +01:00
Roeland Jago Douma
0ad4fb7273 Create valid poststring 2014-12-28 20:13:10 +01:00
Roeland Jago Douma
763d5f67cd Some error checking on SHARE sockeAPI command 2014-12-28 20:13:10 +01:00
Roeland Jago Douma
b7d4c997a3 Fix rebase of branch 2014-12-28 20:13:10 +01:00
Alfie "Azelphur" Day
bd7f45e398 Everything works now, albeit without error checking. 2014-12-28 20:13:10 +01:00
Alfie "Azelphur" Day
748440ced3 Initial push for filebrowser integration, not finished yet but it's a start :) 2014-12-28 20:13:10 +01:00
Ryo ONODERA
16c4864e67 Support NetBSD like FreeBSD or Linux. 2014-12-21 23:00:56 +09:00
Roeland Jago Douma
cd8affc255 Resepct theming when no syncs are configure 2014-12-19 15:08:49 +01:00
Roeland Jago Douma
8677fb18bb Manged folder list in the tray icon is now sorted
We are using a QHash to store all the folder objects. This does not allow for
easy sorting and looks weird to the user. Now they are first inserted into a
temp QMap to sort them properly.
2014-12-19 13:59:50 +01:00
Christian Kamm
4fa212c43b CSync callbacks: Don't use global account. 2014-12-18 15:39:51 +01:00
Christian Kamm
a9da5ebff6 Wizard: Sometimes preserve folders when folder config is skipped.
* When folder config is used, other folder definitions are always
  removed.
* Fix a bug with the wizard becoming stuck when 'skip folder config'
  is used.
2014-12-18 15:39:51 +01:00
Christian Kamm
38ebfec1fb Use global Account/AccountState less.
* Use a shared pointer to Account everywhere to ensure
  the instance stays alive long enough for a sync to terminate
* Folder is now tied to an AccountState
* SyncEngine and OwncloudPropagator tie to an Account and use that
  for all jobs they run

Issue: Since the setup wizard currently always replaces the
account, it will always wipe all folder definitions, even when
the actual changes to the account were minor.
2014-12-18 15:39:51 +01:00
Christian Kamm
6c7acd585e Account: Split into libsync/Account and gui/AccountState.
This allows all the account state information to live in gui
while the sync-relevant data stays in libsync.

I also moved quotainfo to gui since it depends on the account state.
2014-12-18 15:39:51 +01:00
Olivier Goffart
e8efaa5ed8 Direct download URL: Fix resuming
The server might support resuming, so don't always erase the temporary file
and pass the startSize, so the temporary file will be remove if the server
does not support it after all (because it is not sending the "bytes" header

Also pass the expected etag for consistency even if it's not used in this case.
2014-12-18 12:13:12 +01:00
Daniel Molkentin
986b23856f Make setup page usable from shibboleth
Second patch to address #2607
2014-12-17 18:13:59 +01:00
Olivier Goffart
96872e2b3b Download: When direct URL don't work, retry through webdav 2014-12-17 14:28:13 +01:00
Daniel Molkentin
42ffed3f57 Wizard: Show server errors when coming from shibboleth
The wizard needs to be restored and rewound to the first page

First patch to address #2607
2014-12-17 14:24:07 +01:00
Christian Kamm
a006c6962c Move account state related logic into Account.
The account state is now managed mostly by the Account itself
instead of through Application. The gui can still control whether
an account is signed out or not.
2014-12-17 12:01:10 +01:00
Olivier Goffart
b1d392e415 Download job: allow redirect on direct download link
Issue #2614
2014-12-16 11:51:25 +01:00
Olivier Goffart
cbf00e9378 Connection Validator: Fix connection warning
The timeout signal does not exist.
Timeout is handled as a normal network arror.
2014-12-16 11:48:15 +01:00
Olivier Goffart
414838cae8 Settings dialog: remove the code that was updating the account icon
I just wanted to fix the warning:
 QObject::connect: No such slot OCC::SettingsDialog::slotUpdateAccountIcon(QIcon) in settingsdialog.cpp:108

It turns out we don't need anymore the signal or any of the code that
was updating the account icon in the settings dialog since it we now have a fixed icon
2014-12-16 11:36:52 +01:00
Olivier Goffart
3ee14164db network jobs: Refactor the redirect handling in AbdtractNetworkJob
Move the redirect handling from CheckServerJob to AbstractNetworkJob, so we can
later use it in any job  (in preparation for task #2614)
2014-12-16 11:27:02 +01:00
Klaas Freitag
c6daa8e59b Overlays: In case of folders, make sure to append slashes at end.
This fixes #2373
2014-12-12 16:38:07 +01:00
Klaas Freitag
7cc6c1a10f Theme: Add a missing dot. 2014-12-12 13:37:02 +01:00
Klaas Freitag
7f73cc1694 Theme: split the about string apart to have small translation units. 2014-12-12 13:33:38 +01:00
Daniel Molkentin
9a13ec736d Fix OS X compilation 2014-12-11 15:08:13 +01:00
Christian Kamm
1a3041690f ConValidator: Simplify and cleanup.
* This way using it with multiple accounts will be easier.
* Timeouts on the authed requests are handled.
2014-12-11 14:48:01 +01:00
Christian Kamm
84e5ad7346 FolderMan: Delete old journal file when adding folder. #2606 2014-12-11 12:28:01 +01:00
Christian Kamm
4559bb5553 Fix counting of affected files. #1132
* Also ensure the maximum is always >= the current value.
* Take care to handle the ULLONG_MAX value that's sometimes used
  as _completedFileCount.
2014-12-11 11:33:42 +01:00
Christian Kamm
d8c59fcb73 Use connection validator to ping the server. #2485
* Stop the quota job from having an effect on account status
  as it can sometimes take a long time to reply. See #2485 and
  owncloud/core#12744.

* Instead of indirectly using the quota job, use the connection
  validator to regularly ping the server with a basic PROPFIND for
  'getlastmodified' on /.
  This request was usually fast for users even when the quota PROPFIND
  was slow.
2014-12-10 13:40:11 +01:00
Christian Kamm
53d5de685c Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/gui/folder.cpp
	src/gui/folder.h
	src/libsync/networkjobs.cpp
	src/libsync/owncloudpropagator.h
	src/libsync/propagatedownload.cpp
2014-12-10 13:01:36 +01:00
Olivier Goffart
a3e7f513e6 SocketAPI: use the canonical path
Issue #2591
2014-12-09 20:48:51 +01:00
Daniel Molkentin
d034f10af3 Fix compilation 2014-12-08 19:25:57 +01:00
Daniel Molkentin
a2b817f0c0 mirall.qrc -> client.qrc 2014-12-08 18:00:29 +01:00
Daniel Molkentin
d5f2c36abd Mirall -> (Desktop) Client 2014-12-08 17:54:32 +01:00
Daniel Molkentin
d86b3f04b1 Merge branch 'master' into rename_client 2014-12-08 17:44:04 +01:00
Klaas Freitag
72a90199db Wizard: Removed superflous text, as it is already in the header.
This fixes mirall#2358
2014-12-08 11:12:15 +01:00
Klaas Freitag
49bb861045 Removed useless debug output 2014-12-06 12:37:53 +01:00
Klaas Freitag
1d6661e7e4 Fix the number of displayed items in progress display for removes.
This fixes mirall#1132

A variable that counts the affected items of the propagator operation
done on a item was added to SyncFileItem. Usually that is 1 because
most operations affect only the item itself. But for removes, the
number can be higher for directories (one remove removes a whole tree).

Some rearrangements were needed.
2014-12-06 12:31:45 +01:00
Christian Kamm
40f44c2389 DB: Delete corrupt database. #2547
* Also use readonly DB access for SocketAPI.
2014-12-04 15:35:55 +01:00
Olivier Goffart
441b5bd1dc Setup Wizard: remove all folder definition before starting a new sync
Issue #1989
2014-12-04 15:18:27 +01:00
Christian Kamm
dc2f0d59cb FolderWizard: Clean up naming of 'add folder' button. #2371 2014-12-04 10:47:26 +01:00
Christian Kamm
4dcfacf2d5 Fix compile. :/ 2014-12-04 09:59:24 +01:00
Christian Kamm
b7485106ef NetworkJobs: Set timeout to 5 minutes everywhere. 2014-12-04 09:54:17 +01:00
Christian Kamm
f82893496b Fix typo. 2014-12-04 09:54:15 +01:00
Christian Kamm
c418e58f88 Etag job scheduling: Silence warnings, make prettier. 2014-12-04 09:52:13 +01:00
Klaas Freitag
9ea359de52 GUI: Check if there are sync folders configured and how proper msg.
This fixes #2264
2014-12-03 17:11:42 +01:00
Christian Kamm
b7d7f424c5 FolderMan: only touch _currentSyncFolder when done #2407
Also simplity terminateSyncProcess() to always terminate the
*current* sync run. Only one can be running at a time anyway.
2014-12-03 13:46:37 +01:00
Markus Goetz
46bd473664 Folders: Move ETag check scheduling to FolderMan
Only 1 check per time is able to run now.
For #2553
Might improve #2479 #2485 #2534
2014-12-02 22:32:54 +01:00
Daniel Molkentin
6030fec6cb Fix typo 2014-12-02 15:08:15 +01:00
Daniel Molkentin
b7323dc403 Merge branch 'master' into rename_client 2014-12-02 14:33:28 +01:00
Daniel Molkentin
c6d74d6c12 Fix typo 2014-12-02 14:33:17 +01:00
Daniel Molkentin
a42709f814 Namespace fixes 2014-12-02 14:20:13 +01:00
Daniel Molkentin
3016844dd7 Merge branch 'master' into rename_client
Conflicts:
	README.md
	src/gui/folderman.cpp
	src/gui/settingsdialog.cpp
	src/libsync/accessmanager.cpp
	src/libsync/propagateupload.h
2014-12-02 13:37:22 +01:00
Olivier Goffart
8fbb55a0c8 Wizard: Fix escaping of error message.
An url can contains % signs, so if it does, the errors formating was wrong
because of the use of QString::args

Also, the error is in html format, and we need to let the message box know
that, otherwise we will just see <br/>
2014-12-02 10:22:46 +01:00
Olivier Goffart
f046a7e7fe Wizard: Attempts to really close the database when starting the backup
Still for issue #1989
2014-12-02 10:22:46 +01:00
Markus Goetz
92ce707268 Bandwidth: Fix issue with removed download jobs
The measuring broke when a job that is currently measuring was removed.
2014-12-02 09:37:48 +01:00
Daniel Molkentin
3f5887cc03 Merge pull request #2565 from owncloud/accountsettings_itemsontop
Refactor generic settings dialog
2014-12-01 15:01:45 +01:00
Olivier Goffart
fb3f5d86cf Fix compilation after merge 2014-12-01 14:41:39 +01:00
Olivier Goffart
512492bf30 Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/libsync/propagatedownload.cpp
2014-12-01 14:37:47 +01:00
Daniel Molkentin
afee1ee1c0 Make all ptr-based members either const or check for their existance 2014-12-01 13:08:49 +01:00
Olivier Goffart
3253cc38b2 Propagator upload: Mark error while opening the file as SoftError
Because otherwise a lot of error are shown to the user when
the user deletes a directory that is syncing

Task #1981
2014-12-01 12:22:52 +01:00
Olivier Goffart
b154e1baa1 Nautilus shell integration: Use fallback when XDG_RUNTIME_DIR is not defined
Same fallback as in Qt5

Task #2477
2014-12-01 12:06:09 +01:00
Daniel Molkentin
714599aeaa Refactor generic settings dialog
- move items on top like on Mac OS (right is free for accounts now)
- The account icon no longer reflects the current status (in prep for multi-account)
2014-12-01 11:37:06 +01:00
Olivier Goffart
fc3a8b944e Propagator: Don't forget to mark the direcotry as finished if its first job fails
Otherwise we would go ahead and propagate the content of the directory
2014-11-27 15:36:13 +01:00
Olivier Goffart
2ed2ef3b28 Propagator QNAM: Fix resuming
We forgot to account the fact that we could have been resuming when
comparing the size of the Content-lenght to the size of the temporary file
2014-11-27 14:50:49 +01:00
Olivier Goffart
e7e91b6931 Revert "Folder: Don't blindly trigger sync on first EtagJob result"
We need to do a sync even if the etag was empty because we do not know
if this is because the etag really changed or because it was new.

Also, some part of the code rely on this fact to schedule a sync.

The fact that there is two sync with 30 sec at the beginning is not
a big problem, because we also need to do the sync the put the directory
etag in the db.

This reverts commit 1c001ee138.
2014-11-27 12:50:36 +01:00
Olivier Goffart
1f9d02e7fa Shibboleth: Fix our implemtnation of CookieJar::deleteCookie
It was deleting too many cookies.
That function is virtual in Qt5 and is used when adding cookie.
But some Shibboleth have several cookies with the same name, and we need to keep them.

Our implementaiton was meant to delete all the shiboleth cookies when we want to log out
2014-11-27 12:26:59 +01:00
Olivier Goffart
c9c1547813 Compile with Qt4
(QSharedPointer::reset is only in Qt5)
2014-11-25 16:24:47 +01:00
Olivier Goffart
9a8c868793 Propagator upload: Remove debug output 2014-11-25 15:34:06 +01:00
Olivier Goffart
13ec5da84e neon jobs: Start them in their thread. 2014-11-25 15:08:32 +01:00
Klaas Freitag
3e34d000f2 Propagator: Add the chunk size to PUT requests. 2014-11-25 10:21:33 +01:00
Olivier Goffart
734db6f932 propagate Upload: Let the poll job count for a job
In order to avoid that there are many concurrent poll jobs that takes
all the QNAM channel and causes timeouts of queued jobs
2014-11-24 13:33:13 +01:00
Olivier Goffart
d76e3c0488 Parallel chunk upload: abort all chunks if one of them errors out 2014-11-24 12:05:25 +01:00
Olivier Goffart
c0de20dda0 UploadDevice: reduce debug verbosity 2014-11-24 12:05:25 +01:00
Markus Goetz
79c37f9fe4 Poll Jobs: Properly use DB index
Why do we sometimes use 0-based, sometimes 1-based indices?
2014-11-24 11:35:39 +01:00
Olivier Goffart
c460b3f3be Bandwith manager: It needs do be initialiazed after the limits of the propagator 2014-11-21 16:55:46 +01:00
Markus Goetz
1c001ee138 Folder: Don't blindly trigger sync on first EtagJob result
For #2352
2014-11-21 16:47:15 +01:00
Olivier Goffart
78362af168 Compile with TOKEN_AUTH_ONLY
(QtGui is not included in that case)
2014-11-21 12:15:41 +01:00
Olivier Goffart
1c58b75ac2 Merge branch '1.7' 2014-11-21 11:08:20 +01:00
Olivier Goffart
41568c885d Propagator: only check the content-lenght if it is there
If content-lenght is 0, don't chack it is the size we recieved.
It can be zero when using HTTP chunk encoding.

Also do not remove the temporary file so it can be re-used on the next sync
and ask for a new sync immediatly to re-do the sync.

Fixup the fix to task #2528
2014-11-21 11:03:14 +01:00
Klaas Freitag
65a307970b Propagator: Compare the actual file size with the request content length
The values must match. Otherwise the request did succeed, but the file
was not downloaded completely.

This fixes https://github.com/owncloud/mirall/issues/2528
2014-11-20 18:49:34 +01:00
Christian Kamm
3e3ca14b4c Print ssl library version only on Qt >=5.0.0. 2014-11-20 13:46:44 +01:00
Christian Kamm
8b45d1c928 Sync: Change force-sync interval to 2h everywhere. #2297 2014-11-20 13:38:32 +01:00
Christian Kamm
0fe7a69b39 FolderWatcher: Detect own changes. #2297 2014-11-20 13:16:29 +01:00
Christian Kamm
6d09f1b6c0 Folder watcher now reports changing paths instead of dirs. 2014-11-20 12:51:16 +01:00
Christian Kamm
1ada20ac7b Linux folderwatcher: Get full path of changed file. #2297 2014-11-20 12:42:59 +01:00
Christian Kamm
d04eedeb8d OSX: Trust the file watcher. #2297
* Use a bigger default force sync interval (2h)
* Allow the file watcher to schedule a sync while a sync for
  the same file is running.
2014-11-20 12:42:59 +01:00
Christian Kamm
f275002ebe Merge branch '1.7' 2014-11-20 12:41:06 +01:00
Christian Kamm
d4e0941c27 Windows filewatcher: switch to ReadDirectoryChangesW.
Based on danimo's #2454 fix for #2455 and related to #2297.
2014-11-20 12:36:17 +01:00
Christian Kamm
9dc57359b9 csync db files: Hide after some commit/transactions. #2461
The shm and wal files are only created later.
2014-11-20 12:30:04 +01:00
Christian Kamm
4d7b8bdb25 Merge remote-tracking branch 'origin/1.7'
Conflicts:
	OWNCLOUD.cmake
	test/CMakeLists.txt
	test/testfolderwatcher.h
2014-11-19 14:45:25 +01:00
Christian Kamm
421a8cc6b7 Windows: Make unit tests compile. 2014-11-19 14:18:37 +01:00
Christian Kamm
3706c76622 useLegacyJobs: Fix logic. 2014-11-19 10:31:42 +01:00
Olivier Goffart
9a6710e330 Propagator: add a bit of documentation comments 2014-11-18 17:54:53 +01:00
Olivier Goffart
1113980b20 Propagator: Change the scheduler
It still needs to be a bit optimized, but it allows to paralelized jobs between directories

(this is required to paralelize the mkcol)
2014-11-18 17:35:31 +01:00
Olivier Goffart
0b275c4933 Revert "WiP: switch to ReadDirectoryChangesW" 2014-11-17 11:11:13 +01:00
Olivier Goffart
e529bbed90 Merge pull request #2454 from owncloud/fswatcher_readdirectorychanges_port
switch to ReadDirectoryChangesW
2014-11-17 09:43:29 +01:00
Olivier Goffart
a3b21022af new bandwith limiting: Do a test on the Qt version to activate it
We need Qt 5.3.3.
If the compiled qt version is Qt 5 but smaller than Qt 5.3.3, do a runtime
check.

OWNCLOUD_NEW_BANDWIDTH_LIMITING is still there for a special setup in which
we patch Qt with the patches
2014-11-14 17:29:28 +01:00
Olivier Goffart
ad92e7b888 Move UploadDevice to the right header 2014-11-14 16:40:13 +01:00
Olivier Goffart
c73522de2e Remove ChunkBlock
It is not in used
2014-11-14 16:39:39 +01:00
Olivier Goffart
14f5e8e32e Move all the neon code to the _legacy files 2014-11-14 16:13:50 +01:00
Olivier Goffart
f3797abecf Fix the PropfindJob
-the namespace mangling was wrong
-And the way we read the reply did not work
2014-11-14 15:03:48 +01:00
Markus Goetz
5b7ec19778 SyncEngine: Also output the neon version 2014-11-14 15:02:09 +01:00
Olivier Goffart
1310bef528 Port the propagate mkdir to QNAM
This way we can make it parallel
2014-11-13 18:57:07 +01:00
Markus Goetz
348b7bf4eb SyncEngine: Output versions used 2014-11-12 09:21:37 +01:00
Markus Goetz
30479cc5a2 Wizard: Properly show error message 2014-11-12 09:21:37 +01:00
Daniel Molkentin
7246011b62 Merge pull request #2459 from owncloud/typo
fix typo
2014-11-12 00:09:22 +01:00
Daniel Molkentin
281c0e1553 Merge branch 'master' into rename_client
Conflicts:
	CMakeLists.txt
	src/gui/main.cpp
	src/libsync/accessmanager.cpp
	src/libsync/accessmanager.h
	src/libsync/owncloudpropagator_p.h
2014-11-12 00:07:59 +01:00
Daniel Molkentin
cdac8d56d5 Merge remote-tracking branch 'origin/master' into crashreporter
Conflicts:
	src/libsync/utility.cpp
	src/libsync/utility.h
2014-11-11 23:53:38 +01:00
Olivier Goffart
7b4be209aa MOVE: fix moving with special character.
The Destination header need to be %-encoded
2014-11-11 16:27:06 +01:00
Olivier Goffart
c712b7c46c Parallel MOVE by porting the job to qnam 2014-11-11 16:09:01 +01:00
Olivier Goffart
22c6892870 DELETE: Error out if the HTTP code is not 204 2014-11-11 14:32:25 +01:00
Olivier Goffart
134650eb44 Parallel DELETE 2014-11-11 13:19:29 +01:00
Olivier Goffart
506ba022f1 Split propagator_qnam.cpp into propagateupload.cpp and propagatedownload.cpp 2014-11-11 12:17:10 +01:00
Klaas Freitag
fc6d572a6c Make compile against Qt4 2014-11-11 10:10:46 +01:00
Daniel Molkentin
b54c079766 Adjust issue urls 2014-11-09 23:38:07 +01:00
Daniel Molkentin
2db17a57d2 Fix header names 2014-11-09 23:25:57 +01:00
Daniel Molkentin
a992c5b8d3 Fix build 2014-11-09 23:10:18 +01:00
Daniel Molkentin
269b59c2ba More CMake adjustments 2014-11-09 22:58:24 +01:00
Daniel Molkentin
d57d3cf1f6 Drop Mirall from strings 2014-11-09 22:35:29 +01:00
Daniel Molkentin
ae85aa33fd Adjust namespaces 2014-11-09 22:34:07 +01:00
Daniel Molkentin
f2eadacf09 Remove "Mirall" from class names 2014-11-09 22:30:29 +01:00
Daniel Molkentin
9ebc41ed6f Remove "Mirall" from cmake project files 2014-11-09 22:30:05 +01:00
Olivier Goffart
7ae6712d56 Add a few Q_DECL_OVERRIDE 2014-11-08 11:21:48 +01:00
Olivier Goffart
98a283b4ec Fix clang warnings 2014-11-08 11:21:48 +01:00
Olivier Goffart
d524f6b395 Fix compilation errors after merge 2014-11-08 11:11:05 +01:00
Olivier Goffart
6b716683e2 Merge the long PUT Poll URL feature with the new sql backend 2014-11-08 11:09:50 +01:00
Olivier Goffart
ba2c33af0b Fix the il branch merge: Move the bandwidthmanager to libsync 2014-11-08 10:52:14 +01:00
Olivier Goffart
de11f602d5 Merge remote-tracking branch 'origin/il'
Conflicts:
	csync/src/csync_private.h
	src/CMakeLists.txt
	src/gui/folder.cpp
	src/libsync/owncloudpropagator.cpp
	src/libsync/owncloudpropagator.h
	src/libsync/propagator_qnam.cpp
	src/libsync/propagator_qnam.h
	src/libsync/syncengine.cpp
	src/libsync/syncengine.h
	src/mirall/syncjournaldb.cpp
2014-11-08 10:48:36 +01:00
Volkan Gezer
260c8e0227 fix typo 2014-11-07 17:51:15 +01:00
Daniel Molkentin
7c034b427e Handle invalid handle & fix an issue found during code review 2014-11-07 14:52:31 +01:00
Daniel Molkentin
f25d175b5d Merge remote-tracking branch 'origin/1.7' 2014-11-06 19:54:20 +01:00
Olivier Goffart
b70ecc3dd3 Never overwrite the mtime from the local file system in the db when updating the metadata
Attempt to fix #2431
2014-11-06 15:13:10 +01:00
Daniel Molkentin
89670e5ce4 Folderwatcher_win: handle conversion error 2014-11-06 12:54:33 +01:00
Christian Kamm
174e1acbc7 Folder::wipe(): Remove partial downloads and -shm,-wal db files. 2014-11-06 12:49:02 +01:00
Christian Kamm
1f09a24a72 Resync button: Remove partial downloads too. #2445 2014-11-06 12:17:04 +01:00
Christian Kamm
eed91ddf46 Legacy propagator: Don't use mtime retrieved via _fstat64.
May be the cause of #2431
2014-11-06 12:16:55 +01:00
Daniel Molkentin
96a7118d05 WiP: switch to ReadDirectoryChangesW 2014-11-06 12:04:33 +01:00
Klaas Freitag
6eec896282 FolderWatcher: Check for hidden outside of loop 2014-11-06 09:23:30 +01:00
Christian Kamm
a49a6bfd88 Logging: Report setModTime failures.
Ths may be helpful for #2252 and maybe even #2431.
2014-11-05 13:20:19 +01:00
Christian Kamm
b87931c0a9 Logging: Print etags, not just result of comparison. 2014-11-05 13:08:53 +01:00
Christian Kamm
9b640d586b Wizard: Fix local folder warning in advanced setup wizard. #2362
The _oldLocalFolder should always be the previously configured
folder, not the one that was most recently chosen on the wizard
page.
2014-11-05 12:10:41 +01:00
Christian Kamm
7440ffc0e6 Download: Fix data loss when rename fails. #2428 2014-11-05 11:00:46 +01:00
Markus Goetz
cf6219bb6f NetworkJobs: Improve timeout handling and increase timeout by 5 sec 2014-10-30 11:54:58 +01:00
Christian Kamm
45eeb5065f Download: Avoid overwriting file with case conflict. #1914 2014-10-30 09:06:53 +01:00
Klaas Freitag
ef16c409ef Merge pull request #2393 from svkurowski/issue-2215
Switch monochrome systray icon color depending on systray brightness
2014-10-29 14:54:33 +01:00
Olivier Goffart
1eccfb798f Add missing license headers
Part of #2068
2014-10-29 13:30:46 +01:00
Klaas Freitag
b9b9f3c136 Propagator: Schedule a resync immediately if file is modified during upload 2014-10-29 13:10:56 +01:00
Olivier Goffart
7810da51a8 Propagator: report error when deleting directories
Will help to understand why a directory cannot be removed

Will help for #2348
2014-10-29 12:23:48 +01:00
Christian Kamm
4e20a02fe5 SyncJournalDB: Add filesize column to metadata.
* Alter table to include column.
* Make get/set in SyncJournalDB store and load it.
* Make csync recover the stat_t's size member from it.
2014-10-29 09:53:36 +01:00
Markus Goetz
7bad731ad2 CheckServerJob: Guard again null reply
Lucia had reported a crash in this function
2014-10-29 09:38:20 +01:00
Daniel Molkentin
dc1e73dcb7 Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/libsync/syncjournaldb.cpp
	test/CMakeLists.txt
2014-10-28 23:27:58 -04:00
Markus Goetz
782463589e ownSql: Also mention filename 2014-10-28 21:50:09 +01:00
Markus Goetz
ff570c4a6b ownSql: Don't set busy timeout on bad object 2014-10-28 21:46:30 +01:00
Klaas Freitag
105ff694f2 SyncEngine: Handle 503 condition as soft error to properly handle etags.
Otherwise the ETags could be removed from the db and cause file
deletes.
2014-10-28 17:13:21 +01:00
Olivier Goffart
5723abe6eb Merge remote-tracking branch 'origin/fix_service_unavailable' into 1.7 2014-10-27 20:49:46 +01:00
Klaas Freitag
0692fea9d8 discovery: handle 503 reply code from server for directories
503 for directories means that the dir is a mounted directory from an
external mount which currently is not available. The directory is
ignored and not traversed into during discovery phase.
2014-10-27 19:21:12 +01:00
Markus Goetz
b0882a5cd2 Fix compile 2014-10-27 17:18:49 +01:00
Markus Goetz
4c1a0005e6 Make two more asserts usable in nondebug 2014-10-27 16:01:18 +01:00
Markus Goetz
05ceed926c SyncEngine: Log for an assert, return -1 for nondebug compile 2014-10-27 15:52:17 +01:00
Olivier Goffart
ce300d88ee Wizard: show the choice to start a clean sync if the directory exist even on new accounts
Task #2406
2014-10-27 13:05:17 +01:00
Brandon Coleman
05c0249672 correct spelling on user is empty error. 2014-10-27 07:59:31 -04:00
Brandon Coleman
2498c13078 options are required at the beginning of owncloudcmd.
Conflicts:
	src/owncloudcmd/owncloudcmd.cpp
2014-10-27 07:59:31 -04:00
Olivier Goffart
cddad94e45 Selective Sync: change the label text
to specify that the files will be removed from the local folder

Task #2404
2014-10-27 11:33:25 +01:00
Brandon Coleman
ece1100d65 options are required at the beginning of owncloudcmd. 2014-10-26 15:33:50 -05:00
Brandon Coleman
e5b03634ae correct spelling on user is empty error. 2014-10-25 11:01:58 -05:00
Sascha Vincent Kurowski
59f18583d1 Switch monochrome systray icon color depending on systray brightness.
https://github.com/owncloud/mirall/issues/2215

As of version 10.10 Yosemite, Mac OS X offers the user the option to use
a dark version of the dock and menu bar. The systray icon was black even
on the dark menu bar, thus rendering it nearly impossible to spot.
2014-10-24 21:52:41 +02:00
Christian Kamm
1c4072e231 Selective sync ui: Fix #2390 2014-10-24 16:11:29 +02:00
Klaas Freitag
86e13ea06f FolderMan: Use folderForPath method to get the folder object for a path 2014-10-24 15:07:33 +02:00
Klaas Freitag
c12d3870cd Merging work branch for a bug fix for bug #2379.
It closes all db connections if the new local path is a already
synced folder path.
2014-10-24 14:43:48 +02:00
Christian Kamm
fce76a13cb Sync scheduling: Only do a follow-up sync 3 times. #2355
After trying again immediately for 3 times, no more fast follow-ups
are run until a sync finishes without needing a fast follow-up.
2014-10-24 13:31:48 +02:00
Christian Kamm
82b14370fc Sync scheduling: Only retry up to twice after fail. #2386
Previously when a sync failed, we'd retry very soon (30s) no matter how
often a sync had failed before. After this change we'll retry twice and
then back off to the regular 5min interval.
2014-10-24 13:31:48 +02:00
Klaas Freitag
a9d8e9dcd8 Setupwizard: Close the database in case of moving the folder. 2014-10-24 13:05:29 +02:00
Klaas Freitag
542e989046 Setup Dialog: Terminate sync if the new folder is a an actual folder. 2014-10-24 11:59:56 +02:00
Klaas Freitag
f5c199740d Followup: To unregister a path in socket api use the alias of folder. 2014-10-24 11:36:01 +02:00
Klaas Freitag
f37b81c8b7 Unregister path in socketapi before removing it. 2014-10-24 11:12:06 +02:00
Christian Kamm
c0ea69ee24 SqlQuery: Reset after each successful exec().
In e5269a4151 I moved the reset calls to
before the first bindValue() because we didn't consistently reset()
after exec().

However, some queries may keep a lock on the database so it is necessary
to reset() as soon as the data is read. This commit reintroduces these
reset() calls.
2014-10-24 10:11:00 +02:00
Christian Kamm
5640cbf653 SqlDatabase: Make it non-copyable. 2014-10-24 09:56:30 +02:00
Daniel Molkentin
3c7ff97ed4 SocketAPI: Don't use a theme dependent name for now
We will revert this once #2388 is implemented
2014-10-23 17:46:17 -04:00
Christian Kamm
e5269a4151 Add SyncJournalDB autotests.
There also was a bug in syncjournaldb: in some error conditions the
sql query wasn't reset properly. We now always reset a query before
calling bindValue.
2014-10-23 15:15:47 +02:00
Markus Goetz
0d9ae241c9 OwnCloudFinder: Rename to SyncStateFinder
Project file names stay the same, only the output file(s) changed
2014-10-23 12:19:19 +02:00
Klaas Freitag
e726e7aad8 util: Use canonicalFilePath to clean the path opened by explorer.
This fixes bug #2299
2014-10-23 10:41:07 +02:00
Olivier Goffart
de56b753d1 protocolwidget: fix string that need to use plural translation 2014-10-22 18:26:40 +02:00
Olivier Goffart
e46ab72718 SocketAPI: Show error when we are not allowed
Issue #1931
2014-10-22 17:25:38 +02:00
Olivier Goffart
9330d2e1e8 SocketAPI: always clean the path and use the normal slash 2014-10-22 15:33:35 +02:00
Olivier Goffart
020e19f770 SocketAPI: Fix all files are new
(Introduced because of bad resolution of merge conflict
in my last commit)
2014-10-22 15:32:09 +02:00
Olivier Goffart
22dd275b15 SocketAPI: Fix the shared symbol, including for owncloud6 Shared dir
The shared symbol would not appear if the status came for estimateState

Also added the shared symbol for the Shared/ directories (owncloud 6 compat)
2014-10-22 15:10:21 +02:00
Markus Goetz
6342e76e19 Wizard: Change misleading text 2014-10-22 15:06:33 +02:00
Markus Goetz
55dd149a03 SocketAPI: Less verbose 2014-10-22 14:43:23 +02:00
Markus Goetz
39a0f28753 Move qtmacgoodies module forward 2014-10-22 14:43:03 +02:00
Olivier Goffart
7740150576 Selective Sync widget: add a "Loading..." label
Task #2088
2014-10-22 13:48:05 +02:00
Olivier Goffart
4f367faf4d SocketAPI: Show an error for files inside the selective sync folders
Task #2283
2014-10-22 13:31:20 +02:00
Olivier Goffart
3840186dd8 Utility: fix function signature 2014-10-22 13:31:20 +02:00
Daniel Molkentin
ed51a45187 Add title to selective sync dialog 2014-10-22 06:29:22 -04:00
Christian Kamm
c832226aa1 Merge remote-tracking branch 'origin/1.7' into master 2014-10-22 12:25:58 +02:00
Christian Kamm
a20375372d Blacklist: Don't ignore error files forever. #2247
Instead try them again regularly, but don't show the user any
error messages if the error persists.
2014-10-22 12:25:18 +02:00
Olivier Goffart
6073e3f345 SocketAPI: do not show a progress icon in case of errors 2014-10-22 12:19:57 +02:00
Olivier Goffart
d31ccacf57 SocketAPI: show an ignored icon for paused folders 2014-10-22 12:19:57 +02:00
Klaas Freitag
3243365210 JournalDb: Do not longer always have a write operation on version table.
Rather read the value from the table and if it is what we expect do not
write it.
2014-10-22 10:59:58 +02:00
Christian Kamm
7ae0338f5c Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/CMakeLists.txt
	src/cmd/cmd.cpp
	src/gui/socketapi.h
	src/libsync/syncengine.h
	test/CMakeLists.txt
2014-10-22 10:41:55 +02:00
Markus Goetz
a993496ab4 SyncJournalDB/SyncEngine: Properly detect 1.5 upgrade
Else we end up never reading file data from the DB.
2014-10-21 20:25:15 +02:00
Markus Goetz
d7ac878efd SyncJournalDB: Fix deleteBatch 2014-10-21 16:37:51 +02:00
Markus Goetz
e5a0db8782 SyncJournalDB: Fix version table filling up 2014-10-21 16:37:39 +02:00
Markus Goetz
24d4840c93 SyncJournalDB: Set WAL files to hidden 2014-10-21 15:58:56 +02:00
Markus Goetz
fa70798fb5 SyncJournalDB: WAL checkpoint at end of sync 2014-10-21 15:41:11 +02:00
Markus Goetz
1af480ea3b CMake: Fix RPATH 2014-10-21 15:39:31 +02:00
Olivier Goffart
a76fc0ee5a SocketAPI: send the change of the parent folder in the broatcast
Also do not compute the status if there is nno listeners
2014-10-21 15:26:51 +02:00
Olivier Goffart
80e86d6c1b ownsql: fix warning with clang
warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
2014-10-21 14:59:42 +02:00
Olivier Goffart
dc13e39bb1 SocketAPI: do not have a special case for UPDATE_VIEW on windows
This is a relique on the old times when there was no persistant connection
in the windows plugin
2014-10-21 14:57:50 +02:00
Markus Goetz
5d048c18bc Sqlite3: Switch to WAL
This is faster.
2014-10-20 23:09:28 +02:00
Markus Goetz
0fb779d363 SyncEngine: De-initialize recursive PROPFIND value correctly 2014-10-20 22:24:28 +02:00
Daniel Molkentin
d0ed82a686 We need SqlDatabase and SqlQuery to be exported
Required due to 53b3e5af1b
2014-10-20 19:58:10 +02:00
Klaas Freitag
26f068bcab SocketApi: Properly manage the database connections.
Removed the fishy closeDb() method of SqlQuery again.
2014-10-20 17:31:33 +02:00
Markus Goetz
f0dc3725e8 ownSql: Still also use sqlite3 busy handler 2014-10-20 17:26:25 +02:00
Markus Goetz
2de22b408b SyncEngine: Avoid transaction warning 2014-10-20 17:20:58 +02:00
Klaas Freitag
04b62b139d Fix compile error and add warning. 2014-10-20 17:10:34 +02:00
Klaas Freitag
2f20f3c65d SocketApi: Instanziate Object to call QFileInfo::exists
QFileInfo on Qt4 does not have static members.
2014-10-20 17:05:14 +02:00
Klaas Freitag
53b3e5af1b SocketAPI: Use new class SqlQuery to cache the sql queries.
This results in better handling of the BUSY condition through SqlQuery.
2014-10-20 16:55:37 +02:00
Markus Goetz
7dbb98c2e5 SyncEngine/SyncJournalDB: Don't keep transactions open 2014-10-20 16:50:55 +02:00
Markus Goetz
8b35cda4c6 SyncEngine: Refactor startSync() code 2014-10-20 15:51:50 +02:00
Markus Goetz
cb36a37779 SyncEngine/SyncJournalDB: Fix creation of .csync_journal 2014-10-20 14:27:00 +02:00
Markus Goetz
704c5f2de7 NetworkJobs: Higher timeout for pre-oC7
Pre-oc7 has PHP session locking for PROPFIND (by recursive PROPFIND in csync_update),
the oc7 doesn't.
2014-10-20 13:34:09 +02:00
Klaas Freitag
3fcb0d2d6b SocketAPI: Properly release precompiled statements. Use sqlite3_close
rather than its v2 equivalent. That should make it compile on older
linux platforms.
2014-10-20 10:51:03 +02:00
Klaas Freitag
2dfe0ed42e Remove unused variable, fixes compile warning. 2014-10-20 10:51:03 +02:00
Daniel Molkentin
6048a7143a Revert "Remove references to qsqlite3"
QtWebkit needs it

This reverts commit b1c10c8454.
2014-10-20 10:27:34 +02:00
Klaas Freitag
b5736fb5a7 Sql: Handle SQLITE_BUSY properly for sqlite3_step and sqlite3_prepare.
Repeat the statements a couple of times and sleep in between.
2014-10-18 16:16:29 +02:00
Klaas Freitag
7822a6b000 csync_statedb: Finalize the precompiled statements after discovery.
As described in http://www.sqlite.org/cvstrac/wiki?p=MultiThreading precompiled
statements should not be used across thread borders. However, the reconcile
phase would reuse the statements if defined (it calls statedb function from
a different thread) so it is saver to finalize them at the end of the
update run.
2014-10-18 14:18:11 +02:00
Olivier Goffart
a5bd437d48 Propagator: Fix renaming of files and case confflicts
Better fix for #1385 and #2318
2014-10-17 16:15:03 +02:00
Olivier Goffart
08156186fa Revert "propagator: Do not check for case clash when renaming"
This caused test regressions in t8.pl (#2318)

This reverts commit dad8c1c27c.
2014-10-17 16:15:03 +02:00
Markus Goetz
f1006ca8b0 owncloudcmd: Always need exclude list
Try to load the system list or the user supplied list.

For #2322
2014-10-17 15:58:01 +02:00
Markus Goetz
93c85711d1 ownSql: Always use finish() 2014-10-17 13:39:48 +02:00
Markus Goetz
e5ef5f2410 Revert "socketapi: if the filename is empty, it's actually /"
Not needed, the socketapi checks for "".

This reverts commit 561e3c780d.
2014-10-17 13:29:34 +02:00
Daniel Molkentin
52a5729298 Merge pull request #2319 from owncloud/sqlite_capi
Introduce a common sqlite layer across csync and mirall.

This avoids conflicts that both each load different and/or updated sqlite versions.
2014-10-17 12:11:27 +02:00
Daniel Molkentin
4525161e7c Updater: allow overriding update URL through environment 2014-10-17 12:07:18 +02:00
Daniel Molkentin
dee6d18d69 Discovery phase: Improve UI by quoting folder names 2014-10-17 12:07:18 +02:00
Daniel Molkentin
d44179142f Discovery phase: Properly decode percent encoding 2014-10-17 12:07:18 +02:00
Klaas Freitag
c66c01245b Beautified some debug logging strings. 2014-10-17 11:35:06 +02:00
Markus Goetz
b1c10c8454 Remove references to qsqlite3 2014-10-16 17:51:17 +02:00
Markus Goetz
1d5b3aadea sqlite3: Bundle 3.8.6 for Mac and Windows
it is linked into ocsync.
2014-10-16 17:38:45 +02:00
Markus Goetz
2d420cd72c ownSql: Always use SQLITE_TRANSIENT
More safe.
2014-10-16 15:30:50 +02:00
Markus Goetz
707d6880a8 main: Show console message if already running 2014-10-16 15:25:33 +02:00
Markus Goetz
dbad1a8d45 ownSql: Don't allow copying of SqlQuery
This fixes a crash on OS X where the destructor
calls sqlite3 to invalidate the underlying handle.
2014-10-16 15:10:25 +02:00
Klaas Freitag
36eaff92e5 JournalDb: Some Sql statement fixes, make t7 work again.
plus some minor fixes.
2014-10-16 11:22:57 +02:00
Klaas Freitag
e51c299937 ownSql: create an null value of an empty string in bindValue. 2014-10-16 11:20:50 +02:00
Klaas Freitag
8c7953a47c ownSql: Proper initialization of result value plus assert on it. 2014-10-16 11:20:21 +02:00
Daniel Molkentin
4527784905 Second part of #1661
- QT_INSTALL_TRANSLATIONS was not defined in Qt5
- Some languages have been split up in multiple qm's. We only need qtbase for now
2014-10-16 11:08:29 +02:00
Klaas Freitag
ee8a93ae9a ownSql: Proper initialization of errId 2014-10-16 10:39:10 +02:00
Klaas Freitag
89c51e7649 ownsql: Implement the transaction functions. 2014-10-15 19:47:25 +02:00
Olivier Goffart
2bba4134fb owncloudgui: Fix a small leak
The systray icon were not destroyed while qutting
2014-10-15 18:11:52 +02:00
Klaas Freitag
336c95ce5b ownsql: Cleanups: In modern C++, we use 0 instead of NULL 2014-10-15 16:46:39 +02:00
Klaas Freitag
babe891242 SyncEngine: Show a warning if post update script can not be exec. 2014-10-15 16:43:58 +02:00
Klaas Freitag
eeb5ca42e0 ownsql: Added some paranthisis to make clear whats happening. 2014-10-15 13:29:25 +02:00
Daniel Molkentin
03ee742981 Correct lookup logic for Qt translations
Fixes #1661
2014-10-15 09:33:38 +02:00
Klaas Freitag
0094c1ecf5 Make the sync work with new sql implementation. 2014-10-14 20:51:51 +02:00
Klaas Freitag
357c08c5b3 NewSQL: minor fixes to get stuff going 2014-10-14 12:18:33 +02:00
Klaas Freitag
e7d9ec50dc Merge branch 'sqlite_capi' of github.com:owncloud/mirall into sqlite_capi
Conflicts:
	src/mirall/socketapi.cpp
2014-10-14 11:43:10 +02:00
Klaas Freitag
09b0ba31ef Sql: New implementation of ownSql class to go away from Qt's own Sql 2014-10-14 11:14:57 +02:00
Klaas Freitag
26ffa078ef SocketAPI: Cache database conections and statements 2014-10-13 17:31:40 +02:00
Markus Goetz
eb60aca34f SyncJournalDB: Clarify debug message 2014-10-13 17:29:26 +02:00
Markus Goetz
4d3020421a SocketAPI: Remove old dbFileRecord function
We will use the _capi functions
2014-10-13 17:29:26 +02:00
Markus Goetz
f1ce0a1cf3 SocketAPI: Use non-recursive (heuristic) computation of icons 2014-10-13 17:29:26 +02:00
Klaas Freitag
dd28a645a1 SocketAPI: Cleanup, removed helper namespace, added as private methods. 2014-10-13 15:38:57 +02:00
Klaas Freitag
561e3c780d socketapi: if the filename is empty, it's actually / 2014-10-13 15:36:13 +02:00
Klaas Freitag
46fd79604d JournalDb: Do not use static variable for path. 2014-10-13 14:49:53 +02:00
Klaas Freitag
d08c2de619 Use sqlite C api. 2014-10-13 14:14:43 +02:00
Jürgen Weigert
07bcaaebf9 unreachable --version code made reachable.
error message improved.
2014-10-12 19:28:13 +02:00
Markus Goetz
b285e98988 SQlite: Print versions we use 2014-10-11 17:33:35 +02:00
Klaas Freitag
ab40ba2f75 owncloudcmd: Handle trust ssl switch correctly by overwriting trustssl
method in a subclass of HTTPCredentials.
2014-10-11 17:17:43 +02:00
Klaas Freitag
bbcb8ba3e7 credentials: Allow to trust ssl certs in subclasses of HTTPCredentials.
This allows to handle the --trust option in owncloudcmd. In the
owncloudcmd subclass of the httpcredentials, we allow to manually trust
the ssl certificate through a command line switch.
2014-10-11 17:17:43 +02:00
Markus Goetz
ef48de34f7 Logger: Log the thread pointer
Maybe we can somehow reduce this to make it not so many characters wide?
2014-10-11 16:58:47 +02:00
Olivier Goffart
7e898cf60c SelectiveSync: rename blacklist to selectiveSyncBlackList in some places
Issue #2301
2014-10-11 16:24:45 +02:00
Klaas Freitag
2f5cea0e73 owncloudcmd: Add a custom ssl verification callback for neon.
That fixes the SSL related problems we had with ci.owncloud.org
2014-10-11 15:55:37 +02:00
Olivier Goffart
282abdd804 Sync engine: Restart sync when we get a precondition failed error 2014-10-11 15:40:28 +02:00
Olivier Goffart
9b178c5bb2 Sync engine: Do not write to the database too early
It is possible that we have should_update_etag set to true for files
that we also need to propagate.  In which case we must not write to the DB
too early as this could cause data loss.  (cf: issue #2296)
2014-10-11 15:40:28 +02:00
Klaas Freitag
d491663143 owncloudcmd: Fix some slash screwup, to make the split succeed bug #2211 2014-10-11 15:14:07 +02:00
Klaas Freitag
8eaeba6486 owncloudcmd: Fix url handling with csync, make owncloudcmd sync again.
This fixes mirall issue #2211
2014-10-11 12:21:26 +02:00
Daniel Molkentin
77d2cba155 owncloudcmd: don't prompt for password if it was provided 2014-10-10 18:04:00 +02:00
Daniel Molkentin
2149092c7a owncloudcmd: Fix crash 2014-10-10 18:04:00 +02:00
Olivier Goffart
100d1361b6 Add Folder wizard: Sort the folders when selecting the remote folder
Issue #1872
2014-10-10 16:56:05 +02:00
Daniel Molkentin
76f5266fa1 Fix small inefficiency in socketapi 2014-10-10 16:20:57 +02:00
Daniel Molkentin
3ebe3b1196 Use local socket (named pipe) connection also on Windows 2014-10-10 15:57:05 +02:00
Daniel Molkentin
c4f96c2fba owncloudcmd: Implement --version, fix strings
Part of #2211
2014-10-10 15:55:58 +02:00
Olivier Goffart
d880f2ffbc propagator: Do not show an error message saying it was done by user interaction if it was not
There is many reasons why we could abort (for example timeouts)
And in this case we should not show to the user it was aborted
by user interaction
2014-10-10 14:58:56 +02:00
Klaas Freitag
9bb89dced5 Less offensive logging, only use error if there was one. 2014-10-10 10:16:59 +02:00
Markus Goetz
f0fef4f232 OS X: Fix .app creation for non-system Qt 2014-10-09 16:50:03 +02:00
Daniel Molkentin
7eb10a08b8 SSL error dialog: Remove debug noise 2014-10-09 16:49:31 +02:00
Olivier Goffart
4c83653d5d Selective sync: do not upload or rename file that would ends up in a not selected folder
Issue #2283
2014-10-09 16:50:03 +02:00
Christian Kamm
3149cd03be Sync scheduling: Never enqueue a folder while it is synced.
Issues: #2268, #2275
2014-10-09 15:55:10 +02:00
Christian Kamm
5314765410 fix compile 2014-10-09 15:55:10 +02:00
Olivier Goffart
621a37be15 Selective sync: Remove the etag of parent folders in the db when adding or removing items in the selective sync blacklist 2014-10-09 15:28:51 +02:00
Olivier Goffart
6de104a03a Selective Sync: ensure that the blacklist contains the last '/'
In the sync engine.  Because that makes tha tthe lower_bounds in selective sync works properly.

For example, if both "Test" and "Test Test" are in the list,  then "Test/Foo" would match the "Test Test"
 because slash is after space

Task #2289
2014-10-09 15:11:04 +02:00
Olivier Goffart
97560509ea Selective sync: change the text of the label.
Selective sync is a black list.  Unchecked folder are blacklisted
Partially checked folders are not in the blacklist and the files there
are sync'ed
2014-10-09 14:36:26 +02:00
Christian Kamm
dfba8fbe5e CheckServerJob: Require status code 200. #2290 2014-10-09 11:06:00 +02:00
Klaas Freitag
32fea6523f Use climits for ULONG_MAX rather than modern C++ option 2014-10-09 11:03:07 +02:00
Klaas Freitag
d1c1a18226 SyncJournal: Use precompiled statement in blacklist query. 2014-10-09 10:05:20 +02:00
Klaas Freitag
04558beabe SyncJournal: Use the NOCASE Collate for blacklist query. 2014-10-09 10:05:20 +02:00
Klaas Freitag
425d0d77c5 Two little typo fixes. 2014-10-09 10:05:20 +02:00
Christian Kamm
886f9d82f2 Sync scheduling: Improve logging. #2275 2014-10-09 09:01:35 +02:00
Daniel Molkentin
6c8eab734e Remove C++11ism that doesn't work with older GCCs 2014-10-08 18:56:30 +02:00
Christian Kamm
705cd571a5 Download: Don't store message body if status != 2xx #2280 2014-10-08 14:18:29 +02:00
Christian Kamm
48d3c75745 GET: Retry if bad range header used. #2280
* If a 416 is returned and we used a Range header, try again
  from scratch.
* The direct URL logic was also inconsistent for resumed downloads:
  it sent the Range header but didn't check the returned
  Content-Range header correctly. Now resuming is disabled for
  direct URL downloads.
2014-10-08 14:18:29 +02:00
Christian Kamm
285cb78962 Sync scheduling: Don't always force-sync. #2268
If lastEtag was null, a force sync was triggered. Force syncs
don't update the etag. The etag retrieval job would only run if
lastEtag was not null. So it could never become non-null.
2014-10-08 10:51:32 +02:00
Christian Kamm
708655d9b2 fix incomplete rename
from 9bd7ffe952
2014-10-08 09:36:47 +02:00
Christian Kamm
9bd7ffe952 blacklist: Fix stale blacklist removal. #2247
Use the right check to determine whether a file has a blacklist entry,
SyncFileItem::FileIgnored was incorrect because that denotes files from
the ignore list or blacklisted files with no retries left.

The blacklistedInDb flag does the right thing. Rename it to
hasBlacklistEntry to be more explicit.
2014-10-08 09:17:40 +02:00
Markus Goetz
8febd90f2a Propagator: Be less verbose 2014-10-08 09:07:29 +02:00
Daniel Molkentin
1579c23ff1 Fix order in which credentials are getting fetched 2014-10-07 18:21:22 +02:00
Markus Goetz
bf18ecae13 Propagator: Fix bw limiting bug, be less verbose in logging 2014-10-07 17:42:50 +02:00
Markus Goetz
89971925ca Propagator: Be more verbose about propagator choice 2014-10-07 14:55:30 +02:00
Markus Goetz
d1cc3c34c9 Propagator: Relative download limit 2014-10-07 14:46:55 +02:00
Markus Goetz
de79f9338a Propagator: Bandwidth limiting for new propagator 2014-10-07 14:46:55 +02:00
Olivier Goffart
5471bfd5a8 No need to update mtime and etag after a move
The server keeps the mtime and etag anyway.
And changing the mtime also changes the etag and so make other clients re-download
the file instead of detecting the move
2014-10-07 09:13:13 +02:00
Daniel Molkentin
961df010cb Propagator: Fix typo in Win32-only code 2014-10-06 15:39:49 +02:00
Klaas Freitag
12b09fab67 CaseClash: more defensive logging on Windows. 2014-10-03 11:54:32 +02:00
Klaas Freitag
41fa562dce blacklisting: disable broken remove stale entries function for now. 2014-10-03 11:35:18 +02:00
Klaas Freitag
81d3ce8257 cmake: Commented setting of the INSTALL_PREFIX var on Mac 2014-10-01 20:55:39 +02:00
Daniel Molkentin
bcc06af904 fix last commit 2014-10-01 17:46:29 +02:00
Daniel Molkentin
a98242a2b8 fix install target for macdeployqt 2014-10-01 17:32:17 +02:00
Olivier Goffart
0d303f1d1f SelectiveSync: sort the item instead of using the order from the server
Task #2259
2014-10-01 13:47:24 +02:00
Daniel Molkentin
dafd9c308f More removal of obsolete CMake code 2014-10-01 12:51:38 +02:00
Olivier Goffart
147fa60f81 Merge branch 'socketapi_localsocket' into 1.7 2014-10-01 12:34:22 +02:00
Olivier Goffart
a1b9405e2e Windows has not been ported back to QLocalSocket 2014-10-01 12:33:54 +02:00
Olivier Goffart
db02d44c6a No need to update mtime and etag after a move
The server keeps the mtime and etag anyway.
And changing the mtime also changes the etag and so make other clients re-download
the file instead of detecting the move
2014-10-01 11:22:00 +02:00
Klaas Freitag
dff1f77dfa SocketAPI: remove nonsense FIXME's. 2014-09-30 17:12:07 +02:00
Daniel Molkentin
1a2fff8ed8 OS X: Use a python script to fix for bundle fixup...
...rather than relying on cmake magic
2014-09-30 17:09:16 +02:00
Markus Goetz
52c12b33c3 OS X: CMD+H should hide the dialog 2014-09-30 15:21:55 +02:00
Klaas Freitag
479b340d75 Folderman: Check if socketApi member is non zero, no crashes. 2014-09-30 12:33:51 +02:00
Klaas Freitag
06c48f58cc SyncEngine: Use proper start indicator, max unit64.
This avoids a warning.
2014-09-30 12:29:24 +02:00
Klaas Freitag
0ee81a2865 SocketAPI: Set permission of the socket Directory.
Set that to be accessible by the owner only.
2014-09-30 11:23:49 +02:00
Klaas Freitag
e78c251832 SocketAPI: Split up for specific linux and mac implementation. 2014-09-30 11:23:49 +02:00
Markus Goetz
f8b73eb9d9 SocketApi: Port OS X to use local sockets 2014-09-30 07:36:20 +02:00
Olivier Goffart
a587148c73 SocketApi: Save the socket in $XDG_RUNTIME/<appname>/socket 2014-09-29 13:54:13 +02:00
Olivier Goffart
9acd3a58ee SocketApi: Use QLocalSocket after all for windows and linux
Relates issue #2189
2014-09-29 12:19:33 +02:00
Olivier Goffart
10989d13e4 Folder: Remove slotTerminateAndPauseSync
This make no sens to just set the pause config flag here. It make selective sync to mark
the folder as posed on restart
2014-09-26 12:43:54 +02:00
Olivier Goffart
b4071cec01 DiscoveryPhase: fix the name of a function
It was renamed from white list to black list long ago
2014-09-26 12:35:56 +02:00
Klaas Freitag
b1c842373d Add OWNCLOUDSYNC_EXPORT to make building on windows. 2014-09-26 10:07:50 +02:00
Olivier Goffart
a3d70b3cf6 Attempt to fix a crash
The reply might be null at the point we are timing out.
Issue #2246
2014-09-26 10:04:36 +02:00
Klaas Freitag
98d9f7924d SocketAPI: Before reporting something new check for parent permissions.
In case it is not allowed to create files or dirs because of missing
permissions in shares, the socket API has to report an error state
rather than the NEW state.

As discussed in mirall issue #1931
2014-09-25 21:52:20 +02:00
Klaas Freitag
172295289e Permissions: If a top level shared dir is removed, do not restore files in it
A top level shared dir can always be removed on the client, even if it is
read only shared. In that case, the removal means "unsharing". Fixed the
permission check accordingly.

See bug #1918 for more information.
2014-09-25 15:39:14 +02:00
Klaas Freitag
8ba08d7e87 Activity View: honor error string even if no warning
that allows to specify a more specific user message to be displayed.
2014-09-25 15:03:54 +02:00
Klaas Freitag
8915f94931 Mac Overlays: handle filenames with slashes properly.
There are filenames with slashes on MacOSX, they can be created
in Finder. Internally they are converted to colons.
2014-09-25 12:24:32 +02:00
Markus Goetz
1543899795 Upload Chunking: Fix progress DB values 2014-09-25 11:32:54 +02:00
Klaas Freitag
31bf844452 DownloadJob: Refresh the FileInfo after renaming the target file.
Otherwise the activity view reports file size 0.
2014-09-25 10:59:08 +02:00
Olivier Goffart
dad8c1c27c propagator: Do not check for case clash when renaming
Issue #1385

When renaming, we would normaly already have an error if the file already exist.
And we want to allow the renaming to chang ethe case (Eg. "hello" -> "HELLO"
2014-09-24 16:43:01 +02:00
Klaas Freitag
2c67a7ca71 progress: Set a clear start indication in the progress.
Before, 0 was used to indicate the sync start which wipes the activity
window. However, if there _are_ no synced items but only ignored items
the overall counter stays zero which wipes the list all the time.

This fixes bug #2171
2014-09-23 15:58:06 +02:00
Klaas Freitag
5b10a9f3a7 Minor: Remove unused definition 2014-09-22 13:47:45 +02:00
Klaas Freitag
d0fb1acebb Win32: Define HANDLE variable, make win compile again. 2014-09-22 13:47:17 +02:00
Christian Kamm
fa881ba1c7 Notifications: Don't emit one per error. #1777 2014-09-19 15:59:03 +02:00
Olivier Goffart
9ae4d45243 Restart the sync when we detect we need to redo a sync
Fixes #1968
Relates #2038

(cherry picked from commit a84b7dc27e)

Conflicts:
	src/mirall/owncloudpropagator.h
	src/mirall/propagator_qnam.cpp
	src/mirall/syncengine.h
2014-09-19 11:51:17 +02:00
Christian Kamm
2eec85a97c NetworkJobs: Propagator jobs keep others from expiring. #2155
In some owncloud server setups multiple concurrent connections for the
same session are not supported: owncloud/core#11153

This causes issues with multiple uploads and downloads. A usual symptom
is the quota job failing and the sync aborting.

This workaround lets activity on the propagator's GET and PUT jobs
reset the timeout of all network jobs. That way, queries like the quota
job would not time out while a large up/download is in progress.
2014-09-19 11:22:57 +02:00
Olivier Goffart
1cd5681967 permissions: Remember the permissions for the root folder 2014-09-19 10:58:52 +02:00
Olivier Goffart
50e718b1e7 Merge branch '1.7'
Conflicts:
	src/CMakeLists.txt
	src/cmd/cmd.cpp
	src/gui/folder.cpp
	src/gui/socketapi.cpp
	translations/mirall_ca.ts
	translations/mirall_cs.ts
	translations/mirall_de.ts
	translations/mirall_el.ts
	translations/mirall_en.ts
	translations/mirall_es.ts
	translations/mirall_es_AR.ts
	translations/mirall_et.ts
	translations/mirall_eu.ts
	translations/mirall_fa.ts
	translations/mirall_fi.ts
	translations/mirall_fr.ts
	translations/mirall_gl.ts
	translations/mirall_hu.ts
	translations/mirall_it.ts
	translations/mirall_ja.ts
	translations/mirall_nl.ts
	translations/mirall_pl.ts
	translations/mirall_pt.ts
	translations/mirall_pt_BR.ts
	translations/mirall_ru.ts
	translations/mirall_sk.ts
	translations/mirall_sl.ts
	translations/mirall_sv.ts
	translations/mirall_th.ts
	translations/mirall_tr.ts
	translations/mirall_uk.ts
	translations/mirall_zh_CN.ts
	translations/mirall_zh_TW.ts
2014-09-18 17:10:21 +02:00
Olivier Goffart
7c36e5c0e6 parallel chunk upload: allow "true" for the value of OWNCLOUD_PARALLEL_CHUNK 2014-09-18 14:29:38 +02:00
Olivier Goffart
1b62ed1e7e Parallel chunk upload: Fix progress 2014-09-18 12:36:30 +02:00
Klaas Freitag
e9248066df SyncJournal: Better error report for sql statements in updateDbStructure
Also, even if the updateDatabaseStructure fails, precompile the sql
statements.

This will help to debug and maybe solve bug #2106
2014-09-18 12:02:28 +02:00
Christian Kamm
a88ac00115 SyncEngine: Better reporting when ignoring hardlinks. #2217
Also touch csync to actually let us know it's ignoring the file
due to it having hard links.
2014-09-18 11:32:29 +02:00
Christian Kamm
30683b38a8 Updater: Add "didn't check for updates" message. #2175
Don't show "Checking server..." when we are not.

(cherry picked from commit ece11dc3d8)
2014-09-18 09:43:13 +02:00
Christian Kamm
45aefeb146 SelectiveSyncDialog: Change 'partial' behavior.
The real bug in #2219 actually was that the gui allowed users to
choose to not sync the root folder. That's not supported and no
longer possible in the UI.

Instead you may now sync a folder's files without syncing its sub-
folders.
2014-09-18 09:42:50 +02:00
Daniel Molkentin
db3318886e Merge pull request #2214 from owncloud/2211
Implement (most of) #2211
2014-09-18 00:09:26 +02:00
Daniel Molkentin
54eb837950 Remove unused confdir option 2014-09-18 00:07:33 +02:00
Christian Kamm
e395282e0e SelectiveSyncDialog: Fix sync-nothing case. #2219 2014-09-17 16:13:47 +02:00
Christian Kamm
1f129d0bcb Propagator: Don't upload files that were changed recently.
Instead skip them and try another sync later.

See #2167, #2169, #2210.
2014-09-17 15:30:18 +02:00
Christian Kamm
c2ae5e5fd1 FolderMan: Ensure a 1s delay between sync request and start.
That way the propagator can detect files that are still being
changed right now and skip them.
2014-09-17 15:30:18 +02:00
Christian Kamm
ece11dc3d8 Updater: Add "didn't check for updates" message. #2175
Don't show "Checking server..." when we are not.
2014-09-17 11:41:04 +02:00
Christian Kamm
99aa2cdf2a Log: Print client version on sync start. #2178 2014-09-17 09:39:04 +02:00
Christian Kamm
0eb9401c62 File change detection: Also look at file sizes.
See #2167 and #2169.

* csync_detect_update: Reupload a file if the sizes differ, similar
  to how we reupload if the mtimes differ.
* PropagateUploadFileQNAM::slotPutFinished(): Abort an upload if the
  size changed, similar to how we abort an upload if the mtimes changed.
2014-09-17 09:05:13 +02:00
Daniel Molkentin
122fa596b3 Remove stray file that was not meant to be committed 2014-09-17 00:55:55 +02:00
Daniel Molkentin
5406407ed6 Implement --non-interactive as per Juergens' request 2014-09-17 00:12:16 +02:00
Daniel Molkentin
b72cee2783 Fix passing URLs not ending in /remote.php/webdav 2014-09-16 23:53:01 +02:00
Daniel Molkentin
fe023e2229 Allow passing user/pass explicitly or via netrc
#2211
2014-09-16 23:52:28 +02:00
Olivier Goffart
66595a3597 Parallel chunk uploads
This does not include progress indicator
2014-09-16 17:40:42 +02:00
Olivier Goffart
9b1779bb06 Fix compilation
qFatal does not work with <<
2014-09-15 18:03:44 +02:00
Olivier Goffart
97cc05eeea journaldb: Assert in case of SQL error
relates issue #2106
2014-09-15 14:27:39 +02:00
Christian Kamm
20dd3b0a69 FolderMan: Fix startFromScratch logic. #1989
(cherry picked from commit 4566ca3127)
2014-09-15 13:53:38 +02:00
Christian Kamm
f348eabf19 Account: Fix cert save/restore from settings. #2160
(cherry picked from commit cc1121ef00)
2014-09-15 13:53:38 +02:00
Olivier Goffart
5870a57002 wizard: fix start a clean sync
The problem was that the backup function failed as we tried to
move  /home/xxx/ownCloud/  to /home/xxx/ownCloud/.oC_bak
The intention was to move it to /home/xxx/ownCloud.oC_bak

Issue #1989
2014-09-15 13:49:13 +02:00
Olivier Goffart
278bc5a8cd owncloudcmd: ask for the login and password and put it in the url (if it's not there already)
Because we cannot rely on HTTPCredentials to open windows in a command line tool

Fixes #1860
2014-09-15 13:24:31 +02:00
Olivier Goffart
af5e8ee18c AbstractNetworkJob
Abort the transfer in case of timeout.

This avoid that a connection that never replies blocks mirall

Issue #2148
2014-09-12 18:06:29 +02:00
Olivier Goffart
52e8343f76 ConnecitonValidator: Handle the timeout
otherwise the account may be stuck in a disconnect case if there is a timeout

Issue #2148
2014-09-12 18:06:17 +02:00
Olivier Goffart
a4dbf5942c owncloudcmd: restart the sync if required
Fixes #2038
2014-09-12 17:23:01 +02:00
Daniel Molkentin
ada1d42ebf Sparkle requirement bumped to 1.8 2014-09-12 16:08:52 +02:00
Daniel Molkentin
f27182ae05 fFx Utility::freeDiskSpace for win32 2014-09-12 16:08:52 +02:00
Markus Goetz
2fddf05515 OS X: Overlay Icons: Load from bundle-specific path
The client (in this case mirall) tells the Finder plugin where to get the icons.
This enables installation in different locations and in branded clients.
2014-09-12 15:09:47 +02:00
Tim Vandecasteele
f3cc614427 Fix apple build.
The apple build was broken because the elseif in the CMakeLists is never triggered.

Some code was not properly adapted for the new qtmacgoodies.

Some paths were not adapted to new split.
2014-09-12 14:24:26 +02:00
Olivier Goffart
79052ba7c6 Blacklist: ignore problems that don't have HTTP error code and are possibly problem on the local file system
Issue #1985
2014-09-12 14:13:04 +02:00
Markus Goetz
4960890d70 Propagator: Commit the DB for Poll Jobs 2014-09-11 12:05:35 +02:00
Olivier Goffart
a84b7dc27e Restart the sync when we detect we need to redo a sync
Fixes #1968
Relates #2038
2014-09-10 17:27:33 +02:00
Daniel Molkentin
927af0adec Fix build on win32: add missing export 2014-09-10 16:31:47 +02:00
Daniel Molkentin
f59a6862ca raiseDialog: Actually send the XEvent
Amendment to 25c274a0bd

Conflicts:
	src/mirall/owncloudgui.cpp
2014-09-10 13:21:27 +02:00
Olivier Goffart
71408bab60 I forgot to rename one of the while list to the blacklist 2014-09-10 11:01:38 +02:00
Christian Kamm
88b7f2e0ee SyncJournal: Don't use C++11 features. 2014-09-05 12:48:45 +02:00
Markus Goetz
f5f04bcc4b SyncEngine: Always return _renameTarget in destination() if possible
We want to do this since the instruction is actually ERORR, not RENAME.
2014-09-05 10:07:24 +02:00
Christian Kamm
2630a73a1c Propagator: Use csync to get the modification time.
See owncloud/core#9781
2014-09-04 14:16:23 +02:00
ckamm
4decd15ca9 Merge pull request #2161 from ckamm/stale-downloadinfo
Clean up stale journal entries and temporaries. #2057
2014-09-04 14:14:39 +02:00
ckamm
3a59dd24f3 Merge pull request #2162 from ckamm/error-missing-exclude
Don't do a broken sync when the system exclude file is missing
2014-09-04 14:14:07 +02:00
Olivier Goffart
c232411e96 uploading: make sure to cast to uint64 to avoid integer overflow 2014-09-04 13:46:01 +02:00
Christian Kamm
1cf1f6edcb Fix style issues. 2014-09-04 13:27:11 +02:00
Christian Kamm
5d36a27893 Clean up stale journal entries and temporaries. #2057
* Downloadinfo entries for files that no longer need to be downloaded
  are useless and can be removed. In particular, the temporary files
  holding partially retrieved files are now deleted when no longer
  necessary.
* The same is true for blacklist entries for paths that are no longer
  being discovered.
* Same for uploadinfos for files that no longer need to be uploaded.
2014-09-04 13:14:15 +02:00
Christian Kamm
da94533647 Folders: Signout should not switch folders to paused state. #2112
On signout, syncs that are running in folders are aborted. That used to
also switch the state of these folders to 'paused'. To fix that, aborts
that are caused by user actions no longer change the folder paused
state.

Aborts due to errors should still pause folders! Otherwise we'd try
resyncing them even though there was an error.
2014-09-04 11:21:28 +02:00
Markus Goetz
69066013c1 ownCloudTheme: Fix casing in appName()
Without this fix, the section in the config file uses the wrong name,
leading to re-configuration of the client needed.
2014-09-03 17:30:34 +02:00
Christian Kamm
aef569ee9d SyncEngine: Use exclude file fallback next to binary on linux.
This is mainly useful for developers where the system-wide exclude file
may not exist.
2014-09-03 14:53:01 +02:00
Christian Kamm
cf881aa6dc SyncEngine: Fix invalid slot name in sync error condition. 2014-09-03 14:52:55 +02:00
Christian Kamm
a48bf3142c SyncEngine: Abort sync with error if system exclude file is missing.
Syncing without the system exclude file would cause lots of trouble.
For instance we would try uploading the temporary files we store
partially completed downloads in.
2014-09-03 14:52:46 +02:00
Daniel Molkentin
c0131695c5 Return from Folder::slotPollTimerTimeout() if the account object is 0
Right now, we crash instead. This can happen if a folder is created
when an account object is not (anymore/yet) created.

Fixes #2142
2014-09-02 14:51:33 +02:00
Daniel Molkentin
fcbadda40f Make Settings Window close on Ctrl+W
Fixes #2141

(cherry picked from commit 2ab19b23d7)
2014-09-02 14:03:20 +02:00
Daniel Molkentin
2455faa6fe Account Migrator: Switch to string comparison for URLs.
QUrl does not normalize trailing slashes, so there is no benefit
of using QUrl here.

(cherry picked from commit d770f9cc1a)
2014-09-02 14:03:07 +02:00
Markus Goetz
0be4b59cff Sparkle: Keep permissions from bundle 2014-08-31 18:57:39 +02:00
Olivier Goffart
291231c561 Merge missing commits from 1.6.2-themefix into 1.7
Conflicts:
	VERSION.cmake
2014-08-30 17:57:58 +02:00
Dominik Schmidt
7ad557f2f8 Add crash reporter to osx package and don't build it with BUILD_LIBRARIES_ONLY enabled 2014-08-30 14:45:39 +02:00
Dominik Schmidt
ef70052b0e Package installer if it was built 2014-08-30 14:12:40 +02:00
Dominik Schmidt
202426f536 Make crash reporter application name branded 2014-08-30 11:05:52 +02:00
Dominik Schmidt
d240415671 Make crash reporter logo branded 2014-08-30 11:05:34 +02:00
Dominik Schmidt
1aca22b5f8 Make crash reporter executable branded 2014-08-30 10:46:09 +02:00
hefee
68792ee9db Fixing spellingerror
GNU Public License -> GNU General Public License
2014-08-30 02:18:55 +02:00
Klaas Freitag
bcff1ced5e Merge branch '1.7'
Conflicts:
	src/CMakeLists.txt
	src/cmd/cmd.cpp
	src/gui/folderman.cpp
	src/gui/wizard/owncloudadvancedsetuppage.cpp
	src/libsync/account.cpp
2014-08-29 20:40:33 +02:00
Klaas Freitag
7ce2a93c63 Merge remote-tracking branch 'origin/reuse_oc_config' into 1.7
Conflicts:
	src/CMakeLists.txt
	src/mirall/folderman.cpp
	src/mirall/folderman.h
	src/mirall/owncloudtheme.h
2014-08-29 20:23:07 +02:00
Olivier Goffart
5d19426930 Propagator: When the server don't support ranges, reset the counter so the progress is not messed up
Issue #2081
2014-08-29 19:33:20 +02:00
Olivier Goffart
1b51a10b19 Socket API: be consistant in the VERSION command and add the VERSION at the beginning 2014-08-29 17:28:36 +02:00
Dominik Schmidt
38ff7d87c8 Hide crashreporter config option if not build with crashreporter enabled 2014-08-29 17:07:31 +02:00
Markus Goetz
12e2bac16b Propagator: Also parse OC-ETag header
Client side part of https://github.com/owncloud/core/issues/9005
2014-08-29 16:30:58 +02:00
Olivier Goffart
34a27c748a Progress: in case of resuming chunks, advance directly at startup by the amount of chunk already done
Fixes #2103
2014-08-29 16:06:56 +02:00
Markus Goetz
7ec0c52439 Poll URL: Use trimmed() on response 2014-08-29 13:58:33 +02:00
Olivier Goffart
a73fbccf8c t4.pl: add a test to test that ignored file are not deleted 2014-08-28 19:33:52 +02:00
Klaas Freitag
7f1d707d23 ownCloud Theme: Do not have the oCSetupTop custom media, see #1445 2014-08-28 18:10:53 +02:00
Daniel Molkentin
25c274a0bd X11: Bring Settings window to front when launched 2014-08-28 17:25:00 +02:00
Olivier Goffart
0fb0f2c204 Selective sync: start a sync when the selective sync settings changes 2014-08-28 16:27:46 +02:00
Dominik Schmidt
6abaad1ae8 Show crash reporter if trying to read the crash-reporter-enabled config crashes 2014-08-28 16:23:14 +02:00
Dominik Schmidt
89aec52503 Add checkbox to general settings to disable the crash reporter 2014-08-28 16:19:17 +02:00
Markus Goetz
b6f42a91f4 OS X: Fix Finder bundle NVTY->OWNC 2014-08-28 15:45:07 +02:00
Markus Goetz
2aef6a2174 Poll URL: Don't delete from DB in case of 503 2014-08-28 13:44:21 +02:00
Olivier Goffart
79f00c2a2a Wizard: adjust alignements 2014-08-28 13:32:14 +02:00
Olivier Goffart
e5068e7543 Selective sync: if one click twice on the button in the wizard, it should keep the blacklist 2014-08-28 12:25:44 +02:00
Olivier Goffart
858218ac34 Wizard: new layout 2014-08-28 12:18:19 +02:00
Dominik Schmidt
b8e8d975aa Add CRASHREPORTER_SUBMIT_URL to OWNCLOUD.cmake 2014-08-28 12:08:07 +02:00
Markus Goetz
6e0330ff65 SyncEngine: Error out if we don't have a sync dir 2014-08-28 11:47:40 +02:00
Markus Goetz
3aa7178382 PollJob: Increase timeout 2014-08-28 11:27:08 +02:00
Dominik Schmidt
439bf7641e Use include path for libcrashreporter-qt instead of lengthy relative include 2014-08-28 11:11:42 +02:00
Dominik Schmidt
34042028b3 Add CRASHREPORTER_SUBMIT_URL define and default it to some placeholder owncloud url 2014-08-28 11:05:46 +02:00
Markus Goetz
2f34b046d0 Overlay Icons: Improve OS X version, improve general feedback
Now the update phase of the syncing algorithm pushes stuff the notification socket too.
2014-08-27 19:15:43 +02:00
Olivier Goffart
a73316306d Selective sync: new design in the wizard 2014-08-27 19:03:11 +02:00
Daniel Molkentin
cf12a56b4c Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/gui/socketapi.cpp
2014-08-27 18:22:07 +02:00
Olivier Goffart
928652e4cf Selective sync: rename the button 'choose what to sync' 2014-08-27 17:31:57 +02:00
Olivier Goffart
7950b49cb1 Selective sync dialog: fix fetching sub directory when the folder is not the root folder 2014-08-27 17:19:36 +02:00
Klaas Freitag
cc6aa66ab0 JournalDB: Do prepare the queries even if the db update failed.
Also, add more logging in case SQL errors happen while db structure
update.
2014-08-27 14:01:33 +02:00
Olivier Goffart
ea381392a7 SocketAPI: fix the BROADCAST message 2014-08-27 13:55:06 +02:00
Olivier Goffart
bb7f63dcfd AccountSettings: be less verbose in the status string 2014-08-27 13:51:14 +02:00
Olivier Goffart
253d65727b Socket api: Add a VERSION command 2014-08-27 13:51:14 +02:00
Klaas Freitag
d2e1489fe7 Propagator: Set the chunk size to 20MB as requested by Matt. 2014-08-27 10:35:58 +02:00
Dominik Schmidt
2b4849a2fa Add crash reporter using libcrashreporter-qt 2014-08-26 18:15:13 +02:00
Olivier Goffart
2356601bb3 folder: Make sure not to pol the server if the account is disconnected
Fixes #2108
2014-08-26 16:23:19 +02:00
Olivier Goffart
9b88c7d3c1 SSLButton: fix memleak 2014-08-26 15:59:19 +02:00
Olivier Goffart
302499b483 uploading: make sure to cast to uint64 to avoid integer overflow 2014-08-26 15:58:55 +02:00
Dominik Schmidt
17e16f5e79 Add "Crash" entry to systray if started with --debug 2014-08-26 15:46:24 +02:00
Dominik Schmidt
b176ff6626 Don't use CMAKE_INSTALL_PREFIX for RPATH 2014-08-26 15:19:46 +02:00
Daniel Molkentin
e5471d8318 Build after merge 2014-08-26 14:33:21 +02:00
Daniel Molkentin
902bb7a198 Merge remote-tracking branch 'origin/master' into move_lib_to_sep_dir
Conflicts:
	src/CMakeLists.txt
	src/gui/accountsettings.cpp
	src/gui/folderwizard.cpp
	src/gui/settingsdialog.cpp
	src/libsync/syncengine.h
2014-08-26 11:29:42 +02:00
Markus Goetz
b037e6356e TokenCredentials, DirectDownload: Rework cookie handling
That way we don't override QNAM's cookie jar behaviour
2014-08-22 13:46:22 +02:00
Markus Goetz
824628061b Propagator: Don't have cookies overriden by QNetworkCookieJar
The direct download feature has its own cookies, don't let QNAM override them.
2014-08-22 12:12:46 +02:00
Klaas Freitag
c473428be6 Merge pull request #2084 from owncloud/contextless_exclude
Contextless exclude, @ogoffart reviewed, I'll merge.
2014-08-21 13:15:18 +02:00
Klaas Freitag
dc8f437b31 Excludes: Add an context free implementation of exclude file loading.
So that we are more thread safe.
2014-08-21 12:43:04 +02:00
Olivier Goffart
aabcf80774 Sync engine: Take also in account the fact that the instruction can be IGNORE on both tree 2014-08-21 11:33:38 +02:00
Olivier Goffart
1cf956ec21 Discovery phase: clear the callbacks after use 2014-08-21 11:27:25 +02:00
Klaas Freitag
54e2b9345b GUI: on Mac do not call slotUpdateAccountIcon 2014-08-21 11:00:57 +02:00
Klaas Freitag
75101a0319 Application: Unload all folders when shutting down.
That sends a proper UNREGISTER message via socket API.
2014-08-20 17:33:48 +02:00
Klaas Freitag
d1a660ce20 SocketAPI: Add parameter to enable wait for the socket write.
This is needed to wait until the UNREGISTER message is sent to the
shell code when mirall shuts down.
2014-08-20 17:33:48 +02:00
Klaas Freitag
4356005c5a FolderMan: Do not remove the folder icon too early from the map.
Otherwise, method unloadFolder can not do important frees.

This is one part of the fix for #2073 because now the socketapi will
send the UNREGISTER_PATH message over the socket.
2014-08-20 17:33:48 +02:00
Daniel Molkentin
8fdee79505 Fix crash in accountsettings 2014-08-20 16:06:38 +02:00
Klaas Freitag
988fe70771 Merge pull request #2075 from owncloud/use_folder_paused
Rework of the status icons in FolderMan and Folder objects.
2014-08-20 10:50:28 +02:00
Klaas Freitag
d02175210b Status Icon: Set a proper icon if no sync is configured.
This fixes bug #1956
2014-08-19 17:47:28 +02:00
Klaas Freitag
617887a0c6 Propagator: If the sync was interrupted by pausing, do not show error.
Handle problems which happen because of pausing the sync as soft errors
rather than normal errors which are blacklisted and displayed in the
gui.

This fixes bug #1959
2014-08-19 14:21:59 +02:00
Klaas Freitag
e4fe4cb4d3 Status icons: Display the correct icons after startup connect. 2014-08-19 14:21:59 +02:00
Klaas Freitag
dc0a054d94 Status icons: Set the offline icon at the very beginning.
Otherwise, if the account is signed out and opens the credential popup,
there is a wrong icon displayed. If the account is coming from keychain
this icon is quickly overwritten.
2014-08-19 14:21:51 +02:00
Klaas Freitag
924d9b985f Some minor cleanups. 2014-08-19 14:21:51 +02:00
Klaas Freitag
bb3bd6930a StatusModel: Have another property accountConnected.
With that , make the status model aware of the account connection state.
With that, we can grey out the correct state icon if the account is not
connected and display the normal icon if the account is connected.
2014-08-19 14:21:51 +02:00
Klaas Freitag
1245ed6f06 Status Icons: Let FolderMan only write the folder config files.
Remove the setSyncEnabled() call to individual folders which mistakenly
set the folders to pause. Let the folders keep their pause state on their
own.

If FolderMan is set to be enabled emit a general refresh signal rather
than one for each folder.
2014-08-19 14:21:51 +02:00
Klaas Freitag
01b0ee49de Status Icons: Rename the syncEnable method to isPaused.
Previously, in folder and folderman there have been the syncEnabled
properties, but they confused the semantics: While in FolderMan the
syncEnabled flag represents the network connection and stuff, in
Folder it represented if the user paused or resumed the folder.

This resulted in mixed use of both, which lead to wrong icon states.
This patch renames the folder methods and properties to isPaused to
make more clear about what it is.
2014-08-19 14:21:42 +02:00
Olivier Goffart
9c98883bea propagator mkcol: If the server replies with a file-id in the header, use it
Newer server will have a file id directly in the file header.
https://github.com/owncloud/core/issues/9000
2014-08-18 20:42:43 +02:00
Olivier Goffart
2fb19e25b5 Fix clang 3.0 compilation 2014-08-18 19:44:18 +02:00
Olivier Goffart
c291eb3db4 Fix compilation error 2014-08-18 15:45:58 +02:00
Olivier Goffart
7f38ce8908 Selective sync: the button should only be enabled while connected 2014-08-18 15:45:38 +02:00
Olivier Goffart
1781400340 fix compilation 2014-08-18 15:28:24 +02:00
Olivier Goffart
3760f14da8 Restore the log window 2014-08-18 15:16:33 +02:00
Olivier Goffart
dc18366111 DiscoveryPhase: put in namespace Mirall 2014-08-18 14:45:48 +02:00
Olivier Goffart
936252765a Merge branch 'master' into selective_sync
Conflicts:
	src/mirall/syncengine.cpp
	src/mirall/syncengine.h
2014-08-18 14:44:43 +02:00
Markus Goetz
b62b87eed3 OS X: Rename LiferayNativity code for shell icons 2014-08-18 12:57:29 +02:00
Klaas Freitag
4b716f3ea6 About page: Fix the translation of developer names. 2014-08-18 12:17:13 +02:00
Klaas Freitag
27f9d4523b Settings: Display the commit SHA both in branded and unbranded.
Also, do not put the developer names into the translation string.
2014-08-18 11:27:56 +02:00
Volkan Gezer
463a9a5485 space 2014-08-17 17:38:33 +02:00
Klaas Freitag
dccb9def3a Merge pull request #2067 from owncloud/grammar
subject verb agreement - very good, thanks.
2014-08-16 12:13:01 +02:00
Sandro Knauß
7b114e2cae Use QStandardPaths for linux if building with qt>=5 2014-08-16 03:12:20 +02:00
Volkan Gezer
25d519fed3 subject verb agreement 2014-08-15 20:49:47 +02:00
Klaas Freitag
b494181764 Nautilus Overlays: Use port 34001 by default. 2014-08-15 17:16:47 +02:00
Olivier Goffart
9575271fcd Selective sync: hide the header 2014-08-15 16:49:22 +02:00
Olivier Goffart
b6eda9076e Selective sync: add a page in the folder wizard 2014-08-15 16:40:11 +02:00
Markus Goetz
88072a985a SyncEngine & UI: Move QElapsedTimer to object
Using a function static is too dangerous when multiple threads are involved.
2014-08-15 16:20:43 +02:00
Markus Goetz
c27f151451 SyncEngine & UI: Make the function part of UpdateJob
That way we can easily emit UploadJob's signals
2014-08-15 16:11:51 +02:00
Markus Goetz
ce2741cebc SyncEngine & UI: Progress notifications for update phase
For each directory (local and remote, we have UI update throtting code)
a signal is emitted.
It is used by the settings dialog and the tray menu.
2014-08-15 15:28:35 +02:00
Daniel Molkentin
3d6b622879 Merge pull request #2064 from owncloud/fix-1959
Show folder icon a offline when account is offline
2014-08-15 15:11:06 +02:00
Daniel Molkentin
4c67a8812a Show folder icon a offline when account is offline
Fixes #1959
2014-08-15 15:01:01 +02:00
Olivier Goffart
4c4d02c0d0 Selective Sync: refactor the widget in its own class 2014-08-15 14:58:16 +02:00
Olivier Goffart
c1831f4946 Selective sync: use a black list instead of a white list 2014-08-15 12:29:10 +02:00
Olivier Goffart
4b2c1bacd1 Merge remote-tracking branch 'origin/master' into selective_sync 2014-08-15 10:28:50 +02:00
Klaas Freitag
78e50747e4 Updated the about text for the generic ownCloud Theme. 2014-08-14 17:12:23 +02:00
Klaas Freitag
b09498d852 csync journal: Improve get_below_path query.
Add another index on the pathlen column. Use that column to deselect
all rows that are shorter than the path to search files below. That
shrinks the amount of rows to examine using LIKE tremendously by
a cheaply to query for criteria.
2014-08-14 13:52:44 +02:00
Klaas Freitag
7fcf723039 SyncJournal: Add an index on inode to the journal database. 2014-08-14 13:22:43 +02:00
Klaas Freitag
d27ab8c6ca Revert "FolderMan: Proper singleton implementation."
This reverts commit 0350508b65.
2014-08-14 12:46:01 +02:00
Klaas Freitag
0350508b65 FolderMan: Proper singleton implementation.
The connect in SocketAPI had to be moved because it also uses
FolderMan::instance(). And since SocketAPI is instanciated in
FolderMans constructor, this was a deadlock.

Now the connect is tried on every new socket connection in SocketAPI
but I assume that multiple attempts to connect are not an issue.
2014-08-14 11:32:03 +02:00
Klaas Freitag
32739cc305 SyncEngine: End the journal transaction after update. 2014-08-14 11:32:02 +02:00
Klaas Freitag
f515fe77c4 SyncJournal: Fix logging text. 2014-08-14 11:32:02 +02:00
Daniel Molkentin
4fc044d368 Merge branch 'master' into move_lib_to_sep_dir
Conflicts:
	cmake/modules/NSIS.template.in
	src/CMakeLists.txt
	src/creds/shibboleth/authenticationdialog.cpp
	src/creds/shibboleth/authenticationdialog.h
	src/gui/owncloudgui.cpp
	src/libsync/creds/shibboleth/authenticationdialog.cpp
	src/libsync/creds/shibboleth/authenticationdialog.h
	src/libsync/mirallaccessmanager.cpp
	src/mirall/authenticationdialog.cpp
	src/mirall/authenticationdialog.h
2014-08-12 21:08:44 +02:00
Daniel Molkentin
1544606bf0 Always handle 401 requests, except for network jobs
It is not enough to only implement it for the QNAM returned
by the ShibbolethCredentials, because we sometimes need it
when we have no valid credentials set (and are using dummy
credentials in the course).  The main use case is the
Webview opened by Shibboleth for FBA.

But as a side-effect, we can use it to handle auth requests
from the updater and other places.
2014-08-12 19:25:59 +02:00
Olivier Goffart
255330d342 Add a "Skip Folder Configuration" button in the wizard
This allow to start owncloud the first time but not automatically sync
everything, but let the user configure sub folders instead
2014-08-12 17:34:54 +02:00
Olivier Goffart
ad139e19ab Fix error reported by address sanitizer
Qt allow to call deleteLater on a null object, but it is an undefined behaviour
2014-08-12 17:34:54 +02:00
Markus Goetz
8e6e51f9a6 OS X: Move include to MAC define 2014-08-12 14:58:34 +02:00
Markus Goetz
faa502163e OS X: Finally(?) fix stay-on-top behaviour of settings dialog
Fixes #1795
2014-08-12 14:48:42 +02:00
Olivier Goffart
4ff0e7e0a2 Silent some warnings 2014-08-12 14:03:04 +02:00
Olivier Goffart
12459bf07e selective sync: fix whitelist matching 2014-08-12 11:43:42 +02:00
Olivier Goffart
b25ef28e82 Selective sync: remember the old list when accepting the dialog even if the tree was not expanded 2014-08-12 11:12:58 +02:00
Olivier Goffart
7e009667a2 Selective sync: ignore the files that are not in the selective sync white list 2014-08-11 18:42:24 +02:00
Olivier Goffart
1f1eb933d1 Move the update job in a new file named discoveryphase
"Discovery" is a better name than "update"
2014-08-11 18:42:24 +02:00
Olivier Goffart
aa85e875bd Selective sync: Add UI to select paths 2014-08-11 18:42:24 +02:00
Daniel Molkentin
1b4c613fa6 ProtocolWidget: Disable copy button if widget is empty. 2014-08-11 16:38:51 +02:00
Markus Goetz
8cd1d43798 TokenCredentials: Don't overwrite Cookie header
If the request already had a cookie header, there was a reason for it.
Don't blindly overwrite it.
2014-08-11 15:40:12 +02:00
Markus Goetz
acd3df33b6 Merge branch 'long_running_put' into il 2014-08-08 12:00:26 +02:00
Markus Goetz
1bc8fd9b49 CMake: Don't need translations with token auth compile 2014-08-08 11:59:14 +02:00
Klaas Freitag
6cb8134690 SocketAPI: Use Win32 function SHChangeNotify to notify Explorer. 2014-08-07 14:59:06 +02:00
Olivier Goffart
95a77e5ccc Merge branch 'il' 2014-08-07 14:29:27 +02:00
Olivier Goffart
21783ecef7 SyncEngine: fix permission detection of moves
Two problems:
- "M" was used instead of "V"
- The extraction of the parent folder of the destination was wrong
2014-08-07 14:27:27 +02:00
Klaas Freitag
d8a8b53fc9 SocketAPI: Also update view when paused. 2014-08-07 14:07:08 +02:00
Olivier Goffart
6827f9977c Merge branch 'il'
Conflicts:
	doc/ocdoc
2014-08-07 12:15:50 +02:00
Olivier Goffart
6d24bd0361 journaldb: Fix that fileid might be missing in the db
When recovering from a inalid move operation, we call
avoidReadFromDbOnNextSync. This will remove the fileid from the db so
we don't detect a move on the next sync.  But we want the next sync to fetch
the file id again, and this can only happen if we don't read them
from the db and do the actual PROPFIND, this is done by avoidReadFromDbOnNextSync

However, if there is propagation in that source directory later, it
will overide the invalid etag with the real one and we will not uissue the PROPFIND
to fetch the fileid.
We must therefore also protect the future write to the DB when calling
avoidReadFromDbOnNextSync
2014-08-07 12:14:45 +02:00
Markus Goetz
22c1629dd3 SyncEngine: Keep csync_journal with proper values for fileId and remotePerm
Before this patch, we had a lot of empty rows because we created
the SyncFileItems with the wrong(=local) data.
2014-08-07 10:14:14 +02:00
Olivier Goffart
55567f8dd2 remove unused variable 2014-08-06 10:20:58 +02:00
Daniel Molkentin
996b7166d2 Merge pull request #2027 from owncloud/l10n-fix
Use am. eng. since brit. eng. is handled on transifex
2014-08-05 14:11:20 +02:00
Daniel Molkentin
839b2fa8fd SocketAPI: Convert to unix path before comparing with black list 2014-08-05 13:11:52 +02:00
Markus Goetz
c313cc02f2 Config: Fix loading of configuration
There is a strange bug with Qt, we need to always set the application name, then
we can generate the proper config path.
2014-08-05 00:41:43 +02:00
Klaas Freitag
f983264b5d SocketAPI: Do not allow a trailing slash for directories.
The entries in our sync journal have no trailing slashes for directories.
2014-08-04 12:47:22 +02:00
Klaas Freitag
40cebeedfc SocketAPI: Call csync_exclude with the relative path.
This avoids messing with the windows pathes and csync_exclude is
designed that way.
2014-08-04 12:47:22 +02:00
Klaas Freitag
1f9280c68e GUI: Remove useless comment. 2014-08-04 12:47:22 +02:00
Klaas Freitag
4fb671e7f4 SocketAPI: Send Broadcasts only for Linux, not used on Mac and Win. 2014-08-04 11:09:17 +02:00
Volkan Gezer
a42e384935 Use am. eng. since brit. eng. is handled on transifex
See https://github.com/owncloud/core/pull/10025#issuecomment-50855986 for info.
2014-08-02 04:05:10 +02:00
Klaas Freitag
327f70240c GUI: Load the finder overlay icon script on MacOSX. 2014-08-01 14:28:34 +02:00
Klaas Freitag
fe9a2e7ba4 SocketAPI: Normalize file names when read from the filesystem.
Otherwise there will be bad encoded file names because of a Qt
upstream error that skips the normalization.
2014-08-01 12:18:52 +02:00
Klaas Freitag
3c09ef6cbf SocketAPI: rename slot to send UPDATE_VIEW. 2014-08-01 10:59:49 +02:00
Klaas Freitag
68bfcf5d24 SocketAPI: Create the socket API instance in folderman. 2014-08-01 10:59:49 +02:00
Klaas Freitag
b2a10de71a Copyright plus minor beautification. 2014-08-01 10:59:49 +02:00
Olivier Goffart
cfdfd6a860 wizard: don't call initializePage
It is called automatically by QWizard and do not need to be called explicitly

But setVisibla(false) don't really have an effect there since show() is going
to be called on the page
2014-07-30 12:36:30 +02:00
Olivier Goffart
8df14ee845 Long running put: fix some bugs 2014-07-29 22:56:36 +02:00
Olivier Goffart
550d6d66d1 Long Running Put: Better error reporting 2014-07-29 15:51:22 +02:00
Olivier Goffart
7480d34742 Long Running Put: store into the database so they can be resumed at startup 2014-07-28 15:37:37 +02:00
Olivier Goffart
5254c9785c shibboleth: Fix connection when the URL do not have a path
When the url do not have a path (for example: "http://example.com" as
opposed to "http://example.com/"),  its path is not a prefix of the
root path of the cookie (usually '/')

By adding the dav path, we make sure the URL has a path.

This made a bug when the owncloud url was just a domain name and did not
have a path
2014-07-28 13:50:24 +02:00
Olivier Goffart
04cc513bbd Poll for long running PUT: WIP
Some PUT, may take a long time on the server to process (for example, the
last chunk). It may take more time that the timeout.
So in that case the server may reply with an url that we can poll for the etag

This patch is still work in progress
2014-07-25 13:30:48 +02:00
Markus Goetz
f004d5085d Merge remote-tracking branch 'origin/1.6' into il
Conflicts:
	VERSION.cmake
2014-07-25 12:37:27 +02:00
Klaas Freitag
98e21ae0ad SocketAPI: Connect REGISTER_FOLDER to Foldermans events. 2014-07-25 12:20:38 +02:00
Klaas Freitag
8b93678e3d SocketAPI: Added REGISTER_PATH and UNREGISTER_PATH
to inform the plugins about the top sync directories.

Also cleaned the code a bit.
2014-07-25 12:11:21 +02:00
Olivier Goffart
3d0c009719 propagator_qnam: Limit the HTTP buffer size when downloading
Otherwise the buffer might fill up too quickly and get too large and consume
too much memory which could lead to crash in extreme cases

Should fix issue #1974
2014-07-24 15:43:28 +02:00
Olivier Goffart
208011f6ab propagator_qnam: add debug output in cae the file changed localy
In order to debug https://github.com/owncloud/core/issues/9781
2014-07-24 11:17:59 +02:00
Klaas Freitag
1fb52f0d8b HTTPCreds: Do delete the WritePasswordJob to not leak memory. 2014-07-23 17:59:02 +02:00
Klaas Freitag
d4de024f15 Propagator: Fix local file name clash detection.
Need to normalize the output of QFileInfo::canonicalFilePath() before
comparing to a server side path.
See https://bugreports.qt-project.org/browse/QTBUG-39622

This fixes #1998 and #1999
2014-07-23 17:56:46 +02:00
Olivier Goffart
1d9d88ca85 Always use the dummy crendential while trying to determine the credentials
Otherwise the SHibbolethCredential may be set and it has hook to intercept 401

This should fix issue #1908
2014-07-23 14:38:50 +02:00
Eran
2ca8805cda Removed uneed code 2014-07-23 15:09:28 +03:00
Eran
8e5c41e6f3 Merge https://github.com/owncloud/mirall into fix_folder_status_ui_ignore_new_line_inoverall_text 2014-07-23 13:53:05 +03:00
Eran
0f7efbc22e fixed bug where the overall text caused in the folder view the to defrom 2014-07-23 13:52:02 +03:00
Klaas Freitag
0f4cf74ae0 SyncEngine: allow to do a post upgrade script in debug mode. 2014-07-22 18:07:02 +02:00
Olivier Goffart
8a88ca6f34 Merge branch 'il'
Conflicts:
	src/mirall/propagator_legacy.h
2014-07-18 17:00:38 +02:00
Olivier Goffart
81d786733d Merge remote-tracking branch 'origin/1.6' into il
Conflicts:
	VERSION.cmake
	src/mirall/propagator_qnam.cpp
	src/mirall/propagator_qnam.h
2014-07-18 16:59:29 +02:00
Olivier Goffart
beb9300b4e network limit: Never wait more than 10 seconds
When using the "Limit automatically" limit, we wait for 25% of the time
it took to upload something.
However, if we go to sleep while uploading, the time it took to upload may take
days. And waiting for 25% of a day is too long.
So never wait for more than 10 seconds

This may be related to issue #1880
2014-07-18 12:27:02 +02:00
Olivier Goffart
c35880d4f1 Fix corruption while trying to resume and the server don't suport it
Issue #1982
2014-07-18 12:03:45 +02:00
Klaas Freitag
f8bea55b10 SocketAPI: Handle top sync folder correctly. 2014-07-17 19:34:50 +02:00
Daniel Molkentin
72cd84e878 SocketAPI: Exclude drive part from path blacklist check
Otherwise, it always matches the ':' part
2014-07-17 19:26:58 +02:00
Daniel Molkentin
35b6d09615 SocketAPI: Fix separators on Windows 2014-07-17 17:41:20 +02:00
Daniel Molkentin
1ae727e70f SocketAPI: Emit error of binding the server fails 2014-07-17 15:01:01 +02:00
Daniel Molkentin
0e5d0c1170 SocketAPI: Some cleaning up 2014-07-17 15:00:21 +02:00
Daniel Molkentin
bb32831a60 Merge remote-tracking branch 'origin/master' into move_lib_to_sep_dir
Conflicts:
	src/gui/folderman.cpp
2014-07-17 11:31:45 +02:00
Klaas Freitag
743c1c2eda SocketAPI: Send an UPDATE_VIEW to the shell plugin on connect.
For each configured sync folder send an UPDATE_VIEW directly after
the socket connect to make the shell integration updating the view.
2014-07-17 11:26:03 +02:00
Klaas Freitag
0e9a08cbbf SocketAPI: rename slot to send UPDATE_VIEW. 2014-07-17 11:25:08 +02:00
Klaas Freitag
d2445ec72d PropagatorQNAM: Never send if-match header for new files. 2014-07-17 11:23:11 +02:00
Klaas Freitag
fef713aaed SocketAPI: Create the socket API instance in folderman. 2014-07-17 11:22:18 +02:00
Klaas Freitag
c4d73688a6 Folderman: Fix path detection in folderForPath(). 2014-07-17 11:21:02 +02:00
Daniel Molkentin
56b721b2eb propagator_qnam: fix warning 2014-07-17 11:05:16 +02:00
Klaas Freitag
e6c501de8e FolderMan: More useful logging. 2014-07-16 16:59:20 +02:00
Klaas Freitag
71338000a4 SetupWizard: Keep initial local folder to compare later for changes.
If the local folder changes, the sync has to be reinitialized as
well. Until now we did not detect that, which led to the case that
the sync folder was not reinitialized in case only the local folder
changed in the setup dialog.
2014-07-16 11:37:46 +02:00
Olivier Goffart
2fdb3cfdfb Merge branch 'il'
Conflicts:
	src/mirall/folder.cpp
	src/mirall/propagator_qnam.cpp
2014-07-16 10:49:16 +02:00
Olivier Goffart
8961e61f60 Merge branch '1.6' into il
Conflicts:
	VERSION.cmake
	src/mirall/syncengine.cpp
	src/mirall/syncengine.h
2014-07-16 09:57:40 +02:00
Olivier Goffart
d697969f36 Use another way to detect that the server was reconfigured
Before, we would only detect it if all the files were removed, and no
file where added or changed. This may not be enough because there might
be a welcome.txt file. Now, we check that none of the file stays the same,
and some files are removed.

Relates issue #1948
2014-07-15 18:09:08 +02:00
Olivier Goffart
51e9c5fd96 propagator_qnam Fix signal slot connection
Fix the signature so it can be connected

This was hapenning if the derver does not support X-OC-MTime

issue #1963
2014-07-15 18:08:26 +02:00
Klaas Freitag
997504c03c FolderMan: Unload folder method added.
unloadFolder now correctly removes a folder from all maps and signal
mappers.
2014-07-15 16:07:23 +02:00
Markus Goetz
0202351a27 Propagator: Fix crash when logging out during upload
Fixes #1957
2014-07-14 19:53:42 +02:00
Daniel Molkentin
28879712e9 Make krazy target work again 2014-07-14 12:19:32 +02:00
Daniel Molkentin
3c2e43d883 Merge remote-tracking branch 'origin/master' into move_lib_to_sep_dir 2014-07-14 10:50:53 +02:00
Daniel Molkentin
5041880854 Try to handle BUILD_LIBRARIES_ONLY correctly
Also, try to fix OS X build
2014-07-11 12:36:01 +02:00
Klaas Freitag
a281b36d6f SocketAPI: send the path with UPDATE_VIEW 2014-07-11 12:34:04 +02:00
Klaas Freitag
7772501cdf Remove unused socketPath variable. 2014-07-11 12:33:43 +02:00
Daniel Molkentin
2c904afd04 OS X explicitly requires the neon include path to be set 2014-07-11 12:11:04 +02:00
Daniel Molkentin
2cc13fb74a Fix includes in mac specific headers 2014-07-11 11:38:01 +02:00
Daniel Molkentin
df3c3bca02 Split into three separate projects: library, gui and cmd 2014-07-11 11:07:31 +02:00
Daniel Molkentin
d1b991e198 Fix windows compilation 2014-07-10 22:58:58 +02:00
Klaas Freitag
00f793a841 CMake: Remove accidentially added typo to fix build. 2014-07-10 17:20:40 +02:00
Klaas Freitag
bdb9598227 SocketAPI: Use QTcpSocket all over, rather than QLocalSocket. 2014-07-10 16:35:18 +02:00
Klaas Freitag
c6deb392fd SocketAPI: Enhance SyncFileStatus to have share information.
Added a new class SyncFileStatus to reflect that properly.
2014-07-10 16:28:40 +02:00
Olivier Goffart
3477ea0eeb Fix build with TOKEN_ONLY_AUTH
It was broken by commit 6ff38d8005
2014-07-10 15:26:55 +02:00
Olivier Goffart
73e35c66af owncloudcmd: fix the --trust option
We can't call csync_set_userdata in owncloudcmd because it is
going to be overwritten later in the SyncEngine.
So we had an object of type SyncEngine* that we cast to CmdOptions*
and the trust flag was in the padding, so was some random data.

Therefore we must use global variables in that case in order to
know if we should ignore the certificate.
2014-07-10 11:19:23 +02:00
Olivier Goffart
846773efd3 Define Q_DECL_OVERRIDE for Qt4
That macro is new in Qt5, define it as well when compiling with Qt4
so we can use it in mirall

Note: QNetworkCookieJar::deleteCookie was not existing in Qt4.
2014-07-09 23:31:56 +02:00
Olivier Goffart
bcfa34357b Add Q_DECL_OVERRIDE for all function that are overriding something
This was made automatically with
clang-modernize -override-macros -add-override
2014-07-09 23:31:56 +02:00
Olivier Goffart
e0c2e8ed86 folder: remove TOKEN_AUTH_ONLY
Folder is no longer in the libowncloudsync
2014-07-09 22:44:08 +02:00
Olivier Goffart
b80a3876ab cleanup the CMakeLists.txt
Headers need not to be added if they are not going to be installed
The list was incomplete anyway, and most of the _HEADERS variables
were even not used
2014-07-09 22:44:08 +02:00
Olivier Goffart
26e17f58ef Engine: Do not reset the csync log callback in the engine
It is already set in Folder and we don't want to use the Logger
in command line clients
2014-07-09 22:44:08 +02:00
Olivier Goffart
45d1567057 Move Folder, FolderMan, and FolderWatcher outside of owncloudsync
Those class are maintaining the folder for the mirall configuration
They are not usefull in command line clients

Also the FolderWatcher is only used by the folder and not used by the
command line clients
2014-07-09 22:44:08 +02:00
Olivier Goffart
8aacb3f7ec Remove undeeded include 2014-07-09 22:44:08 +02:00
Olivier Goffart
99ee81a489 Utility: Move showInFileManager in its own file
And get rid of GUI in the Utility namespace
2014-07-09 22:44:08 +02:00
Olivier Goffart
517ffbd783 Utility: remove Utility::dataLocation
It is used only from one location, so put the code there
2014-07-09 22:44:08 +02:00
Olivier Goffart
7dd926d4f1 Utility: move raiseDisalog to owncloudGui
Reduce the GUI dependency in the Utility namespace used by libowncloudsync
2014-07-09 22:44:08 +02:00
Olivier Goffart
cbc7942a00 Added t8.pl that test case sensitivity issues
Made some change in the .cpp code in order to be able to test
the code when the file system is case sensitive
2014-07-09 22:44:08 +02:00
Olivier Goffart
63cd5ef563 ProtocolWidget: limit the number of items
That should save memory instead of letting the number of items grow
to infinity
2014-07-09 15:48:03 +02:00
Olivier Goffart
82c254fecf propagator_qnam: Avoid using too much memory
The idea here was that the buffer would be maximum 8KiB, not minimum.
2014-07-08 15:30:53 +02:00
Olivier Goffart
86bea9a9af shibboleth: Fix the waiting curser that would not disapear
Fix #1915
2014-07-07 14:08:13 +02:00
Klaas Freitag
88f26fb548 HTTP Creds: In case of Keychain error, open the interact password dialog
But in case the user clicks cancel in the interactive dialog, invalidate
the credentials. Emit fechted() also in error case.
2014-07-04 13:27:35 +02:00
Klaas Freitag
a9f1de84f0 HTTP Credentials: Read the password from the old location if not found.
Earlier clients used QtKeychain without a QSettings object, which made
QtKeychain to write the password encrypted into a settings default
location, ie. the registry under windows.

If we can not find a password at the new location it is tried to read
the password from the old default location once. That makes people
happy in migration scenarios.
2014-07-04 13:27:22 +02:00
Olivier Goffart
081b7d4aa9 Merge pull request #1913 from owncloud/typo-fix
Typo fix
2014-07-01 20:39:30 +02:00
Olivier Goffart
9c3c4bac66 Merge remote-tracking branch 'origin/il' 2014-07-01 20:37:42 +02:00
Daniel Molkentin
ad2eabeb3b SocketAPI: Try to make the folder selection work on windows 2014-07-01 16:24:14 +02:00
Daniel Molkentin
26c377d05b Utility: export new functions 2014-06-30 14:13:45 +02:00
Volkan Gezer
3ad9356ca4 Typo fix 2014-06-29 14:14:44 +02:00
Volkan Gezer
dd5296f03c Typo fix
Suggested by [mnestis](https://www.transifex.com/accounts/profile/mnestis/)
2014-06-29 14:06:45 +02:00
Volkan Gezer
e673d76f22 Typo fix
Suggested by [mnestis](https://www.transifex.com/accounts/profile/mnestis/)
2014-06-29 14:04:30 +02:00
Volkan Gezer
393eb7bb4d Typo fix
Suggested by [mnestis](https://www.transifex.com/accounts/profile/mnestis/)
2014-06-29 14:02:50 +02:00
Daniel Molkentin
f8b097669a Merge remote-tracking branch 'origin/1.6'
Conflicts:
	VERSION.cmake
	doc/building.rst
2014-06-27 15:34:20 +02:00
Olivier Goffart
2f284209d8 Permissions: When moving is not allowed, fallback to delete and upload
We decided that we never want to rename a directory behind the
back of the user as the user may be using files in the directory
during the sync.
If moving is not allowed, we just erase the inode form the database so
the next sync will try to do an upload and delete and recover from there
using normal resolution.

This also add some code to update the inode back to the db when it is detected
as changed.
2014-06-27 15:30:08 +02:00
Olivier Goffart
09881040a3 Permissions: fix restoring subdirectories
The sync item vector must be sorted before we call checkForPermission
2014-06-27 13:34:15 +02:00
Klaas Freitag
e76386be4f Revert "ownCloudcmd: Use Account object and ConnectionValidator."
We decided that owncloudcmd should not share the config with mirall.
This reverts commit 5f96de32bb.
2014-06-26 10:16:56 +02:00
Olivier Goffart
48864a6921 httpcredentials: Remove useless mutex
The mutex is not shared with any thread, so it is totaly useless.

Yes: there are possible races here. (with the account, but also with the
user and password)
2014-06-25 12:15:30 +02:00
Olivier Goffart
92f07cb60f Enable C++11
In order to avoid the warning
 warning: anonymous variadic macros were introduced in C99
Due to the use of variadic macro in the qDebug macro in Qt 5.3

C++11 requires a space between string literal and macro to avoid the
ambiguity with user defined litteral
2014-06-25 12:01:27 +02:00
Klaas Freitag
e17243bc1f AccountMigrator: Read path from QDir::fromNativeSeperators(), add debug. 2014-06-25 11:38:08 +02:00
Klaas Freitag
0e45dd7a3d AccountMigrator: Do not inherit from QObject as it is not needed yet.
As requested by Danimos review.
2014-06-25 11:38:08 +02:00
Klaas Freitag
65f313f1b4 Account: Added missing include statement. 2014-06-25 11:38:08 +02:00
Klaas Freitag
da4958c716 Account: Read settings from ownCloud config if no branded exists.
If there is not yet a config for a branded client, but one for the
"normal" client targetting the same URL, it will be migrated.
2014-06-25 11:38:08 +02:00
Klaas Freitag
653b8494f5 FolderMan: Migrate folderlist if no folder definitions can be found
and the account indicates that it was migrated. In that case,
read the folder definitions from the ownCloud config directory.
2014-06-25 11:38:08 +02:00
Klaas Freitag
6ed6f84f6e Account: Add a wasMigrated flag.
If an account in a branded client was migrated from a former ownCloud
configuration, the method wasMigrated() will return true.
2014-06-25 11:38:08 +02:00
Klaas Freitag
ff0ba56bc3 ownCloud Theme: Implement appName() and appNameGUI(). 2014-06-25 11:38:08 +02:00
Klaas Freitag
e795d04f30 cfg migration: Add a account migrator class. 2014-06-25 11:38:08 +02:00
Klaas Freitag
8d3806b080 folderman: make escapeAlias public as its now used in accountmigrator. 2014-06-25 11:38:08 +02:00
Klaas Freitag
5597ebe455 Account: Add a scoped pointer to the ownCloud theme. 2014-06-25 11:38:07 +02:00
Klaas Freitag
5f96de32bb ownCloudcmd: Use Account object and ConnectionValidator.
That reads the credentials from the mirall config file if it was not
defined on the command line. Moreover, the connection is validated
before, which sets up the credentials properly.
2014-06-24 15:33:42 +02:00
Klaas Freitag
d2436ce23d Networkjobs: Check if reply body is empty before parsing.
This avoids a false warning that the result is not valid JSON.
2014-06-24 15:17:33 +02:00
Olivier Goffart
fbadadc377 propagator: Fix folder duplication if the folder is renamed on the server while uploading
While uploading a new folder, if the folder is renamed on the server
when still uploading, the result will be that the files that are already
uploaded will end up in the new filder name, but the file that were
not still are in the old folder.

After renaming, all the new uploads wil fail with an error on this sync
because the parent directory don't exist.
But they were uploaded with the old name in the next sync because
the renaming was not detected because the file id was not in the DB

Fix the problem by fetching the file id always when creating a new
directory, on the next sync, and saving it in the database ummediatly

https://github.com/owncloud/enterprise/issues/191
2014-06-24 12:00:13 +02:00
Olivier Goffart
9adc30ab9f Shibboleth: keep the cookie from the wizard to the ShibolethCredentials
Otherwise the user is asked twice for autentication on first sync.

Fixes https://github.com/owncloud/enterprise/issues/193
2014-06-24 11:44:52 +02:00
Olivier Goffart
94ddf7e5d8 Merge remote-tracking branch 'origin/il' 2014-06-24 08:40:27 +02:00
Olivier Goffart
b735dc07d6 Permissions: Consider and empty remotePerms from csync as NULL
Since remotePerm from csync is never NULL (as it is a buffer),
we consider that if it is empty, there was no permission set
(and therefore everything is allowed)

csync will put a space in the permission if any permission was set
2014-06-23 15:05:48 +02:00
Olivier Goffart
68c902e60b propagator: Fix restoring directory
If the result of a restored directory is SoftError, this prevent
to sync the rest of the directory

Therefore, we introduced a new status Restored,  which means that
the job was a success, but is a restoration and therefore should be
seen as a warning
2014-06-23 13:56:17 +02:00
Olivier Goffart
e19214c3c4 permissions: record them even if the instruction is NONE
when the instruction is NONE, we may return from this function
before having registered the permission in the SyncEngine::_remotePerms
hash.
Move the code a bit up.
2014-06-23 13:35:34 +02:00
Olivier Goffart
4759429702 Fix compilation after merge
Some initializer were added in 1.6 for variable that are gone in master
2014-06-23 12:53:51 +02:00
Olivier Goffart
b626589c07 Merge branch 'il'
Conflicts:
	src/mirall/folderstatusmodel.h
2014-06-23 12:52:03 +02:00
Olivier Goffart
02704cdf74 Merge remote-tracking branch 'origin/1.6' into il
Conflicts:
	VERSION.cmake
	csync/src/csync_statedb.c
	src/mirall/syncengine.cpp
	src/mirall/syncfileitem.h
2014-06-23 12:48:34 +02:00
Daniel Molkentin
7a8a3855b8 Mac: Make <ESC> close the settings dialog again 2014-06-20 16:37:07 +02:00
Daniel Molkentin
603a238eb9 Disable minimize button for Preferences on Mac 2014-06-20 16:31:17 +02:00
Olivier Goffart
b7b6cf4b3f Shibboleth: Always ask for the password if we are going to open the log window
If we don't have the cookie in the keychain (e.g. the keychain is
unavailable) but there is still session cookie in the cookie jar,
showing the browser won't ask for authentication.
2014-06-20 16:25:35 +02:00
Daniel Molkentin
485a6926c5 FancyLineEdit: initialize all members
This fixes Coverity CID 12912
2014-06-20 13:46:57 +02:00
Daniel Molkentin
f3de6f46db Folder: Removed unused member _pathWatcher
This fixes Coverity CID 12914
2014-06-20 13:42:26 +02:00
Daniel Molkentin
1309dc27d9 Remove previously unused member
This fixes Coverity CID 12915
2014-06-20 13:40:55 +02:00
Daniel Molkentin
31469d6a3e Folderwizard: Properly initialize all members
This fixes coverity CID 12916
2014-06-20 13:38:36 +02:00
Daniel Molkentin
88776770f7 Legacy Propagator: Properly initialize members
This fixes coverity CID 12919
2014-06-20 13:36:15 +02:00
Daniel Molkentin
bbf8b9f8dd syncengine: properly initialize all members in ctor
This fixes Coverity CID 12922
2014-06-20 13:28:52 +02:00
Daniel Molkentin
6ff38d8005 Cleanup member initialization in Theme
This fixes coverity issue 12925
2014-06-20 13:28:52 +02:00
Daniel Molkentin
6d13b5cc43 wizard setuppage: Clean up and properly initialize members
This fixes Coverity CID 12926
2014-06-20 13:28:52 +02:00
Daniel Molkentin
73ab2804c4 owncloudwizard: properly initialize _account memember
This fixes Coverity CID 12927
2014-06-20 13:28:52 +02:00
Klaas Freitag
d995d1190f SyncFileItem: Some more proper member initializations.
This fixes a Coverity CID
2014-06-20 12:54:46 +02:00
Klaas Freitag
3217e42a0f SyncJournalDB: Initialize size member properly with 0
This fixes Coverity CID 12924
2014-06-20 12:37:49 +02:00
Klaas Freitag
1dd58a537e owncloudcmd: Fix structurally dead code.
This fixes Coverity CID 12928
2014-06-20 12:34:15 +02:00
Olivier Goffart
3e916cfbb9 remove unused member
CID 12915
CID 12926
2014-06-20 12:08:58 +02:00
Olivier Goffart
4a9ad14e11 Folder: remove unused variable
CID 12914
2014-06-20 12:01:20 +02:00