diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.0) project(kdeplasma-addons) -set(PROJECT_VERSION "5.14.1") +set(PROJECT_VERSION "5.14.3") set(PROJECT_VERSION_MAJOR 5) ################# Disallow in-source build ################# diff --git a/applets/keyboardindicator/metadata.desktop b/applets/keyboardindicator/metadata.desktop --- a/applets/keyboardindicator/metadata.desktop +++ b/applets/keyboardindicator/metadata.desktop @@ -5,12 +5,14 @@ Name[cs]=Indikátor klávesnice Name[da]=Tastaturindikator Name[de]=Tastaturstatus +Name[el]=Ένδειξη πληκτρολογίου Name[en_GB]=Keyboard Indicator Name[es]=Indicador del teclado Name[eu]=Teklatuaren adierazlea Name[fi]=Näppäimistöosoitin Name[fr]=Indicateur de clavier Name[gl]=Indicador de teclado +Name[hu]=Billentyűzetjelző Name[id]=Keyboard Indicator Name[it]=Indicatore tastiera Name[ko]=키보드 표시기 @@ -32,12 +34,14 @@ Comment[cs]=Ukazuje stav klávesnice Comment[da]=Viser tastaturets tilstand Comment[de]=Zeigt den Status der Tastatur an +Comment[el]=Εμφανίζει την κατάσταση του πληκτρολογίου Comment[en_GB]=Shows the state of the keyboard Comment[es]=Muestra el estado del teclado Comment[eu]=Erakutsi teklatuaren egoera Comment[fi]=Näyttää näppäimistön tilan Comment[fr]=Affiche l'état du clavier Comment[gl]=Mostra o estado do teclado. +Comment[hu]=Megjeleníti a billentyűzet állapotát Comment[id]=Menampilkan keadaannya keyboard Comment[it]=Mostra lo stato della tastiera Comment[ko]=키보드 상태 보이기 diff --git a/applets/mediaframe/package/metadata.desktop b/applets/mediaframe/package/metadata.desktop --- a/applets/mediaframe/package/metadata.desktop +++ b/applets/mediaframe/package/metadata.desktop @@ -5,12 +5,14 @@ Name[cs]=Rámec médií Name[da]=Medieramme Name[de]=Medien-Rahmen +Name[el]=Πλαίσιο Μέσου Name[en_GB]=Media Frame Name[es]=Marco multimedia Name[eu]=Multimedia markoa Name[fi]=Mediakehys Name[fr]=Cadre du lecteur de média Name[gl]=Marco de contido +Name[hu]=Médiakeret Name[id]=Media Frame Name[it]=Cornice media Name[ko]=미디어 프레임 diff --git a/applets/weather/package/contents/ui/main.qml b/applets/weather/package/contents/ui/main.qml --- a/applets/weather/package/contents/ui/main.qml +++ b/applets/weather/package/contents/ui/main.qml @@ -40,59 +40,72 @@ // model providing final display strings for observation properties readonly property var observationModel: { var model = {}; - var data = weatherDataSource.currentData; + var data = weatherDataSource.currentData || {}; - var reportTemperatureUnit = (data && data["Temperature Unit"]) || invalidUnit; - var reportPressureUnit = (data && data["Pressure Unit"]) || invalidUnit; - var reportVisibilityUnit = (data && data["Visibility Unit"]) || invalidUnit; - var reportWindSpeedUnit = (data && data["Wind Speed Unit"]) || invalidUnit; + function getNumber(key) { + var number = data[key]; + if (typeof number === "string") { + var parsedNumber = parseFloat(number); + return isNaN(parsedNumber) ? null : parsedNumber; + } + return (typeof number !== "undefined") && (number !== "") ? number : null; + } + function getNumberOrString(key) { + var number = data[key]; + return (typeof number !== "undefined") && (number !== "") ? number : null; + } + + var reportTemperatureUnit = data["Temperature Unit"] || invalidUnit; + var reportPressureUnit = data["Pressure Unit"] || invalidUnit; + var reportVisibilityUnit = data["Visibility Unit"] || invalidUnit; + var reportWindSpeedUnit = data["Wind Speed Unit"] || invalidUnit; - model["conditions"] = (data && data["Current Conditions"]) || ""; + model["conditions"] = data["Current Conditions"] || ""; - var conditionIconName = (data && data["Condition Icon"]) || null; + var conditionIconName = data["Condition Icon"] || null; model["conditionIconName"] = conditionIconName ? Util.existingWeatherIconName(conditionIconName) : "weather-none-available"; - var temperature = (data && data["Temperature"]) || null; + var temperature = getNumber("Temperature"); model["temperature"] = temperature !== null ? Util.temperatureToDisplayString(displayTemperatureUnit, temperature, reportTemperatureUnit) : ""; - var windchill = (data && data["Windchill"]) || null; + var windchill = getNumber("Windchill"); // Use temperature unit to convert windchill temperature // we only show degrees symbol not actual temperature unit model["windchill"] = windchill !== null ? Util.temperatureToDisplayString(displayTemperatureUnit, windchill, reportTemperatureUnit, false, true) : ""; - var humidex = (data && data["Humidex"]) || null; + var humidex = getNumber("Humidex"); // TODO: this seems wrong, does the humidex have temperature as units? // Use temperature unit to convert humidex temperature // we only show degrees symbol not actual temperature unit model["humidex"] = humidex !== null ? Util.temperatureToDisplayString(displayTemperatureUnit, humidex, reportTemperatureUnit, false, true) : ""; - var dewpoint = (data && data["Dewpoint"]) || null; + var dewpoint = getNumber("Dewpoint"); model["dewpoint"] = dewpoint !== null ? Util.temperatureToDisplayString(displayTemperatureUnit, dewpoint, reportTemperatureUnit) : ""; - var pressure = (data && data["Pressure"]) || null; - model["pressure"] = pressure ? + var pressure = getNumber("Pressure"); + model["pressure"] = pressure !== null ? Util.valueToDisplayString(displayPressureUnit, pressure, reportPressureUnit, 2) : ""; var pressureTendency = (data && data["Pressure Tendency"]) || null; model["pressureTendency"] = pressureTendency ? i18nc("pressure tendency", pressureTendency) : ""; - var visibility = (data && data["Visibility"]) || null; - model["visibility"] = visibility ? + var visibility = getNumberOrString("Visibility"); + model["visibility"] = visibility !== null ? ((reportVisibilityUnit !== invalidUnit) ? Util.valueToDisplayString(displayVisibilityUnit, visibility, reportVisibilityUnit, 1) : visibility) : ""; - var humidity = (data && data["Humidity"]) || null; - model["humidity"] = humidity ? Util.percentToDisplayString(humidity) : ""; + var humidity = getNumber("Humidity"); + model["humidity"] = humidity !== null ? Util.percentToDisplayString(humidity) : ""; // TODO: missing check for windDirection validness - var windDirection = (data && data["Wind Direction"]) || null; - var windSpeed = (data && data["Wind Speed"]) || null; + var windDirection = data["Wind Direction"] || ""; + var windSpeed = getNumberOrString("Wind Speed"); var windSpeedText; if (windSpeed !== null && windSpeed !== "") { var windSpeedNumeric = (typeof windSpeed !== 'number') ? parseFloat(windSpeed) : windSpeed; @@ -108,26 +121,26 @@ } } model["windSpeed"] = windSpeedText || ""; - model["windDirectionId"] = windDirection || ""; + model["windDirectionId"] = windDirection; model["windDirection"] = windDirection ? i18nc("wind direction", windDirection) : ""; - var windGust = (data && data["Wind Gust"]) || null; - model["windGust"] = windGust ? Util.valueToDisplayString(displaySpeedUnit, windGust, reportWindSpeedUnit, 1) : ""; + var windGust = getNumber("Wind Gust"); + model["windGust"] = windGust !== null ? Util.valueToDisplayString(displaySpeedUnit, windGust, reportWindSpeedUnit, 1) : ""; return model; } readonly property var generalModel: { var model = {}; - var data = weatherDataSource.currentData; + var data = weatherDataSource.currentData || {}; - var todayForecastTokens = ((data && data["Short Forecast Day 0"]) || "").split("|"); + var todayForecastTokens = (data["Short Forecast Day 0"] || "").split("|"); - model["location"] = (data && data["Place"]) || ""; - model["courtesy"] = (data && data["Credit"]) || ""; - model["creditUrl"] = (data && data["Credit Url"]) || ""; + model["location"] = data["Place"] || ""; + model["courtesy"] = data["Credit"] || ""; + model["creditUrl"] = data["Credit Url"] || ""; - var forecastDayCount = parseInt((data && data["Total Weather Days"]) || ""); + var forecastDayCount = parseInt(data["Total Weather Days"] || ""); var forecastTitle; if (!isNaN(forecastDayCount) && forecastDayCount > 0) { forecastTitle = i18ncp("Forecast period timeframe", "1 Day", "%1 Days", forecastDayCount); diff --git a/applets/weather/package/metadata.desktop b/applets/weather/package/metadata.desktop --- a/applets/weather/package/metadata.desktop +++ b/applets/weather/package/metadata.desktop @@ -5,12 +5,14 @@ Name[cs]=Hlášení počasí Name[da]=Vejrudsigt Name[de]=Wetterbericht +Name[el]=Αναφορά Καιρού Name[en_GB]=Weather Report Name[es]=Informe meteorológico Name[eu]=Eguraldi iragarpena Name[fi]=Säätila Name[fr]=Météo Name[gl]=Informe meteorolóxico +Name[hu]=Időjárás-jelentés Name[id]=Weather Report Name[it]=Previsioni meteo Name[ko]=일기 예보 @@ -32,12 +34,14 @@ Comment[cs]=Předpověď a současná situace Comment[da]=Prognose og aktuelle forhold Comment[de]=Vorhersage und aktuelle Zustand +Comment[el]=Προβλέψεις και τρέχουσες συνθήκες Comment[en_GB]=Forecast and current conditions Comment[es]=Previsión y condiciones actuales Comment[eu]=Iragarpena eta uneko egoera Comment[fi]=Ennuste ja nykyinen säätila Comment[fr]=Prévisions et météo actuelle Comment[gl]=Prognóstico e condicións actuais +Comment[hu]=Előrejelzés és aktuális időjárás Comment[id]=Ramalan dan kondisi saat ini Comment[it]=Previsioni e condizioni attuali Comment[ko]=일기 예보와 현재 날씨 diff --git a/dataengines/comic/comicprovider.cpp b/dataengines/comic/comicprovider.cpp --- a/dataengines/comic/comicprovider.cpp +++ b/dataengines/comic/comicprovider.cpp @@ -264,6 +264,9 @@ void ComicProvider::requestRedirectedUrl(const QUrl &url, int id, const MetaInfos &infos) { + //each request restarts the timer + d->mTimer->start(); + KIO::MimetypeJob *job = KIO::mimetype(url, KIO::HideProgressInfo); job->setProperty("uid", id); d->mRedirections[job] = url; diff --git a/dataengines/potd/apodprovider.json b/dataengines/potd/apodprovider.json --- a/dataengines/potd/apodprovider.json +++ b/dataengines/potd/apodprovider.json @@ -5,6 +5,7 @@ "Description[ca]": "Proveïdor Apod", "Description[cs]": "Poskytovatel Apodu", "Description[de]": "Apod-Anbieter", + "Description[en_GB]": "Apod Provider", "Description[es]": "Proveedor de Apod", "Description[eu]": "Apod hornitzailea", "Description[fi]": "Apod-tarjoaja", @@ -30,11 +31,14 @@ "Name[ca]": "Imatge astronòmica del dia", "Name[cs]": "Obrázek dne z Astronomie", "Name[de]": "Bild des Tages der Astronomie", + "Name[en_GB]": "Astronomy Picture of the Day", "Name[es]": "Imagen astronómica del día", "Name[eu]": "Eguneko irudi astronomikoa", "Name[fi]": "Päivän tähtitiedekuva", "Name[fr]": "Image du jour d'astronomie", "Name[gl]": "Imaxe do día de astronomía", + "Name[id]": "Astronomy Picture of the Day", + "Name[it]": "Astronomy Picture of the Day", "Name[ko]": "오늘의 천문학 사진", "Name[nb]": "Dagens astronomibilde", "Name[nl]": "Astronomische afbeelding van de dag", diff --git a/dataengines/potd/bingprovider.json b/dataengines/potd/bingprovider.json --- a/dataengines/potd/bingprovider.json +++ b/dataengines/potd/bingprovider.json @@ -6,6 +6,7 @@ "Description[ca]": "Proveïdor Bing", "Description[cs]": "Poskytovatel Bing", "Description[de]": "Bing-Anbieter", + "Description[en_GB]": "Bing Provider", "Description[es]": "Proveedor de Bing", "Description[eu]": "Bing hornitzailea", "Description[fi]": "Bing-tarjoaja", @@ -31,11 +32,13 @@ "Name[ca]": "Imatge del dia del Bing", "Name[cs]": "Obrázek dne na Bing", "Name[de]": "Bild des Tages von Bing", + "Name[en_GB]": "Bing's Picture of the Day", "Name[es]": "Imagen del día de Bing", "Name[eu]": "Bing-eren eguneko argazkia", "Name[fi]": "Bingin päivän kuva", "Name[fr]": "Image du jour Bing", "Name[gl]": "Imaxe do día de Bing", + "Name[id]": "Bing's Picture of the Day", "Name[it]": "Immagine del giorno di Bing", "Name[ko]": "Bing 오늘의 그림", "Name[nl]": "Afbeelding van de dag van Bing", diff --git a/dataengines/potd/epodprovider.json b/dataengines/potd/epodprovider.json --- a/dataengines/potd/epodprovider.json +++ b/dataengines/potd/epodprovider.json @@ -5,6 +5,7 @@ "Description[ca]": "Proveïdor Epod", "Description[cs]": "Poskytovatel Epodu", "Description[de]": "Epod-Anbieter", + "Description[en_GB]": "Epod Provider", "Description[es]": "Proveedor de Epod", "Description[eu]": "Epod hornitzailea", "Description[fi]": "Epod-tarjoaja", @@ -30,11 +31,14 @@ "Name[ca]": "Imatge de ciències terràqüies del dia", "Name[cs]": "Obrázek dne z Earth Science", "Name[de]": "Bild des Tages der Geowissenschaften", + "Name[en_GB]": "Earth Science Picture of the Day", "Name[es]": "Imagen del día de Earth Science", "Name[eu]": "Lurreko zientziaren eguneko irudia", "Name[fi]": "Päivän geotiedekuva", "Name[fr]": "Image du jour des sciences de la terre", "Name[gl]": "Imaxe do día sobre as ciencias da terra", + "Name[id]": "Earth Science Picture of the Day", + "Name[it]": "Earth Science Picture of the Day", "Name[ko]": "오늘의 지구과학 사진", "Name[nb]": "Dagens geovitenskapelige bilde", "Name[nl]": "Geologische afbeelding van de dag", diff --git a/dataengines/potd/flickrprovider.json b/dataengines/potd/flickrprovider.json --- a/dataengines/potd/flickrprovider.json +++ b/dataengines/potd/flickrprovider.json @@ -5,6 +5,7 @@ "Description[ca]": "Proveïdor Flickr", "Description[cs]": "Poskytovatel Flickru", "Description[de]": "Flickr-Anbieter", + "Description[en_GB]": "Flickr Provider", "Description[es]": "Proveedor de Flickr", "Description[eu]": "Flickr hornitzailea", "Description[fi]": "Flickr-tarjoaja", @@ -30,11 +31,13 @@ "Name[ca]": "Imatge Flickr del dia", "Name[cs]": "Obrázek dne z Flickru", "Name[de]": "Bild des Tages von Flickr", + "Name[en_GB]": "Flickr Picture of the Day", "Name[es]": "Imagen del día de Flickr", "Name[eu]": "Flickrren eguneko irudia", "Name[fi]": "Päivän Flickr-kuva", "Name[fr]": "Image du jour « Flickr »", "Name[gl]": "Imaxe do día de Flickr", + "Name[id]": "Flickr Picture of the Day", "Name[it]": "Immagine del giorno di Flickr", "Name[ko]": "오늘의 Flickr 그림", "Name[nb]": "Dagens Flickr-bilde", diff --git a/dataengines/potd/natgeoprovider.json b/dataengines/potd/natgeoprovider.json --- a/dataengines/potd/natgeoprovider.json +++ b/dataengines/potd/natgeoprovider.json @@ -2,7 +2,29 @@ "KPlugin": { "Icon": "", "Name": "National Geographic", + "Name[ca@valencia]": "National Geographic", + "Name[ca]": "National Geographic", + "Name[cs]": "National Geographic", + "Name[de]": "National Geographic", + "Name[en_GB]": "National Geographic", + "Name[es]": "National Geographic", + "Name[eu]": "National Geographic", + "Name[fi]": "National Geographic", + "Name[fr]": "National Geographic", + "Name[gl]": "National Geographic", + "Name[id]": "National Geographic", + "Name[it]": "National Geographic", "Name[ko]": "내셔널 지오그래픽", + "Name[nb]": "National Geographic", + "Name[nl]": "National Geographic", + "Name[nn]": "National Geographic", + "Name[pl]": "National Geographic", + "Name[pt]": "National Geographic", + "Name[pt_BR]": "National Geographic", + "Name[ru]": "National Geographic", + "Name[sk]": "National Geographic", + "Name[sv]": "National Geographic", + "Name[uk]": "National Geographic", "Name[x-test]": "xxNational Geographicxx", "Name[zh_CN]": "国家地理", "ServiceTypes": [ diff --git a/dataengines/potd/noaaprovider.json b/dataengines/potd/noaaprovider.json --- a/dataengines/potd/noaaprovider.json +++ b/dataengines/potd/noaaprovider.json @@ -6,6 +6,7 @@ "Description[cs]": "Přidat NOAA", "Description[da]": "NOAA-udbyder", "Description[de]": "NOAA-Anbieter", + "Description[en_GB]": "NOAA Provider", "Description[es]": "Proveedor del NOAA", "Description[eu]": "NOAA hornitzailea", "Description[fi]": "NOAA-tarjoaja", @@ -36,10 +37,12 @@ "Name[fi]": "NOAA Environmental Visualization Laboratoryn päivän kuva", "Name[fr]": "Image du jour du laboratoire de visualisation environnementale NOAA", "Name[gl]": "Imaxe do día do Laboratorio de Visualización Ambiental NOAA", + "Name[id]": "NOAA Environmental Visualization Laboratory Picture of the Day", "Name[it]": "Immagine del giorno del laboratorio di visualizzazione ambientale NOAA", "Name[ko]": "NOAA 환경 시각화 연구소 오늘의 그림", "Name[nl]": "NOAA afbeelding-van-de-dag van het Laboratorium voor visualisatie van het milieu", "Name[nn]": "Dagens bilete frå NOAA Environmental Visualization Laboratory", + "Name[pl]": "NOAA Environmental Visualization Laboratory Picture of the Day", "Name[pt]": "Imagem do Dia do Laboratório de Visualização Ambiente da NOAA", "Name[pt_BR]": "Imagem do dia da NOAA Environmental Visualization Laboratory", "Name[ru]": "Изображение дня NOAA", diff --git a/dataengines/potd/wcpotdprovider.json b/dataengines/potd/wcpotdprovider.json --- a/dataengines/potd/wcpotdprovider.json +++ b/dataengines/potd/wcpotdprovider.json @@ -5,6 +5,7 @@ "Description[ca]": "Proveïdor Wcpotd", "Description[cs]": "Poskytovatel Wcpotd", "Description[de]": "Wcpotd-Anbieter", + "Description[en_GB]": "Wcpotd Provider", "Description[es]": "Proveedor de Wcpotd", "Description[eu]": "Wcpotd hornitzailea", "Description[fi]": "Wcpotd-tarjoaja", @@ -30,11 +31,13 @@ "Name[ca]": "Imatge Wikimedia del dia", "Name[cs]": "Obrázek dne z Wikimedie", "Name[de]": "Bild des Tages von Wikimedia", + "Name[en_GB]": "Wikimedia Picture of the Day", "Name[es]": "Imagen del día de Wikimedia", "Name[eu]": "Wikimediaren eguneko irudia", "Name[fi]": "Päivän Wikimedia-kuva", "Name[fr]": "Image du jour de Wikimedia", "Name[gl]": "Imaxe do día de Wikipedia", + "Name[id]": "Wikimedia Picture of the Day", "Name[it]": "Immagine del giorno di Wikimedia", "Name[ko]": "오늘의 위키미디어 그림", "Name[nb]": "Dagens Wikimedia-bilde", diff --git a/runners/konsoleprofiles/plasma-runner-konsoleprofiles.desktop b/runners/konsoleprofiles/plasma-runner-konsoleprofiles.desktop --- a/runners/konsoleprofiles/plasma-runner-konsoleprofiles.desktop +++ b/runners/konsoleprofiles/plasma-runner-konsoleprofiles.desktop @@ -60,12 +60,14 @@ Comment[ca@valencia]=Correspon amb perfils del Konsole Comment[da]=Matcher Konsole-profiler Comment[de]=Findet Konsole-Profile +Comment[el]=Αντιστοιχεί τα προφίλ Konsole Comment[en_GB]=Matches Konsole Profiles Comment[es]=Busca perfiles de Konsole que coincidan Comment[eu]=Bat datozen Konsole profilak Comment[fi]=Vastaa konsole-profiileja Comment[fr]=Retrouve des profils Konsole Comment[gl]=Atopa perfís de Konsole. +Comment[hu]=Konsole profilok listázása Comment[id]=Mencocokkan Profil Konsole Comment[it]=Verifica profili di Konsole Comment[ko]=Konsole 프로필과 일치 diff --git a/wallpapers/hunyango/metadata.desktop b/wallpapers/hunyango/metadata.desktop --- a/wallpapers/hunyango/metadata.desktop +++ b/wallpapers/hunyango/metadata.desktop @@ -49,6 +49,7 @@ Comment[cs]=Tapeta Hunyango Comment[da]=Hunyango-baggrundsbillede Comment[de]=Hunyango-Hintergrundbild +Comment[el]=Ταπετσαρία Hunyango Comment[en_GB]=Hunyango wallpaper Comment[es]=Fondo de pantalla Hunyango Comment[eu]=Hunyango horma-papera