KGet

From KDE Community Wiki
Revision as of 13:44, 2 October 2010 by Mat69 (talk | contribs) (describes some profiling already done)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Template:I18n/Language Navigation Bar

Introduction

Design

Roadmap

KGet 2.5 (in KDE 4.5)

  • Implement transfersRemoved/Added signals with a QList as parameter (unhack r1064328)
  • Better error-handling for transfers, using a setError() method -> discuss this with the whole team
  • Something like a filesizechecker, which informs/warns the user if there's no space free on the disk

General ToDo

Core

  • MultiSource Downloading
  • Add Advanced Details support

User Interface

Main View

  • Add advanced details area (show chunk view, peer view, file view, statistics view etc...). Use tabview to display multiple views.
  • Add a coloured band over the mainview displaying the currently display items. For example if I select "Downloads" from the sidebar it should display "Downloads". If instead I select a specific group <groupname> it should display "Downloads - <groupname>"
  • Add valid download time frame, global or individual.
  • Show average transfer speed when finished

SideBar

  • Re-import the sidebar. Might be a tree-view.
  • Add a "Finished" item. This will point to the downloaded files.
  • Add a popupmenu to add or delete groups by right-clicking on them.
  • Implement the selection of a specific group. In this way selecting a group from the sidebar should display only its transfers.
  • Make the sidebar capable of several sizes for its items (16, 22, 32, ...)

DragBasket

  • Show downloading progress, if multiple downloads are going, show each for 1 or 2 senconds.

SysTray

  • Implement progressive filling of the icon in the system tray.
  • Use KPassivePopups to notify when all the transfers have been downloaded.

Plasmoid

Usability

  • Ask the user if he/she wants to delete the transfer (or probably if he/she wants to delete the tmp-file)?
  • Let the user add new download-sources to a multithreaded transfer manually
  • Handle the situation when we remove a group which has transfers.
  • If user resume a download and find the disk space is not enough, implement a option which can move and continue the transfer to another user-specified place.
  • Add a wizard on the first app execution, where the user can set his download folders and other "vital" settings like the integration with Konqueror. Perhaps we could provide a good default like ~/downloads/.
  • Check there is enough space left before downloading file
  • Proxy-support, not global, only for kget (we need to wait for kdelibs)
  • Right-click menu to change transfer properties (filename, destination directory, url)
  • Add option to show newtransferdialog on top, using activiateWindow(). (DONE)

Optimization

  • Profile kget and look for possible optimizations, done for:
    • Removing multiple/single transfers
    • adding (== loading) many transfers
    • starting/stopping many transfers
    • ... further improvements there most likely still possible
  • Make KGets handling of many downloads smarter, (maximum number of open connections per server).
  • Recursion and other wget features.

Plugins

KIO

  • Save referer page for downloads.
  • Preserve timestamp of downloaded files (as option)

BitTorrent

  • Fix crashes in Advanced-Details

ContentFetch

  • Fix thread related issues.
  • Polish youtube downloader.
  • Prepare to write megaupload/rapidshare downloader.
  • Write the baidu mp3 downloader (long term).

MLDonkey

  • Write a ML-Donkey-plugin, based on libkmldonkey.