Skip to content

Commit 605b320

Browse files
committed
Added history dialog upload cancel button
tweaked status visual feedback and fixed empty history entries being created on upload errors
1 parent 10103cd commit 605b320

File tree

6 files changed

+69
-31
lines changed

6 files changed

+69
-31
lines changed

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
*.2-pre1
1+
*.2-pre1
2+
*.autosave

dialogs/historydialog.cpp

+16-7
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,23 @@ HistoryDialog::HistoryDialog(QWidget *parent) :
8383
ui->clearButton->setEnabled(false);
8484
}
8585

86-
ui->uploadProgressBar->setValue(Uploader::instance()->progress());
86+
if (Uploader::instance()->progress() > 0) {
87+
ui->uploadProgressBar->setValue(Uploader::instance()->progress());
88+
}
89+
else {
90+
ui->uploadProgressWidget->setVisible(false);
91+
}
92+
93+
ui->cancelUploadButton->setIcon(os::icon("no"));
8794

8895
connect(Uploader::instance(), SIGNAL(progress(int)), this, SLOT(uploadProgress(int)));
8996
connect(Uploader::instance(), SIGNAL(done(QString,QString,QString)), this, SLOT(refresh()));
90-
connect(ui->uploadButton, SIGNAL(clicked()), this, SLOT(upload()));
91-
connect(ui->clearButton , SIGNAL(clicked()), this, SLOT(clear()));
97+
98+
connect(ui->uploadButton , SIGNAL(clicked()), this , SLOT(upload()));
99+
connect(ui->cancelUploadButton, SIGNAL(clicked()), Uploader::instance() , SLOT(cancel()));
100+
connect(ui->cancelUploadButton, SIGNAL(clicked()), ui->uploadProgressWidget, SLOT(hide()));
101+
102+
connect(ui->clearButton , SIGNAL(clicked()), this , SLOT(clear()));
92103
}
93104

94105
HistoryDialog::~HistoryDialog()
@@ -132,7 +143,6 @@ void HistoryDialog::contextMenu(QPoint point)
132143

133144
if (mContextIndex.column() == 0) {
134145
connect(&locationAction, SIGNAL(triggered()), this, SLOT(location()));
135-
136146
contextMenu.addAction(&locationAction);
137147
}
138148
else {
@@ -216,12 +226,12 @@ void HistoryDialog::selectionChanged(QItemSelection selected, QItemSelection des
216226
void HistoryDialog::upload()
217227
{
218228
Uploader::instance()->upload(mSelectedScreenshot);
219-
ui->uploadButton->setEnabled(false);
229+
ui->uploadProgressWidget->setVisible(true);
220230
}
221231

222232
void HistoryDialog::uploadProgress(int progress)
223233
{
224-
ui->uploadProgressBar->setEnabled(true);
234+
ui->uploadProgressWidget->setVisible(true);
225235
ui->uploadProgressBar->setValue(progress);
226236
}
227237

@@ -272,6 +282,5 @@ bool HistoryDialog::event(QEvent *event)
272282
ScreenshotManager::instance()->settings()->setValue("geometry/historyDialog", saveGeometry());
273283
}
274284

275-
276285
return QDialog::event(event);
277286
}

dialogs/historydialog.ui

+46-18
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
<rect>
77
<x>0</x>
88
<y>0</y>
9-
<width>327</width>
10-
<height>252</height>
9+
<width>352</width>
10+
<height>294</height>
1111
</rect>
1212
</property>
1313
<property name="windowTitle">
@@ -18,12 +18,6 @@
1818
<normaloff>:/icons/view-history</normaloff>:/icons/view-history</iconset>
1919
</property>
2020
<layout class="QVBoxLayout" name="verticalLayout">
21-
<property name="spacing">
22-
<number>4</number>
23-
</property>
24-
<property name="margin">
25-
<number>6</number>
26-
</property>
2721
<item>
2822
<widget class="QLineEdit" name="filterEdit">
2923
<property name="enabled">
@@ -47,16 +41,50 @@ Right click items to get access to more options.</string>
4741
</widget>
4842
</item>
4943
<item>
50-
<widget class="QProgressBar" name="uploadProgressBar">
51-
<property name="enabled">
52-
<bool>false</bool>
53-
</property>
54-
<property name="value">
55-
<number>0</number>
56-
</property>
57-
<property name="textVisible">
58-
<bool>false</bool>
59-
</property>
44+
<widget class="QWidget" name="uploadProgressWidget" native="true">
45+
<layout class="QHBoxLayout" name="uploadProgressLayout">
46+
<property name="spacing">
47+
<number>0</number>
48+
</property>
49+
<property name="leftMargin">
50+
<number>0</number>
51+
</property>
52+
<property name="topMargin">
53+
<number>0</number>
54+
</property>
55+
<property name="rightMargin">
56+
<number>0</number>
57+
</property>
58+
<property name="bottomMargin">
59+
<number>0</number>
60+
</property>
61+
<item>
62+
<widget class="QProgressBar" name="uploadProgressBar">
63+
<property name="value">
64+
<number>0</number>
65+
</property>
66+
<property name="textVisible">
67+
<bool>false</bool>
68+
</property>
69+
</widget>
70+
</item>
71+
<item>
72+
<widget class="QPushButton" name="cancelUploadButton">
73+
<property name="minimumSize">
74+
<size>
75+
<width>0</width>
76+
<height>0</height>
77+
</size>
78+
</property>
79+
<property name="text">
80+
<string/>
81+
</property>
82+
<property name="flat">
83+
<bool>true</bool>
84+
</property>
85+
</widget>
86+
</item>
87+
</layout>
6088
</widget>
6189
</item>
6290
<item>

lightscreenwindow.cpp

+4-2
Original file line numberDiff line numberDiff line change
@@ -548,7 +548,6 @@ void LightscreenWindow::screenshotAction(int mode)
548548

549549
options.mode = mode;
550550

551-
setStatus(tr("Processing..."));
552551
ScreenshotManager::instance()->take(options);
553552
}
554553

@@ -716,9 +715,12 @@ void LightscreenWindow::updateStatus()
716715
emit uploading(true);
717716
}
718717
else {
719-
if (activeCount > 0) {
718+
if (activeCount > 1) {
720719
setStatus(tr("%1 processing").arg(activeCount));
721720
}
721+
else if (activeCount == 1) {
722+
setStatus(tr("processing"));
723+
}
722724
else {
723725
setStatus();
724726
}

tools/screenshotmanager.cpp

-3
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,6 @@ void ScreenshotManager::updateHistory(QString fileName, QString url, QString del
124124

125125
updateQuery.exec();
126126
}
127-
else {
128-
saveHistory(fileName, url, deleteHash);
129-
}
130127
}
131128

132129
void ScreenshotManager::removeHistory(QString fileName, qint64 time)

tools/uploader/uploader.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ QString Uploader::lastUrl() const
5656
void Uploader::cancel()
5757
{
5858
mUploaders.clear();
59+
mProgress = 0;
5960
emit cancelAll();
6061
}
6162

0 commit comments

Comments
 (0)