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/?p=minitube;a=commitdiff_plain;h=63b7586c1282acfb82a9b1971320052d6ee0a707 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 + + + There's life outside the browser! + Der findes liv udenfor browseren! + + + + Version %1 + Version %1 + + + + %1 is Free Software but its development takes precious time. + %1 er fri software, men udviklingen tager værdifuld tid. + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + Venligst <a href='%1'>doner</a> for at støtte den forsatte udvikling af %2. + + + + Report bugs and send in your ideas to %1 + Reporter fejl og send dine idéer til %1 + + + + Icon designed by %1. + Ikon designet af %1. + + + + Compact mode contributed by %1. + Kompakt tilstand bidraget af %1. + + + + HTTP proxy support contributed by %1. + HTTP proxy-understøttelse bidraget af %1. + + + + Translated by %1 + Oversat af %1 + + + + Released under the <a href='%1'>GNU General Public License</a> + Frigivet under <a href='%1'>GNU General Public License</a> + + + + &Close + &Luk + + + + About + Om + + + + What you always wanted to know about %1 and never dared to ask + Hvad du altid har ønsket at vide om %1 og aldrig turde spørge om + + + + ClearButton + + + Clear + Fjern + + + + DownloadItem + + + bytes + bytes + + + + KB + KB + + + + MB + MB + + + + bytes/sec + bytes/sek + + + + KB/sec + KB/sek + + + + MB/sec + MB/sek + + + + seconds + sekunder + + + + minutes + minutter + + + + %4 %5 remaining + %4 %5 mangler + + + + DownloadManager + + + This is just the demo version of %1. + Dette er kun demoversionen af %1. + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + Det kan kun hente videoer kortere end %1 minut, så du kan teste downloadfunktionaliteten. + + + + Continue + Forsæt + + + + Get the full version + Hent den fulde version + + + + %n Download(s) + %n Download(s)%n Download(s) + + + + DownloadSettings + + + Change location... + Skift placering... + + + + Choose the download location + Vælg placering til downloads + + + + Download location changed. + Downloadplacering ændret. + + + + Current downloads will still go in the previous location. + Nuværende downloads vil stadig blive glemt i forrige placering. + + + + Downloading to: %1 + Downloader til: %1 + + + + DownloadView + + + + Downloads + Downloads + + + + GlobalShortcuts + + + Play + Afspil + + + + Pause + Pause + + + + Play/Pause + Afspil/Pause + + + + Stop + Stop + + + + Stop playing after current track + Stop afspilning efter det aktuelle spor + + + + Next track + Næste spor + + + + Previous track + Forrige spor + + + + Increase volume + Skru op + + + + Decrease volume + Skru ned + + + + Mute + Slå lyden fra + + + + Seek forward + Søg fremad + + + + Seek backward + Søg baglæns + + + + ListModel + + + Searching... + Søger... + + + + Show %1 More + Vis %1 Mere + + + + No videos + Ingen videoer + + + + No more videos + Ikke flere videoer + + + + LoadingWidget + + + Error + Fejl + + + + MainWindow + + + &Stop + &Stop + + + + Stop playback and go back to the search view + Stop afspilning og gå tilbage til søgeoversigt + + + + S&kip + S&pring over + + + + Skip to the next video + Spring til næste video + + + + + &Pause + &Pause + + + + + Pause playback + Pause afspilning + + + + + &Full Screen + &Fuldskærm + + + + Go full screen + Vis i fuldskærm + + + + &Compact mode + &Kompakt tilstand + + + + Hide the playlist and the toolbar + Skjul afspilningslisten og værktøjslinjen + + + + Open the &YouTube page + Åbn &YouTube-siden + + + + Go to the YouTube video page and pause playback + Gå til YouTube-videosiden og pause afspilningen + + + + Copy the YouTube &link + Kopier YouTube &linket + + + + Copy the current video YouTube link to the clipboard + Kopier det aktuelle YouTube-videolink til udklipsholderen + + + + Copy the video stream &URL + Kopier videostrøm &Adresse + + + + Copy the current video stream URL to the clipboard + Kopier adressen for den aktuelle videostrøm til udklipsholderen + + + + &Remove + &Fjern + + + + Remove the selected videos from the playlist + Fjern de valgte videoer fra afspilningslisten + + + + Move &Up + Flyt &Op + + + + Move up the selected videos in the playlist + Flyt de valgte videoer i afspilningslisten op + + + + Move &Down + Flyt &Ned + + + + Move down the selected videos in the playlist + Flyt de valgte videoer i afspilningslisten ned + + + + &Clear recent searches + &Slet seneste søgninger + + + + Clear the search history. Cannot be undone. + Ryd søgeoversigt. Kan ikke fortrydes. + + + + &Quit + &Afslut + + + + Ctrl+Q + Ctrl + Q + + + + Bye + Farvel + + + + &Website + &Hjemmeside + + + + %1 on the Web + %1 på nettet + + + + Make a &donation + Lav en &donation + + + + Please support the continued development of %1 + Støt den forsatte udvikling af %1 + + + + &About + &Om + + + + Info about %1 + Info om %1 + + + + Search + Søg + + + + Mute volume + Slå lyden fra + + + + Ctrl+M + Ctrl + M + + + + + &Downloads + &Downloads + + + + Show details about video downloads + Vis deltaljer om video downloads + + + + &Download + &Download + + + + Download the current video + Download den aktuelle video + + + + &Application + &Program + + + + &Playlist + &Afspilningsliste + + + + &Video + &Video + + + + &Help + &Hjælp + + + + Press %1 to raise the volume, %2 to lower it + Tryk %1 for at skrue op for lyden og %2 for at skrue ned + + + + + Opening %1 + Åbner %1 + + + + Do you want to exit %1 with a download in progress? + Vil du afslutte %1 selvom et download er i gang? + + + + If you close %1 now, this download will be cancelled. + Hvis du lukker %1 nu vil dette download blive annulleret. + + + + Close and cancel download + Luk og annuller download + + + + Wait for download to finish + Vent til download er færdig + + + + Fatal error: %1 + Alvorlig fejl: %1 + + + + Error: %1 + Fejl: %1 + + + + &Play + &Afspil + + + + Resume playback + Genoptag afspilning + + + + Exit &Full Screen + Forlad &Fuldskærm + + + + Remaining time: %1 + Tilbageværende tid: %1 + + + + Volume at %1% + Lydniveau på %1% + + + + Volume is muted + Lyden er slået fra + + + + Volume is unmuted + Lyden er slået til + + + + Maximum video definition set to %1 + Maksimal videoopløsning sat til %1 + + + + Your privacy is now safe + Dit privatliv er nu sikret + + + + Downloads complete + Downloads færdig + + + + MediaView + + + Most relevant + Mest relevante + + + + Most recent + Senest tilføjede + + + + Most viewed + Mest sete + + + + You can now paste the YouTube link into another application + Du kan nu indsætte YouTube-linket i et andet program + + + + You can now paste the video stream URL into another application + Du kan nu indsætte adressen til videostrømmen i et andet program + + + + The link will be valid only for a limited time. + Linket vil kun være gyldigt i en begrænset periode. + + + + This is just the demo version of %1. + Dette er kun demoversionen af %1. + + + + It allows you to test the application and see if it works for you. + Det giver dig mulighed for at teste programmet og se om det virker for dig. + + + + Continue + Forsæt + + + + Get the full version + Hent den fulde version + + + + Downloading %1 + Downloader %1 + + + + NetworkAccess + + + Network error: %1 + Netværksfejl %1 + + + + PrettyItemDelegate + + + %1 views + %1 visninger + + + + %1 of %2 (%3) — %4 + %1 af %2 (%3) — %4 + + + + Preparing + Forbereder + + + + Failed + Fejlede + + + + Completed + Fuldført + + + + Stopped + Afbrudt + + + + Stop downloading + Afbryd download + + + + Show in %1 + Vis i %1 + + + + Open parent folder + Åbn overordnet mappe + + + + Restart downloading + Genstart download + + + + SearchLineEdit + + + Search + Søg + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + Velkommen til <a href='%1'>%2</a>, + + + + Get the full version + Hent den fulde version + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + Indtast + + + + a keyword + et nøgleord + + + + a channel + en kanal + + + + to start watching videos. + for at begynde at se video. + + + + Watch + Afspil + + + + Recent keywords + Seneste nøgleord + + + + Recent channels + Nyeste kanaler + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + En ny version af %1 er tilgængelig. Venligst <a href='%2'>opdater til version %3</a> + + + + Make yourself comfortable + Sæt dig godt til rette + + + + Video + + + Cannot get video stream for %1 + Kan ikke hente videostrøm for %1 + + + + Network error: %1 for %2 + 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 @@ There's life outside the browser! - Hay vida fuera del navegador! + Hay vida más allá del navegador! Version %1 - Versión-%1 + Versión %1 @@ -20,12 +20,12 @@ Please <a href='%1'>donate</a> to support the continued development of %2. - + Por favor, <a href='%1'>hacé una donación</a> para apoyar el desarrollo de %2. Report bugs and send in your ideas to %1 - Reportar errores y envia tus idea a %1 + Reportá errores y enviá tus idea a %1 @@ -35,12 +35,12 @@ Compact mode contributed by %1. - + El modo compacto es una contribución de %1. HTTP proxy support contributed by %1. - + El soporte para proxy HTTP es una contribución de %1. @@ -50,22 +50,22 @@ Released under the <a href='%1'>GNU General Public License</a> - Desarrollado bajo <a href='%1'>GNU General Public License</a> + Desarrollado bajo la <a href='%1'>Licencia Pública General de GNU</a> &Close - + &Cerrar About - Acerca + Acerca de What you always wanted to know about %1 and never dared to ask - 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 - + bytes KB - + KB MB - + MB bytes/sec - + bytes/sec KB/sec - + KB/sec MB/sec - + MB/sec seconds - + segundos minutes - + minutos %4 %5 remaining - + %4 %5 restante(s) @@ -129,27 +129,27 @@ This is just the demo version of %1. - + Esta es sólo una versión de demostración de %1. It can only download videos shorter than %1 minutes so you can test the download functionality. - + Sólo se pueden bajar videos de menos de %1 minutos, para probar la funcionalidad de descarga. Continue - + Continuar Get the full version - + Conseguí la versión completa %n Download(s) - + %n Descarga(s)%n Descarga(s) @@ -157,27 +157,27 @@ Change location... - + Cambiar destino... Choose the download location - + Elegir el destino de la descarga Download location changed. - + Destino de la descarga cambiado. Current downloads will still go in the previous location. - + Las descargas en curso van a seguir bajándose al destino anterior. Downloading to: %1 - + Bajando a: %1 @@ -186,7 +186,7 @@ Downloads - + Descargas @@ -194,62 +194,62 @@ Play - + Play Pause - + Pausa Play/Pause - + Play/Pausa Stop - + Detener Stop playing after current track - + Detener luego de la pista actual Next track - + Pista siguiente Previous track - + Pista previa Increase volume - + Subir volumen Decrease volume - + Bajar volumen Mute - + Mudo Seek forward - + Avanzar rápido Seek backward - + Retroceder rápido @@ -267,12 +267,12 @@ No videos - No videos + Sin videos No more videos - No más videos + No hay más videos @@ -280,7 +280,7 @@ Error - + Error @@ -288,12 +288,12 @@ &Stop - &Parar + &Detener Stop playback and go back to the search view - Parar + Detener y volver a la búsqueda @@ -303,7 +303,7 @@ Skip to the next video - Siguiente + Siguiente video @@ -331,42 +331,42 @@ &Compact mode - + &Modo compacto Hide the playlist and the toolbar - + Esconder la lista de reproducción y la barra de herramientas Open the &YouTube page - + Abrir la página &YouTube Go to the YouTube video page and pause playback - + Ir al video en YouTube y pausar la reproducción Copy the YouTube &link - + Copiar el &link de YouTube Copy the current video YouTube link to the clipboard - + Copiar el link de YouTube del video al portapapeles Copy the video stream &URL - + Copiar la &URL del stream del video Copy the current video stream URL to the clipboard - + Copiar la &URL del stream del video al portapapeles @@ -376,37 +376,37 @@ Remove the selected videos from the playlist - Borrar + Borrar los videos seleccionados de la lista Move &Up - &Arriba + Mover para &arriba Move up the selected videos in the playlist - Arriba + Mover para arriba los videos seleccionados Move &Down - &Abajo + Mover para &abajo Move down the selected videos in the playlist - Abajo + Mover para abajo los videos seleccionados &Clear recent searches - + &Eliminar las búsquedas recientes Clear the search history. Cannot be undone. - + Eliminar el historial de búsqueda. No se puede deshacer. @@ -416,12 +416,12 @@ Ctrl+Q - + Ctrl+Q Bye - Adiós + Chau @@ -431,68 +431,68 @@ %1 on the Web - + %1 en la Web Make a &donation - + Hacer una &donación Please support the continued development of %1 - Por favor apoyo el desarrollo continuo de-%1 + Apoyá el desarrollo de %1 &About - &Acerca + &Acerca de Info about %1 - Acercá de-%1 + Información sobre %1 Search - + Buscar Mute volume - + Silenciar volumen Ctrl+M - + Ctrl+M &Downloads - + &Descargas Show details about video downloads - + Mostrar detalles sobre la descarga de videos &Download - + &Bajar video Download the current video - + Bajar el video actual &Application - + &Programa @@ -512,53 +512,53 @@ Press %1 to raise the volume, %2 to lower it - + Con %1 subís el volumen, con %2 lo bajás Opening %1 - Abriendo-%1 + Abriendo %1 Do you want to exit %1 with a download in progress? - + Seguro que querés salir de %1 con una descarga en progreso? If you close %1 now, this download will be cancelled. - + Si cerrás %1 ahora, la descarga se va a cancelar. Close and cancel download - + Cerrar y cancelar descarga Wait for download to finish - + Esperar a que termine la descarga Fatal error: %1 - + Error fatal: %1 Error: %1 - + Error: %1 &Play - &Reproducir + &Play Resume playback - Reproducir + Continuar reproducción @@ -568,37 +568,37 @@ Remaining time: %1 - + Tiempo restante: %1 Volume at %1% - + Volumen al %1% Volume is muted - + Volumen silenciado Volume is unmuted - + Volumen activo Maximum video definition set to %1 - + Definición máxima de video seteada en %1 Your privacy is now safe - + Tu privacidad ahora está segura Downloads complete - + Descarga completa @@ -616,47 +616,47 @@ Most viewed - Más visitadas + Más visitados You can now paste the YouTube link into another application - + Ahora podés pegar el link de YouTube en otra aplicación You can now paste the video stream URL into another application - + Ahora podés pegar la URL del stream en otra aplicación The link will be valid only for a limited time. - + El link va a ser válido sólo por un tiempo limitado. This is just the demo version of %1. - + Esta es sólo la versión de demostración de %1. It allows you to test the application and see if it works for you. - + Te permite probar la aplicación y ver si te funciona. Continue - + Continuar Get the full version - + Conseguir la versión completa Downloading %1 - + Bajando %1 @@ -664,7 +664,7 @@ Network error: %1 - + Error de conexión: %1 @@ -672,52 +672,52 @@ %1 views - %1-visitas + %1 visitas %1 of %2 (%3) — %4 - + %1 de %2 (%3) — %4 Preparing - + Preparando Failed - + Falló Completed - + Completado Stopped - + Detenido Stop downloading - + Detener descarga Show in %1 - + Mostrar en %1 Open parent folder - + Abrir carpeta padre Restart downloading - + Reiniciar descarga @@ -733,38 +733,38 @@ Welcome to <a href='%1'>%2</a>, - Bienvenidos a <a href='%1'>%2</a> + Bienvenido a <a href='%1'>%2</a>, Get the full version - + Conseguir la versión completa Enter "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" - + Escribir a keyword - + una palabra clave a channel - + un canal to start watching videos. - + para empezar a ver videos. Watch - Viendo + Ver @@ -774,7 +774,7 @@ Recent channels - + Canales recientes @@ -792,12 +792,12 @@ Cannot get video stream for %1 - + No puedo obtener el stream de video de %1 Network error: %1 for %2 - + 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 + + + There's life outside the browser! + + + + + Version %1 + نسخه %1 + + + + %1 is Free Software but its development takes precious time. + + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + + + + + Report bugs and send in your ideas to %1 + + + + + Icon designed by %1. + شمایل طراحی شده توسط %1. + + + + Compact mode contributed by %1. + + + + + HTTP proxy support contributed by %1. + + + + + Translated by %1 + ترجمه شده توسط %1 + + + + Released under the <a href='%1'>GNU General Public License</a> + + + + + &Close + &بستن + + + + About + درباره + + + + What you always wanted to know about %1 and never dared to ask + + + + + ClearButton + + + Clear + پاکسازی + + + + DownloadItem + + + bytes + بایت + + + + KB + کیلوبایت + + + + MB + مگابایت + + + + bytes/sec + بایت بر ثانیه + + + + KB/sec + کیلوبایت بر ثانیه + + + + MB/sec + مگابایت بر ثانیه + + + + seconds + ثانیه + + + + minutes + دقیقه + + + + %4 %5 remaining + %4 %5 باقی مانده + + + + DownloadManager + + + This is just the demo version of %1. + + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + + + + + Continue + ادامه + + + + Get the full version + دریافت نسخه کامل + + + + %n Download(s) + %n بارگیری + + + + DownloadSettings + + + Change location... + تغییر مسیر... + + + + Choose the download location + انتخاب مسیر بارگیری + + + + Download location changed. + مسیر بارگیری تغییر کرد. + + + + Current downloads will still go in the previous location. + + + + + Downloading to: %1 + در حال بارگیری به: %1 + + + + DownloadView + + + + Downloads + بارگیری‌ها + + + + GlobalShortcuts + + + Play + شروع + + + + Pause + مکث + + + + Play/Pause + شروع/مکث + + + + Stop + توقف + + + + Stop playing after current track + توقف پخش پس از ترک فعلی + + + + Next track + ترک بعدی + + + + Previous track + ترک قبلی + + + + Increase volume + افزایش صدا + + + + Decrease volume + کاهش صدا + + + + Mute + بی‌صدا + + + + Seek forward + + + + + Seek backward + + + + + ListModel + + + Searching... + در حال جستجو... + + + + Show %1 More + نمایش %1 بشتر + + + + No videos + هیچ ویدئویی وجود ندارد + + + + No more videos + ویدئوی بیشتری وجود ندارد + + + + LoadingWidget + + + Error + خطا + + + + MainWindow + + + &Stop + &توقف + + + + Stop playback and go back to the search view + + + + + S&kip + &رد کردن + + + + Skip to the next video + رد کردن و رفتن به ویدئوی بعدی + + + + + &Pause + &مکث + + + + + Pause playback + + + + + + &Full Screen + &تمام صفحه + + + + Go full screen + + + + + &Compact mode + حالت &فشرده + + + + Hide the playlist and the toolbar + + + + + Open the &YouTube page + + + + + Go to the YouTube video page and pause playback + + + + + Copy the YouTube &link + + + + + Copy the current video YouTube link to the clipboard + + + + + Copy the video stream &URL + + + + + Copy the current video stream URL to the clipboard + + + + + &Remove + &حذف + + + + Remove the selected videos from the playlist + + + + + Move &Up + + + + + Move up the selected videos in the playlist + + + + + Move &Down + + + + + Move down the selected videos in the playlist + + + + + &Clear recent searches + + + + + Clear the search history. Cannot be undone. + + + + + &Quit + &خروج + + + + Ctrl+Q + + + + + Bye + خداحافظ + + + + &Website + &درباره + + + + %1 on the Web + + + + + Make a &donation + + + + + Please support the continued development of %1 + + + + + &About + + + + + Info about %1 + + + + + Search + جستجو + + + + Mute volume + + + + + Ctrl+M + + + + + + &Downloads + + + + + Show details about video downloads + + + + + &Download + + + + + Download the current video + + + + + &Application + + + + + &Playlist + + + + + &Video + + + + + &Help + + + + + Press %1 to raise the volume, %2 to lower it + + + + + + Opening %1 + + + + + Do you want to exit %1 with a download in progress? + + + + + If you close %1 now, this download will be cancelled. + + + + + Close and cancel download + + + + + Wait for download to finish + + + + + Fatal error: %1 + + + + + Error: %1 + + + + + &Play + + + + + Resume playback + + + + + Exit &Full Screen + + + + + Remaining time: %1 + + + + + Volume at %1% + + + + + Volume is muted + + + + + Volume is unmuted + + + + + Maximum video definition set to %1 + + + + + Your privacy is now safe + + + + + Downloads complete + + + + + MediaView + + + Most relevant + + + + + Most recent + + + + + Most viewed + + + + + You can now paste the YouTube link into another application + + + + + You can now paste the video stream URL into another application + + + + + The link will be valid only for a limited time. + + + + + This is just the demo version of %1. + + + + + It allows you to test the application and see if it works for you. + + + + + Continue + + + + + Get the full version + + + + + Downloading %1 + + + + + NetworkAccess + + + Network error: %1 + + + + + PrettyItemDelegate + + + %1 views + + + + + %1 of %2 (%3) — %4 + + + + + Preparing + + + + + Failed + + + + + Completed + + + + + Stopped + + + + + Stop downloading + + + + + Show in %1 + + + + + Open parent folder + + + + + Restart downloading + + + + + SearchLineEdit + + + Search + + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + + + + + Get the full version + + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + + + + + a keyword + + + + + a channel + + + + + to start watching videos. + + + + + Watch + + + + + Recent keywords + + + + + Recent channels + + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + + + + + Make yourself comfortable + + + + + Video + + + Cannot get video stream for %1 + + + + + Network error: %1 for %2 + + + + \ 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 + + + There's life outside the browser! + A böngészőn túl is van élet! + + + + Version %1 + Verziószám: %1 + + + + %1 is Free Software but its development takes precious time. + A %1 egy ingyenes szoftver, de a fejlesztése rengeteg időt felemészt és az idő pénz. + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + + + + + Report bugs and send in your ideas to %1 + Hibajelentéseid, ötleteid a %1 címre küldheted. + + + + Icon designed by %1. + Az ikont %1 tervezte. + + + + Compact mode contributed by %1. + A kompakt módot %1 tervezte. + + + + HTTP proxy support contributed by %1. + A HTTP porxy támogatója: %1 + + + + Translated by %1 + Fordította: %1 + + + + Released under the <a href='%1'>GNU General Public License</a> + A program <a href='%1'>GNU General Public License</a> alatt lett kiadva + + + + &Close + &Bezárás + + + + About + Névjegy + + + + What you always wanted to know about %1 and never dared to ask + + + + + ClearButton + + + Clear + + + + + DownloadItem + + + bytes + + + + + KB + + + + + MB + + + + + bytes/sec + + + + + KB/sec + + + + + MB/sec + + + + + seconds + + + + + minutes + + + + + %4 %5 remaining + + + + + DownloadManager + + + This is just the demo version of %1. + + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + + + + + Continue + + + + + Get the full version + + + + + %n Download(s) + + + + + DownloadSettings + + + Change location... + + + + + Choose the download location + + + + + Download location changed. + + + + + Current downloads will still go in the previous location. + + + + + Downloading to: %1 + + + + + DownloadView + + + + Downloads + + + + + GlobalShortcuts + + + Play + + + + + Pause + + + + + Play/Pause + + + + + Stop + + + + + Stop playing after current track + + + + + Next track + + + + + Previous track + + + + + Increase volume + + + + + Decrease volume + + + + + Mute + + + + + Seek forward + + + + + Seek backward + + + + + ListModel + + + Searching... + + + + + Show %1 More + + + + + No videos + + + + + No more videos + + + + + LoadingWidget + + + Error + + + + + MainWindow + + + &Stop + + + + + Stop playback and go back to the search view + + + + + S&kip + + + + + Skip to the next video + + + + + + &Pause + + + + + + Pause playback + + + + + + &Full Screen + + + + + Go full screen + + + + + &Compact mode + + + + + Hide the playlist and the toolbar + + + + + Open the &YouTube page + + + + + Go to the YouTube video page and pause playback + + + + + Copy the YouTube &link + + + + + Copy the current video YouTube link to the clipboard + + + + + Copy the video stream &URL + + + + + Copy the current video stream URL to the clipboard + + + + + &Remove + + + + + Remove the selected videos from the playlist + + + + + Move &Up + + + + + Move up the selected videos in the playlist + + + + + Move &Down + + + + + Move down the selected videos in the playlist + + + + + &Clear recent searches + + + + + Clear the search history. Cannot be undone. + + + + + &Quit + + + + + Ctrl+Q + + + + + Bye + + + + + &Website + + + + + %1 on the Web + + + + + Make a &donation + + + + + Please support the continued development of %1 + + + + + &About + + + + + Info about %1 + + + + + Search + + + + + Mute volume + + + + + Ctrl+M + + + + + + &Downloads + + + + + Show details about video downloads + + + + + &Download + + + + + Download the current video + + + + + &Application + + + + + &Playlist + + + + + &Video + + + + + &Help + + + + + Press %1 to raise the volume, %2 to lower it + + + + + + Opening %1 + + + + + Do you want to exit %1 with a download in progress? + + + + + If you close %1 now, this download will be cancelled. + + + + + Close and cancel download + + + + + Wait for download to finish + + + + + Fatal error: %1 + + + + + Error: %1 + + + + + &Play + + + + + Resume playback + + + + + Exit &Full Screen + + + + + Remaining time: %1 + + + + + Volume at %1% + + + + + Volume is muted + + + + + Volume is unmuted + + + + + Maximum video definition set to %1 + + + + + Your privacy is now safe + + + + + Downloads complete + + + + + MediaView + + + Most relevant + + + + + Most recent + + + + + Most viewed + + + + + You can now paste the YouTube link into another application + + + + + You can now paste the video stream URL into another application + + + + + The link will be valid only for a limited time. + + + + + This is just the demo version of %1. + + + + + It allows you to test the application and see if it works for you. + + + + + Continue + + + + + Get the full version + + + + + Downloading %1 + + + + + NetworkAccess + + + Network error: %1 + + + + + PrettyItemDelegate + + + %1 views + + + + + %1 of %2 (%3) — %4 + + + + + Preparing + + + + + Failed + + + + + Completed + + + + + Stopped + + + + + Stop downloading + + + + + Show in %1 + + + + + Open parent folder + + + + + Restart downloading + + + + + SearchLineEdit + + + Search + + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + + + + + Get the full version + + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + + + + + a keyword + + + + + a channel + + + + + to start watching videos. + + + + + Watch + + + + + Recent keywords + + + + + Recent channels + + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + + + + + Make yourself comfortable + + + + + Video + + + Cannot get video stream for %1 + + + + + Network error: %1 for %2 + + + + \ 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 + + + There's life outside the browser! + Il ha vita post del navigator! + + + + Version %1 + Version %1 + + + + %1 is Free Software but its development takes precious time. + %1 es Software Libere ma su disveloppamento require tempore preciose. + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + + + + + Report bugs and send in your ideas to %1 + + + + + Icon designed by %1. + Icone designato per %1. + + + + Compact mode contributed by %1. + + + + + HTTP proxy support contributed by %1. + + + + + Translated by %1 + Traducito per %1 + + + + Released under the <a href='%1'>GNU General Public License</a> + + + + + &Close + &Claude + + + + About + Circa + + + + What you always wanted to know about %1 and never dared to ask + + + + + ClearButton + + + Clear + Netta + + + + DownloadItem + + + bytes + bytes + + + + KB + KB + + + + MB + MB + + + + bytes/sec + bytes/sec + + + + KB/sec + KB/sec + + + + MB/sec + MB/sec + + + + seconds + secundas + + + + minutes + minutas + + + + %4 %5 remaining + %4 %5 restante + + + + DownloadManager + + + This is just the demo version of %1. + Iste es solmente le version demo de %1. + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + + + + + Continue + Continuar + + + + Get the full version + Prender le version complete + + + + %n Download(s) + %n discarga%n discargas + + + + DownloadSettings + + + Change location... + + + + + Choose the download location + + + + + Download location changed. + + + + + Current downloads will still go in the previous location. + + + + + Downloading to: %1 + Discargando a %1 + + + + DownloadView + + + + Downloads + Discargas + + + + GlobalShortcuts + + + Play + Reproducer + + + + Pause + Pausa + + + + Play/Pause + Reproducer/Pausa + + + + Stop + Stoppar + + + + Stop playing after current track + Stoppar le reproduction post le pista actual + + + + Next track + + + + + Previous track + + + + + Increase volume + + + + + Decrease volume + + + + + Mute + + + + + Seek forward + + + + + Seek backward + + + + + ListModel + + + Searching... + + + + + Show %1 More + + + + + No videos + + + + + No more videos + + + + + LoadingWidget + + + Error + Error + + + + MainWindow + + + &Stop + + + + + Stop playback and go back to the search view + + + + + S&kip + + + + + Skip to the next video + + + + + + &Pause + + + + + + Pause playback + + + + + + &Full Screen + + + + + Go full screen + + + + + &Compact mode + + + + + Hide the playlist and the toolbar + + + + + Open the &YouTube page + + + + + Go to the YouTube video page and pause playback + + + + + Copy the YouTube &link + + + + + Copy the current video YouTube link to the clipboard + + + + + Copy the video stream &URL + + + + + Copy the current video stream URL to the clipboard + + + + + &Remove + + + + + Remove the selected videos from the playlist + + + + + Move &Up + + + + + Move up the selected videos in the playlist + + + + + Move &Down + + + + + Move down the selected videos in the playlist + + + + + &Clear recent searches + + + + + Clear the search history. Cannot be undone. + + + + + &Quit + &Quitar + + + + Ctrl+Q + + + + + Bye + Adeo + + + + &Website + Sito &Web + + + + %1 on the Web + + + + + Make a &donation + Facer une donation + + + + Please support the continued development of %1 + + + + + &About + Circ&a + + + + Info about %1 + Info re %1 + + + + Search + Cercar + + + + Mute volume + + + + + Ctrl+M + Ctrl+M + + + + + &Downloads + &Discargas + + + + Show details about video downloads + + + + + &Download + &Discarga + + + + Download the current video + Discarga le video actual + + + + &Application + + + + + &Playlist + + + + + &Video + + + + + &Help + &Adjuta + + + + Press %1 to raise the volume, %2 to lower it + + + + + + Opening %1 + + + + + Do you want to exit %1 with a download in progress? + Tu vole sortir de %1 con une discarga in progresso? + + + + If you close %1 now, this download will be cancelled. + + + + + Close and cancel download + Clauder e cancellar le discarga + + + + Wait for download to finish + + + + + Fatal error: %1 + Error fatal: %1 + + + + Error: %1 + Error: %1 + + + + &Play + Re&producer + + + + Resume playback + + + + + Exit &Full Screen + + + + + Remaining time: %1 + Tempore restante: %1 + + + + Volume at %1% + + + + + Volume is muted + + + + + Volume is unmuted + + + + + Maximum video definition set to %1 + + + + + Your privacy is now safe + Tu intimitate is secur ora mesmo + + + + Downloads complete + Discargas complete + + + + MediaView + + + Most relevant + Le plus apposite + + + + Most recent + Le plus recente + + + + Most viewed + + + + + You can now paste the YouTube link into another application + Ora tu pote collar le ligamine de YouTube in altere application + + + + You can now paste the video stream URL into another application + Ora tu pote collar le URL del video in fluxo in altere application + + + + The link will be valid only for a limited time. + Le ligamine essera valide solmente per un tempore limitate. + + + + This is just the demo version of %1. + Iste es solmente le version demo de %1. + + + + It allows you to test the application and see if it works for you. + + + + + Continue + Continuar + + + + Get the full version + Procura le version complete + + + + Downloading %1 + Discargando %1 + + + + NetworkAccess + + + Network error: %1 + Error de rete: %1 + + + + PrettyItemDelegate + + + %1 views + %1 vistas + + + + %1 of %2 (%3) — %4 + %1 de %2 (%3) — %4 + + + + Preparing + + + + + Failed + + + + + Completed + + + + + Stopped + + + + + Stop downloading + + + + + Show in %1 + Monstrar in %1 + + + + Open parent folder + + + + + Restart downloading + + + + + SearchLineEdit + + + Search + Cerca + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + Benvenite a <a href='%1'>%2</a>, + + + + Get the full version + Procura le version complete + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + Inscriber + + + + a keyword + una parola clave + + + + a channel + un canal + + + + to start watching videos. + + + + + Watch + Specta + + + + Recent keywords + Parolas clave recente + + + + Recent channels + Canales recente + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + Une nove version de %1 es disponibile. Per favor <a href='%2'>renova a le version %3</a> + + + + Make yourself comfortable + Face te ipse confortabile + + + + Video + + + Cannot get video stream for %1 + Non pote procurar el fluxo de video pro %1 + + + + Network error: %1 for %2 + 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 + + + There's life outside the browser! + + + + + Version %1 + + + + + %1 is Free Software but its development takes precious time. + + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + + + + + Report bugs and send in your ideas to %1 + + + + + Icon designed by %1. + + + + + Compact mode contributed by %1. + + + + + HTTP proxy support contributed by %1. + + + + + Translated by %1 + + + + + Released under the <a href='%1'>GNU General Public License</a> + + + + + &Close + + + + + About + + + + + What you always wanted to know about %1 and never dared to ask + + + + + ClearButton + + + Clear + + + + + DownloadItem + + + bytes + + + + + KB + + + + + MB + + + + + bytes/sec + + + + + KB/sec + + + + + MB/sec + + + + + seconds + + + + + minutes + + + + + %4 %5 remaining + + + + + DownloadManager + + + This is just the demo version of %1. + + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + + + + + Continue + + + + + Get the full version + + + + + %n Download(s) + + + + + DownloadSettings + + + Change location... + + + + + Choose the download location + + + + + Download location changed. + + + + + Current downloads will still go in the previous location. + + + + + Downloading to: %1 + + + + + DownloadView + + + + Downloads + + + + + GlobalShortcuts + + + Play + + + + + Pause + + + + + Play/Pause + + + + + Stop + + + + + Stop playing after current track + + + + + Next track + + + + + Previous track + + + + + Increase volume + + + + + Decrease volume + + + + + Mute + + + + + Seek forward + + + + + Seek backward + + + + + ListModel + + + Searching... + + + + + Show %1 More + + + + + No videos + + + + + No more videos + + + + + LoadingWidget + + + Error + + + + + MainWindow + + + &Stop + + + + + Stop playback and go back to the search view + + + + + S&kip + + + + + Skip to the next video + + + + + + &Pause + + + + + + Pause playback + + + + + + &Full Screen + + + + + Go full screen + + + + + &Compact mode + + + + + Hide the playlist and the toolbar + + + + + Open the &YouTube page + + + + + Go to the YouTube video page and pause playback + + + + + Copy the YouTube &link + + + + + Copy the current video YouTube link to the clipboard + + + + + Copy the video stream &URL + + + + + Copy the current video stream URL to the clipboard + + + + + &Remove + + + + + Remove the selected videos from the playlist + + + + + Move &Up + + + + + Move up the selected videos in the playlist + + + + + Move &Down + + + + + Move down the selected videos in the playlist + + + + + &Clear recent searches + + + + + Clear the search history. Cannot be undone. + + + + + &Quit + + + + + Ctrl+Q + + + + + Bye + + + + + &Website + + + + + %1 on the Web + + + + + Make a &donation + + + + + Please support the continued development of %1 + + + + + &About + + + + + Info about %1 + + + + + Search + + + + + Mute volume + + + + + Ctrl+M + + + + + + &Downloads + + + + + Show details about video downloads + + + + + &Download + + + + + Download the current video + + + + + &Application + + + + + &Playlist + + + + + &Video + + + + + &Help + + + + + Press %1 to raise the volume, %2 to lower it + + + + + + Opening %1 + + + + + Do you want to exit %1 with a download in progress? + + + + + If you close %1 now, this download will be cancelled. + + + + + Close and cancel download + + + + + Wait for download to finish + + + + + Fatal error: %1 + + + + + Error: %1 + + + + + &Play + + + + + Resume playback + + + + + Exit &Full Screen + + + + + Remaining time: %1 + + + + + Volume at %1% + + + + + Volume is muted + + + + + Volume is unmuted + + + + + Maximum video definition set to %1 + + + + + Your privacy is now safe + + + + + Downloads complete + + + + + MediaView + + + Most relevant + + + + + Most recent + + + + + Most viewed + + + + + You can now paste the YouTube link into another application + + + + + You can now paste the video stream URL into another application + + + + + The link will be valid only for a limited time. + + + + + This is just the demo version of %1. + + + + + It allows you to test the application and see if it works for you. + + + + + Continue + + + + + Get the full version + + + + + Downloading %1 + + + + + NetworkAccess + + + Network error: %1 + + + + + PrettyItemDelegate + + + %1 views + + + + + %1 of %2 (%3) — %4 + + + + + Preparing + + + + + Failed + + + + + Completed + + + + + Stopped + + + + + Stop downloading + + + + + Show in %1 + + + + + Open parent folder + + + + + Restart downloading + + + + + SearchLineEdit + + + Search + + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + + + + + Get the full version + + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + + + + + a keyword + + + + + a channel + + + + + to start watching videos. + + + + + Watch + + + + + Recent keywords + + + + + Recent channels + + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + + + + + Make yourself comfortable + + + + + Video + + + Cannot get video stream for %1 + + + + + Network error: %1 for %2 + + + + \ 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 is Free Software but its development takes precious time. - %1 er Fri Programvare men utviklingen tar verdifull tid. + %1 er gratis programvare, men utviklingen bruker dyrebar tid. Please <a href='%1'>donate</a> to support the continued development of %2. - 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. Report bugs and send in your ideas to %1 - Rapporter bugs og send inn dine ideer til %1 + Rapporter feil og send inn dine ideer til %1 Icon designed by %1. - Ikon er designet av %1. + Ikonet er designet av %1. Compact mode contributed by %1. - Kompakt-Visning er utviklet av %1. + Kompaktmodus er utviklet av %1. @@ -50,7 +50,7 @@ Released under the <a href='%1'>GNU General Public License</a> - Sluppet under <a href='%1'>GNU General Public License</a> + Utgitt under <a href='%1'>GNU General Public License</a> @@ -65,7 +65,7 @@ What you always wanted to know about %1 and never dared to ask - 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 - + bytes KB - + KB MB - + MB bytes/sec - + bytes/sek KB/sec - + KB/sek MB/sec - + MB/sek seconds - + sekunder minutes - + minutter %4 %5 remaining - + %4 %5 gjenstår @@ -129,27 +129,27 @@ This is just the demo version of %1. - + Dette er kun demo-versjonen av %1. It can only download videos shorter than %1 minutes so you can test the download functionality. - + Den kan kun laste ned videoer på under %1 minutter, for at du skal kunne prøve ut nedlastingsfunksjonen. Continue - + Fortsett Get the full version - + Kjøp fullversjonen %n Download(s) - + %n nedlasting%n nedlastinger @@ -157,27 +157,27 @@ Change location... - + Endre sted ... Choose the download location - + Velg nedlastingsmappe Download location changed. - + Nedlastingsmappe endret. Current downloads will still go in the previous location. - + Pågående nedlastinger vil bli lagret i den forrige mappen. Downloading to: %1 - + Laster ned til: %1 @@ -186,7 +186,7 @@ Downloads - + Nedlastinger @@ -194,62 +194,62 @@ Play - + Spill av Pause - + Pause Play/Pause - + Spill av/Pause Stop - + Stopp Stop playing after current track - + Stopp avspilling etter denne videoen. Next track - + Neste video Previous track - + Forrige video Increase volume - + Øk lydvolumet Decrease volume - + Senk lydvolumet Mute - + Lydløs Seek forward - + Søk forover Seek backward - + Søk bakover @@ -293,7 +293,7 @@ Stop playback and go back to the search view - Stopp avspilling og gå tilbake til dine søk + Stopp avspilling og gå tilbake til søkevisningen @@ -303,7 +303,7 @@ Skip to the next video - Hopp over neste video + Hopp til neste video @@ -331,7 +331,7 @@ &Compact mode - &Kompakt-Visning + &Kompaktvisning @@ -401,12 +401,12 @@ &Clear recent searches - + &fjern seneste søkehistorie Clear the search history. Cannot be undone. - Klarer søkehistorie. Kan ikke bli angert. + Fjern all søkehistorie. Kan ikke angres. @@ -421,7 +421,7 @@ Bye - Ha en fin dag + Farvel @@ -436,12 +436,12 @@ Make a &donation - Gjør en &donasjon + &donér Please support the continued development of %1 - Bidra til fortsatt utvikling av %1 + Vi håper du kan bidra til å fortsette arbeidet med utvikling av %1 @@ -461,7 +461,7 @@ Mute volume - Mute + Lydløs @@ -472,22 +472,22 @@ &Downloads - + &Nedlastinger Show details about video downloads - + Vis detaljer om nedlasting av video &Download - + &Nedlasting Download the current video - + Last ned denne videoen @@ -512,7 +512,7 @@ Press %1 to raise the volume, %2 to lower it - Trykk på %1 for å stille opp volum, %2 for å skru ned + Trykk på %1 for å øke lydvolumet, %2 for å senke @@ -523,22 +523,22 @@ Do you want to exit %1 with a download in progress? - + Vil du avslutte %1 mens nedlastinger pågår? If you close %1 now, this download will be cancelled. - + Vis du stenger %1 nå, vil nedlastingen bli avbrutt Close and cancel download - + Steng og avbryt nedlastingen Wait for download to finish - + Vent mens nedlastingen fullføres @@ -578,12 +578,12 @@ Volume is muted - Mute er på + Lydløst er på Volume is unmuted - Mute er av + Lydløst er av @@ -598,7 +598,7 @@ Downloads complete - + Nedlastinger fullført @@ -636,27 +636,27 @@ This is just the demo version of %1. - + Dette er kun demoversjonen av %1. It allows you to test the application and see if it works for you. - + Dette gir deg muligheten til å prøve ut applikasjonen og se om du den er noe for deg. Continue - + Fortsett Get the full version - + Kjøp fullversjonen Downloading %1 - + Nedlasting %1 @@ -677,47 +677,47 @@ %1 of %2 (%3) — %4 - + %1 av %2 (%3) — %4 Preparing - + Forbereder Failed - + Feilet Completed - + Fullført Stopped - + Stoppet Stop downloading - + Stop nedlasting Show in %1 - + Vis i %1 Open parent folder - + Åpne vertsmappen Restart downloading - + Start nedlastingen på nytt @@ -733,48 +733,48 @@ Welcome to <a href='%1'>%2</a>, - Velommen til <a href='%1'>%2</a>, + Velkommen til <a href='%1'>%2</a>, Get the full version - + Kjøpfullversjon Enter "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" - + Skriv a keyword - + ett nøkkelord a channel - + en kanal to start watching videos. - + for å begynne avspilling av video Watch - Se Film + Se Recent keywords - Aktuelle søkeord + Seneste søkeord Recent channels - + Seneste kanaler @@ -792,7 +792,7 @@ Cannot get video stream for %1 - + 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 + + + There's life outside the browser! + Zunaj brskalnika je življenje! + + + + Version %1 + Različica %1 + + + + %1 is Free Software but its development takes precious time. + %1 je Prosta Programska Oprema, a njen razvoj zahteva dragocen čas. + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + <a href='%1'>Darujte prosim</a> za podporo stalnemu razvoju %2. + + + + Report bugs and send in your ideas to %1 + Javite napake in pošljite svoje ideje %1 + + + + Icon designed by %1. + Ikone je izrisal %1. + + + + Compact mode contributed by %1. + Strnjeni način je prispeval %1. + + + + HTTP proxy support contributed by %1. + Podporo za posredniški strežnik HTTP je prispeval %1. + + + + Translated by %1 + Prevod: %1 + + + + Released under the <a href='%1'>GNU General Public License</a> + Izdano na podlagi licence <a href='%1'>GNU General Public License</a> + + + + &Close + &Zapri + + + + About + O programu + + + + What you always wanted to know about %1 and never dared to ask + Kar ste vedno želeli vedeti o %1 a si niste nikoli upali vprašati + + + + ClearButton + + + Clear + Počisti + + + + DownloadItem + + + bytes + byteov + + + + KB + KB + + + + MB + MB + + + + bytes/sec + byteov/sek + + + + KB/sec + KB/sek + + + + MB/sec + MB/sek + + + + seconds + sekund + + + + minutes + minut + + + + %4 %5 remaining + %4 %5 ostaja + + + + DownloadManager + + + This is just the demo version of %1. + To je samo preizkusna različica programa %1. + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + Prenese lahko samo posnetke krajše od %1 minut, da lahko preverite delvanje funkcije prenosa. + + + + Continue + Nadaljuj + + + + Get the full version + Pridobi popolno različico + + + + %n Download(s) + %n Prenos%n Prenosa%n Prenosi%n Prenosov + + + + DownloadSettings + + + Change location... + Sprememba mesta ... + + + + Choose the download location + Izberite mesto prenosa + + + + Download location changed. + Spremenili ste mesto prenosa. + + + + Current downloads will still go in the previous location. + Trenutni prenosi bodo še vedno šli v prejšnje mesto. + + + + Downloading to: %1 + Prenos v: %1 + + + + DownloadView + + + + Downloads + Prenosi + + + + GlobalShortcuts + + + Play + Predvajaj + + + + Pause + Pavza + + + + Play/Pause + Predvajaj/Pavza + + + + Stop + Ustavi + + + + Stop playing after current track + Ustavi predvajanje po trenutnem posnetku + + + + Next track + Naslednji posnetek + + + + Previous track + Prejšnji posnetek + + + + Increase volume + Povečaj glasnost + + + + Decrease volume + Zmanjšaj glasnost + + + + Mute + Nemo + + + + Seek forward + Išči naprej + + + + Seek backward + Išči nazaj + + + + ListModel + + + Searching... + Iskanje ... + + + + Show %1 More + Pokaži %1 več + + + + No videos + Nobenega videa + + + + No more videos + Nobenega videa več + + + + LoadingWidget + + + Error + Napaka + + + + MainWindow + + + &Stop + &Ustavi + + + + Stop playback and go back to the search view + Ustavi predvajanje in se vrni v iskalni pogled + + + + S&kip + Pres%koči + + + + Skip to the next video + Skoči na naslednji video + + + + + &Pause + &Pavza + + + + + Pause playback + Premor v predvajanju + + + + + &Full Screen + &Celozaslonski način + + + + Go full screen + Gre v celozaslonski način + + + + &Compact mode + &Strnjeni način + + + + Hide the playlist and the toolbar + Skrije predvajalni seznam in orodno vrstico + + + + Open the &YouTube page + Odpre stran &YouTube + + + + Go to the YouTube video page and pause playback + Gre na stran posnetka na YouTube in ustavi predvajanje + + + + Copy the YouTube &link + Kopiraj &povezavo YouTube + + + + Copy the current video YouTube link to the clipboard + Kopira povezavo YouTube trenutnega posnetka v odložišče + + + + Copy the video stream &URL + Kopiraj &URL video pretoka + + + + Copy the current video stream URL to the clipboard + Kopira URL trenutnega video pretoka v odložišče + + + + &Remove + Odst&rani + + + + Remove the selected videos from the playlist + Odstrani izbrani video iz predvajalnega seznama + + + + Move &Up + Premakni &gor + + + + Move up the selected videos in the playlist + Izbrani video premakne mesto više v predvajalnem seznamu + + + + Move &Down + Premakni &dol + + + + Move down the selected videos in the playlist + Izbrani video premakne mesto niže v predvajalnem seznamu + + + + &Clear recent searches + I&zbriši nedavno iskanje + + + + Clear the search history. Cannot be undone. + Izbriše zgodovino iskanje. Tega dejanja ni mogoče rayveljaviti. + + + + &Quit + &Zapri + + + + Ctrl+Q + Ctrl+Z + + + + Bye + Nasvidenje + + + + &Website + &Spletno mesto + + + + %1 on the Web + %1 na spletu + + + + Make a &donation + &Darujte + + + + Please support the continued development of %1 + Podprite prosim nadaljni razvoj programa %1 + + + + &About + &O programu + + + + Info about %1 + Informacije o %1 + + + + Search + Išči + + + + Mute volume + Nemo + + + + Ctrl+M + Ctrl+M + + + + + &Downloads + Pre&nosi + + + + Show details about video downloads + Pokaže podrobnosti o prenosih posnetkov + + + + &Download + Pre&nesi + + + + Download the current video + Prenesi trenutni posnetek + + + + &Application + &Aplikacija + + + + &Playlist + &Predvajalni seznam + + + + &Video + &Video + + + + &Help + P&omoč + + + + Press %1 to raise the volume, %2 to lower it + Pritisnite %1, da povišate glasnost in %2, da jo nižate + + + + + Opening %1 + Odpiranje %1 + + + + Do you want to exit %1 with a download in progress? + Ali res želite zapustiti %1 medtem, ko jeaktiven prenos? + + + + If you close %1 now, this download will be cancelled. + V primeru, da zdaj zaprete %1 bo ta prenos prekinjen. + + + + Close and cancel download + Zapri in prekliči prenose + + + + Wait for download to finish + Počakaj, da konča prenos. + + + + Fatal error: %1 + Usodna napaka: %1 + + + + Error: %1 + Napaka: %1 + + + + &Play + &Predvajaj + + + + Resume playback + Nadaljuj s predvajanjem + + + + Exit &Full Screen + Izhod iz &celozaslonskega načina + + + + Remaining time: %1 + Preostali čas: %1 + + + + Volume at %1% + Glasnost %1% + + + + Volume is muted + Glasnost je utišana + + + + Volume is unmuted + Glasnost je povrnjena + + + + Maximum video definition set to %1 + Najvišja ločljivost posnetkov je nastavljena na %1 + + + + Your privacy is now safe + Vaša zasebnost je zdaj varna + + + + Downloads complete + Prenosi so končani + + + + MediaView + + + Most relevant + Najbolj ustrezni + + + + Most recent + Najbolj novi + + + + Most viewed + Najbolj gledani + + + + You can now paste the YouTube link into another application + Zdaj lahko prilepite povezavo na YouTube v drugo aplikacijo + + + + You can now paste the video stream URL into another application + Zdaj lahko prilepite URL video pretoka v drugo aplikacijo + + + + The link will be valid only for a limited time. + Povezava bo delovala le za omejen čas. + + + + This is just the demo version of %1. + To je samo demo različica programa %1. + + + + It allows you to test the application and see if it works for you. + Dovoli vam testiranje aplikcaije in preverjanje delovanja, + + + + Continue + Nadaljuj + + + + Get the full version + Pridobi celotno različico + + + + Downloading %1 + Prenašanje %1 + + + + NetworkAccess + + + Network error: %1 + Napak omrežja: %1 + + + + PrettyItemDelegate + + + %1 views + %1 predvajanj + + + + %1 of %2 (%3) — %4 + %1 od %2 (%3) — %4 + + + + Preparing + Pripravljanje + + + + Failed + Neuspešno + + + + Completed + Dokončano + + + + Stopped + Ustavljeno + + + + Stop downloading + Ustavi prenos + + + + Show in %1 + Pokaži v %1 + + + + Open parent folder + Odpri nadrejeno mapo + + + + Restart downloading + Ponovno prenesi + + + + SearchLineEdit + + + Search + Išči + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + Pozdravljeni v <a href='%1'>%2</a>, + + + + Get the full version + Pridobi celotno različico + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + Vnesite + + + + a keyword + ključno besedo + + + + a channel + kanal + + + + to start watching videos. + in začnite gledati posnetke. + + + + Watch + Glej + + + + Recent keywords + Nedavne ključne besede + + + + Recent channels + Nedavni kanali + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + Na razpolago je nova različica %1. Prosim <a href='%2'>posodobite na različico %3</a> + + + + Make yourself comfortable + Namestite se udobno + + + + Video + + + Cannot get video stream for %1 + Za %1 ni mogoče pridobiti video pretoka + + + + Network error: %1 for %2 + 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 @@ Downloading to: %1 - + Hämtar till: %1 @@ -461,7 +461,7 @@ Mute volume - Mute volym + Volym av @@ -692,32 +692,32 @@ Completed - + Färdig Stopped - + Stoppad Stop downloading - + Stoppa nedladdning Show in %1 - + Visa i %1 Open parent folder - + Äppna föregående folder Restart downloading - + Omstarta nedladdning @@ -725,7 +725,7 @@ Search - + Sök @@ -733,58 +733,58 @@ Welcome to <a href='%1'>%2</a>, - + Välkommen till <a href='%1'>%2</a>, Get the full version - + Skaffa den kompletta versionen Enter "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" - + Ange a keyword - + ett sökord a channel - + en kanal to start watching videos. - + för att börja titta på video. Watch - + Titta Recent keywords - + Senaste sökord Recent channels - + Senaste kanaler A new version of %1 is available. Please <a href='%2'>update to version %3</a> - + En ny version av %1 finns tillgänglig. Vänligen <a href='%2'>uppdatera till version %3</a> Make yourself comfortable - + Gör dig själv bekväm @@ -792,12 +792,12 @@ Cannot get video stream for %1 - + Kan inte få videoström för %1 Network error: %1 for %2 - + 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 + + + There's life outside the browser! + + + + + Version %1 + + + + + %1 is Free Software but its development takes precious time. + + + + + Please <a href='%1'>donate</a> to support the continued development of %2. + + + + + Report bugs and send in your ideas to %1 + + + + + Icon designed by %1. + + + + + Compact mode contributed by %1. + + + + + HTTP proxy support contributed by %1. + + + + + Translated by %1 + + + + + Released under the <a href='%1'>GNU General Public License</a> + + + + + &Close + + + + + About + + + + + What you always wanted to know about %1 and never dared to ask + + + + + ClearButton + + + Clear + + + + + DownloadItem + + + bytes + + + + + KB + + + + + MB + + + + + bytes/sec + + + + + KB/sec + + + + + MB/sec + + + + + seconds + + + + + minutes + + + + + %4 %5 remaining + + + + + DownloadManager + + + This is just the demo version of %1. + + + + + It can only download videos shorter than %1 minutes so you can test the download functionality. + + + + + Continue + + + + + Get the full version + + + + + %n Download(s) + + + + + DownloadSettings + + + Change location... + + + + + Choose the download location + + + + + Download location changed. + + + + + Current downloads will still go in the previous location. + + + + + Downloading to: %1 + + + + + DownloadView + + + + Downloads + + + + + GlobalShortcuts + + + Play + + + + + Pause + + + + + Play/Pause + + + + + Stop + + + + + Stop playing after current track + + + + + Next track + + + + + Previous track + + + + + Increase volume + + + + + Decrease volume + + + + + Mute + + + + + Seek forward + + + + + Seek backward + + + + + ListModel + + + Searching... + + + + + Show %1 More + + + + + No videos + + + + + No more videos + + + + + LoadingWidget + + + Error + + + + + MainWindow + + + &Stop + + + + + Stop playback and go back to the search view + + + + + S&kip + + + + + Skip to the next video + + + + + + &Pause + + + + + + Pause playback + + + + + + &Full Screen + + + + + Go full screen + + + + + &Compact mode + + + + + Hide the playlist and the toolbar + + + + + Open the &YouTube page + + + + + Go to the YouTube video page and pause playback + + + + + Copy the YouTube &link + + + + + Copy the current video YouTube link to the clipboard + + + + + Copy the video stream &URL + + + + + Copy the current video stream URL to the clipboard + + + + + &Remove + + + + + Remove the selected videos from the playlist + + + + + Move &Up + + + + + Move up the selected videos in the playlist + + + + + Move &Down + + + + + Move down the selected videos in the playlist + + + + + &Clear recent searches + + + + + Clear the search history. Cannot be undone. + + + + + &Quit + + + + + Ctrl+Q + + + + + Bye + + + + + &Website + + + + + %1 on the Web + + + + + Make a &donation + + + + + Please support the continued development of %1 + + + + + &About + + + + + Info about %1 + + + + + Search + + + + + Mute volume + + + + + Ctrl+M + + + + + + &Downloads + + + + + Show details about video downloads + + + + + &Download + + + + + Download the current video + + + + + &Application + + + + + &Playlist + + + + + &Video + + + + + &Help + + + + + Press %1 to raise the volume, %2 to lower it + + + + + + Opening %1 + + + + + Do you want to exit %1 with a download in progress? + + + + + If you close %1 now, this download will be cancelled. + + + + + Close and cancel download + + + + + Wait for download to finish + + + + + Fatal error: %1 + + + + + Error: %1 + + + + + &Play + + + + + Resume playback + + + + + Exit &Full Screen + + + + + Remaining time: %1 + + + + + Volume at %1% + + + + + Volume is muted + + + + + Volume is unmuted + + + + + Maximum video definition set to %1 + + + + + Your privacy is now safe + + + + + Downloads complete + + + + + MediaView + + + Most relevant + + + + + Most recent + + + + + Most viewed + + + + + You can now paste the YouTube link into another application + + + + + You can now paste the video stream URL into another application + + + + + The link will be valid only for a limited time. + + + + + This is just the demo version of %1. + + + + + It allows you to test the application and see if it works for you. + + + + + Continue + + + + + Get the full version + + + + + Downloading %1 + + + + + NetworkAccess + + + Network error: %1 + + + + + PrettyItemDelegate + + + %1 views + + + + + %1 of %2 (%3) — %4 + + + + + Preparing + + + + + Failed + + + + + Completed + + + + + Stopped + + + + + Stop downloading + + + + + Show in %1 + + + + + Open parent folder + + + + + Restart downloading + + + + + SearchLineEdit + + + Search + + + + + SearchView + + + Welcome to <a href='%1'>%2</a>, + + + + + Get the full version + + + + + Enter + "Enter", as in "type". The whole frase says: "Enter a keyword to start watching videos" + + + + + a keyword + + + + + a channel + + + + + to start watching videos. + + + + + Watch + + + + + Recent keywords + + + + + Recent channels + + + + + A new version of %1 is available. Please <a href='%2'>update to version %3</a> + + + + + Make yourself comfortable + + + + + Video + + + Cannot get video stream for %1 + + + + + Network error: %1 for %2 + + + + \ 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 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(); +} diff --git a/src/youtubesearch.h b/src/youtubesearch.h index dc2739d..4a094e0 100644 --- a/src/youtubesearch.h +++ b/src/youtubesearch.h @@ -13,6 +13,7 @@ public: void search(SearchParams *searchParams, int max, int skip); void abort(); QList getResults(); + static QString videoIdFromUrl(QString url); signals: void gotVideo(Video*);