]> git.sur5r.net Git - minitube/commitdiff
Imported Upstream version 1.5 upstream/1.5
authorJakob Haufe <sur5r@sur5r.net>
Mon, 6 Aug 2012 20:31:42 +0000 (22:31 +0200)
committerJakob Haufe <sur5r@sur5r.net>
Mon, 6 Aug 2012 20:31:42 +0000 (22:31 +0200)
25 files changed:
CHANGES
TODO
locale/da.ts [new file with mode: 0644]
locale/es_AR.ts
locale/fa.ts [new file with mode: 0644]
locale/hu.ts [new file with mode: 0644]
locale/ia.ts [new file with mode: 0644]
locale/km.ts [new file with mode: 0644]
locale/locale.pri
locale/nb_NO.ts
locale/sl.ts [new file with mode: 0644]
locale/sv_SE.ts
locale/th.ts [new file with mode: 0644]
minitube.pro
src/AboutView.cpp
src/AboutView.h
src/MainWindow.cpp
src/MainWindow.h
src/MediaView.cpp
src/SearchView.cpp
src/downloaditem.cpp
src/searchlineedit.cpp
src/video.cpp
src/youtubesearch.cpp
src/youtubesearch.h

diff --git a/CHANGES b/CHANGES
index 2abed00298f253301f66b8300149a554de341b13..f10705aa2c2a743fbc3122d154496667cfaf2443 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,9 @@
+1.5 - Aug 5, 2011
+- Works again after YouTube changes
+- Drag'n'drop YouTube URLs to Minitube window
+- When pasting YouTube URLs, Minitube now correctly plays videos
+- New and updated translations
+
 1.4.3 - May 15, 2011
 - Really fixed some videos not playing
 - Hide toolbar and playlist in fullscreen on mouseleave (multiscreen)  (Patch by Rob Halff)
diff --git a/TODO b/TODO
index bed87836263bb5c1ec8225ee1a813529661320e7..c4897ead32db6bcc7abfeadb0187c7f9b04f337f 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,6 +1,12 @@
 # Minitube TODO list
 
-## Killer features
+## Major features
+
+- Features for logged in users:
+    * Channel subscriptions (r/w)
+    * Favorite videos (r/w)
+    * Comments (r/w)
+    * Likes (r/w)
 
 - Related videos
     List of related videos identical to the playlist.
     Don't know where the list should appear, maybe on the right, but when activated it should replace the playlist.
     Maybe the playlist should disappear, leaving only the panel on the right.
 
+- Info view
+    Displays video metadata. Could be somewhat linked with related videos...
+
 - Subtitles, see http://google2srt.sourceforge.net/
 
 ## Minor Features
+- Stop after this video
+- Always on top
+- Accessibility
+- Support YouTube URLs drag'n'drop from browser
 - Search for playlists http://code.google.com/apis/youtube/2.0/developers_guide_protocol.html#Searching_for_Playlists
-- Safe search levels (in the status bar beside HD)
+- Safe search levels (in the status bar beside the video definition option)
 - Show more thumbs on hover with animated crossfade
 - Time filter on the bottom of the playlist: Today, 7 days, 30 days
 - Accept any URL and scrape web pages searching for YouTube videos.
-- Accept YouTube URLs as CLI args
+- Accept YouTube URLs as CLI args and tell the running Minitube instance
 
 ## Unsure features
 - Restore status when a recent keyword is clicked: skipped videos, sortBar and play time
diff --git a/locale/da.ts b/locale/da.ts
new file mode 100644 (file)
index 0000000..7d8c22d
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="da" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation>Der findes liv udenfor browseren!</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation>Version %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation>%1 er fri software, men udviklingen tager værdifuld tid.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation>Venligst &lt;a href=&apos;%1&apos;&gt;doner&lt;/a&gt; for at støtte den forsatte udvikling af %2.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation>Reporter fejl og send dine idéer til %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation>Ikon designet af %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation>Kompakt tilstand bidraget af %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation>HTTP proxy-understøttelse bidraget af %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation>Oversat af %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation>Frigivet under &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation>&amp;Luk</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation>Om</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation>Hvad du altid har ønsket at vide om %1 og aldrig turde spørge om</translation>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation>Fjern</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation>bytes</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation>KB</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation>MB</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation>bytes/sek</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation>KB/sek</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation>MB/sek</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation>sekunder</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation>minutter</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation>%4 %5 mangler</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation>Dette er kun demoversionen af %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation>Det kan kun hente videoer kortere end %1 minut, så du kan teste downloadfunktionaliteten.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation>Forsæt</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation>Hent den fulde version</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation><numerusform>%n Download(s)</numerusform><numerusform>%n Download(s)</numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation>Skift placering...</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation>Vælg placering til downloads</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation>Downloadplacering ændret.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation>Nuværende downloads vil stadig blive glemt i forrige placering.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation>Downloader til: %1</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation>Downloads</translation>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation>Afspil</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation>Pause</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation>Afspil/Pause</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation>Stop</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation>Stop afspilning efter det aktuelle spor</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation>Næste spor</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation>Forrige spor</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation>Skru op</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation>Skru ned</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation>Slå lyden fra</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation>Søg fremad</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation>Søg baglæns</translation>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation>Søger...</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation>Vis %1 Mere</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation>Ingen videoer</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation>Ikke flere videoer</translation>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation>Fejl</translation>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation>&amp;Stop</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation>Stop afspilning og gå tilbage til søgeoversigt</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation>S&amp;pring over</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation>Spring til næste video</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation>&amp;Pause</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation>Pause afspilning</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation>&amp;Fuldskærm</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation>Vis i fuldskærm</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation>&amp;Kompakt tilstand</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation>Skjul afspilningslisten og værktøjslinjen</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation>Åbn &amp;YouTube-siden</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation>Gå til YouTube-videosiden og pause afspilningen</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation>Kopier YouTube &amp;linket</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation>Kopier det aktuelle YouTube-videolink til udklipsholderen</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation>Kopier videostrøm &amp;Adresse</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation>Kopier adressen for den aktuelle videostrøm til udklipsholderen</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation>&amp;Fjern</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation>Fjern de valgte videoer fra afspilningslisten</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation>Flyt &amp;Op</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation>Flyt de valgte videoer i afspilningslisten op</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation>Flyt &amp;Ned</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation>Flyt de valgte videoer i afspilningslisten ned</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation>&amp;Slet seneste søgninger</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation>Ryd søgeoversigt. Kan ikke fortrydes.</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation>&amp;Afslut</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation>Ctrl + Q</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation>Farvel</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation>&amp;Hjemmeside</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation>%1 på nettet</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation>Lav en &amp;donation</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation>Støt den forsatte udvikling af %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation>&amp;Om</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation>Info om %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation>Søg</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation>Slå lyden fra</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation>Ctrl + M</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation>&amp;Downloads</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation>Vis deltaljer om video downloads</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation>&amp;Download</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation>Download den aktuelle video</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation>&amp;Program</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation>&amp;Afspilningsliste</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation>&amp;Video</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation>&amp;Hjælp</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation>Tryk %1 for at skrue op for lyden og %2 for at skrue ned</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation>Åbner %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation>Vil du afslutte %1 selvom et download er i gang?</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation>Hvis du lukker %1 nu vil dette download blive annulleret. </translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation>Luk og annuller download </translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation>Vent til download er færdig</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation>Alvorlig fejl: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation>Fejl: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation>&amp;Afspil</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation>Genoptag afspilning</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation>Forlad &amp;Fuldskærm</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation>Tilbageværende tid: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation>Lydniveau på %1%</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation>Lyden er slået fra</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation>Lyden er slået til</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation>Maksimal videoopløsning sat til %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation>Dit privatliv er nu sikret</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation>Downloads færdig</translation>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation>Mest relevante</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation>Senest tilføjede</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation>Mest sete</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation>Du kan nu indsætte YouTube-linket i et andet program</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation>Du kan nu indsætte adressen til videostrømmen i et andet program</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation>Linket vil kun være gyldigt i en begrænset periode.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation>Dette er kun demoversionen af %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation>Det giver dig mulighed for at teste programmet og se om det virker for dig.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation>Forsæt</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation>Hent den fulde version</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation>Downloader %1</translation>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation>Netværksfejl %1</translation>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation>%1 visninger</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation>%1 af %2 (%3) — %4</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation>Forbereder</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation>Fejlede</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation>Fuldført</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation>Afbrudt</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation>Afbryd download</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation>Vis i %1</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation>Åbn overordnet mappe</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation>Genstart download</translation>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation>Søg</translation>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation>Velkommen til &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation>Hent den fulde version</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation>Indtast</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation>et nøgleord</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation>en kanal</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation>for at  begynde at se video.</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation>Afspil</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation>Seneste nøgleord</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation>Nyeste kanaler</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation>En ny version af %1 er tilgængelig. Venligst &lt;a href=&apos;%2&apos;&gt;opdater til version %3&lt;/a&gt;</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation>Sæt dig godt til rette</translation>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation>Kan ikke hente videostrøm for %1</translation>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation>Netværksfejl: %1 for %2</translation>
+    </message>
+</context>
+</TS>
\ No newline at end of file
index 5593510203b09133273d443038966d5d8abfcca9..4c4fb2feb7823e9c40461e58b8b35420cbe0cbe3 100644 (file)
@@ -5,12 +5,12 @@
     <message>
         <location filename="../src/AboutView.cpp" line="21"/>
         <source>There&apos;s life outside the browser!</source>
-        <translation>Hay vida fuera del navegador!</translation>
+        <translation>Hay vida más allá del navegador!</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="22"/>
         <source>Version %1</source>
-        <translation>Versión-%1</translation>
+        <translation>Versión %1</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="25"/>
     <message>
         <location filename="../src/AboutView.cpp" line="26"/>
         <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
-        <translation/>
+        <translation>Por favor, &lt;a href=&apos;%1&apos;&gt;hacé una donación&lt;/a&gt; para apoyar el desarrollo de %2.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="29"/>
         <source>Report bugs and send in your ideas to %1</source>
-        <translation>Reportar errores y envia tus idea a %1</translation>
+        <translation>Reportá errores y enviá tus idea a %1</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="33"/>
     <message>
         <location filename="../src/AboutView.cpp" line="34"/>
         <source>Compact mode contributed by %1.</source>
