Commit graph

7160 commits

Author SHA1 Message Date
Eugene Shalygin
228f82bcdc Merge pull request #6967 from thalieht/codingStyle
Coding style for several files
2017-07-06 18:17:02 +02:00
sledgehammer999
7a478424cc
Revert "Drop python2 support.". Closes #7005.
This reverts commit 7d030b4cd9.
2017-07-06 01:07:09 +03:00
Eugene Shalygin
e66dba6a2d Use SVG files for monochrome tray icons. Closes #6085. 2017-07-05 22:00:02 +02:00
Eugene Shalygin
ff710ebd2c fixup! Implement enum support in CachedSettingValue 2017-07-05 13:41:08 +02: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
Mike Tzou
db2dec3d28 Merge pull request #7031 from Piccirello/fix-js-errors
Fix various javascript errors and follow best practices
2017-07-05 15:03:09 +08:00
Mike Tzou
726e9f0774 Merge pull request #7030 from Piccirello/failed-attempts-auth
Skip webui username/password check for active sessions
2017-07-05 15:02:24 +08:00
sledgehammer999
8e6df572a8 Merge pull request #6156 from evsh/file-icons
Use system file type specific icons in contents tab
2017-07-03 18:06:22 +03:00
Eugene Shalygin
57493c5556 Add QFileIconProvider implementation using mime database
If built-in QFileIconProvider does not seem to work, use custom
implementation which queries mime database.
2017-07-03 16:49:19 +02:00
Eugene Shalygin
30bf6e958f Use system file type specific icons in contents tab
The icon is determined via QFileIconProvider using filename extension only.
2017-07-03 16:49:14 +02:00
Eugene Shalygin
6b65f8add8 Do not show completion when text is not being edited 2017-07-03 12:57:02 +02:00
Eugene Shalygin
8318f72a9e Follow project coding style. Issue #2192. 2017-07-03 11:42:30 +02:00
Eugene Shalygin
11f5738d99 Fix build. 2017-07-03 10:36:52 +02:00
Eugene Shalygin
62be2d7400 cmake: fix build 2017-07-03 10:36:42 +02:00
Thomas Piccirello
a7f4ea8b18 Fix javascript errors and follow best practices 2017-07-01 03:28:35 -04:00
Thomas Piccirello
cd5a55d711 Skip username/password check for active sessions (closes #6860) 2017-07-01 03:26:15 -04:00
thalieht
91f528bc96 Fix coding style for several files
trackerlist
autoexpandabledialog
previewselect
shutdownconfirmdlg
torrentcontentfiltermodel
torrentcontenttreeview
peerlistsortmodel.h
2017-06-30 23:44:12 +03:00
Vladimir Golovnev
4d28f8f48d Fix RSS with normal links do not work (#7016)
Fix regression of RSS code redesign.
Closes #7003.
2017-06-30 11:16:40 +03:00
Vladimir Golovnev
3181469d87 Merge pull request #6911 from tgregerson/tags
Add a Tags system to the GUI to expand torrent organization / filtering options. Closes #13.
2017-06-26 15:57:27 +03:00
Tony Gregerson
467e516801 Add a Tags (multi-label) feature to the GUI. Closes #13.
See https://github.com/qbittorrent/qBittorrent/issues/13 for details.
2017-06-25 13:53:07 -05:00
sledgehammer999
70ae05c3de
Pad shorter python versions. Closes #6877. 2017-06-25 17:20:51 +03:00
sledgehammer999
7d030b4cd9
Drop python2 support. 2017-06-25 17:20:50 +03: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
sledgehammer999
793ed7148f
Remove code that expects bundled search plugins. 2017-06-15 22:32:40 +03:00
sledgehammer999
de74f9298f
Remove all search plugins from repo. 2017-06-15 22:32:39 +03:00
sledgehammer999
4ab117d946
Remove possible double check of the same thing. 2017-06-15 22:32:38 +03:00
sledgehammer999
d88f0f36e0 Merge pull request #6889 from Chocobo1/lowercase
Convert all http header name constants to lowercase
2017-06-14 02:38:57 +03:00
sledgehammer999
fd05f5dec5 Merge pull request #6887 from Chocobo1/csrf_relax
[WebUI] relax CSRF defense. Closes #6882.
2017-06-14 02:37:33 +03:00
Eugene Shalygin
fff6640127 Merge pull request #6820 from evsh/fspathedit-visual-feedback
Add visual feedback for wrong paths in FileSystemPathEdit
2017-06-10 20:19:39 +02:00
Eugene Shalygin
574fed04fc Add visual feedback for wrong paths in FileSystemPathEdit 2017-06-10 17:09:20 +02:00
Vladimir Golovnev (Glassez)
66aeafdc63 Fix crash in ArticleListWidget
ArticleListWidget::handleArticleList() can be called inside
ArticleListWidget::handleArticleAboutToBeRemoved() and list widget
item can be removed at this point. Now we checking for it existence.
Closes #6896.
2017-06-07 18:24:43 +03:00
sledgehammer999
4a1ed9ff0e Merge pull request #6898 from Chocobo1/timeout
Fix keep alive duration was wrongly in milliseconds instead of seconds
2017-06-07 18:02:37 +03:00
Chocobo1
8419ca87f9 Fix KEEP_ALIVE_DURATION value
I intended to specify 7 seconds, which should be 7000 milliseconds
2017-06-07 21:45:47 +08:00
Mike Tzou
6f6a17341f Merge pull request #6859 from Chocobo1/cookie_select
Manage Cookies dialog improvements
2017-06-05 11:58:09 +08:00
Vladimir Golovnev
c503583046 Merge pull request #6864 from glassez/rss
Improve RSS Article handling
2017-06-02 19:47:08 +03:00
Chocobo1
45c21f62f9 [WebAPI] Convert all header name constants to lowercase
This save us another transition when some day we implements HTTP/2
(which all headers are in lowercase).
2017-06-02 21:55:16 +08:00
Chocobo1
cdb8f4bc61 [WebUI] relax CSRF defense. Closes #6882.
Allow HTTP request which has neither Origin nor Referer header included
2017-06-02 21:16:06 +08:00
sledgehammer999
b5c0d90e9c Merge pull request #6842 from Chocobo1/countPieces
[TorrentCreator] Show total number of pieces. Closes #6774.
2017-06-02 08:56:10 +03:00
Chocobo1
087856d3d8
[WebUI]: Implement CSRF defense
Bump API version
2017-06-01 19:37:57 +03:00
Vladimir Golovnev (Glassez)
4021bf68f7 Use constants for article field names in RSS::Feed 2017-06-01 16:04:11 +03:00
Vladimir Golovnev (Glassez)
02f77a05dc Improve RSS article parsing
Use QLatin1String for string literals.
Use predefined constants for article hash table keys.
2017-06-01 16:04:10 +03:00
Vladimir Golovnev (Glassez)
080dd79875 Store all RSS Article data in auto downloading job 2017-06-01 16:04:04 +03:00
Vladimir Golovnev (Glassez)
475348595c Improve RSS::Article class
Store more RSS article fields.
Don't use legacy article field names in Parser code.
2017-06-01 15:57:14 +03:00
sledgehammer999
34c7465009 Merge pull request #6871 from KingLucius/googlefavicon
Fetch Favicons via google
2017-06-01 15:12:30 +03:00
sledgehammer999
ace68d4961 Merge pull request #6874 from evsh/no-old-style-cast
Disable warnings in the bundled QtSingleAppplication and fix CMake builds in Travis
2017-06-01 15:10:18 +03:00
Eugene Shalygin
72cb868224 cmake: disable warnings for bundled QtSingleApplication 2017-06-01 10:14:09 +02:00
sledgehammer999
d3ccbe4f86
Fix format-truncation warning. 2017-06-01 01:09:25 +03:00
KingLucius
1b9882b3a3 Fetch Favicons via google 2017-05-31 22:21:25 +02:00
Mike Tzou
70d0fb741f Merge pull request #6870 from Chocobo1/ui
Fix focusing on the previously opened dialog didn't work
2017-05-31 12:26:27 +08:00
Chocobo1
4a4e3a13e6 Fix focusing on the previously opened dialog didn't work
Placing modeless dialog A on top of modeless dialog B, then open dialog B again,
the expected behavior is B on top of A.
2017-05-30 14:09:01 +08:00
Eugene Shalygin
ff80208534 Merge pull request #6868 from evsh/no-old-style-cast
Replace C-style casts with C++ ones
2017-05-29 17:47:01 +02:00
Vladimir Golovnev (Glassez)
a8bcc2ee52 Fix empty statusbar showed after app restarted 2017-05-29 18:38:17 +03:00
Eugene Shalygin
74cecb1b6c Replace C-style casts with C++ ones 2017-05-29 17:25:42 +02:00
Chocobo1
1ac7d779a7 Set expiration date for newly added cookie to +2 years from now, instead
of +99 years.

This fixes the ambiguity that users could assume the date was in the
past, but in fact it's in the future.
Ex. now date is 5/28/17, +99 years = 5/28/16, +2 years = 5/28/19
2017-05-29 14:10:47 +08:00
Chocobo1
a585b02e76 Enable alternatingRowColors for "Manage Cookie" dialog
Set editTriggers property to AllEditTriggers for easier editing.
Now a single mouse click can initiate item editing instead of double
clicking.
2017-05-29 14:10:47 +08:00
Chocobo1
d8083dd985 Allow to select & delete multiple entries in "Manage Cookies" dialog 2017-05-29 14:10:47 +08:00
Noam Gal
bd90614413 Get more RSS article data 2017-05-28 10:17:59 +03:00
Vladimir Golovnev
e3671050d1 Merge pull request #6840 from glassez/statusbar
Add show/hide statusbar option (Supersede #4029)
2017-05-27 22:22:34 +03:00
KingLucius
dedd31ada5 Fix crash when delete RSS feed 2017-05-27 13:52:32 +02:00
Eugene Shalygin
ae5932a573 Merge pull request #6848 from evsh/fix-piecebar-crash
Fix crash in download piece bar
2017-05-27 13:24:14 +02:00
Mike Tzou
20f6bf817e Merge pull request #6836 from Chocobo1/api
[WebAPI] Get piece information/state
2017-05-27 18:28:22 +08:00
Chocobo1
c618214061 [TorrentCreator] Show number of pieces. Closes #6774. 2017-05-27 16:37:08 +08:00
Eugene Shalygin
6d9eec0e71 Fix crash in download piece bar
When torrent size is smaller than the image width, bytes per pixel was
set to zero and code was crashing. Set it to -1 instead, as we do when
image is empty. This will disable highliting, but our algorithm does not
work in this case anyway.
2017-05-26 21:47:51 +02:00
Mike Tzou
b6080c19c2 Merge pull request #6834 from Chocobo1/cookie
[WebUI] Make cookie parsing robust
2017-05-26 23:56:35 +08:00
Vladimir Golovnev (Glassez)
c456b9a42c Refactor and improve StatusBar 2017-05-26 18:11:26 +03:00
Chocobo1
3933790bda Add new webUI API. Closes #6457.
Now getting piece information for a specific torrent is possible via:

* Returns an array of states (integers) of pieces in order. Defined as:
  "0=not downloaded", "1=downloading", "2=downloaded".
  GET /query/getPieceStates/<torrent_hash>

* Returns an array of hashes (strings) of pieces in order:
  GET /query/getPieceHashes/<torrent_hash>
2017-05-26 14:37:03 +08:00
takiz
0940a8a764 Add show/hide statusbar option 2017-05-25 16:35:21 +03:00
Chocobo1
f35a5c8085 [WebUI] Make cookie parsing robust
Previously cookie name such as "<any string>SID" will be mistakenly
accepted as "SID" session ID, this commit fixes it.

Use QString::isEmpty()
2017-05-25 18:45:07 +08:00
Chocobo1
712e6a0e5c Refactor out helper function Utils::String::unquote
Remove redundant include
2017-05-25 18:44:35 +08:00
Mike Tzou
1f9ccb44a3 Merge pull request #5196 from Chocobo1/creator_pr
Revamp Torrent creator
2017-05-24 17:40:10 +08:00
Mike Tzou
92decf83b8 Merge pull request #6330 from Chocobo1/rename
Fix renaming files is not case sensitive on Windows platform
2017-05-24 13:12:30 +08:00
Chocobo1
7eed1a108e Rename variables
Add myself to authors list
2017-05-24 11:54:42 +08:00
Chocobo1
7e87eeb2d4 Use QThread::requestInterruption() instead of m_abort flag 2017-05-24 11:54:42 +08:00
Chocobo1
60524348f0 Enlarge combobox to fix its contents 2017-05-24 11:54:42 +08:00
Chocobo1
9f2fe2b678 Move CachedSettingValue instances to header file 2017-05-24 11:54:42 +08:00
Chocobo1
a4141fd151 Simplify m_creatorThread initialization 2017-05-24 11:54:42 +08:00
Chocobo1
7de1aba092 Switch to modeless dialog
Don't close dialog after creating torrent
Show progress bar all the time
2017-05-24 11:54:42 +08:00
Chocobo1
d277696acc Add global.h file 2017-05-24 11:54:42 +08:00
Chocobo1
2e8c01d88c Use CachedSettingValue 2017-05-24 11:54:42 +08:00
Chocobo1
908481885c Enable drag n drop to create torrent on mainwindow 2017-05-24 11:54:42 +08:00
Chocobo1
386b93bb0f Fix the file size sum igonred files starting with a dot: ".name"
Make the computation iterative instead of recurisve to avoid stack overflow.

Enlarge read size to enable better performance.
Remove `QFile::close()` calls, QFile automatically close them in dtor.
2017-05-24 11:54:42 +08:00
Chocobo1
8efcc335de Switch to use SettingsStorage class 2017-05-24 11:54:42 +08:00
Chocobo1
009798f690 Follow header include rule 2017-05-24 11:54:42 +08:00
Chocobo1
6bab30a178 Revamp Torrent creator 2017-05-24 11:54:42 +08:00
Mike Tzou
ced52e3269 Merge pull request #6827 from naikel/webui_filter_fix
Fix slow filtering in WebUI
2017-05-24 00:02:22 +08:00
Naikel Aparicio
03b2decab6 Fix slow filtering in WebUI. Fixup 7aadf644e0. 2017-05-22 09:19:03 -04:00
Eugene Shalygin
47960b2592 Merge pull request #6818 from naikel/webui_fix
Cosmetic fixes for WebUI upload and download windows
2017-05-22 13:27:01 +02:00
Eugene Shalygin
b82edc561f Merge pull request #6821 from evsh/do-not-hardcode-rss-colors
Do not use hardcoded colors in RSS feed view
2017-05-22 10:58:02 +02:00
Eugene Shalygin
e99e88bbe7 Merge pull request #6811 from KingLucius/ETplugin
[Search engine] Remove ExtraTorrent plugin
2017-05-21 14:26:54 +02:00
Eugene Shalygin
72da2e7252 Do not use hardcoded colors in RSS feed view 2017-05-21 13:02:34 +02:00
Naikel Aparicio
9fc6de77ca Cosmetic fixes for WebUI upload and download windows 2017-05-20 16:01:24 -04:00
Chocobo1
d8c0a40b1f Add explicit error handling when filesCount() returns negative value
Fix coverity CID 162538
2017-05-20 14:01:58 +08:00
Chocobo1
562080de69 Initialize variable
Fixes coverity CID 161628
2017-05-20 11:38:39 +08:00
Mike Tzou
c3b1c57d67 Merge pull request #6807 from Chocobo1/icon
[Quick Fix] Set icon height in html instead of js
2017-05-20 11:18:02 +08:00
Mike Tzou
7f089db942 Merge pull request #6802 from Chocobo1/size
[Quick Fix] Cleanup options dialog
2017-05-20 11:17:44 +08:00
KingLucius
ebc50a7237 remove ExtraTorrent plugin 2017-05-19 16:36:56 +02:00
Mike Tzou
ce36a7ca62 Merge pull request #6498 from thalieht/trackerList
Trackerlist: Add toggle columns menu
2017-05-19 15:06:42 +08:00
Chocobo1
5529a7713c Set icon height in html instead of js
Fixup of d302e4fb92
2017-05-19 00:06:10 +08:00
Mike Tzou
b8d2fef653 Merge pull request #6805 from Chocobo1/icon
Fix icon too large. Closes #6804.
2017-05-18 23:54:40 +08:00
Chocobo1
d302e4fb92 [WebUI] Fix connection status icon too large. Closes #6804. 2017-05-18 23:07:40 +08:00
Eugene Shalygin
4b48f7b8d9 Fix build error. 2017-05-18 16:41:49 +02:00
Chocobo1
2702410572 Remove useless horizontal layout widget 2017-05-18 19:48:36 +08:00
Chocobo1
e24b565857 Remove unused row in "Share Ratio Limiting" group box 2017-05-18 18:40:40 +08:00
Chocobo1
fad3af27ca Partialy revert 7320ac1bc0
Reverts back options dialog size
Also removes unused tabstops
2017-05-18 18:12:32 +08:00
Vladimir Golovnev
927ecc7075 Merge pull request #4266 from naikel/seed_until
Share torrents until seeding time reaches an specific amount of minutes
2017-05-18 07:12:24 +03:00
Vladimir Golovnev
c4ccf6b774 Merge pull request #6714 from fbriere/issue/6708-sort-categories
Fix instances where categories where still sorted case-sensitively. Closes #6708.
2017-05-17 21:47:20 +03:00
Naikel Aparicio
9ba00d7035 Implemented share limit by seeding time 2017-05-17 14:33:17 -04:00
Chocobo1
08a6c75227 Refactors
Rename variables
Refactor to return early instead of introducing a scope
Revise dialog title & messages
Refactor code logic
2017-05-17 21:28:46 +08:00
Eugene Shalygin
f4a6242711 Merge pull request #6795 from evsh/fix-file-widget
Use new signal/slot syntax in options dialog
2017-05-17 13:34:54 +02:00
Mike Tzou
0838f64311 Merge pull request #6782 from Piccirello/strict-csp
Use less permissive Content Security Policy
2017-05-17 18:47:51 +08:00
Eugene Shalygin
8ca730f0d8 Use new signal/slot syntax in options dialog 2017-05-17 12:38:27 +02:00
Mike Tzou
d80abeb10f Merge pull request #6751 from thalieht/webuiUnitPrecision
WebUI: Increase the number of digits after the decimal point
2017-05-17 12:48:03 +08:00
Eugene Shalygin
71ce193f5a Fix cmake build broken by #6724.
PR #6724 deletes two source files, let's delete them from
CMakeLists.txt.
2017-05-16 18:55:52 +02:00
Eugene Shalygin
32551b8e6c Merge pull request #6793 from evsh/cmake
cmake: include searchengine resources
2017-05-16 18:48:12 +02:00
Mike Tzou
0f7eabfa4b Merge pull request #6781 from Piccirello/torrent-download-api-response
Include response status in upload torrent API
2017-05-17 00:39:55 +08:00
Eugene Shalygin
4d53d8d1ba Merge pull request #6785 from KingLucius/freespaceondisk
Get disk free space size via QStorageInfo instead of native API. Closes #6780
2017-05-16 18:19:16 +02:00
Eugene Shalygin
a18b3bea03 cmake: include searchengine resources 2017-05-16 18:06:56 +02:00
Vladimir Golovnev
44f8a48d73 Merge pull request #6724 from glassez/libt11
Don't use features, deprecated in libtorrent-1.1
2017-05-16 18:54:00 +03:00
Mike Tzou
3cc1b11025 Merge pull request #6783 from Chocobo1/fix
Tweak CachedSettingValue
2017-05-16 11:00:14 +08:00
KingLucius
aea887a30f cross-platform free space on disk 2017-05-15 23:05:23 +02:00
Thomas Piccirello
7cf1d844b0 Return status indicating if at least one torrent was successfully added 2017-05-15 14:30:44 -04:00
Eugene Shalygin
954f05b4a9 Merge pull request #5375 from evsh/filename-edit-widget
Add a widget for editing file names
2017-05-15 09:33:28 +02:00
Chocobo1
3fb8ff281f Tweak CachedSettingValue
* Add another constructor to save a call to proxyFunc when its not needed
  note that this call is a virtual function call
* Pass in proxyFunc by const reference
* Move get methods together
2017-05-15 12:31:26 +08:00
Thomas Piccirello
1b5852ad0b Use less permissive Content Security Policy
Adjust content order
2017-05-14 20:26:15 -04:00
Chocobo1
b9403774e6 Use QBT_EXT in all places
Cleanup headers on the way
2017-05-13 16:20:32 +08:00
Chocobo1
b18bf48014 Improve error message reported to user
Should not contain "file" or "folder", because it's not clear which type is selected.
2017-05-13 16:16:59 +08:00
Chocobo1
51e3e5438b Code formatting
Refactor
2017-05-13 16:16:59 +08:00
Chocobo1
0939875ca8 Fix renaming files is not case sensitive on Windows platform. Closes #5128. 2017-05-13 16:16:59 +08:00
Mike Tzou
a2d5d48aff Merge pull request #6730 from Chocobo1/icontray
Fix double click on system tray icon causing program to open and minimize immediately
2017-05-13 02:32:37 +08:00
Eugene Shalygin
92a7479e2d Merge pull request #4994 from evsh/availability-column
Add availability column to torrent contents
2017-05-12 17:47:51 +02:00
Eugene Shalygin
5c10a24923 Add availability column to torrent properties window 2017-05-12 17:15:00 +02:00
Eugene Shalygin
bc18bf1ab4 Add TorrentHandle::availableFileFractions() function
The function returns list of availability values for all torrent files.
The availability here is different to that one in the progress bar. Here
it shows what part of the file's pieces is available (i.e. we do not count
availability > 1 for a piece).
2017-05-12 17:14:59 +02:00
Eugene Shalygin
d5af8722a6 Add availability column to torrent content model 2017-05-12 17:14:59 +02:00
Eugene Shalygin
114c9a8421 Follow project coding style. Issue #2192. 2017-05-12 17:06:18 +02:00
thalieht
73c37cc460 Trackerlist: add "m_" to private members and make them camelCase 2017-05-11 19:15:00 +03:00
thalieht
14f50f1038 Trackerlist: Allow to toggle columns 2017-05-11 19:15:00 +03:00
thalieht
d9555a9e9d Trackerlist: Set text alignment of columns with numbers to the right 2017-05-11 16:53:31 +03:00
thalieht
5d33399000 TrackerList: Remove unnecessary deletes from the destructor 2017-05-11 16:53:31 +03:00
thalieht
33979cb41c TransferListWidget: Remove unnecessary deletes from the destructor 2017-05-11 16:53:31 +03:00
thalieht
e82a1522c8 Trackerlist: Change 0 to nullptr 2017-05-11 16:53:31 +03:00
thalieht
e00be240b0 PropertiesWidget: Change 0 to nullptr 2017-05-11 16:53:31 +03:00
thalieht
b360c5453b PropertiesWidget: Some coding style 2017-05-11 16:53:31 +03:00
thalieht
ce77ebdfe1 Coding style of whole trackerlist.h and a little in trackerlist.cpp 2017-05-11 16:53:31 +03:00
Vladimir Golovnev
f3658daf72 Merge pull request #6699 from fbriere/issue/6265-top-dirname-while-adding
Use actual top-level dirname to look for incomplete files in new torrent
2017-05-11 15:23:16 +03:00
Eugene Shalygin
a997b7d078 Merge pull request #6770 from evsh/fix-6768
Do not attempt to show detailed tooltips without torrent metadata. Closes #6768.
2017-05-11 09:51:58 +02:00
Eugene Shalygin
f211b238c4 Do not attempt to show detailed tooltips without torrent metadata. Closes #6768.
Computations for detailed tooltips are not protected against unavailable
metadata, that leads to asserts or crashes. But since those tooltips are
useless in this case, do not show them at all. Inform user that detailed
tooltip becomes available once torrent metadata are fetched.
2017-05-11 01:10:23 +02:00
Vladimir Golovnev
692e4a986a Merge pull request #6757 from glassez/rss
Forward add/remove child RSS Item event as set of add/remove Articles events
2017-05-10 16:58:49 +03:00
Vladimir Golovnev (Glassez)
fbda237cc4 Fix local IP addresses 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
26f645bd6c Don't create redundant "buf" variable 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
a4d2df575e Don't use deprecated torrent_handle::set_tracker_login 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
1d3dbcb9d2 Don't use deprecated fields of torrent-related alerts 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
5dc54aa224 Don't use deprecated torrent_status fields 2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
72a54910e9 Don't use deprecated peer_info fields 2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
a2f82be6c2 Don't use deprecated url_seed_alert fields 2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
13b04f8d2d Don't use deprecated settings_pack members 2017-05-10 13:54:27 +03:00
Vladimir Golovnev (Glassez)
bdca55f15c Use new Session Statistics feature 2017-05-10 13:24:51 +03:00
Vladimir Golovnev (Glassez)
8a6d8f3953 Use cached SessionStatus and CacheStatus 2017-05-10 13:24:37 +03:00
Vladimir Golovnev (Glassez)
cb678a254d Fix statsdialog.* coding style 2017-05-10 13:23:51 +03:00
Vladimir Golovnev (Glassez)
78d6b14fe8 Don't use deprecated torrent_info fields 2017-05-10 12:43:49 +03:00
Chocobo1
446b3307f9 Make method const 2017-05-09 14:21:55 +08:00
Chocobo1
b4baeaaf23 Pass arguemnts by const reference 2017-05-09 14:15:45 +08:00
Chocobo1
42c17ea5ce Fix argument name differ in definition & declaration 2017-05-09 14:12:36 +08:00
Chocobo1
3739bcc270 Initialize struct member 2017-05-09 13:51:12 +08:00
Chocobo1
b9e8cab1e5 Revise class memebers construction & destruction
Use nullptr
Delete m_contentDelegate on close
Remove redundant deletion of m_contentModel since parent is setup
correctly
2017-05-09 13:45:30 +08:00
Chocobo1
4d4097d819 Move editHotkey out of class definition
Also since parent is setup correctly, remove the redundant delete
2017-05-09 13:03:14 +08:00
Eugene Shalygin
5b59b18606 Fix crash when entering daemon mode. Closes #6759.
We stored reference to parameters object in main(), but that object gets
deleted when we reset Application object upon entering daemon mode.
Change reference to copy to fix that.
2017-05-08 18:01:38 +02:00
Eugene Shalygin
7320ac1bc0 Use file path edit widgets in options and add torrent dialog 2017-05-08 10:08:29 +02:00
Eugene Shalygin
30081e0356 Add widget for editing filesystem paths 2017-05-08 10:08:29 +02: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
Vladimir Golovnev (Glassez)
a36848b5c0 Forward add/remove child RSS Item as add/remove Articles 2017-05-07 18:49:21 +03:00
Vladimir Golovnev (Glassez)
f8debdea67 Fix Item::unreadCountChanged() emit in wrong place 2017-05-07 18:40:42 +03:00
sledgehammer999
a4d5ac4b17 Merge pull request #4739 from sledgehammer999/web_translations
Don't duplicate translatable strings for the WebUI. Use the ones from…
2017-05-07 16:24:53 +03:00
sledgehammer999
9f98f9f7ac
Rename cmd options source files. 2017-05-07 16:20:18 +03:00
sledgehammer999
1a099fa742
Don't enforce an explicit value for TriState cmd options.
Most code from Brian Kendall <guygizmo@gmail.com> (@briankendall)
2017-05-07 14:47:37 +03:00
thalieht
e075274177 webUI: increase the number of digits after the decimal point 2017-05-05 20:09:04 +03:00
sledgehammer999
b1f1823c65
[WebUI]Use the same layout in the Speed tab in preferences as the GUI. 2017-05-05 16:41:41 +03:00
sledgehammer999
0addeafc6b
Add missing unit sizes in misc.js 2017-05-05 16:41:40 +03:00
sledgehammer999
44c5a9beff
[WebUI]Use translatable strings in Statistics dialog. 2017-05-05 16:41:39 +03:00
sledgehammer999
e177799ada
[WebUI]Make the context obligatory for translatable strings. Also delete duplicate strings from extra translations. 2017-05-05 03:46:33 +03:00
Vladimir Golovnev (Glassez)
76e3383650 Don't remove read articles from Unread list
Revert back old behavior (incorrect but, perhaps, more user-friendly),
when Unread list populates with "unread" articles only but then it can
contain "read" articles if they become "read" when Unread list is shown.
2017-05-04 20:37:05 +03:00
Frédéric Brière
c37d90bf6d Properly sort categories case-insensitively in filter widget. Closes #6708. 2017-05-04 10:56:45 -04:00
Frédéric Brière
722c928ab5 Turn isSpecialItem() into a CategoryFilterModel static method. 2017-05-04 10:41:36 -04:00
Vladimir Golovnev (Glassez)
2d3914c077 Prevent incorrect popullating of Unread RSS list 2017-05-04 12:39:59 +03:00
Vladimir Golovnev (Glassez)
4e37688105 Properly clear ArticleListWidget 2017-05-04 12:30:02 +03:00
Frédéric Brière
f53a403a7b Set "category" column as case-insensitive in TransferListSortModel.
(From what I can tell, it would appear that the sorting was already
case-insensitive by default.  This makes it explicit.)
2017-05-03 14:07:55 -04:00
Frédéric Brière
ec08cb5445 Leave categories order intact in "Add new torrent" dialog.
The categories are already properly sorted in AddNewTorrentDialog; this
second case-sensitive sort undid all that.

This partially addresses #6708.
2017-05-03 14:07:55 -04:00
Eugene Shalygin
6540dfa528 Fix release CMake build
write() is declared with __attribute__ ((__warn_unused_result__)) and as
such we shall check its return value. Took opportunity and adjusted
error reporting a bit: if writing to stderr fails, try to write to
stdout.
2017-05-03 02:52:10 +02:00
Chocobo1
da581dee41 Fix double click on system tray icon causing program to open and
minimize immediately

Closes #5826.
Simply ignore DoubleClick event, as it always come after Trigger
event
2017-05-03 00:14:51 +08:00
Mike Tzou
1808f0e614 Merge pull request #6734 from Chocobo1/plugin_connect
Fix signaling to checkForUpdatesFinished() failed
2017-05-02 21:56:32 +08:00
Chocobo1
3e964212ac Fix signaling to checkForUpdatesFinished() failed.
Fixup of 14e168039c.
2017-05-02 20:33:21 +08:00
Vladimir Golovnev
c1e3e2a745 Revert "Guard the flag used for deferred session configure." (#6733)
This reverts commit 5cbc7b16c0.
2017-05-02 14:39:47 +03:00
Chocobo1
7d1ac06ce2 Fix stack overflow in Utils::Gzip::decompress
Anyway, use std::vector to allocate memory on the heap (in compress() too)
2017-05-02 12:47:07 +08:00
Chocobo1
1fbf121506 Fix CookiesDialog position 2017-05-01 16:02:09 +08:00
Chocobo1
f36e891010 Fix trackersadditiondlg position 2017-05-01 15:32:08 +08:00
Chocobo1
bd2f69a9d6 Fix peeradditiondlg position 2017-05-01 15:32:08 +08:00
Chocobo1
6f6fe626a1 Fix shutdownconfirm position 2017-05-01 15:32:08 +08:00
Chocobo1
fb9ebce9c6 Fix pluginselectdlg position
Fix peerlistwidget position
Fix mainwindow position
2017-05-01 15:32:08 +08:00
Chocobo1
2258e4d5ed Fix automatedrssdownloader position 2017-05-01 15:32:08 +08:00
Chocobo1
73047e3c84 Cleanup downloadfromurldlg, statsdialog 2017-05-01 15:32:08 +08:00
Chocobo1
933f9f1451 Fix optionsdlg position 2017-05-01 15:31:58 +08:00
Chocobo1
46abe42a54 Fix deletionconfirmationdlg position
Fix autoexpandabledialog position
Fix previewselect position
2017-05-01 15:30:41 +08:00
Chocobo1
a902eb6b2b Fix speedlimitdlg position 2017-05-01 15:30:38 +08:00
Chocobo1
de54fa2c30 Fix addnewtorrentdialog position
Fix messageBox position
2017-05-01 14:48:10 +08:00
Chocobo1
7eaa5987c8 Fix dialogs didn't position on the correct screen which qBittorrent window is on. Closes #1690, #2474, #3538. 2017-05-01 14:33:25 +08:00
sledgehammer999
67f44e03a2 Merge pull request #6689 from briankendall/fix_macos_addnewtorrentdialog_bug
Fix for macOS-specific bug in AddNewTorrentDialog
2017-04-30 22:29:51 +03:00
sledgehammer999
4ea9a2f07e Merge pull request #5532 from briankendall/torrent_command_line_arguments
Command line arguments for specifying options when adding torrents
2017-04-30 22:25:21 +03:00
Brian Kendall
eba41978b0 Added command line arguments for specifying options when adding torrents
Arguments include adding torrents as paused/started, skiping hash check, setting category, downloading in sequential order, downloading first and last pieces first, and skipping the 'add new torrent' dialog. Added TriStateBoolOption class for specifying options that don't have a default value when unused (e.g. add-paused). Also improved command line usage text to include more information, have better organization, and not exceed 80 columns in width. Also also added firstLastPiecePriority field to BitTorrent::AddTorrentData, and modified TorrentHandle so that if first/last piece priority should be on, it will be toggled on after the torrent's metadata has loaded.
2017-04-30 14:22:30 -04:00
Chocobo1
6bcb07649e Setup DPI at startup 2017-05-01 02:21:44 +08:00
Chocobo1
893ce32f1d Remove curly braces 2017-05-01 00:45:27 +08:00
Chocobo1
a1cad86bbf Remove workaround
Upstream confirmed bug fixed in Qt 5.2
2017-05-01 00:45:09 +08:00
Chocobo1
b3c73b7868 Refactor 2017-05-01 00:37:47 +08:00
sledgehammer999
0a5bb6685f Merge pull request #6654 from Chocobo1/persistence
Webui server fixes
2017-04-30 16:34:23 +03:00
Frédéric Brière
e8f6149a6d findIncompleteFiles(): Replace dir listing with individual checks. Closes #6265.
Looking for incomplete files in a new torrent by using a pre-generated
directory listing presents several disadvantages:

  - It requires us to extract the top-level directory name (in case it
    was renamed).
  - It requires us to know whether the top-level directory was stripped.
  - In the latter case, it may result in recursively traversing the
    entire contents of all downloaded torrents.

Calling QFile::exists() individually for each file solves all these
issues.

In so doing, the handling of single-file and multiple-file torrents are
rendered pretty much identical, and can therefore be merged.
2017-04-30 09:26:58 -04:00
Mike Tzou
e91a5f6a5a Merge pull request #6701 from Chocobo1/webui
WebUI: Fix checkbox hidden
2017-04-30 13:35:02 +08:00
Chocobo1
5e50d8ed91 WebUI: Fix checkbox hidden. Closes #6642. 2017-04-29 23:12:04 +08:00
Eugene Shalygin
172991e068 Merge pull request #6703 from evsh/cmake
cmake: set warning and error compiler options
2017-04-29 14:11:09 +02:00
Eugene Shalygin
c4e16aa820 cmake: set warning and error options
The set is far from perfect, but guards against common errors with GCC.
2017-04-29 13:30:28 +02:00
Vladimir Golovnev
93df0ef1d1 Move AddTorrentParams to its own header (#6712)
* Move AddTorrentParams to its own header

* fixup! Move AddTorrentParams to its own header
2017-04-29 11:49:40 +03:00
Vladimir Golovnev
70f1153413 Merge pull request #6694 from glassez/remove-temp
Remove torrent temp folder when it becomes unneeded
2017-04-29 11:44:15 +03:00
Vladimir Golovnev (Glassez)
160b7ff2d3 Remove torrent temp folder when torrent is deleted 2017-04-28 16:52:16 +03:00
Vladimir Golovnev (Glassez)
c56b4a25bc Remove torrent temp folder if it becomes unneeded 2017-04-28 12:30:48 +03:00
Eugene Shalygin
71cf25ae99 Replace variable length array with std::vector in print_stacktrace()
The function does memory allocation from heap anyway, so should not be
a problem to use STL container.
2017-04-27 14:32:02 +02:00
Vladimir Golovnev
c50cee8feb Merge pull request #6686 from glassez/fix-nullptr
Fix RSS GUI bugs
2017-04-27 12:55:44 +03:00
Vladimir Golovnev (Glassez)
a78a1a9c64 Add invariant checking in ArticleListWidget 2017-04-27 12:31:18 +03:00
sledgehammer999
74fb070e78 Merge pull request #6693 from glassez/drop-qt4
Drop rest of qt4 support code
2017-04-26 15:12:55 +03:00
Vladimir Golovnev (Glassez)
335443e6a0 Drop QThread::msleep wrapper 2017-04-26 10:44:47 +03:00
Vladimir Golovnev (Glassez)
d5d946dd66 Drop Qt4 related settings from QMake project 2017-04-26 08:53:47 +03:00
sledgehammer999
b71ee80ecd
Optimize P2P filter parsing too. 2017-04-26 02:33:57 +03:00
sledgehammer999
fd7e69e1e0
Add helper function for logging messages. 2017-04-26 02:33:56 +03:00
sledgehammer999
51cf6bd2a5
Optimize DAT filter parsing. Parse in memory and in place instead of copying strings around. 2017-04-26 02:33:55 +03:00
Brian Kendall
59e6a4298d Fixed macOS-specific bug in AddNewTorrentDialog
Because AddNewTorrentDialog is a sheet in macOS, repositioning it causes bad things to happen, particularly if the main dialog is on a secondary monitor.
2017-04-25 13:34:06 -04:00
Vladimir Golovnev (Glassez)
6764de8ef0 Fix ArticleListWidget adds new articles in wrong order 2017-04-25 13:15:11 +03:00
Vladimir Golovnev (Glassez)
71814885aa Fix ArticleListWidget doesn't clear properly 2017-04-25 13:14:55 +03:00
Vladimir Golovnev (Glassez)
abfcfb5af0 Fix possible null pointer dereference 2017-04-25 13:01:34 +03:00
sledgehammer999
8f6e04d779
Using new IP parser provided by @evsh. It is faster and uses less memory.
Class `DATIPv4Parser` was written by Eugene Shalygin <eugene.shalygin@gmail.com> (evsh on github).
2017-04-25 04:43:30 +03:00
sledgehammer999
f53dab8ad4
Output log messages for ip filter parsing errors. 2017-04-25 04:43:29 +03:00
sledgehammer999
05ab9fc355
Optimize ip filter parsing. 2017-04-25 04:43:22 +03:00
Vladimir Golovnev (Glassez)
3a3125ea2b Fix remove oldest article 2017-04-24 16:50:28 +03:00
Vladimir Golovnev
e433cbab97 Merge pull request #6677 from glassez/fix-create-subfolder
Allow strip root folder using default settings
2017-04-24 12:21:53 +03:00
Vladimir Golovnev (Glassez)
c799923d7d Allow strip root folder using default settings 2017-04-24 12:03:35 +03:00
Vladimir Golovnev (Glassez)
711be50e9c Fix AddTorrentData field types 2017-04-24 11:59:16 +03:00
sledgehammer999
032eb12585
Remove whitespace. 2017-04-24 04:25:49 +03:00
sledgehammer999
3cdc6fb978
Fix compiler warnings. 2017-04-24 04:24:32 +03:00
Eugene Shalygin
c865ba2803 Merge pull request #6671 from zywo/cmake-build
Fix CMake build
2017-04-23 14:16:39 +02:00
Vladimir Golovnev (qlassez)
f259bde275 Fix "Create subfolder" in AddNewTorrentDialog 2017-04-23 15:05:03 +03:00