Commit graph

84 commits

Author SHA1 Message Date
Chocobo1
5ddbf9bba9
Replace post-increment with pre-increment
And post-decrement with pre-decrement.
2018-06-08 08:44:06 +08:00
Vladimir Golovnev
e61c882fee
Merge pull request #9015 from thalieht/style
Fix coding style
2018-06-03 14:48:04 +03:00
thalieht
356d6a6589 Fix coding style 2018-05-31 19:45:09 +03:00
Chocobo1
09f759355f
Replace QRegExp with QRegularExpression
Revise `static` keyword usage, static is added to frequently used
instances.
2018-05-31 22:56:49 +08:00
Chocobo1
c22e6b4502
Cleanup header include order
Add missing header.
Cleanup license.
2018-05-31 22:56:25 +08:00
thalieht
6b4455e13d Use qt5 connect() syntax 2018-05-09 16:08:22 +03:00
thalieht
3e4099fe5b Replace the zeroing of pointers with nullptr 2018-04-15 13:06:31 +03:00
Chocobo1
37ea01bd44
Use lightweight printf instead of iostream
Using iostream usually adds a lot of other operators (<<, endl), whereas
*printf takes only 1 function call.

Also use qUtf8Printable whenever possible.
2018-03-31 03:21:53 +08:00
Vladimir Golovnev
a5294e1e08
Merge pull request #8558 from luis-pereira/containter-anti-pattern
Don't create temporary containers just to iterate over them
2018-03-19 13:06:01 +03:00
Luís Pereira
ac42ccb5e4
Don't create temporary containers just to iterate over them
Stops temporary containers being created needlessly due to API misuse.
For example, it’s common for developers to assume QHash::values() and
QHash::keys() are free and abuse them, failing to realize their
implementation internally actually iterates the whole container, allocates
memory, and fills a new QList.

Added a removeIf generic algorithm, similar to std ones. We can't use std
algorithms with Qt dictionaries because Qt iterators have different
behavior from the std ones.

Found using clazy.
2018-03-18 16:22:12 +03:00
Chocobo1
423511765a
Fix typo 2018-03-14 23:37:08 +08:00
Thomas Piccirello
7278625f53 Calculate supported categories based on selected plugin 2018-03-12 01:33:45 -04:00
Chocobo1
0457fd260e
Avoid temporary QString allocations
This fixes clazy warning: Use multi-arg instead [-Wclazy-qstring-arg]
2018-03-07 20:06:00 +08:00
Vladimir Golovnev (Glassez)
279bce2014
Make SearchManager singleton 2018-02-23 20:26:32 +03:00
Vladimir Golovnev (Glassez)
f3d370870d
Improve Search handling
Legacy SearchEngine class really has three roles:
  1. Manage search plugins,
  2. Handle the search job, and
  3. Handle the download of the torrent file using the search plugin.
Now it is splitted into 3 classes: SearchManager, SearchHandler and
SearchDownloadHandler.
Search GUI is also improved.
2018-02-23 20:15:25 +03:00
Tom Piccirello
e6a1b72354 Only add search separators as needed 2018-01-16 00:22:51 -05:00
Chocobo1
fb698896c9
Fix translation context.
Partially addresses #8220.

