Commit graph

108 commits

Author SHA1 Message Date
Olivier Goffart
8a671c40d1 Make FolderMan a member of the application
The goal here is that it is going to be destroyed with the application
It need to be destoyed so the folder are destroyed, which is required
for properly finishing the sync while exiting.

It must not be destroyed after the application because the QSQLite plugin
may be already destroyed in that case.

Since the constructor of FolderMan is called earlier, we can't call the
config file too early

 fixes 1793
2014-05-26 14:37:15 +02:00
Daniel Molkentin
4edbeece49 Fix connection following the update of the QtSingleApplication classes 2014-05-21 12:31:44 +02:00
Olivier Goffart
b08284e4cc Fix the background check job for the connection
We can't use the quota job for that as it needs the credidentials and therefore
may re-enter the credidential code when we are currently trying to fetch the credentials.

The quotainfo.cpp part of this patch is basically a revert of d836b80153
2014-04-19 09:49:52 +02:00
Klaas Freitag
66b152ac69 Remove left over member variables. 2014-03-03 18:12:12 +01:00
Daniel Molkentin
8e7290b450 Fix online state handling
Before this commit, parts of mirall were aware of the state, but not all.
Also, the state was not set back to Connected again in all cases. This
commit introduces the following changes:

- Make QuotaInfo a member of Account
- QuotaInfo and Folder (EtagJob) can put the client in disconnected mode
- FolderMan now disables etag-polling when offline

Fixes #1459
Fixes #1441
2014-02-20 23:24:03 +01:00
Olivier Goffart
50aa31d192 winEventFilter does not exist on Qt5 2014-01-28 15:30:58 +01:00
Olivier Goffart
e31000d759 Handle the fact that the user might cancel the password dialog
Add a new state of the account in which the credidentials are invalid,
but we are still trying to get the user enter his password.

Make sure that fetched() is ALWAYS emitted after we call fetch on the
credidentials, so we can know that the user pressed cancel. In that
case, go in the SignedOut state.

Fixes #1353
2014-01-28 11:49:09 +01:00
Klaas Freitag
ec9efd7894 Make use of the new Proxy handling class. 2014-01-16 12:52:11 +01:00
Daniel Molkentin
46a403eb02 Report connection errors explicitly on explicit sign in attempts
Implicit connection attempts fail silently. This is roughly what
users expect from e.g. mail clients.

Fixes #1205.
2013-11-27 14:15:56 +01:00
Daniel Molkentin
4e22fff427 Introduce online/offline state, accessible via GUI 2013-11-25 15:34:16 +01:00
Daniel Molkentin
21c9fc2d35 Cleanup 2013-11-13 19:11:46 +01:00
Daniel Molkentin
95d7afb0d0 cleanups 2013-11-11 10:57:33 +01:00
Daniel Molkentin
aa2baa45fb Cleanups, ownership for ssl error handler 2013-10-24 12:55:26 +02:00
Daniel Molkentin
d2b445c80c Basic port, misses wizard 2013-10-23 14:48:53 +02:00
Olivier Goffart
2c63f7a24d Merge branch '1.4'
Conflicts:
	VERSION.cmake
	src/mirall/application.cpp
	src/mirall/application.h
	src/mirall/csyncthread.cpp
	src/mirall/folder.cpp
	src/mirall/folder.h
	src/mirall/folderman.cpp
2013-10-15 17:00:53 +02:00
Daniel Molkentin
5a7cd815ab Reconnect if network is unavailable after startup
Fixes: #1080
2013-10-11 11:43:23 +02:00
Klaas Freitag
53ac5427a8 Integrate progress dialog into settings dialog. 2013-10-09 14:27:28 +02:00
Daniel Molkentin
e304dfd5b9 Add socketapi
Slightly amended by: Daniel Molkentin <danimo@owncloud.com>
2013-10-03 17:05:01 +02:00
Klaas Freitag
55722099fa More refactoring: Logger and Logbrowser out of application class. 2013-10-02 15:29:24 +02:00
Klaas Freitag
2149814428 Fix/enhance user information about problems on startup.
Pass the error conditions to the gui class.
2013-10-01 18:25:43 +02:00
Klaas Freitag
ea1c951006 Refactoring: Moved all GUI related computing out of application class.
Created ownCloudGui class to contain all gui related stuff.
2013-10-01 13:58:01 +02:00
Daniel Molkentin
b0beeea95f More fixes related to object destruction on exit
- _logBrowser is not delete on close, call deleteLater
- move writing geometry out of dtor.
- _folderWizard was unused, remove it and all related noops

Hopefully solves #945
2013-09-20 14:18:28 +02:00
Daniel Molkentin
8fdf9cac6b Try to be more graceful during shutdown
- Do not delete _tray, use deleteLater() via QScropedPointer
- force closing any dialoges that might want to write their
  geometry in aboutToQuit(), before the actual destruction
  of the sync thread, etc starts.

This tries to fix #945
2013-09-18 15:42:35 +02:00
Klaas Freitag
eb5824f713 Handle startup network errors correctly. 2013-09-11 10:49:45 +02:00
Daniel Molkentin
9b319cf189 Significantly simply logging 2013-08-07 15:00:10 +02:00
Daniel Molkentin
c9ddb12b5a Build after merge 2013-08-05 20:14:22 +02:00
Daniel Molkentin
0932ee6051 Merge branch 'shibboleth'
Conflicts:
	src/CMakeLists.txt
	src/mirall/application.h
