Comparar commits
12 Commits
| Autor | SHA1 | Data | |
|---|---|---|---|
| 7cd2f39f82 | |||
| 949dd5db35 | |||
| 49a5c5bb8b | |||
| 48aa355eea | |||
| 644b2673e0 | |||
| 8eed62e639 | |||
| 04c8449e5f | |||
| 016868e95a | |||
| a662c85728 | |||
| 12cc8bfd95 | |||
| 11c6f20c90 | |||
| c602ec310d |
+27
@@ -1,5 +1,32 @@
|
||||
ChangeLog
|
||||
=========
|
||||
version 1.3.0 (release 2013-06-25 ), csync 0.80.0 required
|
||||
|
||||
* Default proxy port to 8080
|
||||
* Don't lose proxy settings when changing passwords
|
||||
* Support SOCKS5 proxy (useful in combination with ssh *D)
|
||||
* Propagate proxy changes to csync at runtime
|
||||
* Improve proxy wizard
|
||||
* Display proxy errors
|
||||
* Solved problems with lock files
|
||||
* Warn if for some reason all files are scheduled for removal on either side
|
||||
* Avoid infinite loop if authentication fails in certain cases
|
||||
* Fix reading the password from the config in certain cases
|
||||
* Do not crash when configured sync target disappears
|
||||
* Make --help work on windows
|
||||
* Make sync feedback less ambiguous.
|
||||
* Fix icon tray tooltip sometimes showing repeated content
|
||||
* More use of native directory separators on Windows
|
||||
* Remove journal when reusing a directory that used to have a journal before
|
||||
* Visual clean up of status dialog items
|
||||
* Wizard: When changing the URL or user name, allow the user to push his data
|
||||
to the new location or wipe the folder and start from scratch
|
||||
* Wizard: Make setting a custom folder as a sync target work again
|
||||
* Fix application icon
|
||||
* User-Agent now contains "Mozilla/5.0" and the Platform name (for firewall/proxy compat)
|
||||
* Server side directory moves will be detected
|
||||
* New setup wizard, defaulting to root syncing (only for new setups)
|
||||
* Improved thread stop/termination
|
||||
|
||||
version 1.2.5 (release 2013-04-23 ), csync 0.70.7 required
|
||||
* [Fixes] NSIS installer fixes
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
set( VERSION_MAJOR 1 )
|
||||
set( VERSION_MINOR 3 )
|
||||
set( VERSION_PATCH 0 )
|
||||
set( VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX}beta4)
|
||||
set( VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX})
|
||||
set( SOVERSION 0 )
|
||||
|
||||
|
||||
@@ -140,6 +140,8 @@ Application::Application(int &argc, char **argv) :
|
||||
|
||||
connect( _statusDialog, SIGNAL(removeFolderAlias( const QString&)),
|
||||
SLOT(slotRemoveFolder(const QString&)));
|
||||
connect( _statusDialog, SIGNAL(resetFolderAlias( const QString&)),
|
||||
SLOT(slotResetFolder(const QString&)));
|
||||
connect( _statusDialog, SIGNAL(enableFolderAlias(QString,bool)),
|
||||
SLOT(slotEnableFolder(QString,bool)));
|
||||
connect( _statusDialog, SIGNAL(infoFolderAlias(const QString&)),
|
||||
@@ -797,21 +799,36 @@ void Application::slotAbout()
|
||||
void Application::slotRemoveFolder( const QString& alias )
|
||||
{
|
||||
int ret = QMessageBox::question( 0, tr("Confirm Folder Remove"),
|
||||
tr("<p>Do you really want to stop syncing the upload folder <i>%1</i>?</p>"
|
||||
tr("<p>Do you really want to stop syncing the folder <i>%1</i>?</p>"
|
||||
"<p><b>Note:</b> This will not remove the files from your client.</p>").arg(alias),
|
||||
QMessageBox::Yes|QMessageBox::No );
|
||||
|
||||
if( ret == QMessageBox::No ) {
|
||||
return;
|
||||
}
|
||||
Folder *f = _folderMan->folder(alias);
|
||||
|
||||
_folderMan->slotRemoveFolder( alias );
|
||||
_statusDialog->slotRemoveSelectedFolder( );
|
||||
computeOverallSyncStatus();
|
||||
setupContextMenu();
|
||||
}
|
||||
|
||||
void Application::slotResetFolder( const QString & alias )
|
||||
{
|
||||
int ret = QMessageBox::question( 0, tr("Confirm Folder Reset"),
|
||||
tr("<p>Do you really want to reset folder <i>%1</i> and rebuild your client database?</p>"
|
||||
"<p><b>Note:</b> While no files will be removed, this can cause significant data "
|
||||
"traffic and take several minutes to hours, depending on the size of the folder.</p>").arg(alias),
|
||||
QMessageBox::Yes|QMessageBox::No );
|
||||
if( ret == QMessageBox::No ) {
|
||||
return;
|
||||
}
|
||||
|
||||
Folder *f = _folderMan->folder(alias);
|
||||
f->slotTerminateSync();
|
||||
f->wipe();
|
||||
_folderMan->slotScheduleAllFolders();
|
||||
}
|
||||
|
||||
// Open the File list info dialog.
|
||||
void Application::slotInfoFolder( const QString& alias )
|
||||
{
|
||||
|
||||
@@ -61,6 +61,7 @@ protected slots:
|
||||
void slotAddFolder();
|
||||
void slotOpenStatus();
|
||||
void slotRemoveFolder( const QString& );
|
||||
void slotResetFolder( const QString& );
|
||||
void slotEnableFolder( const QString&, const bool );
|
||||
void slotInfoFolder( const QString& );
|
||||
void slotConfigure();
|
||||
|
||||
@@ -507,10 +507,10 @@ void ownCloudFolder::slotAboutToRemoveAllFiles(SyncFileItem::Direction direction
|
||||
{
|
||||
QString msg = direction == SyncFileItem::Down ?
|
||||
tr("This sync would remove all the files in the local sync folder '%1'.\n"
|
||||
"If you or your administrator have reset your account on the server, choose"
|
||||
"If you or your administrator have reset your account on the server, choose "
|
||||
"\"Keep files\". If you want your data to be removed, choose \"Remove all files\".") :
|
||||
tr("This sync would remove all the files in the sync folder '%1'.\n"
|
||||
"This might be because the folder was silently reconfigured, or that all"
|
||||
"This might be because the folder was silently reconfigured, or that all "
|
||||
"the file were manually removed.\n"
|
||||
"Are you sure you want to perform this operation?");
|
||||
QMessageBox msgBox(QMessageBox::Warning, tr("Remove All Files?"),
|
||||
|
||||
@@ -130,6 +130,9 @@
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetMinimumSize</enum>
|
||||
</property>
|
||||
<property name="fieldGrowthPolicy">
|
||||
<enum>QFormLayout::ExpandingFieldsGrow</enum>
|
||||
</property>
|
||||
<item row="0" column="0" colspan="2">
|
||||
<widget class="QRadioButton" name="radioButton">
|
||||
<property name="text">
|
||||
@@ -159,7 +162,7 @@
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@@ -213,7 +216,7 @@
|
||||
<item row="3" column="1">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
||||
@@ -94,6 +94,7 @@ void OwncloudSetupWizard::startWizard()
|
||||
_ocWizard->setMultipleFoldersExist(_folderMan->map().count() > 1);
|
||||
|
||||
_ocWizard->show();
|
||||
_ocWizard->raise();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -237,6 +237,7 @@ StatusDialog::StatusDialog( Theme *theme, QWidget *parent) :
|
||||
_folderList->setEditTriggers( QAbstractItemView::NoEditTriggers );
|
||||
connect(_ButtonClose, SIGNAL(clicked()), this, SLOT(accept()));
|
||||
connect(_ButtonRemove, SIGNAL(clicked()), this, SLOT(slotRemoveFolder()));
|
||||
connect(_ButtonReset, SIGNAL(clicked()), this, SLOT(slotResetFolder()));
|
||||
|
||||
connect(_ButtonEnable, SIGNAL(clicked()), this, SLOT(slotEnableFolder()));
|
||||
connect(_ButtonInfo, SIGNAL(clicked()), this, SLOT(slotInfoFolder()));
|
||||
@@ -244,6 +245,7 @@ StatusDialog::StatusDialog( Theme *theme, QWidget *parent) :
|
||||
|
||||
_ButtonRemove->setEnabled(false);
|
||||
_ButtonEnable->setEnabled(false);
|
||||
_ButtonReset->setEnabled(false);
|
||||
_ButtonInfo->setEnabled(false);
|
||||
_ButtonAdd->setEnabled(true);
|
||||
|
||||
@@ -265,6 +267,7 @@ void StatusDialog::slotFolderActivated( const QModelIndex& indx )
|
||||
|
||||
_ButtonRemove->setEnabled( state );
|
||||
_ButtonEnable->setEnabled( state );
|
||||
_ButtonReset->setEnabled( state );
|
||||
_ButtonInfo->setEnabled( state );
|
||||
|
||||
if ( state ) {
|
||||
@@ -316,7 +319,6 @@ void StatusDialog::buttonsSetEnabled()
|
||||
{
|
||||
bool haveFolders = _folderList->model()->rowCount() > 0;
|
||||
|
||||
_ButtonRemove->setEnabled(false);
|
||||
if( _theme->singleSyncFolder() ) {
|
||||
// only one folder synced folder allowed.
|
||||
_ButtonAdd->setVisible(!haveFolders);
|
||||
@@ -331,6 +333,8 @@ void StatusDialog::buttonsSetEnabled()
|
||||
_ButtonEnable->setEnabled(isSelected);
|
||||
_ButtonRemove->setEnabled(isSelected);
|
||||
_ButtonInfo->setEnabled(isSelected);
|
||||
_ButtonReset->setEnabled(isSelected);
|
||||
|
||||
}
|
||||
|
||||
void StatusDialog::slotUpdateFolderState( Folder *folder )
|
||||
@@ -396,6 +400,15 @@ void StatusDialog::slotRemoveFolder()
|
||||
slotCheckConnection();
|
||||
}
|
||||
|
||||
void StatusDialog::slotResetFolder()
|
||||
{
|
||||
QModelIndex selected = _folderList->selectionModel()->currentIndex();
|
||||
if( selected.isValid() ) {
|
||||
QString alias = _model->data( selected, FolderViewDelegate::FolderAliasRole ).toString();
|
||||
emit(resetFolderAlias( alias ));
|
||||
}
|
||||
}
|
||||
|
||||
void StatusDialog::slotRemoveSelectedFolder()
|
||||
{
|
||||
QModelIndex selected = _folderList->selectionModel()->currentIndex();
|
||||
|
||||
@@ -72,6 +72,7 @@ public:
|
||||
|
||||
signals:
|
||||
void removeFolderAlias( const QString& );
|
||||
void resetFolderAlias( const QString& );
|
||||
void enableFolderAlias( const QString&, const bool );
|
||||
void infoFolderAlias( const QString& );
|
||||
void openFolderAlias( const QString& );
|
||||
@@ -81,6 +82,7 @@ signals:
|
||||
|
||||
public slots:
|
||||
void slotRemoveFolder();
|
||||
void slotResetFolder();
|
||||
void slotRemoveSelectedFolder();
|
||||
void slotFolderActivated( const QModelIndex& );
|
||||
void slotOpenOC();
|
||||
|
||||
@@ -42,13 +42,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="_ButtonRemove">
|
||||
<property name="text">
|
||||
<string>Remove...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="_ButtonEnable">
|
||||
<property name="text">
|
||||
@@ -56,13 +49,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="_ButtonInfo">
|
||||
<property name="text">
|
||||
<string>Info...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
@@ -71,11 +57,45 @@
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>56</height>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="_ButtonRemove">
|
||||
<property name="text">
|
||||
<string>Remove</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="_ButtonReset">
|
||||
<property name="text">
|
||||
<string>Reset</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="_ButtonInfo">
|
||||
<property name="text">
|
||||
<string>Info...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
|
||||
+634
-386
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+638
-391
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-394
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+650
-379
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+738
-501
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+636
-370
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+654
-416
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+660
-422
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+643
-385
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+646
-407
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-397
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+635
-391
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-395
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-391
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+650
-411
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-390
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+636
-392
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+635
-397
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+654
-416
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-390
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-396
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-393
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
+634
-383
Diferenças do arquivo suprimidas por serem muito extensas
Carregar Diff
Referência em uma Nova Issue
Bloquear um usuário