-        <translation/>
+        <translation>El modo compacto es una contribución de %1.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="35"/>
         <source>HTTP proxy support contributed by %1.</source>
-        <translation/>
+        <translation>El soporte para proxy HTTP es una contribución de %1.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="38"/>
     <message>
         <location filename="../src/AboutView.cpp" line="66"/>
         <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
-        <translation>Desarrollado bajo &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</translation>
+        <translation>Desarrollado bajo la &lt;a href=&apos;%1&apos;&gt;Licencia Pública General de GNU&lt;/a&gt;</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="78"/>
         <source>&amp;Close</source>
-        <translation/>
+        <translation>&amp;Cerrar</translation>
     </message>
     <message>
         <location filename="../src/AboutView.h" line="18"/>
         <source>About</source>
-        <translation>Acerca</translation>
+        <translation>Acerca de</translation>
     </message>
     <message>
         <location filename="../src/AboutView.h" line="20"/>
         <source>What you always wanted to know about %1 and never dared to ask</source>
-        <translation>Que es lo que siempre quisiste saber acerca de %1 y nunca lo preguntaste</translation>
+        <translation>Lo que siempre quisiste saber de %1 y nunca te animaste a preguntar</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/downloaditem.cpp" line="295"/>
         <source>bytes</source>
-        <translation/>
+        <translation>bytes</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="298"/>
         <source>KB</source>
-        <translation/>
+        <translation>KB</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="301"/>
         <source>MB</source>
-        <translation/>
+        <translation>MB</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="317"/>
         <source>bytes/sec</source>
-        <translation/>
+        <translation>bytes/sec</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="320"/>
         <source>KB/sec</source>
-        <translation/>
+        <translation>KB/sec</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="323"/>
         <source>MB/sec</source>
-        <translation/>
+        <translation>MB/sec</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="329"/>
         <source>seconds</source>
-        <translation/>
+        <translation>segundos</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="332"/>
         <source>minutes</source>
-        <translation/>
+        <translation>minutos</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="335"/>
         <source>%4 %5 remaining</source>
-        <translation/>
+        <translation>%4 %5 restante(s)</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/downloadmanager.cpp" line="47"/>
         <source>This is just the demo version of %1.</source>
-        <translation/>
+        <translation>Esta es sólo una versión de demostración de %1.</translation>
     </message>
     <message>
         <location filename="../src/downloadmanager.cpp" line="49"/>
         <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
-        <translation/>
+        <translation>Sólo se pueden bajar videos de menos de %1 minutos, para probar la funcionalidad de descarga.</translation>
     </message>
     <message>
         <location filename="../src/downloadmanager.cpp" line="53"/>
         <source>Continue</source>
-        <translation/>
+        <translation>Continuar</translation>
     </message>
     <message>
         <location filename="../src/downloadmanager.cpp" line="54"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Conseguí la versión completa</translation>
     </message>
     <message numerus="yes">
         <location filename="../src/downloadmanager.cpp" line="126"/>
         <source>%n Download(s)</source>
-        <translation><numerusform></numerusform><numerusform></numerusform></translation>
+        <translation><numerusform>%n Descarga(s)</numerusform><numerusform>%n Descarga(s)</numerusform></translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/downloadsettings.cpp" line="14"/>
         <source>Change location...</source>
-        <translation/>
+        <translation>Cambiar destino...</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="38"/>
         <source>Choose the download location</source>
-        <translation/>
+        <translation>Elegir el destino de la descarga</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="49"/>
         <source>Download location changed.</source>
-        <translation/>
+        <translation>Destino de la descarga cambiado.</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="51"/>
         <source>Current downloads will still go in the previous location.</source>
-        <translation/>
+        <translation>Las descargas en curso van a seguir bajándose al destino anterior.</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="63"/>
         <source>Downloading to: %1</source>
-        <translation/>
+        <translation>Bajando a: %1</translation>
     </message>
 </context>
 <context>
         <location filename="../src/downloadview.cpp" line="18"/>
         <location filename="../src/downloadview.h" line="22"/>
         <source>Downloads</source>
-        <translation/>
+        <translation>Descargas</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="16"/>
         <source>Play</source>
-        <translation/>
+        <translation>Play</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="17"/>
         <source>Pause</source>
-        <translation/>
+        <translation>Pausa</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="18"/>
         <source>Play/Pause</source>
-        <translation/>
+        <translation>Play/Pausa</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="19"/>
         <source>Stop</source>
-        <translation/>
+        <translation>Detener</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="20"/>
         <source>Stop playing after current track</source>
-        <translation/>
+        <translation>Detener luego de la pista actual</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="21"/>
         <source>Next track</source>
-        <translation/>
+        <translation>Pista siguiente</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="22"/>
         <source>Previous track</source>
-        <translation/>
+        <translation>Pista previa</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="23"/>
         <source>Increase volume</source>
-        <translation/>
+        <translation>Subir volumen</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="24"/>
         <source>Decrease volume</source>
-        <translation/>
+        <translation>Bajar volumen</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="25"/>
         <source>Mute</source>
-        <translation/>
+        <translation>Mudo</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="26"/>
         <source>Seek forward</source>
-        <translation/>
+        <translation>Avanzar rápido</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="27"/>
         <source>Seek backward</source>
-        <translation/>
+        <translation>Retroceder rápido</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/ListModel.cpp" line="49"/>
         <source>No videos</source>
-        <translation>No videos</translation>
+        <translation>Sin videos</translation>
     </message>
     <message>
         <location filename="../src/ListModel.cpp" line="50"/>
         <source>No more videos</source>
-        <translation>No más videos</translation>
+        <translation>No hay más videos</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/loadingwidget.cpp" line="71"/>
         <source>Error</source>
-        <translation/>
+        <translation>Error</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/MainWindow.cpp" line="105"/>
         <source>&amp;Stop</source>
-        <translation>&amp;Parar</translation>
+        <translation>&amp;Detener</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="106"/>
         <source>Stop playback and go back to the search view</source>
-        <translation>Parar</translation>
+        <translation>Detener y volver a la búsqueda</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="112"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="113"/>
         <source>Skip to the next video</source>
-        <translation>Siguiente</translation>
+        <translation>Siguiente video</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="119"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="136"/>
         <source>&amp;Compact mode</source>
-        <translation/>
+        <translation>&amp;Modo compacto</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="137"/>
         <source>Hide the playlist and the toolbar</source>
-        <translation/>
+        <translation>Esconder la lista de reproducción y la barra de herramientas</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="145"/>
         <source>Open the &amp;YouTube page</source>
-        <translation/>
+        <translation>Abrir la página &amp;YouTube</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="146"/>
         <source>Go to the YouTube video page and pause playback</source>
-        <translation/>
+        <translation>Ir al video en YouTube y pausar la reproducción</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="152"/>
         <source>Copy the YouTube &amp;link</source>
-        <translation/>
+        <translation>Copiar el &amp;link de YouTube</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="153"/>
         <source>Copy the current video YouTube link to the clipboard</source>
-        <translation/>
+        <translation>Copiar el link de YouTube del video al portapapeles</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="159"/>
         <source>Copy the video stream &amp;URL</source>
-        <translation/>
+        <translation>Copiar la &amp;URL del stream del video</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="160"/>
         <source>Copy the current video stream URL to the clipboard</source>
-        <translation/>
+        <translation>Copiar la &amp;URL del stream del video al portapapeles</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="166"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="167"/>
         <source>Remove the selected videos from the playlist</source>
-        <translation>Borrar</translation>
+        <translation>Borrar los videos seleccionados de la lista</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="173"/>
         <source>Move &amp;Up</source>
-        <translation>&amp;Arriba</translation>
+        <translation>Mover para &amp;arriba</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="174"/>
         <source>Move up the selected videos in the playlist</source>
-        <translation>Arriba</translation>
+        <translation>Mover para arriba los videos seleccionados</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="180"/>
         <source>Move &amp;Down</source>
-        <translation>&amp;Abajo</translation>
+        <translation>Mover para &amp;abajo</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="181"/>
         <source>Move down the selected videos in the playlist</source>
-        <translation>Abajo</translation>
+        <translation>Mover para abajo los videos seleccionados</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="187"/>
         <source>&amp;Clear recent searches</source>
-        <translation/>
+        <translation>&amp;Eliminar las búsquedas recientes</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="192"/>
         <source>Clear the search history. Cannot be undone.</source>
-        <translation/>
+        <translation>Eliminar el historial de búsqueda. No se puede deshacer.</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="197"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="199"/>
         <source>Ctrl+Q</source>
-        <translation/>
+        <translation>Ctrl+Q</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="200"/>
         <source>Bye</source>
-        <translation>Adiós</translation>
+        <translation>Chau</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="204"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="206"/>
         <source>%1 on the Web</source>
-        <translation/>
+        <translation>%1 en la Web</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="210"/>
         <source>Make a &amp;donation</source>
-        <translation/>
+        <translation>Hacer una &amp;donación</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="211"/>
         <source>Please support the continued development of %1</source>
-        <translation>Por favor apoyo el desarrollo continuo de-%1</translation>
+        <translation>Apoyá el desarrollo de %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="215"/>
         <source>&amp;About</source>
-        <translation>&amp;Acerca</translation>
+        <translation>&amp;Acerca de</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="217"/>
         <source>Info about %1</source>
-        <translation>Acercá de-%1</translation>
+        <translation>Información sobre %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="225"/>
         <source>Search</source>
-        <translation/>
+        <translation>Buscar</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="244"/>
         <source>Mute volume</source>
-        <translation/>
+        <translation>Silenciar volumen</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="246"/>
         <source>Ctrl+M</source>
-        <translation/>
+        <translation>Ctrl+M</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="277"/>
         <location filename="../src/MainWindow.cpp" line="959"/>
         <source>&amp;Downloads</source>
-        <translation/>
+        <translation>&amp;Descargas</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="278"/>
         <source>Show details about video downloads</source>
-        <translation/>
+        <translation>Mostrar detalles sobre la descarga de videos</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="286"/>
         <source>&amp;Download</source>
-        <translation/>
+        <translation>&amp;Bajar video</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="287"/>
         <source>Download the current video</source>
-        <translation/>
+        <translation>Bajar el video actual</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="328"/>
         <source>&amp;Application</source>
-        <translation/>
+        <translation>&amp;Programa</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="336"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="439"/>
         <source>Press %1 to raise the volume, %2 to lower it</source>
-        <translation/>
+        <translation>Con %1 subís el volumen, con %2 lo bajás</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="578"/>
         <location filename="../src/MainWindow.cpp" line="584"/>
         <source>Opening %1</source>
