From bfbf6c698f0c3a29ca00806c1a582b7a609199fc Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Fri, 31 May 2013 12:47:12 -0300 Subject: [PATCH 1/6] Creating pt-BR translation files --- res/values-pt-rBR/strings.xml | 203 ++++++++++++++++++++++++++++++++++ 1 file changed, 203 insertions(+) create mode 100644 res/values-pt-rBR/strings.xml diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml new file mode 100644 index 00000000..23a72ef5 --- /dev/null +++ b/res/values-pt-rBR/strings.xml @@ -0,0 +1,203 @@ + + + + Conectando… + Tiny Tiny RSS + Por favor, configure a aplicação. + Pronto para conectar. + Conectar + Desconectar + Conectar + Debugando + Senha + http://example.domain/tt-rss/ + Aparência + Tema + Muda as cores da aplicação + URL do Tiny Tiny RSS + Escuro + Configurações + Claro + Conecção + Artigos selecionados + Autenticação HTTP + Carregando, aguarde... + Mostrar feeds não lidos + Mostrar todos os feeds + Atualizar + Compartilhar artigo + Marcar como lido + Ordenar por não lidos + Aceitar qualquer certificado + Navegar pelos feeds + Navegar pelos artigos + + Log sent and received data + (Un)Star + (Un)Publish + Selecionar artigos + Selecionar artigos + Tudo + Não lidos + Deselecionar tudo + (Un)Star + (Un)Publish + (Un)Read + Deselecionar tudo + (Un)Star + (Un)Publish + (Un)Read + Artigo marcado como não lido + Mark above read + Optional. Fill this if your tt-rss installation is protected by HTTP Basic authentication + Your tt-rss login. Not needed for single user mode + URL of your tt-rss installation directory, e.g. http://site.com/tt-rss/ + Habilitar ícones das assinaturas + Habilitar categorias + Nenhuma assinatura a mostrar + Nenhum cabeçalho para mostrar + No caption to display + Browse categories like feeds + Use category context menu to override this setting + Marcar como lido + Error: Unknown error (see log) + Error: 401 unauthorized + Error: 403 forbidden + Error: 404 not found + Error: 500 server error + Error: other HTTP error (see log) + Error: SSL certificate rejected + Error: JSON parse failed + Error: I/O failure (server down?) + Error: unknown error (see log) + Error: Please enable external API access in tt-rss Settings - Advanced + Error: unknown API error (see log) + Error: incorrect API usage + Error: username or password incorrect + Error: invalid API URL + Displays full article text inline, instead of a separate panel + Combined mode + Modo offline + Modo online + Failed to prepare offline mode (see log) + No feeds to display + No articles to display + Login failed, but you have stored offline data. Would you like to go offline? + Offline mode is ready + Go offline + Cancel + Download unread articles and go offline? + Downloading articles (%1$d)… + Iniciando download… + Downloading feeds… + Sending data to server… + Preparing offline mode + Synchronizing offline data + Finished synchronizing your offline data + Modo offline + Armazenar imagens + Download images to sdcard. This might significantly increase time it takes to go offline. + Baixando imagens (%1$d)… + Set labels + Pesquisar + Cancelar + Small + Medium + Large + Article text size + Donate + Close + Please select the donation + Donate! + Swipe between articles + Copy link to clipboard + Text copied to clipboard + Select attachment + View + Copy URL + Justify article text + Offline sync in progress + Stop syncing + Continue + Publish with note + Close feed + Close article + Settings + Please fill in your tt-rss server information such as URL, login, and password. + Article starred + Article unstarred + Article published + Article unpublished + Article note saved + Refresh + Share + Error: network unavailable + Browse headlines + Default feed view + Which feed view to open by default on smartphones + Donation found, thank you for support! + Use volume buttons + Switch between articles with hardware volume buttons + No hostname verification + Error: unknown API method + Accepts any SSL certificate without validation + Do not verify server hostname + SSL + Error: SSL hostname not verified + Show oldest articles first + Dim status bar + Dim status bar when reading + %1$d comments + Trial mode, %1$d day(s) left. + Unlock full version + Trial expired + To continue using Tiny Tiny RSS please unlock the full version by purchasing the key. + Sepia + Full version, thank you for support! + Fullscreen mode + Reading + Dark gray + Number of articles to download + Number of articles to download for Offline mode (newest first). + Show content previews in headlines list + Preview article content + This action requires newer version of Tiny Tiny RSS + URL: + Article URL + Article Content + Title: + Article Title + Share + Article posted. + Subscribe with Tiny Tiny RSS + Feed URL + Subscribe to feed + Error while subscribing. + Category list updated + Subscribed to feed + Error: feed already exists. + Error: Invalid URL. + Error: URL is an HTML page, no feeds found. + Error: URL contains multiple feeds + Error: Could not download URL + Set view mode + Set view mode + Adaptive + All articles + Starred + Published + Unread + Open image + Share image + Requires version 1.7.6 + Labels + View Caption + Light theme is not supported on Honeycomb + Mark read on scroll + Headlines will be marked read when scrolling past them + Mark %1$d article(s) as read? + Confirm marking articles as read + by %1$s + %1$d unread articles + Headline text size + From 4f0a91ece8874f0005525b1460d695aca5229b3e Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Fri, 31 May 2013 17:54:57 -0300 Subject: [PATCH 2/6] Translating. --- res/values-pt-rBR/strings.xml | 110 +++++++++++++++++----------------- 1 file changed, 55 insertions(+), 55 deletions(-) diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml index 23a72ef5..198a9095 100644 --- a/res/values-pt-rBR/strings.xml +++ b/res/values-pt-rBR/strings.xml @@ -32,85 +32,85 @@ Navegar pelos feeds Navegar pelos artigos - Log sent and received data - (Un)Star - (Un)Publish + Registrar no log os dados enviados e recebidos + Colocar/Retirar estrela + Publicar/Não publicar Selecionar artigos Selecionar artigos Tudo Não lidos Deselecionar tudo - (Un)Star - (Un)Publish - (Un)Read + Colocar/Retirar estrela + Publicar/Não publicar + Lido/Não lido Deselecionar tudo - (Un)Star - (Un)Publish - (Un)Read + Colocar/Remover estrela + Publicar/Nâo publica + Lido/Não lido Artigo marcado como não lido - Mark above read - Optional. Fill this if your tt-rss installation is protected by HTTP Basic authentication - Your tt-rss login. Not needed for single user mode - URL of your tt-rss installation directory, e.g. http://site.com/tt-rss/ + Marcar acima como lido + Opcional. Preencha este campo se sua instalação do tt-rss usa autenticação básica por http + Seu usuário tt-rss. Não é necessário no modo de um usuário + URL da sua instalação tt-rss, por exemplo http://site.com/tt-rss/ Habilitar ícones das assinaturas Habilitar categorias Nenhuma assinatura a mostrar Nenhum cabeçalho para mostrar - No caption to display - Browse categories like feeds - Use category context menu to override this setting + Nenhuma legenda a mostrar + Navegar pelas categorias como se fossem feeds + Use o menu de categorias para substituir essa configuração Marcar como lido - Error: Unknown error (see log) - Error: 401 unauthorized - Error: 403 forbidden - Error: 404 not found - Error: 500 server error - Error: other HTTP error (see log) - Error: SSL certificate rejected - Error: JSON parse failed - Error: I/O failure (server down?) - Error: unknown error (see log) - Error: Please enable external API access in tt-rss Settings - Advanced - Error: unknown API error (see log) - Error: incorrect API usage - Error: username or password incorrect - Error: invalid API URL + Erro: Desconhecido (veja log) + Erro: 401 Não autorizado + Erro: 403 Acesso negado + Erro: 404 Não encontrado + Erro: 500 Erro no servidor + Erro: Outro erro HTTP (veja log) + Erro: Certificado SSL foi rejeitado + Erro: Falha ao converter string JSON + Erro: Falha de I/O (Servidor fora?) + Erro: Erro desconhecido (veja log) + Erro: Habilite o acesso por API externa na configuração do avançada do tt-rss + Erro: Erro desconhecido na API (veja log) + Erro: Uso incorreto da API + Erro: Usuário ou senha inválidos + Erro: A URL da API é inválida Displays full article text inline, instead of a separate panel Combined mode Modo offline Modo online - Failed to prepare offline mode (see log) - No feeds to display - No articles to display - Login failed, but you have stored offline data. Would you like to go offline? - Offline mode is ready - Go offline - Cancel - Download unread articles and go offline? - Downloading articles (%1$d)… + Falha ao preparar o modo offline (ver log) + Nenhuma assinatura para mostrar + Nenhum artigo para mostrar + O Login falhou mas você tem dados armazenados, ir para modo offline? + Modo offline está disponível + Ir para offline + Cancelar + Baixar artigos não lidos e mudar para offline? + Baixando artigos (%1$d)… Iniciando download… - Downloading feeds… - Sending data to server… - Preparing offline mode - Synchronizing offline data - Finished synchronizing your offline data + Baixando assinaturas… + Enviando dados para o servidor… + Preparando modo offline + Sincronizando dados offline + Sincronização de dados offline completa Modo offline Armazenar imagens - Download images to sdcard. This might significantly increase time it takes to go offline. + Baixar imagens para o cartão SD. Isso pode aumentar consideravelmente o tempo para o modo offline. Baixando imagens (%1$d)… Set labels Pesquisar Cancelar - Small - Medium - Large - Article text size - Donate - Close - Please select the donation - Donate! + Pequeno + Médio + Grande + Tamanho do texto dos artigos + Doe + Fechar + Por favor, selecione a doação + Doe! Swipe between articles - Copy link to clipboard + Copiar link para a área de transferência Text copied to clipboard Select attachment View From abb06f37001e380c426115364fff9c0d85be6fc3 Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Mon, 3 Jun 2013 00:06:43 -0300 Subject: [PATCH 3/6] Updating translation --- res/values-pt-rBR/strings.xml | 128 +++++++++++++++++----------------- 1 file changed, 64 insertions(+), 64 deletions(-) diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml index 198a9095..28a6dbfa 100644 --- a/res/values-pt-rBR/strings.xml +++ b/res/values-pt-rBR/strings.xml @@ -50,7 +50,7 @@ Artigo marcado como não lido Marcar acima como lido Opcional. Preencha este campo se sua instalação do tt-rss usa autenticação básica por http - Seu usuário tt-rss. Não é necessário no modo de um usuário + Seu usuário tt-rss. Não é necessário no modo mono usuário URL da sua instalação tt-rss, por exemplo http://site.com/tt-rss/ Habilitar ícones das assinaturas Habilitar categorias @@ -75,8 +75,8 @@ Erro: Uso incorreto da API Erro: Usuário ou senha inválidos Erro: A URL da API é inválida - Displays full article text inline, instead of a separate panel - Combined mode + Mostrar todo o texto do arquivo ao invés de usar um painel separado + Modo combinado Modo offline Modo online Falha ao preparar o modo offline (ver log) @@ -98,7 +98,7 @@ Armazenar imagens Baixar imagens para o cartão SD. Isso pode aumentar consideravelmente o tempo para o modo offline. Baixando imagens (%1$d)… - Set labels + Definir tags Pesquisar Cancelar Pequeno @@ -111,69 +111,69 @@ Doe! Swipe between articles Copiar link para a área de transferência - Text copied to clipboard - Select attachment - View - Copy URL - Justify article text - Offline sync in progress - Stop syncing - Continue - Publish with note - Close feed - Close article - Settings - Please fill in your tt-rss server information such as URL, login, and password. - Article starred - Article unstarred - Article published - Article unpublished - Article note saved - Refresh - Share - Error: network unavailable - Browse headlines - Default feed view - Which feed view to open by default on smartphones - Donation found, thank you for support! - Use volume buttons - Switch between articles with hardware volume buttons - No hostname verification - Error: unknown API method - Accepts any SSL certificate without validation - Do not verify server hostname + Texto copiado para a área de transferência + Selecione anexo + Exibir + Copiar URL + Justificar texto dos artigos + Sincronização offline em progresso + Para sincronização + Continuar + Publicar com anotação + Fechar assinatura + Fechar artigo + Configuração + Preencha com a informação do servidor tt-rss como URL, login e senha. + Artigo com estrela + Artigo sem estrela + Artigo publicado + Artigo não publicado + Nota do artigo salva + Atualizar + Compartilhar + Erro: Rede indisponível + Navegar pelos títulos + Visualização padrão de assinaturas + Qual assinatura abrir por padrão em smartphones + Doação encontrada, obrigado pelo suporte! + Usar botões de volume + Mudar entre artigos usando os botões de volume + Não verificar hostname + Erro: metodo API desconhecido + Aceitar qualquer certificado SSL sem verificação + Não verificar o nome do servidor SSL - Error: SSL hostname not verified - Show oldest articles first - Dim status bar - Dim status bar when reading - %1$d comments - Trial mode, %1$d day(s) left. - Unlock full version - Trial expired - To continue using Tiny Tiny RSS please unlock the full version by purchasing the key. + Erro: Nome SSL não verificado + Mostrar artigos mais antigos primeiro + Ocultar barra de status + Ocultar barra de status durante a leitura + %1$d comentários + Modo de teste, resta(m) %1$d dia(s). + Desbloquear a versão completa + Período de teste encerrado + Para continuar usando o Tiny Tiny RSS por favor desbloqueie a versão completa comprando a chave. Sepia - Full version, thank you for support! - Fullscreen mode - Reading - Dark gray - Number of articles to download - Number of articles to download for Offline mode (newest first). - Show content previews in headlines list - Preview article content - This action requires newer version of Tiny Tiny RSS + Versão completa, obrigado pelo suporte! + Modo tela cheia + Lendo + Cinza escuro + Número de artigos a baixar + Número de artigos a baixar para o modo Offline (mais novos primeiro). + Mostrar prévia do conteúdo na lista de títulos + Prévia do conteúdos do artigo + Esta ação precisa de uma nova versão do Tiny Tiny RSS URL: - Article URL - Article Content - Title: - Article Title - Share - Article posted. - Subscribe with Tiny Tiny RSS - Feed URL - Subscribe to feed - Error while subscribing. - Category list updated + URL do artigo + Conteúdo do artigo + Título: + Título do artigo + Compartilhar + Artigo postado. + Assinar com Tiny Tiny RSS + URL da assinatura + Assinar feed + Erro ao assinar. + Lista de categorias atualizada Subscribed to feed Error: feed already exists. Error: Invalid URL. From d581c6439d4e40ce2bbeb4ff024334d4340a9a2b Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Mon, 3 Jun 2013 09:49:02 -0300 Subject: [PATCH 4/6] Finishing pt-br translation. --- res/values-pt-rBR/strings.xml | 52 +++++++++++++++++------------------ 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml index 28a6dbfa..ee55cdda 100644 --- a/res/values-pt-rBR/strings.xml +++ b/res/values-pt-rBR/strings.xml @@ -174,30 +174,30 @@ Assinar feed Erro ao assinar. Lista de categorias atualizada - Subscribed to feed - Error: feed already exists. - Error: Invalid URL. - Error: URL is an HTML page, no feeds found. - Error: URL contains multiple feeds - Error: Could not download URL - Set view mode - Set view mode - Adaptive - All articles - Starred - Published - Unread - Open image - Share image - Requires version 1.7.6 - Labels - View Caption - Light theme is not supported on Honeycomb - Mark read on scroll - Headlines will be marked read when scrolling past them - Mark %1$d article(s) as read? - Confirm marking articles as read - by %1$s - %1$d unread articles - Headline text size + Feed assinado + Erro: Assinatura já existe. + Erro: URL inválida. + Erro: URL é de uma página HTML, nenhum feed encontrado. + Erro: URL contém múltiplos feeds + Erro: Não foi possível baixar a URL + Define modo de visualização + Define modo de visualização + Adaptativa + Todos os artigos + Com estrela + Publicados + Não lidos + Abrir imagem + Compartilhar imagem + Requer versão 1.7.6 + Tags + Ver legenda + Tema claro não é suportado no Honeycomb + Marcar como lida ao visualizar + Títulos serão marcados como lidos ao rodar depois deles + Marcar %1$d artigo(s) como lido(s)? + Confirme marcação de artigos como lidos + por %1$s + %1$d artigos não lidos + Tamanho do texto para os títulos From 22d949f83cbb0c77aa42d7fb13be1043cd3580a8 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 7 Jun 2013 12:51:52 +0400 Subject: [PATCH 5/6] sort feeds and cats case-insensitively bump version --- AndroidManifest.xml | 4 ++-- src/org/fox/ttrss/FeedCategoriesFragment.java | 10 +++++++--- src/org/fox/ttrss/FeedsFragment.java | 14 +++++++++----- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/AndroidManifest.xml b/AndroidManifest.xml index fbd5b369..7e588da5 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="186" + android:versionName="1.8.6" > { @Override public int compare(FeedCategory a, FeedCategory b) { if (a.unread != b.unread) return b.unread - a.unread; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); } } + @SuppressLint("DefaultLocale") class CatTitleComparator implements Comparator { @Override public int compare(FeedCategory a, FeedCategory b) { if (a.id >= 0 && b.id >= 0) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } } + @SuppressLint("DefaultLocale") class CatOrderComparator implements Comparator { @Override @@ -79,7 +83,7 @@ public class FeedCategoriesFragment extends Fragment implements OnItemClickListe if (a.order_id != 0 && b.order_id != 0) return a.order_id - b.order_id; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } diff --git a/src/org/fox/ttrss/FeedsFragment.java b/src/org/fox/ttrss/FeedsFragment.java index dafbd26d..cc7e213e 100644 --- a/src/org/fox/ttrss/FeedsFragment.java +++ b/src/org/fox/ttrss/FeedsFragment.java @@ -17,6 +17,7 @@ import org.fox.ttrss.types.Feed; import org.fox.ttrss.types.FeedCategory; import org.fox.ttrss.types.FeedList; +import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; @@ -69,6 +70,7 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh m_activeCategory = cat; } + @SuppressLint("DefaultLocale") class FeedUnreadComparator implements Comparator { @Override @@ -76,37 +78,39 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh if (a.unread != b.unread) return b.unread - a.unread; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); } } + @SuppressLint("DefaultLocale") class FeedTitleComparator implements Comparator { @Override public int compare(Feed a, Feed b) { if (a.is_cat && b.is_cat) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else if (a.is_cat && !b.is_cat) return -1; else if (!a.is_cat && b.is_cat) return 1; else if (a.id >= 0 && b.id >= 0) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } } + @SuppressLint("DefaultLocale") class FeedOrderComparator implements Comparator { @Override public int compare(Feed a, Feed b) { if (a.id >= 0 && b.id >= 0) if (a.is_cat && b.is_cat) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else if (a.is_cat && !b.is_cat) return -1; else if (!a.is_cat && b.is_cat) @@ -114,7 +118,7 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh else if (a.order_id != 0 && b.order_id != 0) return a.order_id - b.order_id; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } From fae361370d5956c5b5798a54901c5195fb817058 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 7 Jun 2013 12:53:00 +0400 Subject: [PATCH 6/6] onArticleSelected: bail out if article is null --- src/org/fox/ttrss/HeadlinesActivity.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/org/fox/ttrss/HeadlinesActivity.java b/src/org/fox/ttrss/HeadlinesActivity.java index 6d0af32b..0bd5cabc 100644 --- a/src/org/fox/ttrss/HeadlinesActivity.java +++ b/src/org/fox/ttrss/HeadlinesActivity.java @@ -179,6 +179,8 @@ public class HeadlinesActivity extends OnlineActivity implements HeadlinesEventL @Override public void onArticleSelected(Article article, boolean open) { + if (article == null) return; + if (article.unread) { article.unread = false; saveArticleUnread(article);