2013-08-05 19:54:06 +02:00
Klaas Freitag
2b3b4f9daf Start setup wizard if no config exists on startup. 2013-08-05 12:19:53 +02:00
Klaas Freitag
6ce1c17ee1 Give application class control over itemprogressdialog 2013-08-02 11:33:45 +02:00
Krzesimir Nowak
92af3ea725 Add and use credentials abstraction. Implement HTTP and dummy credentials.
To achieve that MirallConfigFile now exports several general
settings-related methods for subclasses (here: for HttpConfigFile), so
it does not have to contain any code targeted for specific
credentials.
2013-08-01 16:53:43 +02:00
Klaas Freitag
a64724be0e More sophisticated progress, add Recent Changes Menu to tray.
ProgressDispatcher now stores a queue of events as well as sync
problems, better known as soft errors. The tray menu displays a
sub menu with 5 recent changes and adds a more... button that
shows a warning icon if soft errors had happend.
More to implement.
2013-07-30 22:24:48 +02:00
Klaas Freitag
3a9ab3a86f Consolidated progress displaying to a single slot from csync. 2013-07-26 13:44:38 +02:00
Daniel Molkentin
8c15839753 Remove all >= Qt 4.7 ifdefs 2013-07-24 15:34:37 +02:00
Daniel Molkentin
da087292fd First version of progress in the context menu 2013-07-23 13:19:17 +02:00
Daniel Molkentin
a5e7af6c1f Make FolderMan a singleton
It doesn't "belong" to application (think about lib use cases).
This is better.
2013-07-22 13:59:52 +02:00
Klaas Freitag
d0c5fb2395 Check connection at startup through ConnectionValidator 2013-07-05 13:14:48 +02:00
Daniel Molkentin
d870d6c326 Implement "Show Desktop Notifications" option (default: on)
Should make #314 subscriber happy :-)
2013-07-05 01:01:23 +02:00
Daniel Molkentin
c164beb040 Commit squashed refactoring branch
- introduce settings dialog
- general settings for general / proxy settings
- standalone proxy settings dialog removed
- standalone status dialog removed
- moved status dialog into settings dialog
- radically cut down links in context menu
- add help link to context menu

This needs more cleanup and testing. Known issues:

- When the wizard is called while the settings dialog
  is open, it will not show old information (see FIXME)
- Some settings are not implemented yet (greyed out)
- The counter in the FileItemDialog is not correct the
  first time around.

Based on the discussion done with Jan and Klaas during the
Nuenberg workshop.
2013-07-04 20:02:44 +02:00
Daniel Molkentin
4ff1a13f32 Implement folder display.
- Displayed as disabled action
- Refactor davRequest along the way
  - take Verb as QByteArray
  - pass along a QIODevice

Not implemented for Qt < 4.8
2013-06-28 23:01:31 +02:00
Daniel Molkentin
9d01f80744 Fix Dialog behavior
- Fix proxy dialog being callable multiple times
- Use smart pointers in more places
- _owncloudSetupWizard was guarded by a smart pointer,
  this needs to be accounted for in other code pathes.
  Fixes Setup dialog not showing up when left-clicking
  on unconfigured instances on Windows.
2013-06-27 16:54:33 +02:00
Daniel Molkentin
a662c85728 Add "Reset Folder" option to status dialog
to recover from invalid databases. Features
a big fat warning.
2013-06-24 21:17:00 +02:00
Daniel Molkentin
4b0bdd648c Do not repeat old strings
Fixes #678, fixes #494
2013-06-11 22:14:32 +02:00
Olivier Goffart
12ea381205 Do not re-use the configuration wizard.
Create it on demand.
This allow yo alays keep a cleen state.
Mirall issue #668
2013-06-11 21:15:37 +02:00
Daniel Molkentin
b37645e14d Revert "Put FolderWizard on the stack"
This reverts commit 1ec5a1aaa2.
2013-06-11 18:33:39 +02:00
Daniel Molkentin
1ec5a1aaa2 Put FolderWizard on the stack 2013-06-11 18:19:09 +02:00
Olivier Goffart
779e59156c Added --logexpire to remove the log after some hours 2013-06-07 18:58:16 +02:00
Daniel Molkentin
0c959e8661 Windows: Log change of power state 2013-06-05 16:14:20 +02:00
Olivier Goffart
7c1f91abdd Add the --logdir commandline option
To log to a different file for every sync.

This also changed a QueuedConnection to AutoConnection, that way we
directly save the log from the main thread in the file without waiting
for the event loop (so if it crashes before, the log has been writen)
2013-06-03 16:25:41 +02:00
Cedric Bellegarde
2f0474a467 Add support for freedesktop notifications 2013-03-20 10:03:49 +01:00
Daniel Molkentin
3cf7003101 Load UI languages instead of locales where possible
Load Qt translations consistently along the way.
This only has been verified on mac and needs adoption
for win32.
2013-02-21 13:19:54 +01:00