-        <translation>Abriendo-%1</translation>
+        <translation>Abriendo %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="597"/>
         <source>Do you want to exit %1 with a download in progress?</source>
-        <translation/>
+        <translation>Seguro que querés salir de %1 con una descarga en progreso?</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="598"/>
         <source>If you close %1 now, this download will be cancelled.</source>
-        <translation/>
+        <translation>Si cerrás %1 ahora, la descarga se va a cancelar.</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="601"/>
         <source>Close and cancel download</source>
-        <translation/>
+        <translation>Cerrar y cancelar descarga</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="602"/>
         <source>Wait for download to finish</source>
-        <translation/>
+        <translation>Esperar a que termine la descarga</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="635"/>
         <source>Fatal error: %1</source>
-        <translation/>
+        <translation>Error fatal: %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="637"/>
         <source>Error: %1</source>
-        <translation/>
+        <translation>Error: %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="660"/>
         <source>&amp;Play</source>
-        <translation>&amp;Reproducir</translation>
+        <translation>&amp;Play</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="661"/>
         <source>Resume playback</source>
-        <translation>Reproducir</translation>
+        <translation>Continuar reproducción</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="751"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="834"/>
         <source>Remaining time: %1</source>
-        <translation/>
+        <translation>Tiempo restante: %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="892"/>
         <source>Volume at %1%</source>
-        <translation/>
+        <translation>Volumen al %1%</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="898"/>
         <source>Volume is muted</source>
-        <translation/>
+        <translation>Volumen silenciado</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="901"/>
         <source>Volume is unmuted</source>
-        <translation/>
+        <translation>Volumen activo</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="908"/>
         <source>Maximum video definition set to %1</source>
-        <translation/>
+        <translation>Definición máxima de video seteada en %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="944"/>
         <source>Your privacy is now safe</source>
-        <translation/>
+        <translation>Tu privacidad ahora está segura</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="960"/>
         <source>Downloads complete</source>
-        <translation/>
+        <translation>Descarga completa</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/MediaView.cpp" line="47"/>
         <source>Most viewed</source>
-        <translation>Más visitadas</translation>
+        <translation>Más visitados</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="489"/>
         <source>You can now paste the YouTube link into another application</source>
-        <translation/>
+        <translation>Ahora podés pegar el link de YouTube en otra aplicación</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="497"/>
         <source>You can now paste the video stream URL into another application</source>
-        <translation/>
+        <translation>Ahora podés pegar la URL del stream en otra aplicación</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="498"/>
         <source>The link will be valid only for a limited time.</source>
-        <translation/>
+        <translation>El link va a ser válido sólo por un tiempo limitado.</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="594"/>
         <source>This is just the demo version of %1.</source>
-        <translation/>
+        <translation>Esta es sólo la versión de demostración de %1.</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="595"/>
         <source>It allows you to test the application and see if it works for you.</source>
-        <translation/>
+        <translation>Te permite probar la aplicación y ver si te funciona.</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="598"/>
         <source>Continue</source>
-        <translation/>
+        <translation>Continuar</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="599"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Conseguir la versión completa</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="625"/>
         <source>Downloading %1</source>
-        <translation/>
+        <translation>Bajando %1</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/networkaccess.cpp" line="258"/>
         <source>Network error: %1</source>
-        <translation/>
+        <translation>Error de conexión: %1</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
         <source>%1 views</source>
-        <translation>%1-visitas</translation>
+        <translation>%1 visitas</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
         <source>%1 of %2 (%3) — %4</source>
-        <translation/>
+        <translation>%1 de %2 (%3) — %4</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
         <source>Preparing</source>
-        <translation/>
+        <translation>Preparando</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
         <source>Failed</source>
-        <translation/>
+        <translation>Falló</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
         <source>Completed</source>
-        <translation/>
+        <translation>Completado</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
         <source>Stopped</source>
-        <translation/>
+        <translation>Detenido</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
         <source>Stop downloading</source>
-        <translation/>
+        <translation>Detener descarga</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
         <source>Show in %1</source>
-        <translation/>
+        <translation>Mostrar en %1</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
         <source>Open parent folder</source>
-        <translation/>
+        <translation>Abrir carpeta padre</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
         <source>Restart downloading</source>
-        <translation/>
+        <translation>Reiniciar descarga</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/SearchView.cpp" line="74"/>
         <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
-        <translation>Bienvenidos a &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;</translation>
+        <translation>Bienvenido a &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="41"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Conseguir la versión completa</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="88"/>
         <source>Enter</source>
         <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
-        <translation/>
+        <translation>Escribir</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="93"/>
         <source>a keyword</source>
-        <translation/>
+        <translation>una palabra clave</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="94"/>
         <source>a channel</source>
-        <translation/>
+        <translation>un canal</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="99"/>
         <source>to start watching videos.</source>
-        <translation/>
+        <translation>para empezar a ver videos.</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="124"/>
         <source>Watch</source>
-        <translation>Viendo</translation>
+        <translation>Ver</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="141"/>
     <message>
         <location filename="../src/SearchView.cpp" line="159"/>
         <source>Recent channels</source>
-        <translation/>
+        <translation>Canales recientes</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="358"/>
     <message>
         <location filename="../src/video.cpp" line="186"/>
         <source>Cannot get video stream for %1</source>
-        <translation/>
+        <translation>No puedo obtener el stream de video de %1</translation>
     </message>
     <message>
         <location filename="../src/video.cpp" line="204"/>
         <source>Network error: %1 for %2</source>
-        <translation/>
+        <translation>Error de conexión: %1 para %2</translation>
     </message>
 </context>
 </TS>
\ No newline at end of file
diff --git a/locale/fa.ts b/locale/fa.ts
new file mode 100644 (file)
index 0000000..bc598b8
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="fa" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation>نسخه %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation>شمایل طراحی شده توسط %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation>ترجمه شده توسط %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation>&amp;بستن</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation>درباره</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation>پاکسازی</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation>بایت</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation>کیلوبایت</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation>مگابایت</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation>بایت بر ثانیه</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation>کیلوبایت بر ثانیه</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation>مگابایت بر ثانیه</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation>ثانیه</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation>دقیقه</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation>%4 %5 باقی مانده</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation>ادامه</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation>دریافت نسخه کامل</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation><numerusform>%n بارگیری</numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation>تغییر مسیر...</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation>انتخاب مسیر بارگیری</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation>مسیر بارگیری تغییر کرد.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation>در حال بارگیری به: %1</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation>بارگیری‌ها</translation>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation>شروع</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation>مکث</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation>شروع/مکث</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation>توقف</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation>توقف پخش پس از ترک فعلی</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation>ترک بعدی</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation>ترک قبلی</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation>افزایش صدا</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation>کاهش صدا</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation>بی‌صدا</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation>در حال جستجو...</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation>نمایش %1 بشتر</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation>هیچ ویدئویی وجود ندارد</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation>ویدئوی بیشتری وجود ندارد</translation>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation>خطا</translation>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation>&amp;توقف</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation>&amp;رد کردن</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation>رد کردن و رفتن به ویدئوی بعدی</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation>&amp;مکث</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation>&amp;تمام صفحه</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation>حالت &amp;فشرده</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation>&amp;حذف</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation>&amp;خروج</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation>خداحافظ</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation>&amp;درباره</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation>جستجو</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+</TS>
\ No newline at end of file
diff --git a/locale/hu.ts b/locale/hu.ts
new file mode 100644 (file)
index 0000000..49eb8a4
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="hu" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation>A böngészőn túl is van élet!</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation>Verziószám: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation>A %1 egy ingyenes szoftver, de a fejlesztése rengeteg időt felemészt és az idő pénz. </translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation>Hibajelentéseid, ötleteid a %1 címre küldheted.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation>Az ikont %1 tervezte.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation>A kompakt módot %1 tervezte.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation>A HTTP porxy támogatója: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation>Fordította: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation>A program  &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;  alatt lett kiadva</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation>&amp;Bezárás</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation>Névjegy</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+</TS>
\ No newline at end of file
diff --git a/locale/ia.ts b/locale/ia.ts
new file mode 100644 (file)
index 0000000..049452f
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="ia" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation>Il ha vita post del navigator!</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation>Version %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation>%1 es Software Libere ma su disveloppamento require tempore preciose.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation>Icone designato per %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation>Traducito per %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation>&amp;Claude</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation>Circa</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation>Netta</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation>bytes</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation>KB</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation>MB</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation>bytes/sec</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation>KB/sec</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation>MB/sec</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation>secundas</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation>minutas</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation>%4 %5 restante</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation>Iste es solmente le version demo de %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation>Continuar</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation>Prender le version complete</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation><numerusform>%n discarga</numerusform><numerusform>%n discargas</numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation>Discargando a %1</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation>Discargas</translation>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation>Reproducer</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation>Pausa</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation>Reproducer/Pausa</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation>Stoppar</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation>Stoppar le reproduction post le pista actual</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation>Error</translation>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation>&amp;Quitar</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation>Adeo</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation>Sito &amp;Web</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation>Facer une donation</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation>Circ&amp;a</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation>Info re %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation>Cercar</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation>Ctrl+M</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation>&amp;Discargas</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation>&amp;Discarga</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation>Discarga le video actual</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation>&amp;Adjuta</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation>Tu vole sortir de  %1 con une discarga in progresso?</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation>Clauder e cancellar le discarga</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation>Error fatal: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation>Error: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation>Re&amp;producer</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation>Tempore restante: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation>Tu intimitate is secur ora mesmo</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation>Discargas complete</translation>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation>Le plus apposite</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation>Le plus recente</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation>Ora tu pote collar le ligamine de YouTube in altere application</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation>Ora tu pote collar le URL del video in fluxo in altere application</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation>Le ligamine essera valide solmente per un tempore limitate.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation>Iste es solmente le version demo de %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation>Continuar</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation>Procura le version complete</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation>Discargando %1</translation>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation>Error de rete: %1</translation>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation>%1 vistas</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation>%1 de %2 (%3) — %4</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation>Monstrar in %1</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation>Cerca</translation>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation>Benvenite a &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation>Procura le version complete</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation>Inscriber</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation>una parola clave</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation>un canal</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation>Specta</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation>Parolas clave recente</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation>Canales recente</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation>Une nove version de %1 es disponibile. Per favor &lt;a href=&apos;%2&apos;&gt;renova a le version %3&lt;/a&gt;</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation>Face te ipse confortabile</translation>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation>Non pote procurar el fluxo de video pro %1</translation>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation>Error de rete: %1 pro %2</translation>
+    </message>
+</context>
+</TS>
\ No newline at end of file
diff --git a/locale/km.ts b/locale/km.ts
new file mode 100644 (file)
index 0000000..21c4453
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="km" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation type="unfinished"><numerusform></numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+</TS>
\ No newline at end of file
index 4ad9ee1a6af18207d7c91493a03e54defaef6c31..416644a308985b7ea86fdfa35f2a1e233450c208 100644 (file)
@@ -4,7 +4,7 @@ INCLUDEPATH += $$PWD
 DEPENDPATH += $$PWD
 
 # ls -1 *.ts | tr '\n' ' '
