Commit Graph

107 Commits

Author SHA1 Message Date
thalieht
fee9030337 Make num enter key work the same as return in searchjobwidget
Backport #10400 to v4_1_x branch.
2019-03-23 10:51:07 +02:00
thalieht
bd4d2fa424 Combine qAsConst() with copyAsConst() to asConst() 2018-12-17 00:28:33 +02:00
thalieht
e2ee928017 Convert all foreach() to range-based for() 2018-12-17 00:28:32 +02:00
thalieht
62e71a15a4 Fix coding style for various things 2018-12-17 00:28:31 +02:00
Chocobo1
39973f1bb1 Fix strings not translated
Closes #9934.
2018-12-17 00:28:21 +02:00
thalieht
37b4b69199 Allow resizing search filter in search job
Allow qBt to resize the search filter in search job because it causes
qBt's width to exceed the screen's width for laptop users.
2018-11-14 23:39:57 +02:00
dzmat
1f2c7a6671 Improve scaling of speed graphs
Make Y axis scale to fix on predetermined nice looking positions
2018-11-14 23:39:57 +02:00
Thomas Piccirello
cffafa8e9f Add WebUI search API controller
Closes #2495.
2018-11-14 23:39:57 +02:00
Thomas Piccirello
0fda919268 Instantiate SearchPluginManager with other application components 2018-11-14 23:39:57 +02:00
thalieht
ee6a071fb6 Refactor in searchjob to always color visited entries
Now it colors multiple entries, when visited at once, via the hotkey or
the Download button.
2018-09-12 17:30:19 +03:00
thalieht
bc8b838953 Set "enter" as shortcut to download the selected torrents in search job 2018-09-12 17:30:19 +03:00
thalieht
5251d93b3d Fix some warnings 2018-09-12 17:30:19 +03:00
thalieht
e9c9ea3bba Add regex option in the search filter's context menu
In the search job widget.
2018-09-12 17:30:19 +03:00
thalieht
e26977ab2c Add hotkey for toggling focus between the search LineEdits 2018-08-12 16:50:13 +03:00
thalieht
03b00ec045 Add a name filter for search results
Closes #8226
2018-08-12 16:50:13 +03:00
sledgehammer999
6f81e40106 Revert email address changes in copyright notices 2018-08-12 11:08:06 +03:00
thalieht
8074be7644 Delete several unused #include 2018-08-12 11:08:06 +03:00
thalieht
c99ac99a99 Fix coding style 2018-08-12 11:08:06 +03:00
thalieht
976e2450ec Convert the names used in ui and c++ files from snake_case to camelCase 2018-08-12 11:08:06 +03:00
Vladimir Golovnev (Glassez)
9b1fa3a5af Use new DownloadManager interface 2018-08-12 11:08:06 +03:00
Chocobo1
945466968c Reduce queries to python version
Instead of doing at least 2 queries for python infos, now requires only
1 query (in ideal condition), and the result is cached.
2018-08-12 11:08:06 +03:00
Chocobo1
54f080b755 Move related functions to Utils::Python 2018-08-12 11:08:06 +03:00
thalieht
800a3aa61e Change file names and classes names to match them 2018-08-12 11:08:06 +03:00
Chocobo1
be5ad63e21 Replace post-increment with pre-increment
And post-decrement with pre-decrement.
2018-08-12 11:08:06 +03:00
Eugene Shalygin
bb893e70c5 Refactor CMake build scripts
1. Use FeatureSummary module to show configuration results.

2. Invert option()/find_package() relationship: instead of
calling find_package(... REQUIRED) when option is set, rely on optional
find package call and PackageName_FOUND variable.

3. Refactor handling options that result in simple preprocessor defines
(actually copy the snippet from libtorrent) so that everything is done
in a single function call.

4. Populate target properties in order to get rid of
include_directories() calls.
2018-08-12 11:08:06 +03:00
thalieht
6ce4c885b9 Fix coding style 2018-08-12 11:08:06 +03:00
Chocobo1
c93b05c293 Replace QRegExp with QRegularExpression
Revise `static` keyword usage, static is added to frequently used
instances.
2018-08-12 11:08:06 +03:00
Chocobo1
55c3813fac Cleanup header include order
Add missing header.
Cleanup license.
2018-08-12 11:08:06 +03:00
thalieht
0c988a5fd4 Use qt5 connect() syntax 2018-05-27 18:31:51 +03:00
thalieht
9cb190ebe7 Replace the zeroing of pointers with nullptr 2018-05-27 18:31:51 +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