diff --git a/.gitignore b/.gitignore index f4cab7b2f..3d75b2b0a 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,7 @@ config.status src/icons/qbt-theme/build-icons/node_modules/ src/icons/skin/build-icons/node_modules/ src/icons/skin/build-icons/icons/*.png + +# Web UI tools +node_modules +package-lock.json diff --git a/src/webui/api/torrentscontroller.cpp b/src/webui/api/torrentscontroller.cpp index 2b9f09e33..3e1486a31 100644 --- a/src/webui/api/torrentscontroller.cpp +++ b/src/webui/api/torrentscontroller.cpp @@ -461,7 +461,7 @@ void TorrentsController::filesAction() QString fileName = torrent->filePath(i); if (fileName.endsWith(QB_EXT, Qt::CaseInsensitive)) fileName.chop(QB_EXT.size()); - fileDict[KEY_FILE_NAME] = Utils::Fs::toNativePath(fileName); + fileDict[KEY_FILE_NAME] = Utils::Fs::toUniformPath(fileName); const BitTorrent::TorrentInfo::PieceRange idx = info.filePieces(i); fileDict[KEY_FILE_PIECE_RANGE] = QJsonArray {idx.first(), idx.last()}; diff --git a/src/webui/www/private/css/style.css b/src/webui/www/private/css/style.css index b625af7ab..ee027d3d1 100644 --- a/src/webui/www/private/css/style.css +++ b/src/webui/www/private/css/style.css @@ -352,7 +352,6 @@ a.propButton img { #torrentsFilterToolbar { float: right; margin-right: 30px; - margin-right: 30px; } #torrentsFilterInput { @@ -364,6 +363,20 @@ a.propButton img { background-position: left; } +#torrentFilesFilterToolbar { + float: right; + margin-right: 30px; +} + +#torrentFilesFilterInput { + width: 160px; + padding-left: 2em; + background-image: url("../images/qbt-theme/edit-find.svg"); + background-repeat: no-repeat; + background-size: 1.5em; + background-position: left; +} + /* Tri-state checkbox */ label.tristate { @@ -470,6 +483,19 @@ td.generalLabel { line-height: 25px; } +.filesTableCollapseIcon { + width: 15px; + height: 15px; + cursor: pointer; + margin-bottom: -3px; + padding-right: 5px; +} + +.filesTableCollapseIcon.rotate { + transform: rotate(270deg); + margin-bottom: -1px; +} + .unselectable { -webkit-touch-callout: none; -webkit-user-select: none; @@ -596,3 +622,17 @@ td.statusBarSeparator { .searchPluginsTableRow { cursor: pointer; } + +#torrentFilesTableDiv .dynamicTable tr.nonAlt { + background-color: #fff; +} + +#torrentFilesTableDiv .dynamicTable tr.nonAlt.selected { + background-color: #354158; + color: #fff; +} + +#torrentFilesTableDiv .dynamicTable tr.nonAlt:hover { + background-color: #ee6600; + color: #fff; +} diff --git a/src/webui/www/private/index.html b/src/webui/www/private/index.html index 89fc2c68e..fe430ec1d 100644 --- a/src/webui/www/private/index.html +++ b/src/webui/www/private/index.html @@ -21,8 +21,10 @@ + + @@ -189,7 +191,7 @@