-TRANSLATIONS += ar.ts bg.ts bg_BG.ts ca_ES.ts cs_CZ.ts de_DE.ts el.ts el_GR.ts en_US.ts es.ts es_AR.ts es_ES.ts fi.ts fi_FI.ts fr_FR.ts gl.ts he_IL.ts hr.ts hr_HR.ts hu_HU.ts id.ts id_ID.ts it_IT.ts ja_JP.ts jv.ts lv.ts nb_NO.ts nl.ts nl_NL.ts pl_PL.ts pt_BR.ts pt_PT.ts ro.ts ro_RO.ts ru_RU.ts sq.ts sr.ts sv_SE.ts tr_TR.ts uk.ts uk_UA.ts zh_CN.ts
+TRANSLATIONS += ar.ts bg.ts bg_BG.ts ca_ES.ts cs_CZ.ts da.ts de_DE.ts el.ts el_GR.ts en_US.ts es.ts es_AR.ts es_ES.ts fa.ts fi.ts fi_FI.ts fr_FR.ts gl.ts he_IL.ts hr.ts hr_HR.ts hu.ts hu_HU.ts ia.ts id.ts id_ID.ts it_IT.ts ja_JP.ts jv.ts km.ts lv.ts nb_NO.ts nl.ts nl_NL.ts pl_PL.ts pt_BR.ts pt_PT.ts ro.ts ro_RO.ts ru_RU.ts sl.ts sq.ts sr.ts sv_SE.ts th.ts tr_TR.ts uk.ts uk_UA.ts zh_CN.ts
 isEmpty(QMAKE_LRELEASE) {
     win32:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\lrelease.exe
     else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease
index 6436a98dcf5ba27511d0b26d24ef398a0a002f58..9a1a814159c7a26904ea2b84d04a6aae27ce3cf4 100644 (file)
     <message>
         <location filename="../src/AboutView.cpp" line="25"/>
         <source>%1 is Free Software but its development takes precious time.</source>
-        <translation>%1 er Fri Programvare men utviklingen tar verdifull tid.</translation>
+        <translation>%1 er gratis programvare, men utviklingen bruker dyrebar tid.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="26"/>
         <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
-        <translation>Vennligst &lt;a href=&apos;%1&apos;&gt;doner&lt;/a&gt; for og støtte vidre utvikling av %2.</translation>
+        <translation>Vennligst &lt;a href=&apos;%1&apos;&gt;doner&lt;/a&gt; for og støtte videre utvikling av %2.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="29"/>
         <source>Report bugs and send in your ideas to %1</source>
-        <translation>Rapporter bugs og send inn dine ideer til %1</translation>
+        <translation>Rapporter feil og send inn dine ideer til %1</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="33"/>
         <source>Icon designed by %1.</source>
-        <translation>Ikon er designet av %1.</translation>
+        <translation>Ikonet er designet av %1.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="34"/>
         <source>Compact mode contributed by %1.</source>
-        <translation>Kompakt-Visning er utviklet av %1.</translation>
+        <translation>Kompaktmodus er utviklet av %1.</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="35"/>
@@ -50,7 +50,7 @@
     <message>
         <location filename="../src/AboutView.cpp" line="66"/>
         <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
-        <translation>Sluppet under &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</translation>
+        <translation>Utgitt under &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</translation>
     </message>
     <message>
         <location filename="../src/AboutView.cpp" line="78"/>
@@ -65,7 +65,7 @@
     <message>
         <location filename="../src/AboutView.h" line="20"/>
         <source>What you always wanted to know about %1 and never dared to ask</source>
-        <translation>Hva du alltid har villet visst om %1 men aldri torde å spørre om</translation>
+        <translation>Hva du alltid har ønsket å vite om %1, men aldri turte spørre om</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/downloaditem.cpp" line="295"/>
         <source>bytes</source>
-        <translation/>
+        <translation>bytes</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="298"/>
         <source>KB</source>
-        <translation/>
+        <translation>KB</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="301"/>
         <source>MB</source>
-        <translation/>
+        <translation>MB</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="317"/>
         <source>bytes/sec</source>
-        <translation/>
+        <translation>bytes/sek</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="320"/>
         <source>KB/sec</source>
-        <translation/>
+        <translation>KB/sek</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="323"/>
         <source>MB/sec</source>
-        <translation/>
+        <translation>MB/sek</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="329"/>
         <source>seconds</source>
-        <translation/>
+        <translation>sekunder</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="332"/>
         <source>minutes</source>
-        <translation/>
+        <translation>minutter</translation>
     </message>
     <message>
         <location filename="../src/downloaditem.cpp" line="335"/>
         <source>%4 %5 remaining</source>
-        <translation/>
+        <translation>%4 %5 gjenstår</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/downloadmanager.cpp" line="47"/>
         <source>This is just the demo version of %1.</source>
-        <translation/>
+        <translation>Dette er kun demo-versjonen av %1.</translation>
     </message>
     <message>
         <location filename="../src/downloadmanager.cpp" line="49"/>
         <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
-        <translation/>
+        <translation>Den kan kun laste ned videoer på under %1 minutter, for at du skal kunne prøve ut nedlastingsfunksjonen.</translation>
     </message>
     <message>
         <location filename="../src/downloadmanager.cpp" line="53"/>
         <source>Continue</source>
-        <translation/>
+        <translation>Fortsett</translation>
     </message>
     <message>
         <location filename="../src/downloadmanager.cpp" line="54"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Kjøp fullversjonen</translation>
     </message>
     <message numerus="yes">
         <location filename="../src/downloadmanager.cpp" line="126"/>
         <source>%n Download(s)</source>
-        <translation><numerusform></numerusform><numerusform></numerusform></translation>
+        <translation><numerusform>%n nedlasting</numerusform><numerusform>%n nedlastinger</numerusform></translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/downloadsettings.cpp" line="14"/>
         <source>Change location...</source>
-        <translation/>
+        <translation>Endre sted ...</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="38"/>
         <source>Choose the download location</source>
-        <translation/>
+        <translation>Velg nedlastingsmappe</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="49"/>
         <source>Download location changed.</source>
-        <translation/>
+        <translation>Nedlastingsmappe endret.</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="51"/>
         <source>Current downloads will still go in the previous location.</source>
-        <translation/>
+        <translation>Pågående nedlastinger vil bli lagret i den forrige mappen.</translation>
     </message>
     <message>
         <location filename="../src/downloadsettings.cpp" line="63"/>
         <source>Downloading to: %1</source>
-        <translation/>
+        <translation>Laster ned til: %1</translation>
     </message>
 </context>
 <context>
         <location filename="../src/downloadview.cpp" line="18"/>
         <location filename="../src/downloadview.h" line="22"/>
         <source>Downloads</source>
-        <translation/>
+        <translation>Nedlastinger</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="16"/>
         <source>Play</source>
-        <translation/>
+        <translation>Spill av</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="17"/>
         <source>Pause</source>
-        <translation/>
+        <translation>Pause</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="18"/>
         <source>Play/Pause</source>
-        <translation/>
+        <translation>Spill av/Pause</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="19"/>
         <source>Stop</source>
-        <translation/>
+        <translation>Stopp</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="20"/>
         <source>Stop playing after current track</source>
-        <translation/>
+        <translation>Stopp avspilling etter denne videoen.</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="21"/>
         <source>Next track</source>
-        <translation/>
+        <translation>Neste video</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="22"/>
         <source>Previous track</source>
-        <translation/>
+        <translation>Forrige video</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="23"/>
         <source>Increase volume</source>
-        <translation/>
+        <translation>Øk lydvolumet</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="24"/>
         <source>Decrease volume</source>
-        <translation/>
+        <translation>Senk lydvolumet</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="25"/>
         <source>Mute</source>
-        <translation/>
+        <translation>Lydløs</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="26"/>
         <source>Seek forward</source>
-        <translation/>
+        <translation>Søk forover</translation>
     </message>
     <message>
         <location filename="../src/globalshortcuts.cpp" line="27"/>
         <source>Seek backward</source>
-        <translation/>
+        <translation>Søk bakover</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/MainWindow.cpp" line="106"/>
         <source>Stop playback and go back to the search view</source>
-        <translation>Stopp avspilling og gå tilbake til dine søk</translation>
+        <translation>Stopp avspilling og gå tilbake til søkevisningen</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="112"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="113"/>
         <source>Skip to the next video</source>
-        <translation>Hopp over neste video</translation>
+        <translation>Hopp til neste video</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="119"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="136"/>
         <source>&amp;Compact mode</source>
-        <translation>&amp;Kompakt-Visning</translation>
+        <translation>&amp;Kompaktvisning</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="137"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="187"/>
         <source>&amp;Clear recent searches</source>
-        <translation/>
+        <translation>&amp;fjern seneste søkehistorie</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="192"/>
         <source>Clear the search history. Cannot be undone.</source>
-        <translation>Klarer søkehistorie. Kan ikke bli angert.</translation>
+        <translation>Fjern all søkehistorie. Kan ikke angres.</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="197"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="200"/>
         <source>Bye</source>
-        <translation>Ha en fin dag</translation>
+        <translation>Farvel</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="204"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="210"/>
         <source>Make a &amp;donation</source>
-        <translation>Gjør en &amp;donasjon</translation>
+        <translation>&amp;donér</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="211"/>
         <source>Please support the continued development of %1</source>
-        <translation>Bidra til fortsatt utvikling av %1</translation>
+        <translation>Vi håper du kan bidra til å fortsette arbeidet med utvikling av %1</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="215"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="244"/>
         <source>Mute volume</source>
-        <translation>Mute</translation>
+        <translation>Lydløs</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="246"/>
         <location filename="../src/MainWindow.cpp" line="277"/>
         <location filename="../src/MainWindow.cpp" line="959"/>
         <source>&amp;Downloads</source>
-        <translation/>
+        <translation>&amp;Nedlastinger</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="278"/>
         <source>Show details about video downloads</source>
-        <translation/>
+        <translation>Vis detaljer om nedlasting av video</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="286"/>
         <source>&amp;Download</source>
-        <translation/>
+        <translation>&amp;Nedlasting</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="287"/>
         <source>Download the current video</source>
-        <translation/>
+        <translation>Last ned denne videoen</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="328"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="439"/>
         <source>Press %1 to raise the volume, %2 to lower it</source>
-        <translation>Trykk på %1 for å stille opp volum, %2 for å skru ned</translation>
+        <translation>Trykk på %1 for å øke lydvolumet, %2 for å senke</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="578"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="597"/>
         <source>Do you want to exit %1 with a download in progress?</source>
-        <translation/>
+        <translation>Vil du avslutte %1 mens nedlastinger pågår?</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="598"/>
         <source>If you close %1 now, this download will be cancelled.</source>
-        <translation/>
+        <translation>Vis du stenger %1 nå, vil nedlastingen bli avbrutt</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="601"/>
         <source>Close and cancel download</source>
-        <translation/>
+        <translation>Steng og avbryt nedlastingen </translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="602"/>
         <source>Wait for download to finish</source>
-        <translation/>
+        <translation>Vent mens nedlastingen fullføres</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="635"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="898"/>
         <source>Volume is muted</source>
-        <translation>Mute er på</translation>
+        <translation>Lydløst er på</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="901"/>
         <source>Volume is unmuted</source>
-        <translation>Mute er av</translation>
+        <translation>Lydløst er av</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="908"/>
     <message>
         <location filename="../src/MainWindow.cpp" line="960"/>
         <source>Downloads complete</source>
-        <translation/>
+        <translation>Nedlastinger fullført</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/MediaView.cpp" line="594"/>
         <source>This is just the demo version of %1.</source>
-        <translation/>
+        <translation>Dette er kun demoversjonen av %1.</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="595"/>
         <source>It allows you to test the application and see if it works for you.</source>
-        <translation/>
+        <translation>Dette gir deg muligheten til å prøve ut applikasjonen og se om du den er noe for deg.</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="598"/>
         <source>Continue</source>
-        <translation/>
+        <translation>Fortsett</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="599"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Kjøp fullversjonen</translation>
     </message>
     <message>
         <location filename="../src/MediaView.cpp" line="625"/>
         <source>Downloading %1</source>
-        <translation/>
+        <translation>Nedlasting %1</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
         <source>%1 of %2 (%3) — %4</source>
-        <translation/>
+        <translation>%1 av %2 (%3) — %4</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
         <source>Preparing</source>
-        <translation/>
+        <translation>Forbereder</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
         <source>Failed</source>
-        <translation/>
+        <translation>Feilet</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
         <source>Completed</source>
-        <translation/>
+        <translation>Fullført</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
         <source>Stopped</source>
-        <translation/>
+        <translation>Stoppet</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
         <source>Stop downloading</source>
-        <translation/>
+        <translation>Stop nedlasting</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
         <source>Show in %1</source>
-        <translation/>
+        <translation>Vis i %1</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
         <source>Open parent folder</source>
-        <translation/>
+        <translation>Åpne vertsmappen</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
         <source>Restart downloading</source>
-        <translation/>
+        <translation>Start nedlastingen på nytt</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/SearchView.cpp" line="74"/>
         <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
-        <translation>Velommen til &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
+        <translation>Velkommen til &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="41"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Kjøpfullversjon</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="88"/>
         <source>Enter</source>
         <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
-        <translation/>
+        <translation>Skriv</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="93"/>
         <source>a keyword</source>
-        <translation/>
+        <translation>ett nøkkelord</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="94"/>
         <source>a channel</source>
-        <translation/>
+        <translation>en kanal</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="99"/>
         <source>to start watching videos.</source>
-        <translation/>
+        <translation>for å begynne avspilling av video</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="124"/>
         <source>Watch</source>
-        <translation>Se Film</translation>
+        <translation>Se</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="141"/>
         <source>Recent keywords</source>
-        <translation>Aktuelle søkeord</translation>
+        <translation>Seneste søkeord</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="159"/>
         <source>Recent channels</source>
-        <translation/>
+        <translation>Seneste kanaler</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="358"/>
     <message>
         <location filename="../src/video.cpp" line="186"/>
         <source>Cannot get video stream for %1</source>
-        <translation/>
+        <translation>Kan ikke hente mediastrøm for %1</translation>
     </message>
     <message>
         <location filename="../src/video.cpp" line="204"/>
diff --git a/locale/sl.ts b/locale/sl.ts
new file mode 100644 (file)
index 0000000..e39cee8
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="sl" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation>Zunaj brskalnika je življenje!</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation>Različica %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation>%1 je Prosta Programska Oprema, a njen razvoj zahteva dragocen čas.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation>&lt;a href=&apos;%1&apos;&gt;Darujte prosim&lt;/a&gt; za podporo stalnemu razvoju %2.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation>Javite napake in pošljite svoje ideje %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation>Ikone je izrisal %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation>Strnjeni način je prispeval %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation>Podporo za posredniški strežnik HTTP je prispeval %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation>Prevod: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation>Izdano na podlagi licence &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation>&amp;Zapri</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation>O programu</translation>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation>Kar ste vedno želeli vedeti o %1 a si niste nikoli upali vprašati</translation>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation>Počisti</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation>byteov</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation>KB</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation>MB</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation>byteov/sek</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation>KB/sek</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation>MB/sek</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation>sekund</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation>minut</translation>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation>%4 %5 ostaja</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation>To je samo preizkusna različica programa %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation>Prenese lahko samo posnetke krajše od %1 minut, da lahko preverite delvanje funkcije prenosa.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation>Nadaljuj</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation>Pridobi popolno različico</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation><numerusform>%n Prenos</numerusform><numerusform>%n Prenosa</numerusform><numerusform>%n Prenosi</numerusform><numerusform>%n Prenosov</numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation>Sprememba mesta ...</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation>Izberite mesto prenosa</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation>Spremenili ste mesto prenosa.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation>Trenutni prenosi bodo še vedno šli v prejšnje mesto.</translation>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation>Prenos v: %1</translation>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation>Prenosi</translation>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation>Predvajaj</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation>Pavza</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation>Predvajaj/Pavza</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation>Ustavi</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation>Ustavi predvajanje po trenutnem posnetku</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation>Naslednji posnetek</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation>Prejšnji posnetek</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation>Povečaj glasnost</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation>Zmanjšaj glasnost</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation>Nemo</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation>Išči naprej</translation>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation>Išči nazaj</translation>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation>Iskanje ...</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation>Pokaži %1 več</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation>Nobenega videa</translation>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation>Nobenega videa več</translation>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation>Napaka</translation>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation>&amp;Ustavi</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation>Ustavi predvajanje in se vrni v iskalni pogled</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation>Pres%koči</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation>Skoči na naslednji video</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation>&amp;Pavza</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation>Premor v predvajanju</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation>&amp;Celozaslonski način</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation>Gre v celozaslonski način</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation>&amp;Strnjeni način</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation>Skrije predvajalni seznam in orodno vrstico</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation>Odpre stran &amp;YouTube</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation>Gre na stran posnetka na YouTube in ustavi predvajanje</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation>Kopiraj &amp;povezavo YouTube</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation>Kopira povezavo YouTube trenutnega posnetka v odložišče</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation>Kopiraj &amp;URL video pretoka</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation>Kopira URL trenutnega video pretoka v odložišče</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation>Odst&amp;rani</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation>Odstrani izbrani video iz predvajalnega seznama</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation>Premakni &amp;gor</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation>Izbrani video premakne mesto više v predvajalnem seznamu</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation>Premakni &amp;dol</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation>Izbrani video premakne mesto niže v predvajalnem seznamu</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation>I&amp;zbriši nedavno iskanje</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation>Izbriše zgodovino iskanje. Tega dejanja ni mogoče rayveljaviti.</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation>&amp;Zapri</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation>Ctrl+Z</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation>Nasvidenje</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation>&amp;Spletno mesto</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation>%1 na spletu</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation>&amp;Darujte</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation>Podprite prosim nadaljni razvoj programa %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation>&amp;O programu</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation>Informacije o %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation>Išči</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation>Nemo</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation>Ctrl+M</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation>Pre&amp;nosi</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation>Pokaže podrobnosti o prenosih posnetkov</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation>Pre&amp;nesi</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation>Prenesi trenutni posnetek</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation>&amp;Aplikacija</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation>&amp;Predvajalni seznam</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation>&amp;Video</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation>P&amp;omoč</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation>Pritisnite %1, da povišate glasnost in %2, da jo nižate</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation>Odpiranje %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation>Ali res želite zapustiti %1 medtem, ko jeaktiven prenos?</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation>V primeru, da zdaj zaprete %1 bo ta prenos prekinjen.</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation>Zapri in prekliči prenose</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation>Počakaj, da konča prenos.</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation>Usodna napaka: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation>Napaka: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation>&amp;Predvajaj</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation>Nadaljuj s predvajanjem</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation>Izhod iz &amp;celozaslonskega načina</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation>Preostali čas: %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation>Glasnost %1%</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation>Glasnost je utišana</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation>Glasnost je povrnjena</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation>Najvišja ločljivost posnetkov je nastavljena na %1</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation>Vaša zasebnost je zdaj varna</translation>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation>Prenosi so končani</translation>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation>Najbolj ustrezni</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation>Najbolj novi</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation>Najbolj gledani</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation>Zdaj lahko prilepite povezavo na YouTube v drugo aplikacijo</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation>Zdaj lahko prilepite URL video pretoka v drugo aplikacijo</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation>Povezava bo delovala le za omejen čas.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation>To je samo demo različica programa %1.</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation>Dovoli vam testiranje aplikcaije in preverjanje delovanja,</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation>Nadaljuj</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation>Pridobi celotno različico</translation>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation>Prenašanje %1</translation>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation>Napak omrežja: %1</translation>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation>%1 predvajanj</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation>%1 od %2 (%3) — %4</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation>Pripravljanje</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation>Neuspešno</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation>Dokončano</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation>Ustavljeno</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation>Ustavi prenos</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation>Pokaži v %1</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation>Odpri nadrejeno mapo</translation>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation>Ponovno prenesi</translation>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation>Išči</translation>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation>Pozdravljeni v &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation>Pridobi celotno različico</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation>Vnesite</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation>ključno besedo</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation>kanal</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation>in začnite gledati posnetke.</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation>Glej</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation>Nedavne ključne besede</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation>Nedavni kanali</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation>Na razpolago je nova različica %1. Prosim &lt;a href=&apos;%2&apos;&gt;posodobite na različico %3&lt;/a&gt;</translation>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation>Namestite se udobno</translation>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation>Za %1 ni mogoče pridobiti video pretoka</translation>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation>Napaka omrežja: %1 od %2</translation>
+    </message>
+</context>
+</TS>
\ No newline at end of file
index 1c7e3d3d65d125ee490ca726dfc6ea353fd3ba84..1bfa3495534e2abb43cb5c33d58c4f1d6c98b4f6 100644 (file)
     <message>
         <location filename="../src/downloadsettings.cpp" line="63"/>
         <source>Downloading to: %1</source>
-        <translation/>
+        <translation>Hämtar till: %1</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/MainWindow.cpp" line="244"/>
         <source>Mute volume</source>
-        <translation>Mute volym</translation>
+        <translation>Volym av</translation>
     </message>
     <message>
         <location filename="../src/MainWindow.cpp" line="246"/>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
         <source>Completed</source>
-        <translation/>
+        <translation>Färdig</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
         <source>Stopped</source>
-        <translation/>
+        <translation>Stoppad</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
         <source>Stop downloading</source>
-        <translation/>
+        <translation>Stoppa nedladdning</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
         <source>Show in %1</source>
-        <translation/>
+        <translation>Visa i %1</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
         <source>Open parent folder</source>
-        <translation/>
+        <translation>Äppna föregående folder</translation>
     </message>
     <message>
         <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
         <source>Restart downloading</source>
-        <translation/>
+        <translation>Omstarta nedladdning</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/searchlineedit.cpp" line="177"/>
         <source>Search</source>
-        <translation/>
+        <translation>Sök</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/SearchView.cpp" line="74"/>
         <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
-        <translation/>
+        <translation>Välkommen till &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="41"/>
         <source>Get the full version</source>
-        <translation/>
+        <translation>Skaffa den kompletta versionen</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="88"/>
         <source>Enter</source>
         <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
-        <translation/>
+        <translation>Ange</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="93"/>
         <source>a keyword</source>
-        <translation/>
+        <translation>ett sökord</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="94"/>
         <source>a channel</source>
-        <translation/>
+        <translation>en kanal</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="99"/>
         <source>to start watching videos.</source>
-        <translation/>
+        <translation>för att börja titta på video.</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="124"/>
         <source>Watch</source>
-        <translation/>
+        <translation>Titta</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="141"/>
         <source>Recent keywords</source>
-        <translation/>
+        <translation>Senaste sökord</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="159"/>
         <source>Recent channels</source>
-        <translation/>
+        <translation>Senaste kanaler</translation>
     </message>
     <message>
         <location filename="../src/SearchView.cpp" line="358"/>
         <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
-        <translation/>
+        <translation>En ny version av %1 finns tillgänglig. Vänligen &lt;a href=&apos;%2&apos;&gt;uppdatera till version %3&lt;/a&gt;</translation>
     </message>
     <message>
         <location filename="../src/SearchView.h" line="35"/>
         <source>Make yourself comfortable</source>
-        <translation/>
+        <translation>Gör dig själv bekväm</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/video.cpp" line="186"/>
         <source>Cannot get video stream for %1</source>
-        <translation/>
+        <translation>Kan inte få videoström för %1</translation>
     </message>
     <message>
         <location filename="../src/video.cpp" line="204"/>
         <source>Network error: %1 for %2</source>
-        <translation/>
+        <translation>Nätverks fel: %1 för %2</translation>
     </message>
 </context>
 </TS>
\ No newline at end of file
diff --git a/locale/th.ts b/locale/th.ts
new file mode 100644 (file)
index 0000000..012d0f6
--- /dev/null
@@ -0,0 +1,803 @@
+<?xml version="1.0" ?><!DOCTYPE TS><TS language="th" version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name>AboutView</name>
+    <message>
+        <location filename="../src/AboutView.cpp" line="21"/>
+        <source>There&apos;s life outside the browser!</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="22"/>
+        <source>Version %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="25"/>
+        <source>%1 is Free Software but its development takes precious time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="26"/>
+        <source>Please &lt;a href=&apos;%1&apos;&gt;donate&lt;/a&gt; to support the continued development of %2.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="29"/>
+        <source>Report bugs and send in your ideas to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="33"/>
+        <source>Icon designed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="34"/>
+        <source>Compact mode contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="35"/>
+        <source>HTTP proxy support contributed by %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="38"/>
+        <source>Translated by %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="66"/>
+        <source>Released under the &lt;a href=&apos;%1&apos;&gt;GNU General Public License&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.cpp" line="78"/>
+        <source>&amp;Close</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="18"/>
+        <source>About</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/AboutView.h" line="20"/>
+        <source>What you always wanted to know about %1 and never dared to ask</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ClearButton</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="56"/>
+        <source>Clear</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadItem</name>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="295"/>
+        <source>bytes</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="298"/>
+        <source>KB</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="301"/>
+        <source>MB</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="317"/>
+        <source>bytes/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="320"/>
+        <source>KB/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="323"/>
+        <source>MB/sec</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="329"/>
+        <source>seconds</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="332"/>
+        <source>minutes</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloaditem.cpp" line="335"/>
+        <source>%4 %5 remaining</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadManager</name>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="47"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="49"/>
+        <source>It can only download videos shorter than %1 minutes so you can test the download functionality.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="53"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadmanager.cpp" line="54"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message numerus="yes">
+        <location filename="../src/downloadmanager.cpp" line="126"/>
+        <source>%n Download(s)</source>
+        <translation type="unfinished"><numerusform></numerusform></translation>
+    </message>
+</context>
+<context>
+    <name>DownloadSettings</name>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="14"/>
+        <source>Change location...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="38"/>
+        <source>Choose the download location</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="49"/>
+        <source>Download location changed.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="51"/>
+        <source>Current downloads will still go in the previous location.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/downloadsettings.cpp" line="63"/>
+        <source>Downloading to: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>DownloadView</name>
+    <message>
+        <location filename="../src/downloadview.cpp" line="18"/>
+        <location filename="../src/downloadview.h" line="22"/>
+        <source>Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>GlobalShortcuts</name>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="16"/>
+        <source>Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="17"/>
+        <source>Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="18"/>
+        <source>Play/Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="19"/>
+        <source>Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="20"/>
+        <source>Stop playing after current track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="21"/>
+        <source>Next track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="22"/>
+        <source>Previous track</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="23"/>
+        <source>Increase volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="24"/>
+        <source>Decrease volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="25"/>
+        <source>Mute</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="26"/>
+        <source>Seek forward</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/globalshortcuts.cpp" line="27"/>
+        <source>Seek backward</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>ListModel</name>
+    <message>
+        <location filename="../src/ListModel.cpp" line="47"/>
+        <source>Searching...</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="48"/>
+        <source>Show %1 More</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="49"/>
+        <source>No videos</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/ListModel.cpp" line="50"/>
+        <source>No more videos</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>LoadingWidget</name>
+    <message>
+        <location filename="../src/loadingwidget.cpp" line="71"/>
+        <source>Error</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="105"/>
+        <source>&amp;Stop</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="106"/>
+        <source>Stop playback and go back to the search view</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="112"/>
+        <source>S&amp;kip</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="113"/>
+        <source>Skip to the next video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="119"/>
+        <location filename="../src/MainWindow.cpp" line="644"/>
+        <source>&amp;Pause</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="120"/>
+        <location filename="../src/MainWindow.cpp" line="645"/>
+        <source>Pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="126"/>
+        <location filename="../src/MainWindow.cpp" line="728"/>
+        <source>&amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="127"/>
+        <source>Go full screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="136"/>
+        <source>&amp;Compact mode</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="137"/>
+        <source>Hide the playlist and the toolbar</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="145"/>
+        <source>Open the &amp;YouTube page</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="146"/>
+        <source>Go to the YouTube video page and pause playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="152"/>
+        <source>Copy the YouTube &amp;link</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="153"/>
+        <source>Copy the current video YouTube link to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="159"/>
+        <source>Copy the video stream &amp;URL</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="160"/>
+        <source>Copy the current video stream URL to the clipboard</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="166"/>
+        <source>&amp;Remove</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="167"/>
+        <source>Remove the selected videos from the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="173"/>
+        <source>Move &amp;Up</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="174"/>
+        <source>Move up the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="180"/>
+        <source>Move &amp;Down</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="181"/>
+        <source>Move down the selected videos in the playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="187"/>
+        <source>&amp;Clear recent searches</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="192"/>
+        <source>Clear the search history. Cannot be undone.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="197"/>
+        <source>&amp;Quit</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="199"/>
+        <source>Ctrl+Q</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="200"/>
+        <source>Bye</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="204"/>
+        <source>&amp;Website</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="206"/>
+        <source>%1 on the Web</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="210"/>
+        <source>Make a &amp;donation</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="211"/>
+        <source>Please support the continued development of %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="215"/>
+        <source>&amp;About</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="217"/>
+        <source>Info about %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="225"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="244"/>
+        <source>Mute volume</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="246"/>
+        <source>Ctrl+M</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="277"/>
+        <location filename="../src/MainWindow.cpp" line="959"/>
+        <source>&amp;Downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="278"/>
+        <source>Show details about video downloads</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="286"/>
+        <source>&amp;Download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="287"/>
+        <source>Download the current video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="328"/>
+        <source>&amp;Application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="336"/>
+        <source>&amp;Playlist</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="343"/>
+        <source>&amp;Video</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="362"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="439"/>
+        <source>Press %1 to raise the volume, %2 to lower it</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="578"/>
+        <location filename="../src/MainWindow.cpp" line="584"/>
+        <source>Opening %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="597"/>
+        <source>Do you want to exit %1 with a download in progress?</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="598"/>
+        <source>If you close %1 now, this download will be cancelled.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="601"/>
+        <source>Close and cancel download</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="602"/>
+        <source>Wait for download to finish</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="635"/>
+        <source>Fatal error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="637"/>
+        <source>Error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="660"/>
+        <source>&amp;Play</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="661"/>
+        <source>Resume playback</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="751"/>
+        <source>Exit &amp;Full Screen</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="834"/>
+        <source>Remaining time: %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="892"/>
+        <source>Volume at %1%</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="898"/>
+        <source>Volume is muted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="901"/>
+        <source>Volume is unmuted</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="908"/>
+        <source>Maximum video definition set to %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="944"/>
+        <source>Your privacy is now safe</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MainWindow.cpp" line="960"/>
+        <source>Downloads complete</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>MediaView</name>
+    <message>
+        <location filename="../src/MediaView.cpp" line="33"/>
+        <source>Most relevant</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="40"/>
+        <source>Most recent</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="47"/>
+        <source>Most viewed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="489"/>
+        <source>You can now paste the YouTube link into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="497"/>
+        <source>You can now paste the video stream URL into another application</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="498"/>
+        <source>The link will be valid only for a limited time.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="594"/>
+        <source>This is just the demo version of %1.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="595"/>
+        <source>It allows you to test the application and see if it works for you.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="598"/>
+        <source>Continue</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="599"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/MediaView.cpp" line="625"/>
+        <source>Downloading %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>NetworkAccess</name>
+    <message>
+        <location filename="../src/networkaccess.cpp" line="258"/>
+        <source>Network error: %1</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>PrettyItemDelegate</name>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="156"/>
+        <source>%1 views</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="286"/>
+        <source>%1 of %2 (%3) — %4</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="293"/>
+        <source>Preparing</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="295"/>
+        <source>Failed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="297"/>
+        <source>Completed</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="299"/>
+        <source>Stopped</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="335"/>
+        <source>Stop downloading</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="345"/>
+        <source>Show in %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="347"/>
+        <source>Open parent folder</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/playlist/PrettyItemDelegate.cpp" line="356"/>
+        <source>Restart downloading</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchLineEdit</name>
+    <message>
+        <location filename="../src/searchlineedit.cpp" line="177"/>
+        <source>Search</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>SearchView</name>
+    <message>
+        <location filename="../src/SearchView.cpp" line="74"/>
+        <source>Welcome to &lt;a href=&apos;%1&apos;&gt;%2&lt;/a&gt;,</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="41"/>
+        <source>Get the full version</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="88"/>
+        <source>Enter</source>
+        <extracomment>&quot;Enter&quot;, as in &quot;type&quot;. The whole frase says: &quot;Enter a keyword to start watching videos&quot;</extracomment>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="93"/>
+        <source>a keyword</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="94"/>
+        <source>a channel</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="99"/>
+        <source>to start watching videos.</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="124"/>
+        <source>Watch</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="141"/>
+        <source>Recent keywords</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="159"/>
+        <source>Recent channels</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.cpp" line="358"/>
+        <source>A new version of %1 is available. Please &lt;a href=&apos;%2&apos;&gt;update to version %3&lt;/a&gt;</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/SearchView.h" line="35"/>
+        <source>Make yourself comfortable</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+<context>
+    <name>Video</name>
+    <message>
+        <location filename="../src/video.cpp" line="186"/>
+        <source>Cannot get video stream for %1</source>
+        <translation type="unfinished"/>
+    </message>
+    <message>
+        <location filename="../src/video.cpp" line="204"/>
+        <source>Network error: %1 for %2</source>
+        <translation type="unfinished"/>
+    </message>
+</context>
+</TS>
\ No newline at end of file
index 3717fe63c0881d4ccb64ad8b628c81e4d1a90f7f..86ed9f31a90985e29b1102fbc062f7f3a86aea30 100644 (file)
@@ -1,6 +1,6 @@
 CONFIG += release
 TEMPLATE = app
-VERSION = 1.4.3
+VERSION = 1.5
 DEFINES += APP_VERSION="$$VERSION"
 INCLUDEPATH += /usr/include/phonon
 
@@ -152,3 +152,4 @@ unix:!mac {
     icon512.files += data/512x512/minitube.png
 }
 mac|win32:include(local/local.pri)
+include(local/meego/meego.pri)
index 7b02adfc7f399acc996d9a96fbab6668f8f7d452..1725ca8bfb53e8e6e0a8bddee56aadffc0314f71 100644 (file)
@@ -17,7 +17,7 @@ AboutView::AboutView(QWidget *parent) : QWidget(parent) {
     layout->setSpacing(30);
     aboutlayout->addLayout(layout);
 
-    QString info = "<html><style>a { color: palette(text); }</style><body><h1>" + QString(Constants::APP_NAME) + "</h1>"
+    QString info = "<html><style>a { color: palette(text); text-decoration: none; font-weight: bold }</style><body><h1>" + QString(Constants::APP_NAME) + "</h1>"
                    "<p>" + tr("There's life outside the browser!") + "</p>"
                    "<p>" + tr("Version %1").arg(Constants::VERSION) + "</p>"
                    + QString("<p><a href=\"%1/\">%1</a></p>").arg(Constants::WEBSITE) +
@@ -35,33 +35,10 @@ AboutView::AboutView(QWidget *parent) : QWidget(parent) {
                    + "<br>" + tr("HTTP proxy support contributed by %1.").arg("Kiwamu Okabe")
                    + "</p>"
 
-                   "<p>" + tr("Translated by %1").arg("Nikita Lyalin (ru_RU), "
-                                                      "Márcio Moraes (pt_BR), "
-                                                      // "Sergio Tocalini Joerg (es_AR), "
-                                                      "Stefan Brück (de_DE), "
-                                                      "Grzegorz Gibas (pl_PL), "
-                                                      "Kiwamu Okabe (ja_JP), "
-                                                      "Dan Vrátil (cs_CZ), "
-                                                      // "Rafa (es_ES), "
-                                                      "Yaron Shahrabani (he_IL), "
-                                                      "Oleksandr Korneta (uk), "
-                                                      "Inga Muste (lat), "
-                                                      "Srecko Belaic & Zvonimir Đeri (hr_HR), "
-                                                      "Miguel Anxo Bouzada (es, gl), "
-                                                      "Guillaume Betous & Mathieu Dimanche (fr_FR), "
-                                                      "Krisztián Horváth (hu_HU), "
-                                                      "Ali E. İmrek (tr_TR), "
-                                                      "Jan W. Skjoldal & Halvor Lyche Strandvoll (nb_NO), "
-                                                      "Ovidiu Niţan (ro_RO), "
-                                                      "Giorgos Skettos (el_GR), "
-                                                      "Brian Keetman (nl_NL), "
-                                                      "Sderawi (ar), "
-                                                      "Daniel Rodrigues (pt_PT), "
-                                                      "Jesse Jaara (fi_FI), "
-                                                      "Tsvyatko Makazchiev (bg_BG), "
-                                                      "Changtai Liang (zh_CN), "
-                                                      "Veta Branislav (mkd_MKD)"
-                                                      ) + "</p>"
+                   "<p>" + tr("Translated by the cool people at %1")
+                   .arg("<a href='http://www.transifex.net/projects/p/minitube/resource/main/'>Transifex</a>")
+                   + "</p>"
+
 #if !defined(APP_MAC) && !defined(APP_WIN)
                    "<p>" + tr("Released under the <a href='%1'>GNU General Public License</a>")
                    .arg("http://www.gnu.org/licenses/gpl.html") + "</p>"
@@ -86,3 +63,16 @@ AboutView::AboutView(QWidget *parent) : QWidget(parent) {
     layout->addLayout(buttonLayout);
 
 }
+
+void AboutView::paintEvent(QPaintEvent * /*event*/) {
+#if defined(APP_MAC) | defined(APP_WIN)
+    QBrush brush;
+    if (window()->isActiveWindow()) {
+        brush = QBrush(QColor(0xdd, 0xe4, 0xeb));
+    } else {
+        brush = palette().window();
+    }
+    QPainter painter(this);
+    painter.fillRect(0, 0, width(), height(), brush);
+#endif
+}
index d4117338244ba72d11cc9479de09108d3d2df80d..817038012bbf65f2ceece6cc152116cf1274f92c 100644 (file)
@@ -22,5 +22,8 @@ public:
         return metadata;
     }
 
+protected:
+    void paintEvent(QPaintEvent *);
+
 };
 #endif
index a8c14616d237366e42c5ccd1ffc42eb7afb381ee..6da09fd38688a85a843be8aef5e0b4228f254008 100644 (file)
@@ -82,6 +82,8 @@ MainWindow::MainWindow() :
             SLOT(updateDownloadMessage(QString)));
     connect(DownloadManager::instance(), SIGNAL(finished()),
             SLOT(downloadsFinished()));