Also sort include headers
2018-01-07 23:01:22 +08:00
Chocobo1
c2c0dd2717
Fix column size too narrow on resize
Instead of giving a value, just resize to the content size
2017-12-24 21:54:56 +08:00
Chocobo1
27cf98a962
Resize dialog size on high DPI monitors 2017-12-24 21:54:56 +08:00
sledgehammer999
99abc21dab
Simplify sorting code. 2017-12-21 15:26:38 +02:00
Chocobo1
86c5a8df75
Partial revert eac8838dc2. Fixes #7952.
mapFromSource() didn't work as expected, when used in lessThan(), it sometimes
returns an invalid QModelIndex.
A crash is observed when filtering source model via filterAcceptsRow() in #7952,
the crash is due to endless recursive of filterAcceptsRow() & lessThan() calling
each other and mapFromSource() is the culprit of it.
2017-12-04 17:40:44 +08:00
Mike Tzou
eac8838dc2
[GUI] Implement stable sort (#7703)
* NaturalCompare now returns compare result instead of "less than" result
* Change to stable sort in GUI components
* Add Utils::String::naturalLessThan() helper function
* Use Qt::CaseSensitivity type
2017-11-30 17:10:30 +08:00
Nick Korotysh
4c8dd0ca9d allow search plugins sorting. closes #7526 2017-10-03 16:57:09 +03:00
sledgehammer999
8d913d77dd Merge pull request #7266 from Chocobo1/coverity
Fix issues found by coverity scan
2017-08-13 20:10:04 +03:00
Vladimir Golovnev (qlassez)
cff6a64e9f
Use qUtf8Printable() for logging strings
qDebug(), qInfo(), qWarning(), qCritical(), qFatal() expect %s arguments
to be UTF-8 encoded, while qPrintable() converts to local 8-bit encoding.
Therefore qUtf8Printable() should be used for logging strings instead of
qPrintable().
2017-08-13 16:14:57 +03:00
Chocobo1
91b2b14ba5
Initialize variables
Remove unused variable
2017-08-13 15:28:36 +08:00
Chocobo1
24a69a9fe7 Fix crash when exiting qbt with search plugin dialog open
Avoid emitting signal in destructor
2017-07-20 13:26:36 +08:00
vit9696
d25467d3e6 Various macOS UI improvements 2017-07-15 20:49:40 +03:00
Eugene Shalygin
a22d2f0139 Implement enum support in CachedSettingValue
Enums are stored as strings, that improves configuration file
readability and maintainability. String values are obtained via
QMetaEnum, and since with Qt 5.5 QMetaEnum::fromType() includes a
static_assert, this has to be a safe method.
2017-07-05 12:41:58 +02:00
Eugene Shalygin
62be2d7400 cmake: fix build 2017-07-03 10:36:42 +02:00
sledgehammer999
a77e1c9f36
Use qt5 connect style for searchengine, pluginselectdlg and searchwidget. 2017-06-22 18:54:30 +03:00
sledgehammer999
dee0b63cc5
Aggregate installed/updated plugin names and use a single messagebox to inform the user. 2017-06-22 18:54:29 +03:00
sledgehammer999
c2a2d306da
Use alternative method for plugin favicon validity. Drop unnecessary code. 2017-06-22 18:54:28 +03:00
sledgehammer999
34c29b78f9
Update the backend when a new plugin favicon is downloaded. 2017-06-15 22:32:43 +03:00
sledgehammer999
8c98c8cb3f
Put copyright warning message to the search plugin dialog. 2017-06-15 22:32:42 +03:00
sledgehammer999
fc543b9db6
Display instructions when no search plugin is installed. 2017-06-15 22:32:41 +03:00
Chocobo1
42c17ea5ce Fix argument name differ in definition & declaration 2017-05-09 14:12:36 +08:00
sledgehammer999
d61fc7e820 Merge pull request #3858 from Chocobo1/screen_center
Fix dialogs didn't position on the correct screen
2017-05-07 22:17:55 +03:00
Chocobo1
3e964212ac Fix signaling to checkForUpdatesFinished() failed.
Fixup of 14e168039c.
2017-05-02 20:33:21 +08:00
Chocobo1
fb9ebce9c6 Fix pluginselectdlg position
Fix peerlistwidget position
Fix mainwindow position
2017-05-01 15:32:08 +08:00
Chocobo1
de54fa2c30 Fix addnewtorrentdialog position
Fix messageBox position
2017-05-01 14:48:10 +08:00
Eugene Shalygin
14e168039c Use explicit class for search plugin versions 2017-04-21 09:47:08 +02:00
sledgehammer999
ae0a9d74c4 Merge pull request #6487 from Chocobo1/ui
GUI polish
2017-04-18 04:01:13 +03:00
Eugene Shalygin
4e1b7c3b87 Remove generated include from headers
Not only fixes compilation with CMake 3.8 (without messing with include
paths) but makes sources cleaner.
2017-04-17 16:31:19 +02:00
Chocobo1
812bd4c83a Uncrustify 2017-04-05 17:39:44 +08:00
Chocobo1
59556dfc6a Cleanup & refactor 2017-04-05 17:36:47 +08:00
Chocobo1
86e82c71e5 Setup parent pointer
Rely on Qt to do the delete, since the parent ownership is setup
correctly.
2017-04-05 17:36:36 +08:00
Chocobo1
a16c557137 Always draw background 2017-03-08 14:36:42 +08:00
Eugene Shalygin
e64bb1de8c Drop Qt 4 support 2017-03-05 22:24:59 +01:00
sledgehammer999
eb3f4b8490 Merge pull request #6283 from Chocobo1/sort
Use case-insensitive sort for Name column in Search tab. Closes #407.
2017-01-25 23:07:11 +02:00