From: Jakob Haufe
Date: Mon, 6 Aug 2012 20:31:42 +0000 (+0200)
Subject: Imported Upstream version 1.5
X-Git-Tag: upstream/1.5^0
X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=63b7586c1282acfb82a9b1971320052d6ee0a707;p=minitube
Imported Upstream version 1.5
---
diff --git a/CHANGES b/CHANGES
index 2abed00..f10705a 100644
--- 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 bed8783..c4897ea 100644
--- 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.
@@ -8,15 +14,22 @@
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
index 0000000..7d8c22d
--- /dev/null
+++ b/locale/da.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+ Der findes liv udenfor browseren!
+
+
+
+
+ Version %1
+
+
+
+
+ %1 er fri software, men udviklingen tager værdifuld tid.
+
+
+
+
+ Venligst <a href='%1'>doner</a> for at støtte den forsatte udvikling af %2.
+
+
+
+
+ Reporter fejl og send dine idéer til %1
+
+
+
+
+ Ikon designet af %1.
+
+
+
+
+ Kompakt tilstand bidraget af %1.
+
+
+
+
+ HTTP proxy-understøttelse bidraget af %1.
+
+
+
+
+ Oversat af %1
+
+
+
+
+ Frigivet under <a href='%1'>GNU General Public License</a>
+
+
+
+
+ &Luk
+
+
+
+
+ Om
+
+
+
+
+ Hvad du altid har ønsket at vide om %1 og aldrig turde spørge om
+
+
+
+ ClearButton
+
+
+
+ Fjern
+
+
+
+ DownloadItem
+
+
+
+ bytes
+
+
+
+
+ KB
+
+
+
+
+ MB
+
+
+
+
+ bytes/sek
+
+
+
+
+ KB/sek
+
+
+
+
+ MB/sek
+
+
+
+
+ sekunder
+
+
+
+
+ minutter
+
+
+
+
+ %4 %5 mangler
+
+
+
+ DownloadManager
+
+
+
+ Dette er kun demoversionen af %1.
+
+
+
+
+ Det kan kun hente videoer kortere end %1 minut, så du kan teste downloadfunktionaliteten.
+
+
+
+
+ Forsæt
+
+
+
+
+ Hent den fulde version
+
+
+
+
+ %n Download(s)%n Download(s)
+
+
+
+ DownloadSettings
+
+
+
+ Skift placering...
+
+
+
+
+ Vælg placering til downloads
+
+
+
+
+ Downloadplacering ændret.
+
+
+
+
+ Nuværende downloads vil stadig blive glemt i forrige placering.
+
+
+
+
+ Downloader til: %1
+
+
+
+ DownloadView
+
+
+
+
+ Downloads
+
+
+
+ GlobalShortcuts
+
+
+
+ Afspil
+
+
+
+
+ Pause
+
+
+
+
+ Afspil/Pause
+
+
+
+
+ Stop
+
+
+
+
+ Stop afspilning efter det aktuelle spor
+
+
+
+
+ Næste spor
+
+
+
+
+ Forrige spor
+
+
+
+
+ Skru op
+
+
+
+
+ Skru ned
+
+
+
+
+ Slå lyden fra
+
+
+
+
+ Søg fremad
+
+
+
+
+ Søg baglæns
+
+
+
+ ListModel
+
+
+
+ Søger...
+
+
+
+
+ Vis %1 Mere
+
+
+
+
+ Ingen videoer
+
+
+
+
+ Ikke flere videoer
+
+
+
+ LoadingWidget
+
+
+
+ Fejl
+
+
+
+ MainWindow
+
+
+
+ &Stop
+
+
+
+
+ Stop afspilning og gå tilbage til søgeoversigt
+
+
+
+
+ S&pring over
+
+
+
+
+ Spring til næste video
+
+
+
+
+
+ &Pause
+
+
+
+
+
+ Pause afspilning
+
+
+
+
+
+ &Fuldskærm
+
+
+
+
+ Vis i fuldskærm
+
+
+
+
+ &Kompakt tilstand
+
+
+
+
+ Skjul afspilningslisten og værktøjslinjen
+
+
+
+
+ Ã
bn &YouTube-siden
+
+
+
+
+ GÃ¥ til YouTube-videosiden og pause afspilningen
+
+
+
+
+ Kopier YouTube &linket
+
+
+
+
+ Kopier det aktuelle YouTube-videolink til udklipsholderen
+
+
+
+
+ Kopier videostrøm &Adresse
+
+
+
+
+ Kopier adressen for den aktuelle videostrøm til udklipsholderen
+
+
+
+
+ &Fjern
+
+
+
+
+ Fjern de valgte videoer fra afspilningslisten
+
+
+
+
+ Flyt &Op
+
+
+
+
+ Flyt de valgte videoer i afspilningslisten op
+
+
+
+
+ Flyt &Ned
+
+
+
+
+ Flyt de valgte videoer i afspilningslisten ned
+
+
+
+
+ &Slet seneste søgninger
+
+
+
+
+ Ryd søgeoversigt. Kan ikke fortrydes.
+
+
+
+
+ &Afslut
+
+
+
+
+ Ctrl + Q
+
+
+
+
+ Farvel
+
+
+
+
+ &Hjemmeside
+
+
+
+
+ %1 på nettet
+
+
+
+
+ Lav en &donation
+
+
+
+
+ Støt den forsatte udvikling af %1
+
+
+
+
+ &Om
+
+
+
+
+ Info om %1
+
+
+
+
+ Søg
+
+
+
+
+ Slå lyden fra
+
+
+
+
+ Ctrl + M
+
+
+
+
+
+ &Downloads
+
+
+
+
+ Vis deltaljer om video downloads
+
+
+
+
+ &Download
+
+
+
+
+ Download den aktuelle video
+
+
+
+
+ &Program
+
+
+
+
+ &Afspilningsliste
+
+
+
+
+ &Video
+
+
+
+
+ &Hjælp
+
+
+
+
+ Tryk %1 for at skrue op for lyden og %2 for at skrue ned
+
+
+
+
+
+ Ã
bner %1
+
+
+
+
+ Vil du afslutte %1 selvom et download er i gang?
+
+
+
+
+ Hvis du lukker %1 nu vil dette download blive annulleret.
+
+
+
+
+ Luk og annuller download
+
+
+
+
+ Vent til download er færdig
+
+
+
+
+ Alvorlig fejl: %1
+
+
+
+
+ Fejl: %1
+
+
+
+
+ &Afspil
+
+
+
+
+ Genoptag afspilning
+
+
+
+
+ Forlad &Fuldskærm
+
+
+
+
+ Tilbageværende tid: %1
+
+
+
+
+ Lydniveau på %1%
+
+
+
+
+ Lyden er slået fra
+
+
+
+
+ Lyden er slået til
+
+
+
+
+ Maksimal videoopløsning sat til %1
+
+
+
+
+ Dit privatliv er nu sikret
+
+
+
+
+ Downloads færdig
+
+
+
+ MediaView
+
+
+
+ Mest relevante
+
+
+
+
+ Senest tilføjede
+
+
+
+
+ Mest sete
+
+
+
+
+ Du kan nu indsætte YouTube-linket i et andet program
+
+
+
+
+ Du kan nu indsætte adressen til videostrømmen i et andet program
+
+
+
+
+ Linket vil kun være gyldigt i en begrænset periode.
+
+
+
+
+ Dette er kun demoversionen af %1.
+
+
+
+
+ Det giver dig mulighed for at teste programmet og se om det virker for dig.
+
+
+
+
+ Forsæt
+
+
+
+
+ Hent den fulde version
+
+
+
+
+ Downloader %1
+
+
+
+ NetworkAccess
+
+
+
+ Netværksfejl %1
+
+
+
+ PrettyItemDelegate
+
+
+
+ %1 visninger
+
+
+
+
+ %1 af %2 (%3) â %4
+
+
+
+
+ Forbereder
+
+
+
+
+ Fejlede
+
+
+
+
+ Fuldført
+
+
+
+
+ Afbrudt
+
+
+
+
+ Afbryd download
+
+
+
+
+ Vis i %1
+
+
+
+
+ Ã
bn overordnet mappe
+
+
+
+
+ Genstart download
+
+
+
+ SearchLineEdit
+
+
+
+ Søg
+
+
+
+ SearchView
+
+
+
+ Velkommen til <a href='%1'>%2</a>,
+
+
+
+
+ Hent den fulde version
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+ Indtast
+
+
+
+
+ et nøgleord
+
+
+
+
+ en kanal
+
+
+
+
+ for at begynde at se video.
+
+
+
+
+ Afspil
+
+
+
+
+ Seneste nøgleord
+
+
+
+
+ Nyeste kanaler
+
+
+
+
+ En ny version af %1 er tilgængelig. Venligst <a href='%2'>opdater til version %3</a>
+
+
+
+
+ Sæt dig godt til rette
+
+
+
+ Video
+
+
+
+ Kan ikke hente videostrøm for %1
+
+
+
+
+ Netværksfejl: %1 for %2
+
+
+
\ No newline at end of file
diff --git a/locale/es_AR.ts b/locale/es_AR.ts
index 5593510..4c4fb2f 100644
--- a/locale/es_AR.ts
+++ b/locale/es_AR.ts
@@ -5,12 +5,12 @@
- Hay vida fuera del navegador!
+ Hay vida más allá del navegador!
- Versión-%1
+ Versión %1
@@ -20,12 +20,12 @@
-
+ Por favor, <a href='%1'>hacé una donación</a> para apoyar el desarrollo de %2.
- Reportar errores y envia tus idea a %1
+ Reportá errores y enviá tus idea a %1
@@ -35,12 +35,12 @@
-
+ El modo compacto es una contribución de %1.
-
+ El soporte para proxy HTTP es una contribución de %1.
@@ -50,22 +50,22 @@
- Desarrollado bajo <a href='%1'>GNU General Public License</a>
+ Desarrollado bajo la <a href='%1'>Licencia Pública General de GNU</a>
-
+ &Cerrar
- Acerca
+ Acerca de
- Que es lo que siempre quisiste saber acerca de %1 y nunca lo preguntaste
+ Lo que siempre quisiste saber de %1 y nunca te animaste a preguntar
@@ -81,47 +81,47 @@
-
+ bytes
-
+ KB
-
+ MB
-
+ bytes/sec
-
+ KB/sec
-
+ MB/sec
-
+ segundos
-
+ minutos
-
+ %4 %5 restante(s)
@@ -129,27 +129,27 @@
-
+ Esta es sólo una versión de demostración de %1.
-
+ Sólo se pueden bajar videos de menos de %1 minutos, para probar la funcionalidad de descarga.
-
+ Continuar
-
+ Conseguà la versión completa
-
+ %n Descarga(s)%n Descarga(s)
@@ -157,27 +157,27 @@
-
+ Cambiar destino...
-
+ Elegir el destino de la descarga
-
+ Destino de la descarga cambiado.
-
+ Las descargas en curso van a seguir bajándose al destino anterior.
-
+ Bajando a: %1
@@ -186,7 +186,7 @@
-
+ Descargas
@@ -194,62 +194,62 @@
-
+ Play
-
+ Pausa
-
+ Play/Pausa
-
+ Detener
-
+ Detener luego de la pista actual
-
+ Pista siguiente
-
+ Pista previa
-
+ Subir volumen
-
+ Bajar volumen
-
+ Mudo
-
+ Avanzar rápido
-
+ Retroceder rápido
@@ -267,12 +267,12 @@
- No videos
+ Sin videos
- No más videos
+ No hay más videos
@@ -280,7 +280,7 @@
-
+ Error
@@ -288,12 +288,12 @@
- &Parar
+ &Detener
- Parar
+ Detener y volver a la búsqueda
@@ -303,7 +303,7 @@
- Siguiente
+ Siguiente video
@@ -331,42 +331,42 @@
-
+ &Modo compacto
-
+ Esconder la lista de reproducción y la barra de herramientas
-
+ Abrir la página &YouTube
-
+ Ir al video en YouTube y pausar la reproducción
-
+ Copiar el &link de YouTube
-
+ Copiar el link de YouTube del video al portapapeles
-
+ Copiar la &URL del stream del video
-
+ Copiar la &URL del stream del video al portapapeles
@@ -376,37 +376,37 @@
- Borrar
+ Borrar los videos seleccionados de la lista
- &Arriba
+ Mover para &arriba
- Arriba
+ Mover para arriba los videos seleccionados
- &Abajo
+ Mover para &abajo
- Abajo
+ Mover para abajo los videos seleccionados
-
+ &Eliminar las búsquedas recientes
-
+ Eliminar el historial de búsqueda. No se puede deshacer.
@@ -416,12 +416,12 @@
-
+ Ctrl+Q
- Adiós
+ Chau
@@ -431,68 +431,68 @@
-
+ %1 en la Web
-
+ Hacer una &donación
- Por favor apoyo el desarrollo continuo de-%1
+ Apoyá el desarrollo de %1
- &Acerca
+ &Acerca de
- Acercá de-%1
+ Información sobre %1
-
+ Buscar
-
+ Silenciar volumen
-
+ Ctrl+M
-
+ &Descargas
-
+ Mostrar detalles sobre la descarga de videos
-
+ &Bajar video
-
+ Bajar el video actual
-
+ &Programa
@@ -512,53 +512,53 @@
-
+ Con %1 subÃs el volumen, con %2 lo bajás
- Abriendo-%1
+ Abriendo %1
-
+ Seguro que querés salir de %1 con una descarga en progreso?
-
+ Si cerrás %1 ahora, la descarga se va a cancelar.
-
+ Cerrar y cancelar descarga
-
+ Esperar a que termine la descarga
-
+ Error fatal: %1
-
+ Error: %1
- &Reproducir
+ &Play
- Reproducir
+ Continuar reproducción
@@ -568,37 +568,37 @@
-
+ Tiempo restante: %1
-
+ Volumen al %1%
-
+ Volumen silenciado
-
+ Volumen activo
-
+ Definición máxima de video seteada en %1
-
+ Tu privacidad ahora está segura
-
+ Descarga completa
@@ -616,47 +616,47 @@
- Más visitadas
+ Más visitados
-
+ Ahora podés pegar el link de YouTube en otra aplicación
-
+ Ahora podés pegar la URL del stream en otra aplicación
-
+ El link va a ser válido sólo por un tiempo limitado.
-
+ Esta es sólo la versión de demostración de %1.
-
+ Te permite probar la aplicación y ver si te funciona.
-
+ Continuar
-
+ Conseguir la versión completa
-
+ Bajando %1
@@ -664,7 +664,7 @@
-
+ Error de conexión: %1
@@ -672,52 +672,52 @@
- %1-visitas
+ %1 visitas
-
+ %1 de %2 (%3) â %4
-
+ Preparando
-
+ Falló
-
+ Completado
-
+ Detenido
-
+ Detener descarga
-
+ Mostrar en %1
-
+ Abrir carpeta padre
-
+ Reiniciar descarga
@@ -733,38 +733,38 @@
- Bienvenidos a <a href='%1'>%2</a>
+ Bienvenido a <a href='%1'>%2</a>,
-
+ Conseguir la versión completa
"Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
-
+ Escribir
-
+ una palabra clave
-
+ un canal
-
+ para empezar a ver videos.
- Viendo
+ Ver
@@ -774,7 +774,7 @@
-
+ Canales recientes
@@ -792,12 +792,12 @@
-
+ No puedo obtener el stream de video de %1
-
+ Error de conexión: %1 para %2
\ No newline at end of file
diff --git a/locale/fa.ts b/locale/fa.ts
new file mode 100644
index 0000000..bc598b8
--- /dev/null
+++ b/locale/fa.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+
+
+
+
+
+ Ùسخ٠%1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Ø´Ù
اÛ٠طراØÛ Ø´Ø¯Ù ØªÙسط %1.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ترجÙ
٠شد٠تÙسط %1
+
+
+
+
+
+
+
+
+
+ &بستÙ
+
+
+
+
+ دربارÙ
+
+
+
+
+
+
+
+
+ ClearButton
+
+
+
+ پاکسازÛ
+
+
+
+ DownloadItem
+
+
+
+ باÛت
+
+
+
+
+ Ú©ÛÙÙباÛت
+
+
+
+
+ Ù
گاباÛت
+
+
+
+
+ باÛت بر ثاÙÛÙ
+
+
+
+
+ Ú©ÛÙÙباÛت بر ثاÙÛÙ
+
+
+
+
+ Ù
گاباÛت بر ثاÙÛÙ
+
+
+
+
+ ثاÙÛÙ
+
+
+
+
+ دÙÛÙÙ
+
+
+
+
+ %4 %5 باÙÛ Ù
اÙدÙ
+
+
+
+ DownloadManager
+
+
+
+
+
+
+
+
+
+
+
+
+
+ اداÙ
Ù
+
+
+
+
+ درÛاÙت Ùسخ٠کاÙ
Ù
+
+
+
+
+ %n بارگÛرÛ
+
+
+
+ DownloadSettings
+
+
+
+ تغÛÛر Ù
سÛر...
+
+
+
+
+ اÙتخاب Ù
سÛر بارگÛرÛ
+
+
+
+
+ Ù
سÛر بارگÛØ±Û ØªØºÛÛر کرد.
+
+
+
+
+
+
+
+
+
+ در Øا٠بارگÛØ±Û Ø¨Ù: %1
+
+
+
+ DownloadView
+
+
+
+
+ بارگÛرÛâÙا
+
+
+
+ GlobalShortcuts
+
+
+
+ شرÙع
+
+
+
+
+ Ù
Ú©Ø«
+
+
+
+
+ شرÙع/Ù
Ú©Ø«
+
+
+
+
+ تÙÙÙ
+
+
+
+
+ تÙÙ٠پخش پس از ترک ÙعÙÛ
+
+
+
+
+ ترک بعدÛ
+
+
+
+
+ ترک ÙبÙÛ
+
+
+
+
+ اÙزاÛØ´ صدا
+
+
+
+
+ کاÙØ´ صدا
+
+
+
+
+ بÛâصدا
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ListModel
+
+
+
+ در Øا٠جستجÙ...
+
+
+
+
+ ÙÙ
اÛØ´ %1 بشتر
+
+
+
+
+ ÙÛÚ ÙÛدئÙÛÛ ÙجÙد Ùدارد
+
+
+
+
+ ÙÛدئÙÛ Ø¨ÛØ´ØªØ±Û ÙجÙد Ùدارد
+
+
+
+ LoadingWidget
+
+
+
+ خطا
+
+
+
+ MainWindow
+
+
+
+ &تÙÙÙ
+
+
+
+
+
+
+
+
+
+ &رد کردÙ
+
+
+
+
+ رد کرد٠٠رÙت٠ب٠ÙÛدئÙÛ Ø¨Ø¹Ø¯Û
+
+
+
+
+
+ &Ù
Ú©Ø«
+
+
+
+
+
+
+
+
+
+
+
+ &تÙ
اÙ
صÙØÙ
+
+
+
+
+
+
+
+
+
+ ØاÙت &ÙشردÙ
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &ØØ°Ù
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &خرÙج
+
+
+
+
+
+
+
+
+
+ خداØاÙظ
+
+
+
+
+ &دربارÙ
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ جستجÙ
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MediaView
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NetworkAccess
+
+
+
+
+
+
+
+ PrettyItemDelegate
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SearchLineEdit
+
+
+
+
+
+
+
+ SearchView
+
+
+
+
+
+
+
+
+
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Video
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/locale/hu.ts b/locale/hu.ts
new file mode 100644
index 0000000..49eb8a4
--- /dev/null
+++ b/locale/hu.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+ A böngészÅn túl is van élet!
+
+
+
+
+ Verziószám: %1
+
+
+
+
+ A %1 egy ingyenes szoftver, de a fejlesztése rengeteg idÅt felemészt és az idÅ pénz.
+
+
+
+
+
+
+
+
+
+ Hibajelentéseid, ötleteid a %1 cÃmre küldheted.
+
+
+
+
+ Az ikont %1 tervezte.
+
+
+
+
+ A kompakt módot %1 tervezte.
+
+
+
+
+ A HTTP porxy támogatója: %1
+
+
+
+
+ FordÃtotta: %1
+
+
+
+
+ A program <a href='%1'>GNU General Public License</a> alatt lett kiadva
+
+
+
+
+ &Bezárás
+
+
+
+
+ Névjegy
+
+
+
+
+
+
+
+
+ ClearButton
+
+
+
+
+
+
+
+ DownloadItem
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadManager
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadView
+
+
+
+
+
+
+
+
+ GlobalShortcuts
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ListModel
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LoadingWidget
+
+
+
+
+
+
+
+ MainWindow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MediaView
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NetworkAccess
+
+
+
+
+
+
+
+ PrettyItemDelegate
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SearchLineEdit
+
+
+
+
+
+
+
+ SearchView
+
+
+
+
+
+
+
+
+
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Video
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/locale/ia.ts b/locale/ia.ts
new file mode 100644
index 0000000..049452f
--- /dev/null
+++ b/locale/ia.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+ Il ha vita post del navigator!
+
+
+
+
+ Version %1
+
+
+
+
+ %1 es Software Libere ma su disveloppamento require tempore preciose.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Icone designato per %1.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Traducito per %1
+
+
+
+
+
+
+
+
+
+ &Claude
+
+
+
+
+ Circa
+
+
+
+
+
+
+
+
+ ClearButton
+
+
+
+ Netta
+
+
+
+ DownloadItem
+
+
+
+ bytes
+
+
+
+
+ KB
+
+
+
+
+ MB
+
+
+
+
+ bytes/sec
+
+
+
+
+ KB/sec
+
+
+
+
+ MB/sec
+
+
+
+
+ secundas
+
+
+
+
+ minutas
+
+
+
+
+ %4 %5 restante
+
+
+
+ DownloadManager
+
+
+
+ Iste es solmente le version demo de %1.
+
+
+
+
+
+
+
+
+
+ Continuar
+
+
+
+
+ Prender le version complete
+
+
+
+
+ %n discarga%n discargas
+
+
+
+ DownloadSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Discargando a %1
+
+
+
+ DownloadView
+
+
+
+
+ Discargas
+
+
+
+ GlobalShortcuts
+
+
+
+ Reproducer
+
+
+
+
+ Pausa
+
+
+
+
+ Reproducer/Pausa
+
+
+
+
+ Stoppar
+
+
+
+
+ Stoppar le reproduction post le pista actual
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ListModel
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LoadingWidget
+
+
+
+ Error
+
+
+
+ MainWindow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &Quitar
+
+
+
+
+
+
+
+
+
+ Adeo
+
+
+
+
+ Sito &Web
+
+
+
+
+
+
+
+
+
+ Facer une donation
+
+
+
+
+
+
+
+
+
+ Circ&a
+
+
+
+
+ Info re %1
+
+
+
+
+ Cercar
+
+
+
+
+
+
+
+
+
+ Ctrl+M
+
+
+
+
+
+ &Discargas
+
+
+
+
+
+
+
+
+
+ &Discarga
+
+
+
+
+ Discarga le video actual
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &Adjuta
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tu vole sortir de %1 con une discarga in progresso?
+
+
+
+
+
+
+
+
+
+ Clauder e cancellar le discarga
+
+
+
+
+
+
+
+
+
+ Error fatal: %1
+
+
+
+
+ Error: %1
+
+
+
+
+ Re&producer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tempore restante: %1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tu intimitate is secur ora mesmo
+
+
+
+
+ Discargas complete
+
+
+
+ MediaView
+
+
+
+ Le plus apposite
+
+
+
+
+ Le plus recente
+
+
+
+
+
+
+
+
+
+ Ora tu pote collar le ligamine de YouTube in altere application
+
+
+
+
+ Ora tu pote collar le URL del video in fluxo in altere application
+
+
+
+
+ Le ligamine essera valide solmente per un tempore limitate.
+
+
+
+
+ Iste es solmente le version demo de %1.
+
+
+
+
+
+
+
+
+
+ Continuar
+
+
+
+
+ Procura le version complete
+
+
+
+
+ Discargando %1
+
+
+
+ NetworkAccess
+
+
+
+ Error de rete: %1
+
+
+
+ PrettyItemDelegate
+
+
+
+ %1 vistas
+
+
+
+
+ %1 de %2 (%3) â %4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Monstrar in %1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SearchLineEdit
+
+
+
+ Cerca
+
+
+
+ SearchView
+
+
+
+ Benvenite a <a href='%1'>%2</a>,
+
+
+
+
+ Procura le version complete
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+ Inscriber
+
+
+
+
+ una parola clave
+
+
+
+
+ un canal
+
+
+
+
+
+
+
+
+
+ Specta
+
+
+
+
+ Parolas clave recente
+
+
+
+
+ Canales recente
+
+
+
+
+ Une nove version de %1 es disponibile. Per favor <a href='%2'>renova a le version %3</a>
+
+
+
+
+ Face te ipse confortabile
+
+
+
+ Video
+
+
+
+ Non pote procurar el fluxo de video pro %1
+
+
+
+
+ Error de rete: %1 pro %2
+
+
+
\ No newline at end of file
diff --git a/locale/km.ts b/locale/km.ts
new file mode 100644
index 0000000..21c4453
--- /dev/null
+++ b/locale/km.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClearButton
+
+
+
+
+
+
+
+ DownloadItem
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadManager
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadView
+
+
+
+
+
+
+
+
+ GlobalShortcuts
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ListModel
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LoadingWidget
+
+
+
+
+
+
+
+ MainWindow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MediaView
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NetworkAccess
+
+
+
+
+
+
+
+ PrettyItemDelegate
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SearchLineEdit
+
+
+
+
+
+
+
+ SearchView
+
+
+
+
+
+
+
+
+
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Video
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/locale/locale.pri b/locale/locale.pri
index 4ad9ee1..416644a 100644
--- a/locale/locale.pri
+++ b/locale/locale.pri
@@ -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
diff --git a/locale/nb_NO.ts b/locale/nb_NO.ts
index 6436a98..9a1a814 100644
--- a/locale/nb_NO.ts
+++ b/locale/nb_NO.ts
@@ -15,27 +15,27 @@
- %1 er Fri Programvare men utviklingen tar verdifull tid.
+ %1 er gratis programvare, men utviklingen bruker dyrebar tid.
- Vennligst <a href='%1'>doner</a> for og støtte vidre utvikling av %2.
+ Vennligst <a href='%1'>doner</a> for og støtte videre utvikling av %2.
- Rapporter bugs og send inn dine ideer til %1
+ Rapporter feil og send inn dine ideer til %1
- Ikon er designet av %1.
+ Ikonet er designet av %1.
- Kompakt-Visning er utviklet av %1.
+ Kompaktmodus er utviklet av %1.
@@ -50,7 +50,7 @@
- Sluppet under <a href='%1'>GNU General Public License</a>
+ Utgitt under <a href='%1'>GNU General Public License</a>
@@ -65,7 +65,7 @@
- Hva du alltid har villet visst om %1 men aldri torde å spørre om
+ Hva du alltid har ønsket å vite om %1, men aldri turte spørre om
@@ -81,47 +81,47 @@
-
+ bytes
-
+ KB
-
+ MB
-
+ bytes/sek
-
+ KB/sek
-
+ MB/sek
-
+ sekunder
-
+ minutter
-
+ %4 %5 gjenstår
@@ -129,27 +129,27 @@
-
+ Dette er kun demo-versjonen av %1.
-
+ Den kan kun laste ned videoer på under %1 minutter, for at du skal kunne prøve ut nedlastingsfunksjonen.
-
+ Fortsett
-
+ Kjøp fullversjonen
-
+ %n nedlasting%n nedlastinger
@@ -157,27 +157,27 @@
-
+ Endre sted ...
-
+ Velg nedlastingsmappe
-
+ Nedlastingsmappe endret.
-
+ Pågående nedlastinger vil bli lagret i den forrige mappen.
-
+ Laster ned til: %1
@@ -186,7 +186,7 @@
-
+ Nedlastinger
@@ -194,62 +194,62 @@
-
+ Spill av
-
+ Pause
-
+ Spill av/Pause
-
+ Stopp
-
+ Stopp avspilling etter denne videoen.
-
+ Neste video
-
+ Forrige video
-
+ Ãk lydvolumet
-
+ Senk lydvolumet
-
+ Lydløs
-
+ Søk forover
-
+ Søk bakover
@@ -293,7 +293,7 @@
- Stopp avspilling og gå tilbake til dine søk
+ Stopp avspilling og gå tilbake til søkevisningen
@@ -303,7 +303,7 @@
- Hopp over neste video
+ Hopp til neste video
@@ -331,7 +331,7 @@
- &Kompakt-Visning
+ &Kompaktvisning
@@ -401,12 +401,12 @@
-
+ &fjern seneste søkehistorie
- Klarer søkehistorie. Kan ikke bli angert.
+ Fjern all søkehistorie. Kan ikke angres.
@@ -421,7 +421,7 @@
- Ha en fin dag
+ Farvel
@@ -436,12 +436,12 @@
- Gjør en &donasjon
+ &donér
- Bidra til fortsatt utvikling av %1
+ Vi håper du kan bidra til å fortsette arbeidet med utvikling av %1
@@ -461,7 +461,7 @@
- Mute
+ Lydløs
@@ -472,22 +472,22 @@
-
+ &Nedlastinger
-
+ Vis detaljer om nedlasting av video
-
+ &Nedlasting
-
+ Last ned denne videoen
@@ -512,7 +512,7 @@
- Trykk på %1 for å stille opp volum, %2 for å skru ned
+ Trykk på %1 for å øke lydvolumet, %2 for å senke
@@ -523,22 +523,22 @@
-
+ Vil du avslutte %1 mens nedlastinger pågår?
-
+ Vis du stenger %1 nå, vil nedlastingen bli avbrutt
-
+ Steng og avbryt nedlastingen
-
+ Vent mens nedlastingen fullføres
@@ -578,12 +578,12 @@
- Mute er på
+ Lydløst er på
- Mute er av
+ Lydløst er av
@@ -598,7 +598,7 @@
-
+ Nedlastinger fullført
@@ -636,27 +636,27 @@
-
+ Dette er kun demoversjonen av %1.
-
+ Dette gir deg muligheten til å prøve ut applikasjonen og se om du den er noe for deg.
-
+ Fortsett
-
+ Kjøp fullversjonen
-
+ Nedlasting %1
@@ -677,47 +677,47 @@
-
+ %1 av %2 (%3) â %4
-
+ Forbereder
-
+ Feilet
-
+ Fullført
-
+ Stoppet
-
+ Stop nedlasting
-
+ Vis i %1
-
+ Ã
pne vertsmappen
-
+ Start nedlastingen på nytt
@@ -733,48 +733,48 @@
- Velommen til <a href='%1'>%2</a>,
+ Velkommen til <a href='%1'>%2</a>,
-
+ Kjøpfullversjon
"Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
-
+ Skriv
-
+ ett nøkkelord
-
+ en kanal
-
+ for å begynne avspilling av video
- Se Film
+ Se
- Aktuelle søkeord
+ Seneste søkeord
-
+ Seneste kanaler
@@ -792,7 +792,7 @@
-
+ Kan ikke hente mediastrøm for %1
diff --git a/locale/sl.ts b/locale/sl.ts
new file mode 100644
index 0000000..e39cee8
--- /dev/null
+++ b/locale/sl.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+ Zunaj brskalnika je življenje!
+
+
+
+
+ RazliÄica %1
+
+
+
+
+ %1 je Prosta Programska Oprema, a njen razvoj zahteva dragocen Äas.
+
+
+
+
+ <a href='%1'>Darujte prosim</a> za podporo stalnemu razvoju %2.
+
+
+
+
+ Javite napake in pošljite svoje ideje %1
+
+
+
+
+ Ikone je izrisal %1.
+
+
+
+
+ Strnjeni naÄin je prispeval %1.
+
+
+
+
+ Podporo za posredniški strežnik HTTP je prispeval %1.
+
+
+
+
+ Prevod: %1
+
+
+
+
+ Izdano na podlagi licence <a href='%1'>GNU General Public License</a>
+
+
+
+
+ &Zapri
+
+
+
+
+ O programu
+
+
+
+
+ Kar ste vedno želeli vedeti o %1 a si niste nikoli upali vprašati
+
+
+
+ ClearButton
+
+
+
+ PoÄisti
+
+
+
+ DownloadItem
+
+
+
+ byteov
+
+
+
+
+ KB
+
+
+
+
+ MB
+
+
+
+
+ byteov/sek
+
+
+
+
+ KB/sek
+
+
+
+
+ MB/sek
+
+
+
+
+ sekund
+
+
+
+
+ minut
+
+
+
+
+ %4 %5 ostaja
+
+
+
+ DownloadManager
+
+
+
+ To je samo preizkusna razliÄica programa %1.
+
+
+
+
+ Prenese lahko samo posnetke krajše od %1 minut, da lahko preverite delvanje funkcije prenosa.
+
+
+
+
+ Nadaljuj
+
+
+
+
+ Pridobi popolno razliÄico
+
+
+
+
+ %n Prenos%n Prenosa%n Prenosi%n Prenosov
+
+
+
+ DownloadSettings
+
+
+
+ Sprememba mesta ...
+
+
+
+
+ Izberite mesto prenosa
+
+
+
+
+ Spremenili ste mesto prenosa.
+
+
+
+
+ Trenutni prenosi bodo še vedno šli v prejšnje mesto.
+
+
+
+
+ Prenos v: %1
+
+
+
+ DownloadView
+
+
+
+
+ Prenosi
+
+
+
+ GlobalShortcuts
+
+
+
+ Predvajaj
+
+
+
+
+ Pavza
+
+
+
+
+ Predvajaj/Pavza
+
+
+
+
+ Ustavi
+
+
+
+
+ Ustavi predvajanje po trenutnem posnetku
+
+
+
+
+ Naslednji posnetek
+
+
+
+
+ Prejšnji posnetek
+
+
+
+
+ PoveÄaj glasnost
+
+
+
+
+ Zmanjšaj glasnost
+
+
+
+
+ Nemo
+
+
+
+
+ IÅ¡Äi naprej
+
+
+
+
+ IÅ¡Äi nazaj
+
+
+
+ ListModel
+
+
+
+ Iskanje ...
+
+
+
+
+ Pokaži %1 veÄ
+
+
+
+
+ Nobenega videa
+
+
+
+
+ Nobenega videa veÄ
+
+
+
+ LoadingWidget
+
+
+
+ Napaka
+
+
+
+ MainWindow
+
+
+
+ &Ustavi
+
+
+
+
+ Ustavi predvajanje in se vrni v iskalni pogled
+
+
+
+
+ Pres%koÄi
+
+
+
+
+ SkoÄi na naslednji video
+
+
+
+
+
+ &Pavza
+
+
+
+
+
+ Premor v predvajanju
+
+
+
+
+
+ &Celozaslonski naÄin
+
+
+
+
+ Gre v celozaslonski naÄin
+
+
+
+
+ &Strnjeni naÄin
+
+
+
+
+ Skrije predvajalni seznam in orodno vrstico
+
+
+
+
+ Odpre stran &YouTube
+
+
+
+
+ Gre na stran posnetka na YouTube in ustavi predvajanje
+
+
+
+
+ Kopiraj &povezavo YouTube
+
+
+
+
+ Kopira povezavo YouTube trenutnega posnetka v odložiÅ¡Äe
+
+
+
+
+ Kopiraj &URL video pretoka
+
+
+
+
+ Kopira URL trenutnega video pretoka v odložiÅ¡Äe
+
+
+
+
+ Odst&rani
+
+
+
+
+ Odstrani izbrani video iz predvajalnega seznama
+
+
+
+
+ Premakni &gor
+
+
+
+
+ Izbrani video premakne mesto više v predvajalnem seznamu
+
+
+
+
+ Premakni &dol
+
+
+
+
+ Izbrani video premakne mesto niže v predvajalnem seznamu
+
+
+
+
+ I&zbriši nedavno iskanje
+
+
+
+
+ IzbriÅ¡e zgodovino iskanje. Tega dejanja ni mogoÄe rayveljaviti.
+
+
+
+
+ &Zapri
+
+
+
+
+ Ctrl+Z
+
+
+
+
+ Nasvidenje
+
+
+
+
+ &Spletno mesto
+
+
+
+
+ %1 na spletu
+
+
+
+
+ &Darujte
+
+
+
+
+ Podprite prosim nadaljni razvoj programa %1
+
+
+
+
+ &O programu
+
+
+
+
+ Informacije o %1
+
+
+
+
+ IÅ¡Äi
+
+
+
+
+ Nemo
+
+
+
+
+ Ctrl+M
+
+
+
+
+
+ Pre&nosi
+
+
+
+
+ Pokaže podrobnosti o prenosih posnetkov
+
+
+
+
+ Pre&nesi
+
+
+
+
+ Prenesi trenutni posnetek
+
+
+
+
+ &Aplikacija
+
+
+
+
+ &Predvajalni seznam
+
+
+
+
+ &Video
+
+
+
+
+ P&omoÄ
+
+
+
+
+ Pritisnite %1, da povišate glasnost in %2, da jo nižate
+
+
+
+
+
+ Odpiranje %1
+
+
+
+
+ Ali res želite zapustiti %1 medtem, ko jeaktiven prenos?
+
+
+
+
+ V primeru, da zdaj zaprete %1 bo ta prenos prekinjen.
+
+
+
+
+ Zapri in prekliÄi prenose
+
+
+
+
+ PoÄakaj, da konÄa prenos.
+
+
+
+
+ Usodna napaka: %1
+
+
+
+
+ Napaka: %1
+
+
+
+
+ &Predvajaj
+
+
+
+
+ Nadaljuj s predvajanjem
+
+
+
+
+ Izhod iz &celozaslonskega naÄina
+
+
+
+
+ Preostali Äas: %1
+
+
+
+
+ Glasnost %1%
+
+
+
+
+ Glasnost je utišana
+
+
+
+
+ Glasnost je povrnjena
+
+
+
+
+ NajviÅ¡ja loÄljivost posnetkov je nastavljena na %1
+
+
+
+
+ Vaša zasebnost je zdaj varna
+
+
+
+
+ Prenosi so konÄani
+
+
+
+ MediaView
+
+
+
+ Najbolj ustrezni
+
+
+
+
+ Najbolj novi
+
+
+
+
+ Najbolj gledani
+
+
+
+
+ Zdaj lahko prilepite povezavo na YouTube v drugo aplikacijo
+
+
+
+
+ Zdaj lahko prilepite URL video pretoka v drugo aplikacijo
+
+
+
+
+ Povezava bo delovala le za omejen Äas.
+
+
+
+
+ To je samo demo razliÄica programa %1.
+
+
+
+
+ Dovoli vam testiranje aplikcaije in preverjanje delovanja,
+
+
+
+
+ Nadaljuj
+
+
+
+
+ Pridobi celotno razliÄico
+
+
+
+
+ Prenašanje %1
+
+
+
+ NetworkAccess
+
+
+
+ Napak omrežja: %1
+
+
+
+ PrettyItemDelegate
+
+
+
+ %1 predvajanj
+
+
+
+
+ %1 od %2 (%3) â %4
+
+
+
+
+ Pripravljanje
+
+
+
+
+ Neuspešno
+
+
+
+
+ DokonÄano
+
+
+
+
+ Ustavljeno
+
+
+
+
+ Ustavi prenos
+
+
+
+
+ Pokaži v %1
+
+
+
+
+ Odpri nadrejeno mapo
+
+
+
+
+ Ponovno prenesi
+
+
+
+ SearchLineEdit
+
+
+
+ IÅ¡Äi
+
+
+
+ SearchView
+
+
+
+ Pozdravljeni v <a href='%1'>%2</a>,
+
+
+
+
+ Pridobi celotno razliÄico
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+ Vnesite
+
+
+
+
+ kljuÄno besedo
+
+
+
+
+ kanal
+
+
+
+
+ in zaÄnite gledati posnetke.
+
+
+
+
+ Glej
+
+
+
+
+ Nedavne kljuÄne besede
+
+
+
+
+ Nedavni kanali
+
+
+
+
+ Na razpolago je nova razliÄica %1. Prosim <a href='%2'>posodobite na razliÄico %3</a>
+
+
+
+
+ Namestite se udobno
+
+
+
+ Video
+
+
+
+ Za %1 ni mogoÄe pridobiti video pretoka
+
+
+
+
+ Napaka omrežja: %1 od %2
+
+
+
\ No newline at end of file
diff --git a/locale/sv_SE.ts b/locale/sv_SE.ts
index 1c7e3d3..1bfa349 100644
--- a/locale/sv_SE.ts
+++ b/locale/sv_SE.ts
@@ -177,7 +177,7 @@
-
+ Hämtar till: %1
@@ -461,7 +461,7 @@
- Mute volym
+ Volym av
@@ -692,32 +692,32 @@
-
+ Färdig
-
+ Stoppad
-
+ Stoppa nedladdning
-
+ Visa i %1
-
+ Ãppna föregÃ¥ende folder
-
+ Omstarta nedladdning
@@ -725,7 +725,7 @@
-
+ Sök
@@ -733,58 +733,58 @@
-
+ Välkommen till <a href='%1'>%2</a>,
-
+ Skaffa den kompletta versionen
"Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
-
+ Ange
-
+ ett sökord
-
+ en kanal
-
+ för att börja titta på video.
-
+ Titta
-
+ Senaste sökord
-
+ Senaste kanaler
-
+ En ny version av %1 finns tillgänglig. Vänligen <a href='%2'>uppdatera till version %3</a>
-
+ Gör dig själv bekväm
@@ -792,12 +792,12 @@
-
+ Kan inte få videoström för %1
-
+ Nätverks fel: %1 för %2
\ No newline at end of file
diff --git a/locale/th.ts b/locale/th.ts
new file mode 100644
index 0000000..012d0f6
--- /dev/null
+++ b/locale/th.ts
@@ -0,0 +1,803 @@
+
+UTF-8
+
+ AboutView
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClearButton
+
+
+
+
+
+
+
+ DownloadItem
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadManager
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadSettings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DownloadView
+
+
+
+
+
+
+
+
+ GlobalShortcuts
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ListModel
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LoadingWidget
+
+
+
+
+
+
+
+ MainWindow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MediaView
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NetworkAccess
+
+
+
+
+
+
+
+ PrettyItemDelegate
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SearchLineEdit
+
+
+
+
+
+
+
+ SearchView
+
+
+
+
+
+
+
+
+
+
+
+
+
+ "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Video
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/minitube.pro b/minitube.pro
index 3717fe6..86ed9f3 100644
--- a/minitube.pro
+++ b/minitube.pro
@@ -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)
diff --git a/src/AboutView.cpp b/src/AboutView.cpp
index 7b02adf..1725ca8 100644
--- a/src/AboutView.cpp
+++ b/src/AboutView.cpp
@@ -17,7 +17,7 @@ AboutView::AboutView(QWidget *parent) : QWidget(parent) {
layout->setSpacing(30);
aboutlayout->addLayout(layout);
- QString info = "" + QString(Constants::APP_NAME) + "
"
+ QString info = "" + QString(Constants::APP_NAME) + "
"
"" + tr("There's life outside the browser!") + "
"
"" + tr("Version %1").arg(Constants::VERSION) + "
"
+ QString("%1
").arg(Constants::WEBSITE) +
@@ -35,33 +35,10 @@ AboutView::AboutView(QWidget *parent) : QWidget(parent) {
+ "
" + tr("HTTP proxy support contributed by %1.").arg("Kiwamu Okabe")
+ "
"
- "" + 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)"
- ) + "
"
+ "" + tr("Translated by the cool people at %1")
+ .arg("Transifex")
+ + "
"
+
#if !defined(APP_MAC) && !defined(APP_WIN)
"" + tr("Released under the GNU General Public License")
.arg("http://www.gnu.org/licenses/gpl.html") + "
"
@@ -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
+}
diff --git a/src/AboutView.h b/src/AboutView.h
index d411733..8170380 100644
--- a/src/AboutView.h
+++ b/src/AboutView.h
@@ -22,5 +22,8 @@ public:
return metadata;
}
+protected:
+ void paintEvent(QPaintEvent *);
+
};
#endif
diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp
index a8c1461..6da09fd 100644
--- a/src/MainWindow.cpp
+++ b/src/MainWindow.cpp
@@ -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 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 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);
+ }
+}
diff --git a/src/MainWindow.h b/src/MainWindow.h
index ec872e0..e56109f 100644
--- a/src/MainWindow.h
+++ b/src/MainWindow.h
@@ -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);
diff --git a/src/MediaView.cpp b/src/MediaView.cpp
index 66fc5ec..d41c69e 100644
--- a/src/MediaView.cpp
+++ b/src/MediaView.cpp
@@ -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...
}
diff --git a/src/SearchView.cpp b/src/SearchView.cpp
index bdb20e1..11f86d0 100644
--- a/src/SearchView.cpp
+++ b/src/SearchView.cpp
@@ -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);
diff --git a/src/downloaditem.cpp b/src/downloaditem.cpp
index 1f9ca80..36652f6 100644
--- a/src/downloaditem.cpp
+++ b/src/downloaditem.cpp
@@ -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;
diff --git a/src/searchlineedit.cpp b/src/searchlineedit.cpp
index e63fbd9..65da3c5 100644
--- a/src/searchlineedit.cpp
+++ b/src/searchlineedit.cpp
@@ -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));
diff --git a/src/video.cpp b/src/video.cpp
index 545c298..d414990 100644
--- a/src/video.cpp
+++ b/src/video.cpp
@@ -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 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;
diff --git a/src/youtubesearch.cpp b/src/youtubesearch.cpp
index a57b7c2..edb0dd1 100644
--- a/src/youtubesearch.cpp
+++ b/src/youtubesearch.cpp
@@ -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