+
+    setAcceptDrops(true);
 }
 
 MainWindow::~MainWindow() {
@@ -217,10 +219,12 @@ void MainWindow::createActions() {
     actions->insert("site", siteAct);
     connect(siteAct, SIGNAL(triggered()), this, SLOT(visitSite()));
 
+#if !defined(APP_MAC) && !defined(APP_WIN)
     donateAct = new QAction(tr("Make a &donation"), this);
     donateAct->setStatusTip(tr("Please support the continued development of %1").arg(Constants::APP_NAME));
     actions->insert("donate", donateAct);
     connect(donateAct, SIGNAL(triggered()), this, SLOT(donate()));
+#endif
 
     aboutAct = new QAction(tr("&About"), this);
     aboutAct->setMenuRole(QAction::AboutRole);
@@ -295,7 +299,9 @@ void MainWindow::createActions() {
 
     action = new QAction(tr("&Download"), this);
     action->setStatusTip(tr("Download the current video"));
+#ifndef APP_NO_DOWNLOADS
     action->setShortcut(QKeySequence::Save);
+#endif
     action->setIcon(QtIconLoader::icon("go-down"));
     action->setEnabled(false);
 #if QT_VERSION >= 0x040600
@@ -355,12 +361,16 @@ void MainWindow::createMenus() {
     viewMenu->addAction(stopAct);
     viewMenu->addAction(pauseAct);
     viewMenu->addAction(skipAct);
+#ifndef APP_NO_DOWNLOADS
     viewMenu->addSeparator();
     viewMenu->addAction(The::globalActions()->value("download"));
+#endif
     viewMenu->addSeparator();
     viewMenu->addAction(webPageAct);
     viewMenu->addAction(copyPageAct);
+#ifndef APP_NO_DOWNLOADS
     viewMenu->addAction(copyLinkAct);
+#endif
     viewMenu->addSeparator();
     viewMenu->addAction(compactViewAct);
     viewMenu->addAction(fullscreenAct);
@@ -406,7 +416,9 @@ void MainWindow::createToolBars() {
     mainToolBar->addAction(pauseAct);
     mainToolBar->addAction(skipAct);
     mainToolBar->addAction(fullscreenAct);
+#ifndef APP_NO_DOWNLOADS
     mainToolBar->addAction(The::globalActions()->value("download"));
+#endif
 
     mainToolBar->addWidget(new Spacer());
 
@@ -634,6 +646,9 @@ void MainWindow::showSearch() {
 }
 
 void MainWindow::showMedia(SearchParams *searchParams) {
+    if (toolbarSearch->text().isEmpty() && !searchParams->keywords().isEmpty()) {
+        toolbarSearch->lineEdit()->setText(searchParams->keywords());
+    }
     mediaView->search(searchParams);
     showWidget(mediaView);
 }
@@ -646,7 +661,9 @@ void MainWindow::stateChanged(Phonon::State newState, Phonon::State /* oldState
 
     case Phonon::ErrorState:
         if (mediaObject->errorType() == Phonon::FatalError) {
-            statusBar()->showMessage(tr("Fatal error: %1").arg(mediaObject->errorString()));
+            // Do not display because we try to play incomplete video files and sometimes trigger this
+            // We retry automatically (in MediaView) so no need to show it
+            // statusBar()->showMessage(tr("Fatal error: %1").arg(mediaObject->errorString()));
         } else {
             statusBar()->showMessage(tr("Error: %1").arg(mediaObject->errorString()));
         }
@@ -1013,3 +1030,29 @@ void MainWindow::startToolbarSearch(QString query) {
     // go!
     showMedia(searchParams);
 }
+
+void MainWindow::dragEnterEvent(QDragEnterEvent *event) {
+    if (event->mimeData()->hasFormat("text/uri-list")) {
+        QList<QUrl> urls = event->mimeData()->urls();
+        if (urls.isEmpty())
+            return;
+        QUrl url = urls.first();
+        QString videoId = YouTubeSearch::videoIdFromUrl(url.toString());
+        if (!videoId.isNull())
+            event->acceptProposedAction();
+    }
+}
+
+void MainWindow::dropEvent(QDropEvent *event) {
+    QList<QUrl> urls = event->mimeData()->urls();
+    if (urls.isEmpty())
+        return;
+    QUrl url = urls.first();
+    QString videoId = YouTubeSearch::videoIdFromUrl(url.toString());
+    if (!videoId.isNull()) {
+        setWindowTitle(url.toString());
+        SearchParams *searchParams = new SearchParams();
+        searchParams->setKeywords(videoId);
+        showMedia(searchParams);
+    }
+}
index ec872e0d9633b683277e799939f517029626080a..e56109fd318fc520d6cdabdc331de4af7c0335d5 100644 (file)
@@ -29,6 +29,8 @@ public slots:
 protected:
     void closeEvent(QCloseEvent *);
     bool eventFilter(QObject *obj, QEvent *event);
+    void dragEnterEvent(QDragEnterEvent *event);
+    void dropEvent(QDropEvent *event);
 
 private slots:
     void fadeInWidget(QWidget *oldWidget, QWidget *newWidget);
index 66fc5ec1bcd681e7689651befa701a4250f4d807..d41c69eae29e8970cd34ec805be6f986b639d5cc 100644 (file)
@@ -177,7 +177,7 @@ void MediaView::search(SearchParams *searchParams) {
 
     QString keyword = searchParams->keywords();
     QString display = keyword;
-    if (keyword.startsWith("http://")) {
+    if (keyword.startsWith("http://") || keyword.startsWith("https://")) {
         int separator = keyword.indexOf("|");
         if (separator > 0 && separator + 1 < keyword.length()) {
             display = keyword.mid(separator+1);
@@ -323,6 +323,13 @@ void MediaView::activeRowChanged(int row) {
 
     The::globalActions()->value("download")->setEnabled(DownloadManager::instance()->itemForVideo(video) == 0);
 
+    // ensure active item is visible
+    // int row = listModel->activeRow();
+    if (row != -1) {
+        QModelIndex index = listModel->index(row, 0, QModelIndex());
+        listView->scrollTo(index, QAbstractItemView::EnsureVisible);
+    }
+
     // see you in gotStreamUrl...
 
 }
index bdb20e12f5a62b64f8fdc747ebe6373c7667b094..11f86d07fa848babebfd9aab1ee8f1f8a2567936 100644 (file)
@@ -204,7 +204,7 @@ void SearchView::updateRecentKeywords() {
     foreach (QString keyword, keywords) {
         QString link = keyword;
         QString display = keyword;
-        if (keyword.startsWith("http://")) {
+        if (keyword.startsWith("http://") || keyword.startsWith("https://")) {
             int separator = keyword.indexOf("|");
             if (separator > 0 && separator + 1 < keyword.length()) {
                 link = keyword.left(separator);
@@ -244,7 +244,7 @@ void SearchView::updateRecentChannels() {
     foreach (QString keyword, keywords) {
         QString link = keyword;
         QString display = keyword;
-        if (keyword.startsWith("http://")) {
+        if (keyword.startsWith("http://") || keyword.startsWith("https://")) {
             int separator = keyword.indexOf("|");
             if (separator > 0 && separator + 1 < keyword.length()) {
                 link = keyword.left(separator);
index 1f9ca8027791ffe2dfdc076ab4aedf58d2f1cb59..36652f6c338a31278c932636953013e27cb4c815 100644 (file)
@@ -135,9 +135,11 @@ void DownloadItem::error(QNetworkReply::NetworkError) {
     qDebug() << "DownloadItem::" << __FUNCTION__ << m_reply->errorString() << m_url;
 #endif
 
-    qDebug() << m_reply->errorString();
+    if (m_reply) {
+        qDebug() << m_reply->errorString();
+        m_errorMessage = m_reply->errorString();
+    }
 
-    m_errorMessage = m_reply->errorString();
     m_reply = 0;
     m_status = Failed;
 
index e63fbd951f9682359056ea799e6c03f24fcfef79..65da3c5134210a0d7846dbd846f8c6fb1f70754b 100644 (file)
@@ -56,6 +56,7 @@ ClearButton::ClearButton(QWidget *parent)
     setToolTip(tr("Clear"));
     setVisible(false);
     setFocusPolicy(Qt::NoFocus);
+    setShortcut(QKeySequence(Qt::Key_Escape));
 }
 
 void ClearButton::paintEvent(QPaintEvent *event)
@@ -65,7 +66,7 @@ void ClearButton::paintEvent(QPaintEvent *event)
     int height = this->height();
 
     painter.setRenderHint(QPainter::Antialiasing, true);
-    QColor color = palette().color(QPalette::Mid);
+    // QColor color = palette().color(QPalette::Mid);
     painter.setBrush(isDown()
                      ? palette().color(QPalette::Dark)
                          : palette().color(QPalette::Mid));
index 545c29827d5078ba0fcbae1009a624cbcd35b1eb..d414990ddf2538be47dac24eb4d6bc678ad6cecc 100644 (file)
@@ -125,7 +125,7 @@ void  Video::gotVideoInfo(QByteArray data) {
     this->videoToken = videoToken;
 
     // get fmt_url_map
-    re = QRegExp("^.*&fmt_url_map=([^&]+).*$");
+    re = QRegExp("^.*&url_encoded_fmt_stream_map=([^&]+).*$");
     match = re.exactMatch(videoInfo);
     // handle regexp failure
     if (!match || re.numCaptures() < 1) {
@@ -146,10 +146,23 @@ void  Video::gotVideoInfo(QByteArray data) {
     QStringList formatUrls = fmtUrlMap.split(",", QString::SkipEmptyParts);
     QHash<int, QString> urlMap;
     foreach(QString formatUrl, formatUrls) {
-        int separator = formatUrl.indexOf("|");
-        if (separator == -1) continue;
-        int format = formatUrl.left(separator).toInt();
-        QString url = formatUrl.mid(separator + 1);
+        // qDebug() << "formatUrl" << formatUrl;
+        QStringList urlParams = formatUrl.split("&", QString::SkipEmptyParts);
+        // qDebug() << "urlParams" << urlParams;
+
+        int format = -1;
+        QString url;
+        foreach(QString urlParam, urlParams) {
+            if (urlParam.startsWith("itag=")) {
+                int separator = urlParam.indexOf("=");
+                format = urlParam.mid(separator + 1).toInt();
+            } else if (urlParam.startsWith("url=")) {
+                int separator = urlParam.indexOf("=");
+                url = urlParam.mid(separator + 1);
+                url = QByteArray::fromPercentEncoding(url.toUtf8());
+            }
+        }
+        if (format == -1 || url.isNull()) continue;
 
         if (format == definitionCode) {
             qDebug() << "Found format" << definitionCode;
index a57b7c21585f1ccef7c67e5a5d8ee04c183b7f30..edb0dd1f70575177116da27d0ff20e1321704d5b 100644 (file)
@@ -15,10 +15,14 @@ void YouTubeSearch::search(SearchParams *searchParams, int max, int skip) {
     QUrl url("http://gdata.youtube.com/feeds/api/videos");
     url.addQueryItem("max-results", QString::number(max));
     url.addQueryItem("start-index", QString::number(skip));
-    if (!searchParams->keywords().isEmpty())
-    url.addQueryItem("q", searchParams->keywords());
+    if (!searchParams->keywords().isEmpty()) {
+        if (searchParams->keywords().startsWith("http://") ||
+                searchParams->keywords().startsWith("https://")) {
+            url.addQueryItem("q", YouTubeSearch::videoIdFromUrl(searchParams->keywords()));
+        } else url.addQueryItem("q", searchParams->keywords());
+    }
     if (!searchParams->author().isEmpty())
-    url.addQueryItem("author", searchParams->author());
+        url.addQueryItem("author", searchParams->author());
 
     switch (searchParams->sortBy()) {
     case SearchParams::SortByNewest:
@@ -68,3 +72,12 @@ QList<Video*> YouTubeSearch::getResults() {
 void YouTubeSearch::abort() {
     this->abortFlag = true;
 }
+
+QString YouTubeSearch::videoIdFromUrl(QString url) {
+    QRegExp re = QRegExp("^.*\\?v=([^&]+).*$");
+    if (re.exactMatch(url)) {
+        QString videoId = re.cap(1);
+        return videoId;
+    }
+    return QString();
+}
index dc2739dfa5dcdd3b92e5c75d7740f2b27335a2fc..4a094e0f3d49e7a031882c40d4bdde0f79f6ede2 100644 (file)
@@ -13,6 +13,7 @@ public:
     void search(SearchParams *searchParams, int max, int skip);
     void abort();
     QList<Video*> getResults();
+    static QString videoIdFromUrl(QString url);
 
 signals:
     void gotVideo(Video*);