aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--AndroidManifest.xml4
-rw-r--r--icons/icon14.pngbin0 -> 461 bytes
-rw-r--r--icons/icon64.pngbin0 -> 1555 bytes
-rw-r--r--res/layout/act_colors.xml57
-rw-r--r--res/values-bg/strings.xml3
-rw-r--r--res/values-ca/strings.xml5
-rw-r--r--res/values-cs/strings.xml5
-rw-r--r--res/values-da/strings.xml5
-rw-r--r--res/values-de/strings.xml11
-rw-r--r--res/values-en-rGB/strings.xml34
-rw-r--r--res/values-es/strings.xml5
-rw-r--r--res/values-eu/strings.xml5
-rw-r--r--res/values-fi/strings.xml5
-rw-r--r--res/values-fr/strings.xml17
-rw-r--r--res/values-gl/strings.xml5
-rw-r--r--res/values-he/strings.xml10
-rw-r--r--res/values-hr/strings.xml2
-rw-r--r--res/values-hu/strings.xml5
-rw-r--r--res/values-id/strings.xml24
-rw-r--r--res/values-is/strings.xml5
-rw-r--r--res/values-it/strings.xml9
-rw-r--r--res/values-ja/strings.xml31
-rw-r--r--res/values-ko/strings.xml5
-rw-r--r--res/values-mk/strings.xml1
-rw-r--r--res/values-nb/strings.xml5
-rw-r--r--res/values-nl/strings.xml5
-rw-r--r--res/values-oc/strings.xml4
-rw-r--r--res/values-pl/strings.xml11
-rw-r--r--res/values-pt-rBR/strings.xml11
-rw-r--r--res/values-pt/strings.xml5
-rw-r--r--res/values-ru/strings.xml9
-rw-r--r--res/values-sk/strings.xml5
-rw-r--r--res/values-sl/strings.xml5
-rw-r--r--res/values-sr/strings.xml516
-rw-r--r--res/values-sv/strings.xml7
-rw-r--r--res/values-tr/strings.xml11
-rw-r--r--res/values-zh-rCN/strings.xml17
-rw-r--r--res/values-zh-rTW/strings.xml30
-rw-r--r--res/values/arrays.xml16
-rw-r--r--res/values/strings.xml40
-rw-r--r--res/xml/host_prefs.xml6
-rw-r--r--res/xml/preferences.xml62
-rw-r--r--src/org/connectbot/ColorsActivity.java87
-rw-r--r--src/org/connectbot/ConsoleActivity.java2
-rw-r--r--src/org/connectbot/HostListActivity.java14
-rw-r--r--src/org/connectbot/PubkeyListActivity.java4
-rw-r--r--src/org/connectbot/bean/HostBean.java10
-rw-r--r--src/org/connectbot/service/FontSizeChangedListener.java6
-rw-r--r--src/org/connectbot/service/TerminalBridge.java88
-rw-r--r--src/org/connectbot/service/TerminalKeyListener.java72
-rw-r--r--src/org/connectbot/transport/Local.java5
-rw-r--r--src/org/connectbot/util/HostDatabase.java52
-rw-r--r--src/org/connectbot/util/PreferenceConstants.java10
-rw-r--r--src/org/connectbot/util/UberColorPickerDialog.java231
54 files changed, 1101 insertions, 498 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index d5df6d1..5fbee63 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -17,8 +17,8 @@
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.connectbot"
- android:versionName="1.8.1"
- android:versionCode="371"
+ android:versionName="1.8.2"
+ android:versionCode="372"
android:installLocation="auto">
<uses-sdk android:targetSdkVersion="15" android:minSdkVersion="4" />
diff --git a/icons/icon14.png b/icons/icon14.png
new file mode 100644
index 0000000..8bfdcba
--- /dev/null
+++ b/icons/icon14.png
Binary files differ
diff --git a/icons/icon64.png b/icons/icon64.png
new file mode 100644
index 0000000..d35240c
--- /dev/null
+++ b/icons/icon64.png
Binary files differ
diff --git a/res/layout/act_colors.xml b/res/layout/act_colors.xml
index 625437d..3bda649 100644
--- a/res/layout/act_colors.xml
+++ b/res/layout/act_colors.xml
@@ -23,36 +23,34 @@
android:layout_width="fill_parent"
android:layout_height="fill_parent">
- <TextView
- android:text="@string/colors_fg"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:id="@+id/fg_label"
- android:paddingTop="12dp"
- />
-
- <Spinner
- android:id="@+id/fg"
- android:layout_width="wrap_content"
+ <LinearLayout
+ android:orientation="horizontal"
+ android:layout_width="fill_parent"
android:layout_height="wrap_content"
- android:layout_toRightOf="@+id/fg_label"
- />
+ android:id="@+id/spinners">
- <Spinner
- android:id="@+id/bg"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignTop="@+id/fg"
- android:layout_alignParentRight="true"
- />
+ <Spinner
+ android:id="@+id/fg"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_alignParentLeft="true"
+ android:minHeight="60dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ />
- <TextView
- android:text="@string/color_bg"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_toLeftOf="@+id/bg"
- android:paddingTop="12dp"
- />
+ <Spinner
+ android:id="@+id/bg"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_alignTop="@id/fg"
+ android:layout_alignParentRight="true"
+ android:layout_toRightOf="@id/fg"
+ android:minHeight="60dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ />
+ </LinearLayout>
<GridView
android:id="@+id/color_grid"
@@ -65,7 +63,8 @@
android:columnWidth="60dp"
android:stretchMode="columnWidth"
android:gravity="center"
- android:layout_below="@+id/fg"
- android:stackFromBottom="true" android:minHeight="60dp"/>
+ android:minHeight="60dp"
+ android:layout_below="@+id/spinners"
+ />
</RelativeLayout>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 32028fa..f87787b 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -48,9 +48,6 @@
<string name="alert_disconnect_msg">Връзката изгубена</string>
<string name="msg_copyright">Запазени права © 2007-2008 Kenny Root http://the-b.org/, Jeffrey Sharkey http://jsharkey.org/</string>
<string name="list_keymode_none">Забраняване</string>
- <string name="list_update_daily">Ежедневно</string>
- <string name="list_update_weekly">Ежеседмично</string>
- <string name="list_update_never">Никога</string>
<string name="console_copy_done">Копирани %1$d байта в клипборда</string>
<string name="console_menu_close">Затваряне</string>
<string name="console_menu_copy">Копиране</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 3b5801a..7696bb8 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Amaga la barra d\'estat en consola</string>
<string name="pref_memkeys_title">Recorda les claus en memòria</string>
<string name="pref_memkeys_summary">Manté les claus descarregadesen memòria fins que el servei finalitzi</string>
- <string name="pref_update_title">Comprova actualització</string>
- <string name="pref_update_summary">Escull la freqüència màxima de comprovació d\'actualitzacions de ConnectBot</string>
<string name="pref_conn_persist_title">Connexions persistents</string>
<string name="pref_conn_persist_summary">Manté les connexions mentre l\'aplicació és en segon pla</string>
<string name="pref_keymode_title">Drecera de carpetes</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Deshabilita</string>
<string name="list_pubkeyids_none">No usis claus</string>
<string name="list_pubkeyids_any">Fes servir qualsevol clau desbloquejada</string>
- <string name="list_update_daily">Diàriament</string>
- <string name="list_update_weekly">Setmanalment</string>
- <string name="list_update_never">Mai</string>
<string name="hostpref_nickname_title">Sobrenom</string>
<string name="hostpref_color_title">Color de la categoria</string>
<string name="hostpref_fontsize_title">Mida de la lletra (pt)</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 8fbd0db..6bc0b87 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Skrýt stavový řádek když je zobrazena konzole</string>
<string name="pref_memkeys_title">Uchovávat klíče v paměti</string>
<string name="pref_memkeys_summary">Ponechat odemčené klíče v paměti dokud není ukončena služba na pozadí</string>
- <string name="pref_update_title">Kontrolovat aktualizace</string>
- <string name="pref_update_summary">Nastavit maximální frekvenci pro kontrolu aktualizací ConnectBota</string>
<string name="pref_conn_persist_title">Trvalá spojení</string>
<string name="pref_conn_persist_summary">Vynutit spojení i v pozadí</string>
<string name="pref_keymode_title">Zkratky adresářů</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Vypnout</string>
<string name="list_pubkeyids_none">Nepoužívat klíče</string>
<string name="list_pubkeyids_any">Použít jakýkoliv odemčený klíč</string>
- <string name="list_update_daily">Denně</string>
- <string name="list_update_weekly">Týdně</string>
- <string name="list_update_never">Nikdy</string>
<string name="hostpref_nickname_title">Přezdívka</string>
<string name="hostpref_color_title">Barevná kategorie</string>
<string name="hostpref_fontsize_title">Velikost fontu (pt)</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 950155c..5e72bcb 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Skjul statusbar i konsol</string>
<string name="pref_memkeys_title">Husk nøgler i hukommelsen</string>
<string name="pref_memkeys_summary">Gem oplåste nøgler i hukommelsen indtil baggrunds servicen er afsluttet</string>
- <string name="pref_update_title">Opdaterings tjek</string>
- <string name="pref_update_summary">Maksimal tid mellem check for opdateringer til ConnectBot</string>
<string name="pref_conn_persist_title">Vedvarende forbindelser</string>
<string name="pref_conn_persist_summary">Tving forbindelser til at være aktive i baggrunden</string>
<string name="pref_keymode_title">Biblioteksgenveje</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Slå fra</string>
<string name="list_pubkeyids_none">Brug ikke tasterne</string>
<string name="list_pubkeyids_any">Anvend enhver ulåst nøgle</string>
- <string name="list_update_daily">Dagligt</string>
- <string name="list_update_weekly">Ugenligt</string>
- <string name="list_update_never">Aldrig</string>
<string name="hostpref_nickname_title">Kaldenavn</string>
<string name="hostpref_color_title">Farvekategori</string>
<string name="hostpref_fontsize_title">Skriftstørrelse (pt)</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 39b517b..a9422d7 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">Host bearbeiten</string>
<string name="title_help">Hilfe</string>
<string name="title_colors">Farben</string>
+ <string name="title_color_picker">Farbe wählen</string>
<string name="resolve_connect">Verbinden</string>
<string name="resolve_entropy">Sammle Entropie</string>
<string name="menu_insert">Host hinzufügen</string>
@@ -77,10 +78,9 @@
<string name="pref_rotation_summary">Wie soll die Rotation beim Ein-/Ausklappen der Tastatur verändert werden</string>
<string name="pref_fullscreen_title">Vollbild</string>
<string name="pref_fullscreen_summary">Statuszeile in der Konsole verbergen</string>
+ <string name="pref_keyboard_category">Tastatur</string>
<string name="pref_memkeys_title">Schlüssel im Speicher behalten</string>
<string name="pref_memkeys_summary">Entsperrte Schlüssel im Speicher halten, bis der Hintergrunddienst beendet wurde</string>
- <string name="pref_update_title">Aktualisierungen suchen</string>
- <string name="pref_update_summary">Die maximale Frequenz einstellen, mit der nach ConnectBot Aktualisierungen gesucht werden soll</string>
<string name="pref_conn_persist_title">Persistente Verbindungen</string>
<string name="pref_conn_persist_summary">Erhalte Verbindungen auch im Hintergrund</string>
<string name="pref_keymode_title">Verzeichniskürzel</string>
@@ -104,9 +104,6 @@
<string name="list_keymode_none">Ausschalten</string>
<string name="list_pubkeyids_none">Keine Schlüssel verwenden</string>
<string name="list_pubkeyids_any">Beliebigen entsperrten Schlüssel verwenden</string>
- <string name="list_update_daily">Täglich</string>
- <string name="list_update_weekly">Wöchentlich</string>
- <string name="list_update_never">Niemals</string>
<string name="hostpref_nickname_title">Nutzername</string>
<string name="hostpref_color_title">Farbkategorie</string>
<string name="hostpref_fontsize_title">Fontgröße (pt)</string>
@@ -211,8 +208,8 @@
<string name="color_green">grün</string>
<string name="color_blue">blau</string>
<string name="color_gray">grau</string>
- <string name="colors_fg">Schriftfarbe:</string>
- <string name="color_bg">Hintergrundfarbe:</string>
+ <string name="colors_fg_label">SF: %1$d</string>
+ <string name="color_bg_label">HF: %1$d</string>
<string name="image_description_connected">Verbunden.</string>
<string name="image_description_key_is_locked">Schlüssel ist gesperrt.</string>
<string name="image_description_toggle_control_character">Steuerzeichen umschalten</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 6bc6957..fabe684 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -1,29 +1,7 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
- * ConnectBot: simple, powerful, open-source SSH client for Android
- * Copyright 2007 Kenny Root, Jeffrey Sharkey
- * Copyright 2011 Darren Salt
- *
- * This file is derived from res/values/strings.xml
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="title_colors">"Colours"</string>
- <string name="hostpref_color_title">"Colour category"</string>
- <string name="list_menu_sortcolor">"Sort by colour"</string>
- <string name="color_gray">"grey"</string>
+<?xml version='1.0' encoding='utf-8'?>
+<resources>
+ <string name="title_colors">Colours</string>
+ <string name="hostpref_color_title">Colour category</string>
+ <string name="list_menu_sortcolor">Sort by colour</string>
+ <string name="color_gray">grey</string>
</resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 28b4865..87bb50f 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Esconder barra de estatus cuando este en consola</string>
<string name="pref_memkeys_title">Recordar claves en memoria</string>
<string name="pref_memkeys_summary">Recordar claves en memoria hasta que el servicio en segundo plano termine</string>
- <string name="pref_update_title">Revisar por actualizaciones</string>
- <string name="pref_update_summary">Establecer la frequencia maxima para revisar actualizaciones de ConnectBot</string>
<string name="pref_conn_persist_title">Conexiones persistentes</string>
<string name="pref_conn_persist_summary">Mantener conexiones activas en segundo plano</string>
<string name="pref_keymode_title">Secuencia de teclas para directorios</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Desactivar</string>
<string name="list_pubkeyids_none">No usar teclas</string>
<string name="list_pubkeyids_any">Utilizar cualquier clave desbloqueada</string>
- <string name="list_update_daily">Diariamente</string>
- <string name="list_update_weekly">Semanalmente</string>
- <string name="list_update_never">Nunca</string>
<string name="hostpref_nickname_title">Apodo</string>
<string name="hostpref_color_title">Categoria de colores</string>
<string name="hostpref_fontsize_title">Tamaño de la fuente (pt)</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index 138dce9..6cf248b 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Ezkutatu egoera-barra kontsola erabiltzean</string>
<string name="pref_memkeys_title">Gorde gakoak memorian</string>
<string name="pref_memkeys_summary">Gogoratu desblokeatutako gakoak memorian zerbitzua amaitu arte</string>
- <string name="pref_update_title">Eguneraketak begiratu</string>
- <string name="pref_update_summary">ConnectBot-en eguneraketarik dagoen begiratzeko maiztasun maximoa finkatu</string>
<string name="pref_conn_persist_title">Konexio iraunkorrak</string>
<string name="pref_conn_persist_summary">Behartu konexioak aktibo mantentzera atzeko planoko daudenean</string>
<string name="pref_keymode_title">Direktorien laster-teklak</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Desgaitu</string>
<string name="list_pubkeyids_none">Ez erabili gakorik</string>
<string name="list_pubkeyids_any">Erabili desblokeatutako edozein gako</string>
- <string name="list_update_daily">Egunero</string>
- <string name="list_update_weekly">Astero</string>
- <string name="list_update_never">Inoiz ez</string>
<string name="hostpref_nickname_title">Goitizena</string>
<string name="hostpref_color_title">Kolore kategoria</string>
<string name="hostpref_fontsize_title">Letra-tamaina (pt)</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 246cea5..1e35e66 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Piilota ilmoitusalue konsolikäytössä</string>
<string name="pref_memkeys_title">Pidä avaimet muistissa</string>
<string name="pref_memkeys_summary">Pitää avatut avaimet muistissa kunnes taustapalvelu suljetaan</string>
- <string name="pref_update_title">Päivitysten tarkistus</string>
- <string name="pref_update_summary">Kuinka usein ConnectBot enintään tarkistaa päivitykset</string>
<string name="pref_conn_persist_title">Ylläpidä yhteys</string>
<string name="pref_conn_persist_summary">Pakottaa yhteyden pysymään aktiivisena ohjelman ollessa taustalla</string>
<string name="pref_keymode_title">Pikanäppäimet</string>
@@ -103,9 +101,6 @@
<string name="list_keymode_none">Pois käytöstä</string>
<string name="list_pubkeyids_none">Älä käytä avaimia</string>
<string name="list_pubkeyids_any">Käytä mitä tahansa avattua avainta</string>
- <string name="list_update_daily">Päivittäin</string>
- <string name="list_update_weekly">Viikoittain</string>
- <string name="list_update_never">Ei koskaan</string>
<string name="hostpref_nickname_title">Lempinimi</string>
<string name="hostpref_color_title">Väri</string>
<string name="hostpref_fontsize_title">Kirjasimen koko (pistettä)</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 9255f41..86d7f29 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -75,12 +75,18 @@
<string name="pref_ui_category">Interface utilisateur</string>
<string name="pref_rotation_title">Mode de rotation</string>
<string name="pref_rotation_summary">Comment changer l\'orientation de l\'écran suivant si le clavier est déplié</string>
+ <string name="pref_titlebarhide_title">Masquer automatiquement la barre de titre</string>
+ <string name="pref_titlebarhide_summary">Appuyez sur console pour montrer la barre de titre et accèder au menu</string>
<string name="pref_fullscreen_title">Plein écran</string>
<string name="pref_fullscreen_summary">Cacher la barre de notifications lorsque la console est active</string>
+ <string name="pref_shiftfkeys_title">\"Shift+Numéro\" sont les touches de \"F1-F10\"</string>
+ <string name="pref_shiftfkeys_summary">Sur les claviers matériels, les touches des chiffres envoient F1-F10 avec la touche Shift</string>
+ <string name="pref_ctrlfkeys_title">Ctrl+Numéro sont les touches de \"F1-F10\"</string>
+ <string name="pref_ctrlfkeys_summary">Sur les claviers logiciels, les touches des chiffres envoient F1-F10 avec la touche Ctrl</string>
+ <string name="pref_volumefont_title">Les touches volume changent la taille du texte</string>
+ <string name="pref_volumefont_summary">La taille du texte peu aussi être changé dans les paramètres par hôte</string>
<string name="pref_memkeys_title">Garder les clés en mémoire</string>
<string name="pref_memkeys_summary">Garder les clés débloquées en mémoire tant que le service tourne en arrière-plan</string>
- <string name="pref_update_title">Vérifier les mises à jour</string>
- <string name="pref_update_summary">Régler la fréquence de vérification pour les mises à jour de ConnectBot</string>
<string name="pref_conn_persist_title">Connexions persistantes</string>
<string name="pref_conn_persist_summary">Forcer les connexions à rester connectées en arrière-plan</string>
<string name="pref_keymode_title">Raccourcis de navigation</string>
@@ -104,9 +110,6 @@
<string name="list_keymode_none">Désactivé</string>
<string name="list_pubkeyids_none">Ne pas utiliser les clés publiques</string>
<string name="list_pubkeyids_any">Utiliser une clé pour l\'authentification</string>
- <string name="list_update_daily">Journalière</string>
- <string name="list_update_weekly">Hebdomadaire</string>
- <string name="list_update_never">Jamais</string>
<string name="hostpref_nickname_title">Surnom</string>
<string name="hostpref_color_title">Catégorie de couleur</string>
<string name="hostpref_fontsize_title">Taille de police (pt)</string>
@@ -211,8 +214,8 @@
<string name="color_green">vert</string>
<string name="color_blue">bleu</string>
<string name="color_gray">gris</string>
- <string name="colors_fg">PP :</string>
- <string name="color_bg">AP :</string>
+ <string name="colors_fg_label">PP: %1$d</string>
+ <string name="color_bg_label">AP: %1$d</string>
<string name="image_description_connected">Connecté</string>
<string name="image_description_key_is_locked">Clef verrouillée</string>
<string name="image_description_toggle_control_character">Activer/désactiver le caractère \"contrôle\"</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 7563050..c88fe6b 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -72,8 +72,6 @@
<string name="pref_fullscreen_summary">Esconder a barra de estado cando estea na consola</string>
<string name="pref_memkeys_title">Recordar chaves en memoria</string>
<string name="pref_memkeys_summary">Manter chaves desbloqueadas en memoria ata que o servicio de backend teña terminado</string>
- <string name="pref_update_title">Comprobar actualizacións</string>
- <string name="pref_update_summary">Establecer a frecuencia máxima para comprobar as actualizacións de ConnectBot</string>
<string name="pref_conn_persist_title">Conexións persistentes</string>
<string name="pref_conn_persist_summary">Manter conexións activas en segundo plano</string>
<string name="pref_keymode_title">Atallos de teclado para directorios</string>
@@ -91,9 +89,6 @@
<string name="list_keymode_none">Deshabilitar</string>
<string name="list_pubkeyids_none">Non usar chaves</string>
<string name="list_pubkeyids_any">Usar calquera chave desbloqueada</string>
- <string name="list_update_daily">Diariamente</string>
- <string name="list_update_weekly">Semanalmente</string>
- <string name="list_update_never">Nunca</string>
<string name="hostpref_fontsize_title">Tamaño da fonte (pt)</string>
<string name="hostpref_postlogin_summary">Comandos a executar no servidor remoto unha vez autenticado</string>
<string name="hostpref_compression_title">Compresión</string>
diff --git a/res/values-he/strings.xml b/res/values-he/strings.xml
index 246ee95..9e55f47 100644
--- a/res/values-he/strings.xml
+++ b/res/values-he/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">עריכת מארח</string>
<string name="title_help">עזרה</string>
<string name="title_colors">צבעים</string>
+ <string name="title_color_picker">בחירת צבע</string>
<string name="resolve_connect">התחברות</string>
<string name="resolve_entropy">נאסף גיבוב</string>
<string name="menu_insert">הוספת מארח</string>
@@ -79,8 +80,6 @@
<string name="pref_fullscreen_summary">להסתיר את שורת המצב בעת השימוש במסוף</string>
<string name="pref_memkeys_title">לשמור את המפתחות בזיכרון</string>
<string name="pref_memkeys_summary">להשאיר את המפתחות לאחר השחרור בזיכרון עד ששירות המנגנון מושבת</string>
- <string name="pref_update_title">בדיקת עדכון</string>
- <string name="pref_update_summary">הגדרת התדירות המרבית לבדיקת עדכונים של ConnectBot</string>
<string name="pref_conn_persist_title">חיבורים עיקשים</string>
<string name="pref_conn_persist_summary">לשמור על החיבורים פעילים ברקע</string>
<string name="pref_keymode_title">קיצורי ספריות</string>
@@ -104,9 +103,6 @@
<string name="list_keymode_none">נטרול</string>
<string name="list_pubkeyids_none">לא להשתמש במפתחות</string>
<string name="list_pubkeyids_any">שימוש במפתח כלשהו שאינו נעול</string>
- <string name="list_update_daily">יומי</string>
- <string name="list_update_weekly">שבועי</string>
- <string name="list_update_never">לעולם לא</string>
<string name="hostpref_nickname_title">כינוי</string>
<string name="hostpref_color_title">קטגוריית הצבע</string>
<string name="hostpref_fontsize_title">גודל הגופן (נק׳)</string>
@@ -211,8 +207,8 @@
<string name="color_green">ירוק</string>
<string name="color_blue">כחול</string>
<string name="color_gray">אפור</string>
- <string name="colors_fg">קדמה:</string>
- <string name="color_bg">רקע:</string>
+ <string name="colors_fg_label">קדמה:%1$d</string>
+ <string name="color_bg_label">רקע:%1$d</string>
<string name="image_description_connected">יש חיבור.</string>
<string name="image_description_key_is_locked">המפתח נעול.</string>
<string name="image_description_toggle_control_character">החלפת מצב תווי בקרה.</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 4d7138f..269a58b 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Sakrij statusnu liniju u konzoli</string>
<string name="pref_memkeys_title">Zapamti ključeve u memoriji</string>
<string name="pref_memkeys_summary">Čuvaj otključane ključeve u memoriji dok se ne zatvori pozadinski servis</string>
- <string name="pref_update_title">Provjera nadogradnji</string>
- <string name="pref_update_summary">Odredi učestalost za provjeru ConnectBot nadogradnji</string>
<string name="pref_conn_persist_title">Održavaj konekcije</string>
<string name="pref_conn_persist_summary">Prisili konekcije da ostanu spojene u pozadini</string>
<string name="pref_keymode_title">Prečaci direktorija</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index f95584b..5a41a02 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Rejtett állapotsor a konzol használata során</string>
<string name="pref_memkeys_title">Kulcsok megörzése a memóriában</string>
<string name="pref_memkeys_summary">Tartsa nyitva a memóriában lévő kulcsokat amíg a háttérszolgáltatás meg nem szűnik</string>
- <string name="pref_update_title">Frissítés ellenőrzése</string>
- <string name="pref_update_summary">ConnectBot frissítés ellenőrzésének maximális gyakorisága</string>
<string name="pref_conn_persist_title">Kapcsolatok fenntartása</string>
<string name="pref_conn_persist_summary">A háttérben tartsa fenn a kapcsolatokat</string>
<string name="pref_keymode_title">Könyvtár hivatkozások</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Tiltás</string>
<string name="list_pubkeyids_none">Kulcsok használatának tiltása</string>
<string name="list_pubkeyids_any">Bármely nyilvános kulcs használata</string>
- <string name="list_update_daily">Naponta</string>
- <string name="list_update_weekly">Hetente</string>
- <string name="list_update_never">Soha</string>
<string name="hostpref_nickname_title">Becenév</string>
<string name="hostpref_color_title">Szín-kategória</string>
<string name="hostpref_fontsize_title">Betűtipus mérete (pt)</string>
diff --git a/res/values-id/strings.xml b/res/values-id/strings.xml
index 0edb77e..4e98a79 100644
--- a/res/values-id/strings.xml
+++ b/res/values-id/strings.xml
@@ -6,6 +6,8 @@
<string name="title_pubkey_list">Kunci Publik</string>
<string name="title_host_editor">Ubah Host</string>
<string name="title_help">Bantuan</string>
+ <string name="title_colors">Warna</string>
+ <string name="title_color_picker">Pilih warna</string>
<string name="resolve_connect">Hubungi</string>
<string name="resolve_entropy">Kumpulkan entropy</string>
<string name="menu_insert">Tambahkan host</string>
@@ -75,10 +77,9 @@
<string name="pref_rotation_summary">Bagaimana mengubah rotasi ketika papan ketik menyembul masuk/keluar</string>
<string name="pref_fullscreen_title">Layar penuh</string>
<string name="pref_fullscreen_summary">Sembunyikan bar status ketika dalam konsol</string>
+ <string name="pref_keyboard_category">Papan tik</string>
<string name="pref_memkeys_title">Ingat kunci dalam memori</string>
<string name="pref_memkeys_summary">Simpan kunci yang terbuka kedalam memori hingga layanan backend berakhir</string>
- <string name="pref_update_title">Memeriksa pembaharuan</string>
- <string name="pref_update_summary">Tentukan frekuensi maksimal untuk memeriksa pembaharuan pada ConnectBot</string>
<string name="pref_conn_persist_title">Pertahankan koneksi</string>
<string name="pref_conn_persist_summary">Paksa koneksi untuk tetap terhubung ketika bekerja di belakang layar</string>
<string name="pref_keymode_title">Jalan pintas direktori</string>
@@ -102,9 +103,6 @@
<string name="list_keymode_none">Tidak aktif</string>
<string name="list_pubkeyids_none">Jangan gunakan kunci</string>
<string name="list_pubkeyids_any">Gunakan kunci apapun yang tidak terkunci</string>
- <string name="list_update_daily">Harian</string>
- <string name="list_update_weekly">Mingguan</string>
- <string name="list_update_never">Tidak pernah</string>
<string name="hostpref_nickname_title">Nama panggilan</string>
<string name="hostpref_color_title">Kategori warna</string>
<string name="hostpref_fontsize_title">Ukuran huruf (pt)</string>
@@ -123,6 +121,8 @@
<string name="hostpref_encoding_summary">Karakter pengkodean untuk host</string>
<string name="hostpref_connection_category">Konfigurasi koneksi</string>
<string name="hostpref_username_title">Nama pengguna</string>
+ <string name="hostpref_hostname_title">Host</string>
+ <string name="hostpref_port_title">Port</string>
<string name="bind_never">Tidak pernah terhubung</string>
<string name="bind_minutes">%1$s menit yang lalu</string>
<string name="bind_hours">%1$s jam yang lalu</string>
@@ -135,6 +135,8 @@
<string name="console_menu_portforwards">Penerusan port</string>
<string name="console_menu_resize">Paksakan ukuran</string>
<string name="console_menu_urlscan">Pindai URL</string>
+ <string name="button_yes">Ya</string>
+ <string name="button_no">Tidak</string>
<string name="portforward_local">Lokal</string>
<string name="portforward_remote">Remote</string>
<string name="portforward_dynamic">Dinamis (SOCKS)</string>
@@ -146,6 +148,7 @@
<string name="list_format_error">Gunakan bentuk \"%1$s\"</string>
<string name="format_username">pengguna</string>
<string name="format_hostname">namahost</string>
+ <string name="format_port">Port</string>
<string name="list_menu_pubkeys">Atur Pubkey</string>
<string name="list_menu_sortcolor">Urutkan berdasarkan warna</string>
<string name="list_menu_sortname">Urutkan berdasarkan nama</string>
@@ -160,7 +163,11 @@
<string name="list_rotation_port">Paksakan bentuk tegak</string>
<string name="list_rotation_auto">Otomatis</string>
<string name="list_camera_ctrlaspace">Ctrl+A kemudian spasi</string>
+ <string name="list_camera_ctrla">Ctrl+A</string>
+ <string name="list_camera_esc">Esc</string>
<string name="list_camera_none">Kosong</string>
+ <string name="list_delkey_backspace">Backspace</string>
+ <string name="list_delkey_del">Hapus</string>
<string name="delete_message">Apakah anda yakin ingin menghapus %1$s?</string>
<string name="delete_pos">Ya, hapus</string>
<string name="delete_neg">Batal</string>
@@ -188,15 +195,18 @@
<string name="terminal_enable_portfoward">Aktifkan port forward: %1$s</string>
<string name="local_shell_unavailable">Gagal! Shell lokal tidak tersedia di telepon ini.</string>
<string name="notification_text">%1$s memerlukan perhatian anda.</string>
+ <string name="no">Tidak</string>
<string name="with_confirmation">Dengan konfirmasi</string>
+ <string name="yes">Ya</string>
<string name="exceptions_submit_message">Sepertinya ConnectBot mengalami masalah saat berjalan sebelumnya. Kirim laporan galat ke para pengembang ConnectBot?</string>
+ <string name="menu_colors_reset">Atur ulang</string>
<string name="app_is_running">ConnectBot sedang berjalan</string>
<string name="color_red">merah</string>
<string name="color_green">hijau</string>
<string name="color_blue">biru</string>
<string name="color_gray">abu-abu</string>
- <string name="colors_fg">WD:</string>
- <string name="color_bg">WB:</string>
+ <string name="colors_fg_label">WD: %1$d</string>
+ <string name="color_bg_label">WB: %1$d</string>
<string name="image_description_connected">Tersambung.</string>
<string name="image_description_key_is_locked">Pubkey terkunci.</string>
<string name="image_description_toggle_control_character">Ubah-ubah karakter control.</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index 5c74d5f..a5fc71f 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -73,8 +73,6 @@
<string name="pref_fullscreen_summary">Fela stöðustiku þegar tenging er virk</string>
<string name="pref_memkeys_title">Geyma lykla í minni</string>
<string name="pref_memkeys_summary">Geyma ólæsta lykla í minni þangað til forritinu er lokað</string>
- <string name="pref_update_title">Athuga með uppfærslu</string>
- <string name="pref_update_summary">Velja hve oft ConnectBot leitar að uppfærslum</string>
<string name="pref_conn_persist_title">Halda tengingum</string>
<string name="pref_conn_persist_summary">Halda tengingum í gangi þegar þær eru í bakgrunni</string>
<string name="pref_keymode_title">Orðabók</string>
@@ -97,9 +95,6 @@
<string name="list_keymode_none">Afvirkja</string>
<string name="list_pubkeyids_none">Ekki nota lykla</string>
<string name="list_pubkeyids_any">Nota hvaða ólæsta lykil sem er</string>
- <string name="list_update_daily">Daglega</string>
- <string name="list_update_weekly">Vikulega</string>
- <string name="list_update_never">Aldrei</string>
<string name="hostpref_nickname_title">Gælunafn</string>
<string name="hostpref_color_title">Lita flokk</string>
<string name="hostpref_fontsize_title">Leturstærð (pt)</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 12a1752..0b4e29b 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">Modifica connessione</string>
<string name="title_help">Guida</string>
<string name="title_colors">Colori</string>
+ <string name="title_color_picker">Scelta colore</string>
<string name="resolve_connect">Connetti</string>
<string name="resolve_entropy">Raccolta disordinata</string>
<string name="menu_insert">Aggiungi connessione</string>
@@ -77,10 +78,9 @@
<string name="pref_rotation_summary">Come cambiare rotazione quando la tastiera esce/rientra</string>
<string name="pref_fullscreen_title">Schermo intero</string>
<string name="pref_fullscreen_summary">Nascondi la barra di stato in console</string>
+ <string name="pref_keyboard_category">Tastiera</string>
<string name="pref_memkeys_title">Mantieni chiavi in memoria</string>
<string name="pref_memkeys_summary">Mantiene le chiavi in memoria finché il servizio non viene terminato</string>
- <string name="pref_update_title">Controlla aggiornamenti</string>
- <string name="pref_update_summary">Imposta la frequenza massima per il controllo degli aggiornamenti</string>
<string name="pref_conn_persist_title">Connessioni permanenti</string>
<string name="pref_conn_persist_summary">Forza connessioni a rimanere collegate in sottofondo</string>
<string name="pref_keymode_title">Scorciatoie directory</string>
@@ -104,9 +104,6 @@
<string name="list_keymode_none">Disabilita</string>
<string name="list_pubkeyids_none">Non usare chiavi</string>
<string name="list_pubkeyids_any">Usa qualsiasi chiave sbloccata</string>
- <string name="list_update_daily">Ogni giorno</string>
- <string name="list_update_weekly">Ogni settimana</string>
- <string name="list_update_never">Mai</string>
<string name="hostpref_nickname_title">Soprannome</string>
<string name="hostpref_color_title">Categoria colore</string>
<string name="hostpref_fontsize_title">Dimensione caratteri (pt)</string>
@@ -211,6 +208,8 @@
<string name="color_green">verde</string>
<string name="color_blue">blu</string>
<string name="color_gray">grigio</string>
+ <string name="colors_fg_label">CP: %1$d</string>
+ <string name="color_bg_label">CS: %1$d</string>
<string name="image_description_connected">Connesso.</string>
<string name="image_description_key_is_locked">La chiave e\' bloccata.</string>
<string name="image_description_send_escape_character">Mandare un carattere escape.</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 6c5d185..21d4fdc 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -1,12 +1,14 @@
<?xml version='1.0' encoding='utf-8'?>
<resources>
<string name="app_desc">シンプルでパワフルなオープンソースのSSHクライアント</string>
+ <string name="service_desc">SSH接続とロードされた公開鍵の管理</string>
<string name="title_hosts_list">ホスト</string>
<string name="title_pubkey_list">公開鍵</string>
<string name="title_port_forwards_list">ポート転送</string>
<string name="title_host_editor">ホストを編集</string>
<string name="title_help">ヘルプ</string>
<string name="title_colors">配色</string>
+ <string name="title_color_picker">色の取得</string>
<string name="resolve_connect">接続</string>
<string name="resolve_entropy">エントロピーの取得</string>
<string name="menu_insert">ホストを追加</string>
@@ -39,6 +41,7 @@
<string name="portforward_edit">ポート転送を編集</string>
<string name="portforward_delete">ポート転送を削除</string>
<string name="prompt_nickname">鍵の名前</string>
+ <string name="prompt_nickname_hint_pubkey">私の作業用の鍵</string>
<string name="prompt_source_port">ソースポート:</string>
<string name="prompt_destination">転送先:</string>
<string name="prompt_old_password">旧パスワード:</string>
@@ -64,6 +67,7 @@
<string name="button_generate">鍵生成</string>
<string name="button_resize">リサイズ</string>
<string name="alert_disconnect_msg">接続が失われました.</string>
+ <string name="msg_copyright">Copyright © 2007-2008 Kenny Root http://the-b.org/, Jeffrey Sharkey http://jsharkey.org/</string>
<string name="pref_emulation_category">端末エミュレート</string>
<string name="pref_emulation_title">エミュレートモード</string>
<string name="pref_emulation_summary">PTYで使う端末エミュレーションモード</string>
@@ -72,12 +76,19 @@
<string name="pref_ui_category">ユーザーインターフェース</string>
<string name="pref_rotation_title">画面の向き</string>
<string name="pref_rotation_summary">キーボードのポップイン/アウト時の向きの変更</string>
+ <string name="pref_titlebarhide_title">タイトルバーを自動的に隠す</string>
+ <string name="pref_titlebarhide_summary">タイトルバーとアクセスメニューを表示するにはコンソールをタップ</string>
<string name="pref_fullscreen_title">全画面</string>
<string name="pref_fullscreen_summary">ステータスバーを隠蔽しコンソールとして利用</string>
+ <string name="pref_keyboard_category">キーボード</string>
+ <string name="pref_shiftfkeys_title">Shift+数字はFキー</string>
+ <string name="pref_shiftfkeys_summary">ハードウェアキーボードで、shiftと数字キーでF1-F10を送信します</string>
+ <string name="pref_ctrlfkeys_title">Ctrl+数字はFキー</string>
+ <string name="pref_ctrlfkeys_summary">ソフトウェアキーボードで、ctrlと数字キーでF1-F10を送信します</string>
+ <string name="pref_volumefont_title">音量ボタンでフォントサイズを変更する</string>
+ <string name="pref_volumefont_summary">フォントサイズはホストごとの設定でも変更することができます</string>
<string name="pref_memkeys_title">メモリに鍵を保持する</string>
<string name="pref_memkeys_summary">バックエンドのサービスが終了しない限り、アンロックした鍵をメモリに保持します</string>
- <string name="pref_update_title">更新を確認</string>
- <string name="pref_update_summary">ConnectBotの更新をチェックする頻度を設定します</string>
<string name="pref_conn_persist_title">持続的接続</string>
<string name="pref_conn_persist_summary">バックグラウンドでの実行中に接続の持続を強制する</string>
<string name="pref_keymode_title">ディレクトリのショートカット</string>
@@ -101,9 +112,6 @@
<string name="list_keymode_none">無効</string>
<string name="list_pubkeyids_none">公開鍵を使わない</string>
<string name="list_pubkeyids_any">アンロックされた鍵のいずれかを使う</string>
- <string name="list_update_daily">毎日</string>
- <string name="list_update_weekly">毎週</string>
- <string name="list_update_never">しない</string>
<string name="hostpref_nickname_title">ニックネーム</string>
<string name="hostpref_color_title">色の系統</string>
<string name="hostpref_fontsize_title">フォントのサイズ (pt)</string>
@@ -146,6 +154,7 @@
<string name="portforward_done">ポート転送の作成に成功しました.</string>
<string name="portforward_problem">ポート転送の作成ができません.おそらく1024ポート以下か既に利用されているポートを指定されています.</string>
<string name="portforward_menu_add">ポート転送の追加</string>
+ <string name="hint_userhost">ユーザ\@ホスト名</string>
<string name="list_format_error">%1$s 形式を使ってください</string>
<string name="format_username">ユーザ名</string>
<string name="format_hostname">ホスト名</string>
@@ -164,7 +173,12 @@
<string name="list_rotation_port">縦向き固定</string>
<string name="list_rotation_auto">自動判定</string>
<string name="list_camera_ctrlaspace">Ctrl+Aに続いてSpace</string>
+ <string name="list_camera_ctrla">Ctrl+A</string>
+ <string name="list_camera_esc">Escキー</string>
+ <string name="list_camera_esc_a">Esc+A</string>
<string name="list_camera_none">なし</string>
+ <string name="list_delkey_backspace">Backspace</string>
+ <string name="list_delkey_del">Delete</string>
<string name="delete_message">\'%1$s\'を削除してよろしいですか?</string>
<string name="delete_pos">はい、削除します</string>
<string name="delete_neg">キャンセル</string>
@@ -202,4 +216,11 @@
<string name="color_green">緑</string>
<string name="color_blue">青</string>
<string name="color_gray">グレー</string>
+ <string name="colors_fg_label">FG: %1$d</string>
+ <string name="color_bg_label">BG: %1$d</string>
+ <string name="image_description_connected">接続しました。</string>
+ <string name="image_description_key_is_locked">キーがロックされました。</string>
+ <string name="image_description_toggle_control_character">コントロール文字を切り替えます。</string>
+ <string name="image_description_send_escape_character">エスケープ文字を送信します。</string>
+ <string name="image_description_show_keyboard">キーボードを表示します。</string>
</resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 2993e6d..83313ef 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -73,8 +73,6 @@
<string name="pref_fullscreen_summary">콘솔일 때 상태 표시줄을 숨김</string>
<string name="pref_memkeys_title">메모리에 키를 기억</string>
<string name="pref_memkeys_summary">백엔드 서비스가 종료되기 전까지 잠금이 풀린 키들을 메모리에 유지합니다</string>
- <string name="pref_update_title">업데이트 검사</string>
- <string name="pref_update_summary">ConnectBot 업데이트 확인 주기 설정</string>
<string name="pref_conn_persist_title">접속 유지</string>
<string name="pref_conn_persist_summary">백그라운드 동안에도 강제로 연결된 상태 유지</string>
<string name="pref_keymode_title">디렉터리 바로 가기</string>
@@ -97,9 +95,6 @@
<string name="list_keymode_none">사용 안 함</string>
<string name="list_pubkeyids_none">키 사용 안함</string>
<string name="list_pubkeyids_any">잠금키 사용</string>
- <string name="list_update_daily">매일</string>
- <string name="list_update_weekly">매주</string>
- <string name="list_update_never">하지 않음</string>
<string name="hostpref_nickname_title">닉네임</string>
<string name="hostpref_color_title">색상 카테고리</string>
<string name="hostpref_fontsize_title">글꼴 크기 (pt)</string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 183a953..9be11ac 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -64,5 +64,4 @@
<string name="pref_fullscreen_title">На цел екран</string>
<string name="pref_fullscreen_summary">Сокриј ја статусната трака додека си во конзола</string>
<string name="pref_memkeys_title">Запомни ги клучевите во меморија</string>
- <string name="pref_update_title">Проверка на ажурирања</string>
</resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 6f8941e..81025dc 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Gjem statuslinje mens du er i konsoll</string>
<string name="pref_memkeys_title">Lagre nøkler</string>
<string name="pref_memkeys_summary">Husk opplåste nøkler helt til programmet avsluttes</string>
- <string name="pref_update_title">Se etter oppdateringer</string>
- <string name="pref_update_summary">Angi hyppigheten for å se etter oppdateringer til ConnectBot</string>
<string name="pref_conn_persist_title">Oppretthold forbindelser</string>
<string name="pref_conn_persist_summary">Oppretthold forbindelser selv når programmet kjører i bakgrunnen</string>
<string name="pref_keymode_title">Hurtigtaster for mapper</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Deaktiver</string>
<string name="list_pubkeyids_none">Ikke bruk nøkler</string>
<string name="list_pubkeyids_any">Bruk en vilkårlig ulåst tast</string>
- <string name="list_update_daily">Daglig</string>
- <string name="list_update_weekly">Ukentlig</string>
- <string name="list_update_never">Aldri</string>
<string name="hostpref_nickname_title">Kallenavn</string>
<string name="hostpref_color_title">Fargeinndeling</string>
<string name="hostpref_fontsize_title">Skriftstørrelse (pt)</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index a4e4a78..7d3af43 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Verberg status balk terwijl in console</string>
<string name="pref_memkeys_title">Onthoud sleutels in geheugen</string>
<string name="pref_memkeys_summary">Houd ontgrendelde sleutels in geheugen tot achtergrond service is gestopt</string>
- <string name="pref_update_title">Update controle</string>
- <string name="pref_update_summary">Stel de maximale frequentie in om te controleren voor ConnectBot updates</string>
<string name="pref_conn_persist_title">Behoud verbindingen</string>
<string name="pref_conn_persist_summary">Forceer dat de verbindingen actief blijven op de achtergrond</string>
<string name="pref_keymode_title">Folder snelkoppelingen</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Schakel uit</string>
<string name="list_pubkeyids_none">Gebruik sleutels niet</string>
<string name="list_pubkeyids_any">Gebruik een willekeurige ontgrendelde sleutel</string>
- <string name="list_update_daily">Dagelijks</string>
- <string name="list_update_weekly">Wekelijks</string>
- <string name="list_update_never">Nooit</string>
<string name="hostpref_nickname_title">Bijnaam</string>
<string name="hostpref_color_title">Kleur catogorie</string>
<string name="hostpref_fontsize_title">Lettergrootte</string>
diff --git a/res/values-oc/strings.xml b/res/values-oc/strings.xml
index 4acf5bc..aad61b6 100644
--- a/res/values-oc/strings.xml
+++ b/res/values-oc/strings.xml
@@ -43,13 +43,9 @@
<string name="alert_disconnect_msg">Connexion perduda</string>
<string name="pref_ui_category">Interfàcia d\'utilizaire</string>
<string name="pref_fullscreen_title">Ecran complet</string>
- <string name="pref_update_title">Verificar las mesas a jorn</string>
<string name="pref_conn_persist_title">Connexions persistentas</string>
<string name="pref_keymode_title">Acorchis de navigacion</string>
<string name="list_keymode_none">Desactivar</string>
- <string name="list_update_daily">Cada jorn</string>
- <string name="list_update_weekly">Cada setmana</string>
- <string name="list_update_never">Pas jamai</string>
<string name="hostpref_nickname_title">Escais</string>
<string name="hostpref_encoding_title">Encodatge</string>
<string name="hostpref_connection_category">Paramètre de connexion</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 2cbde54..7f320b0 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">Edytuj host</string>
<string name="title_help">Pomoc</string>
<string name="title_colors">Kolory</string>
+ <string name="title_color_picker">Wybór koloru</string>
<string name="resolve_connect">Połącz</string>
<string name="resolve_entropy">Zbierz dane losowe</string>
<string name="menu_insert">Dodaj host</string>
@@ -77,10 +78,9 @@
<string name="pref_rotation_summary">Sposób orientacji ekranu przy wysuniętej/wsuniętej klawiaturze</string>
<string name="pref_fullscreen_title">Pełny ekran</string>
<string name="pref_fullscreen_summary">Ukryj pasek statusu podczas pracy w konsoli</string>
+ <string name="pref_keyboard_category">Klawiatura</string>
<string name="pref_memkeys_title">Zapamiętaj klucze w pamięci</string>
<string name="pref_memkeys_summary">Trzymaj odblokowane klucze w pamięci dopóki usługa się nie rozłączy</string>
- <string name="pref_update_title">Sprawdź aktualizacje</string>
- <string name="pref_update_summary">Ustawienie częstości sprawdzania aktualizacji</string>
<string name="pref_conn_persist_title">Utrzymuj połącznia</string>
<string name="pref_conn_persist_summary">Wymuś utrzymanie połączeń, gdy aplikacja działa w tle</string>
<string name="pref_keymode_title">Skróty klawiaturowe</string>
@@ -104,9 +104,6 @@
<string name="list_keymode_none">Wyłącz</string>
<string name="list_pubkeyids_none">Nie używaj kluczy</string>
<string name="list_pubkeyids_any">Użyj dowolnego odblokowanego klucza</string>
- <string name="list_update_daily">Dziennie</string>
- <string name="list_update_weekly">Tygodniowo</string>
- <string name="list_update_never">Nigdy</string>
<string name="hostpref_nickname_title">Nazwa skrócona</string>
<string name="hostpref_color_title">Kolor kategorii</string>
<string name="hostpref_fontsize_title">Rozmiar czcionki</string>
@@ -211,8 +208,8 @@
<string name="color_green">zielony</string>
<string name="color_blue">niebieski</string>
<string name="color_gray">szary</string>
- <string name="colors_fg">FG:</string>
- <string name="color_bg">BG:</string>
+ <string name="colors_fg_label">FG: %1$d</string>
+ <string name="color_bg_label">BG: %1$d</string>
<string name="image_description_connected">Połączono</string>
<string name="image_description_key_is_locked">Klucz zablokowany</string>
<string name="image_description_toggle_control_character">Przełącz znak kontrolny</string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index f4d06f0..79f5620 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">Edição de Host</string>
<string name="title_help">Ajuda</string>
<string name="title_colors">Cores</string>
+ <string name="title_color_picker">Escolha a cor</string>
<string name="resolve_connect">Conectar</string>
<string name="resolve_entropy">Sensibilidade</string>
<string name="menu_insert">Adicionar Host</string>
@@ -77,10 +78,9 @@
<string name="pref_rotation_summary">Como alterar a rotação da tela quando se conecta/desconecta um teclado</string>
<string name="pref_fullscreen_title">Tela cheia</string>
<string name="pref_fullscreen_summary">Ocultar a barra de estatus no modo terminal</string>
+ <string name="pref_keyboard_category">Teclado</string>
<string name="pref_memkeys_title">Guardar as chaves em memória</string>
<string name="pref_memkeys_summary">Manter chaves desbloqueadas na memória até que o serviço seja terminado</string>
- <string name="pref_update_title">Procurar por atualizações</string>
- <string name="pref_update_summary">Configurar frequencia para checar atualizações do ConnectBot</string>
<string name="pref_conn_persist_title">Conexões persistentes</string>
<string name="pref_conn_persist_summary">Forçar as conexões para que continuem conectadas mesmo em segundo plano</string>
<string name="pref_keymode_title">Teclas de atalho</string>
@@ -104,9 +104,6 @@
<string name="list_keymode_none">Desabilitar</string>
<string name="list_pubkeyids_none">Não usar chaves</string>
<string name="list_pubkeyids_any">Usar qualquer chave pública</string>
- <string name="list_update_daily">Diariamente</string>
- <string name="list_update_weekly">Semanalmente</string>
- <string name="list_update_never">Nunca</string>
<string name="hostpref_nickname_title">Apelido</string>
<string name="hostpref_color_title">Categoria de cor</string>
<string name="hostpref_fontsize_title">Tamanho da fonte (pontos)</string>
@@ -211,8 +208,8 @@
<string name="color_green">verde</string>
<string name="color_blue">azul</string>
<string name="color_gray">cinza</string>
- <string name="colors_fg">PP:</string>
- <string name="color_bg">SP:</string>
+ <string name="colors_fg_label">PP: %1$d</string>
+ <string name="color_bg_label">SP: %1$d</string>
<string name="image_description_connected">Conectado.</string>
<string name="image_description_key_is_locked">A chave está bloqueada.</string>
<string name="image_description_send_escape_character">Enviar caractere de escape.</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 401bc69..4aeb1a2 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Esconder a barra de notificação quando estiver na consola</string>
<string name="pref_memkeys_title">Lembrar chaves em memoria</string>
<string name="pref_memkeys_summary">Manter chaves desbloqueadas em memória até ao serviço de fundo terminar</string>
- <string name="pref_update_title">Verificar actualizações</string>
- <string name="pref_update_summary">Definir a frequência máxima para verificar actualizações do ConnectBot</string>
<string name="pref_conn_persist_title">Persistir ligações</string>
<string name="pref_conn_persist_summary">Forçar ligações a ficarem ligadas quando em segundo plano</string>
<string name="pref_keymode_title">Atalhos de directoria</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Desactivar</string>
<string name="list_pubkeyids_none">Não usar teclas</string>
<string name="list_pubkeyids_any">Usar qualquer tecla não bloqueada</string>
- <string name="list_update_daily">Diariamente</string>
- <string name="list_update_weekly">Semanalmente</string>
- <string name="list_update_never">Nunca</string>
<string name="hostpref_nickname_title">Alcunha</string>
<string name="hostpref_color_title">Categoria de cor</string>
<string name="hostpref_fontsize_title">Tamanho da fonte (pt)</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index e80b26b..61e19c3 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -75,12 +75,13 @@
<string name="pref_ui_category">Пользовательский интерфейс</string>
<string name="pref_rotation_title">Настройки ориентации экрана</string>
<string name="pref_rotation_summary">Настройки смены ориентации дисплея при пользовании клавиатурой</string>
+ <string name="pref_titlebarhide_title">Автоскрытие заголовка</string>
<string name="pref_fullscreen_title">Полный экран</string>
<string name="pref_fullscreen_summary">Убирать область статуса во время работы с консолью</string>
+ <string name="pref_ctrlfkeys_title">Ctrl+num аналогично F-keys</string>
+ <string name="pref_volumefont_title">Клавиша громкости регулирует размер шрифта</string>
<string name="pref_memkeys_title">Запомнить ключи в памяти</string>
<string name="pref_memkeys_summary">Держать ключи в памяти пока процессы работают</string>
- <string name="pref_update_title">Проверка обновления</string>
- <string name="pref_update_summary">Как часто проверять обновления для ConnectBot</string>
<string name="pref_conn_persist_title">Постоянные соединения</string>
<string name="pref_conn_persist_summary">Принудительно сохранять соединение в фоновом режиме.</string>
<string name="pref_keymode_title">Ярлыки папок</string>
@@ -104,9 +105,6 @@
<string name="list_keymode_none">Отключить</string>
<string name="list_pubkeyids_none">Не использовать ключи</string>
<string name="list_pubkeyids_any">Использовать любую свободную клавишу</string>
- <string name="list_update_daily">Ежедневно</string>
- <string name="list_update_weekly">Еженедельно</string>
- <string name="list_update_never">Никогда</string>
<string name="hostpref_nickname_title">Псевдоним</string>
<string name="hostpref_color_title">Цвет для категории</string>
<string name="hostpref_fontsize_title">Размер шрифта</string>
@@ -212,5 +210,6 @@
<string name="color_blue">синий</string>
<string name="color_gray">серый</string>
<string name="image_description_connected">Подключено</string>
+ <string name="image_description_key_is_locked">Ключ заблокирован</string>
<string name="image_description_show_keyboard">Показать клавиатуру</string>
</resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 2920121..aa5e226 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Skryť stavový riadok, keď je zobrazená konzola</string>
<string name="pref_memkeys_title">Zapamätať kľúče v pamäti</string>
<string name="pref_memkeys_summary">Ponechať odomknuté kľúče v pamäti pokiaľ nie je ukončená služba na pozadí.</string>
- <string name="pref_update_title">Kontrolovať aktualizácie</string>
- <string name="pref_update_summary">Nastaviť maximálnu frekvenciu kontroly aktualizácií pre ConnectBot</string>
<string name="pref_conn_persist_title">Perzistentné pripojenia</string>
<string name="pref_conn_persist_summary">Vynútiť spojenie aj v pozadí</string>
<string name="pref_keymode_title">Skratky adresárov</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Vypnúť</string>
<string name="list_pubkeyids_none">Nepoužívať kľúče</string>
<string name="list_pubkeyids_any">Použiť ktorýkoľvek odomknutý kľúč</string>
- <string name="list_update_daily">Denne</string>
- <string name="list_update_weekly">Týždenne</string>
- <string name="list_update_never">Nikdy</string>
<string name="hostpref_nickname_title">Prezývka</string>
<string name="hostpref_color_title">Farebná kategória</string>
<string name="hostpref_fontsize_title">Veľkosť písma (bodov)</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 1647a94..8552716 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Skrij vrstico stanja, ko v konzoli</string>
<string name="pref_memkeys_title">Zapomni ključe v spominu</string>
<string name="pref_memkeys_summary">Hrani odklenjene ključe v spomnu dokler storitev v zaledju ni zaključena</string>
- <string name="pref_update_title">Pregled posodobitev</string>
- <string name="pref_update_summary">Nastavite največjo pogostost za preverjanje posodobitev za ConnectBota</string>
<string name="pref_conn_persist_title">Obstojne povezave</string>
<string name="pref_conn_persist_summary">Prisili povezave, da ostanejo povezane v ozadju</string>
<string name="pref_keymode_title">Bližnjice mape</string>
@@ -101,9 +99,6 @@
<string name="list_keymode_none">Onemogoči</string>
<string name="list_pubkeyids_none">Ne uporabljaj ključev</string>
<string name="list_pubkeyids_any">Uporabi kateregakoli odklenjenega ključa</string>
- <string name="list_update_daily">Dnevno</string>
- <string name="list_update_weekly">Tedensko</string>
- <string name="list_update_never">Nikoli</string>
<string name="hostpref_nickname_title">Vzdevek</string>
<string name="hostpref_color_title">Barvna kategorija</string>
<string name="hostpref_fontsize_title">Velikost pisave (pt)</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
new file mode 100644
index 0000000..370e630
--- /dev/null
+++ b/res/values-sr/strings.xml
@@ -0,0 +1,516 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * ConnectBot: simple, powerful, open-source SSH client for Android
+ * Copyright 2007 Kenny Root, Jeffrey Sharkey
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <!-- app_name needs to be translated/transcribed in Serbian -->
+ <string name="app_name">Конектбот</string>
+
+ <!-- Summary of what ConnectBot is; used as a short description in the Android running apps list -->
+ <string name="app_desc">"Једноставан, моћан, ССХ клијент отвореног кôда."</string>
+
+ <!-- Summary of what the ConnectBot service does; displayed in the Android running apps list -->
+ <string name="service_desc">"Одржава ССХ везе и учитане јавне кључеве"</string>
+
+ <!-- Window title for the Host List -->
+ <string name="title_hosts_list">"Домаћини"</string>
+ <!-- Window title for the Pubkeys List -->
+ <string name="title_pubkey_list">"Јавни кључеви"</string>
+ <!-- Window title for the Port Forwards List -->
+ <string name="title_port_forwards_list">"Прослеђени портови"</string>
+ <!-- Window title when editing host details -->
+ <string name="title_host_editor">"Уреди домаћина"</string>
+ <!-- Window title for Help index -->
+ <string name="title_help">"Помоћ"</string>
+ <!-- Window title for color list editing screen -->
+ <string name="title_colors">"Боје"</string>
+ <!-- Dialog title for color picker dialog -->
+ <string name="title_color_picker">"Изаберите боју"</string>
+
+ <string name="resolve_connect">"Повежи"</string>
+ <!-- Menu selection where user must move finger randomly over an area to gather entropy (collect random bits) -->
+ <string name="resolve_entropy">"Сакупи ентропију"</string>
+
+ <string name="menu_insert">"Додај домаћина"</string>
+ <string name="menu_delete">"Обриши домаћина"</string>
+ <string name="menu_preferences">"Поставке"</string>
+
+ <string name="help_intro">"Изаберите тему испод за више информација о поједином предмету."</string>
+ <string name="help_about">"О Конектботу"</string>
+ <string name="help_keyboard">"Тастатура"</string>
+
+ <string name="pubkey_generate">"Генериши"</string>
+ <string name="pubkey_import">"Увези"</string>
+ <string name="pubkey_delete">"Обриши кључ"</string>
+ <!-- Dialog title when user must move finger randomly over an area to gather entropy (collect random bits) -->
+ <string name="pubkey_gather_entropy">"Сакупљам ентропију"</string>
+ <string name="pubkey_touch_prompt">"Додирните овде да бисте сакупили ентропију: %1$d%% завршено"</string>
+ <string name="pubkey_touch_hint">"Да бисте осигурали насумичност током генерисања кључа, померајте прст насумично преко поља испод."</string>
+ <string name="pubkey_generating">"Генеришем пар кључева..."</string>
+ <string name="pubkey_copy_private">"Копирај приватни кључ"</string>
+ <string name="pubkey_copy_public">"Копирај јавни кључ"</string>
+ <!-- Note that the '\n' just splits lines, so it's actually "create or import" -->
+ <string name="pubkey_list_empty">"Тапните „Мени“ да бисте направили "\n"или увезли пар кључева."</string>
+ <string name="pubkey_unknown_format">"Непознат формат"</string>
+ <string name="pubkey_change_password">"Измени лозинку"</string>
+ <string name="pubkey_list_pick">"Изабери са /sdcard"</string>
+ <string name="pubkey_import_parse_problem">"Проблем рашчлањивања увезеног приватног кључа"</string>
+ <string name="pubkey_unlock">"Откључај кључ"</string>
+ <string name="pubkey_failed_add">"Лоша лозинка за кључ „%1$s“. Аутентификација није успела."</string>
+ <string name="pubkey_memory_load">"Учитај у меморију"</string>
+ <string name="pubkey_memory_unload">"Уклони из меморије"</string>
+ <string name="pubkey_load_on_start">"Учитај кључеве по покретању"</string>
+ <!-- Pubkey preference asking user whether the key use should be confirmed via prompt before it can be used for authentication -->
+ <string name="pubkey_confirm_use">"Потврди пре употребе"</string>
+
+ <!-- Note that the '\n' splits lines, so it's actually "create port forwards" -->
+ <string name="portforward_list_empty">"Тапните „Мени“ да бисте направили"\n"прослеђење порта."</string>
+ <string name="portforward_edit">"Уреди прослеђење порта"</string>
+ <string name="portforward_delete">"Обриши прослеђење порта"</string>
+
+ <string name="prompt_nickname">"Надимак:"</string>
+ <!-- An example string that could be used as a nickname for a pubkey. -->
+ <string name="prompt_nickname_hint_pubkey">"Мој радни кључ"</string>
+ <!-- The source TCP port for port forwards. -->
+ <string name="prompt_source_port">"Изворни порт:"</string>
+ <!-- The "host:port" combination used for port forward destinations. -->
+ <string name="prompt_destination">"Одредиште:"</string>
+ <string name="prompt_old_password">"Стара лозинка:"</string>
+ <string name="prompt_password">"Лозинка:"</string>
+ <!-- Added after a "Password:" prompt to indicate user needs to confirm entry. -->
+ <string name="prompt_again">"(поново)"</string>
+ <!-- Label for the user to select port forward type. -->
+ <string name="prompt_type">"Тип:"</string>
+ <string name="prompt_password_can_be_blank">"Напомена: лозинка може да буде празна"</string>
+ <!-- Prompt for the size of the private key in bits. -->
+ <string name="prompt_bits">"Бита:"</string>
+
+ <!-- Prompt for the password to unlock a certain pubkey. -->
+ <string name="prompt_pubkey_password">"Лозинка за кључ „%1$s“"</string>
+
+ <!-- Prompt for whether to allow SSH Authentication Agent to use the specified key. Note that the '\n' means split the line so it's actually "host to use key" -->
+ <string name="prompt_allow_agent_to_use_key">"Дозволити удаљеном домаћину да"\n"користи тастер „%1$s“?"</string>
+
+ <!-- The header of the warning a user gets when the host key has changed. Note that this can be a very serious attack, so we try to be as "loud" to the user as possible. -->
+ <string name="host_verification_failure_warning_header">"УПОЗОРЕЊЕ: ИДЕНТИФИКАЦИЈА УДАЉЕНОГ ДОМАЋИНА ЈЕ ИЗМЕЊЕНА!"</string>
+ <!-- The body of the warning a user gets when the host key has changed. Note that this can be a very serious attack, so we try to be as "loud" to the user as possible. -->
+ <string name="host_verification_failure_warning">"МОГУЋЕ ЈЕ ДА НЕКО РАДИ НЕШТО ЛОШЕ!"\n"Неко вас можда управо прислушкује (човек-између напад)!"\n"Такође је могуће да је кључ домаћина управо измењен."</string>
+
+ <!-- Prompt user gets when the remote host has disconnected unexpectedly. -->
+ <string name="prompt_host_disconnected">"Домаћин је прекинуо везу."\n"Да затворим сесију?"</string>
+ <!-- Prompt user must answer yes or no to when the remote host fails verification of encryption fingerprint -->
+ <string name="prompt_continue_connecting">"Желите ли заиста да"\n"наставите повезивање?"</string>
+
+ <!-- Sent to user when the remote public encryption key fingerprint doesn't match the local database -->
+ <string name="host_authenticity_warning">"Не могу да утврдим аутентичност домаћина „%1$s“."</string>
+ <!-- First field is encryption algorithm. Second is the actual fingerprint in hex digits -->
+ <string name="host_fingerprint">"Отисак домаћина %1$s је %2$s"</string>
+
+ <string name="alert_passwords_do_not_match_msg">"Лозинке се поклапају!"</string>
+ <string name="alert_wrong_password_msg">"Погрешна лозинка!"</string>
+ <string name="alert_key_corrupted_msg">"Изгледа да је приватни кључ покварен!"</string>
+ <string name="alert_sdcard_absent">"СД картица није уметнута!"</string>
+
+ <!-- Add a new item (e.g., host or pubkey) to the list. -->
+ <string name="button_add">"Додај"</string>
+ <!-- Change an existing item's (e.g., host or pubkey) details. -->
+ <string name="button_change">"Измени"</string>
+ <!-- Button that begins the generation of a public key pair. -->
+ <string name="button_generate">"Генериши кључ"</string>
+ <!-- Button that resizes the screen to the user-specified dimensions. -->
+ <string name="button_resize">"Промени величину"</string>
+
+ <string name="alert_disconnect_msg">"Веза изгубљена"</string>
+
+ <string name="msg_copyright">"Ауторско право &#169; 2007-2008 Kenny Root http://the-b.org/, Jeffrey Sharkey http://jsharkey.org/"</string>
+
+ <!-- The category title for terminal emulation preferences. -->
+ <string name="pref_emulation_category">"Емулација терминала"</string>
+
+ <!-- Name for the emulation terminal type preference. -->
+ <string name="pref_emulation_title">"Режим емулације"</string>
+ <!-- Description of the emulation terminal type preference. -->
+ <string name="pref_emulation_summary">"Режим емулације терминала за PTY везе"</string>
+
+ <!-- Name for the scrollback size preference -->
+ <string name="pref_scrollback_title">"Величина преписа"</string>
+ <!-- Description of the scrollback size preference -->
+ <string name="pref_scrollback_summary">"Величина бафера преписа који се држи у меморији за сваку конзолу"</string>
+
+ <!-- The category title for user interface preferences -->
+ <string name="pref_ui_category">"Корисничко сучеље"</string>
+
+ <!-- Name for the rotation mode preference -->
+ <string name="pref_rotation_title">"Режим ротације"</string>
+ <!-- Summary for the rotation mode preference -->
+ <string name="pref_rotation_summary">"Како променити ротацију при извлачењу/увлачењу тастатуре"</string>
+
+ <!-- Name for the titlebar hide preference -->
+ <string name="pref_titlebarhide_title">"Аутоматски сакриј траку наслова"</string>
+ <!-- Summary for the titlebar hide preference -->
+ <string name="pref_titlebarhide_summary">"Тапните конзолу да бисте приказали траку наслова и приступили менију"</string>
+
+ <!-- Name for the full screen preference -->
+ <string name="pref_fullscreen_title">"Цео екран"</string>
+ <!-- Summary for the full screen preference -->
+ <string name="pref_fullscreen_summary">"Сакриј траку стања при раду у конзоли"</string>
+
+ <!-- The category title for keyboard preferences -->
+ <string name="pref_keyboard_category">"Тастатура"</string>
+
+ <!-- Name for the shifted numbers are f-keys preference -->
+ <string name="pref_shiftfkeys_title">"Shift+num су F-тастери"</string>
+ <!-- Summary for the shifted numbers are f-keys preference -->
+ <string name="pref_shiftfkeys_summary">"На хардверским тастатурама, тастери бројева шаљу F1-F10 са Shift"</string>
+
+ <!-- Name for the ctrl'ed numbers are f-keys preference -->
+ <string name="pref_ctrlfkeys_title">"Ctrl+num су F-тастери"</string>
+ <!-- Summary for the ctrl'ed numbers are f-keys preference -->
+ <string name="pref_ctrlfkeys_summary">"На софтверским тастатурама, тастери бројева шаљу F1-F10 са Ctrl"</string>
+
+ <!-- Name for the volume keys control font size preference -->
+ <string name="pref_volumefont_title">"Тастери за звук мењају вел. фонта"</string>
+ <!-- Summary for the volume keys control font size preference -->
+ <string name="pref_volumefont_summary">"Величину фонта такође можете да мењате у поставкама по домаћину"</string>
+
+ <!-- Name for the memorize keys preference -->
+ <string name="pref_memkeys_title">"Држи кључеве у меморији"</string>
+ <!-- Summary for the memorize keys preference -->
+ <string name="pref_memkeys_summary">"Држи откључане кључеве у меморији док се позадински сервис не оконча"</string>
+
+ <!-- Name for the preference that forces the service to stay running in the background.-->
+ <string name="pref_conn_persist_title">"Трајне везе"</string>
+ <!-- Summary for the preference that forces the service to stay running in the background. -->
+ <string name="pref_conn_persist_summary">"Присили одржање веза при раду у позадини"</string>
+
+ <!-- Name for the keyboard shortcuts preference -->
+ <string name="pref_keymode_title">"Пречице директоријума"</string>
+ <!-- Summary for the keyboard shortcuts preference -->
+ <string name="pref_keymode_summary">"Одредите како користити Alt за „/“ и Shift за табулатор"</string>
+
+ <!-- Name for the sticky modifiers preference -->
+ <string name="pref_stickymodifiers_title">"Лепљиви модификатори"</string>
+ <!-- Summary for the sticky modifiers preference -->
+ <string name="pref_stickymodifiers_summary">"Модификаторски тастери остају укључени до притиска на други тастер"</string>
+
+ <!-- Sticky modifier preference value description for when only the Alt key should be a sticky modifier. -->
+ <string name="only_alt">"Само Alt"</string>
+
+ <!-- Name for the camera shortcut usage preference -->
+ <string name="pref_camera_title">"Пречица камере"</string>
+ <!-- Summary for the camera shortcut usage preference -->
+ <string name="pref_camera_summary">"Одредите пречицу за окидање по притиску на тастер камере"</string>
+
+ <!-- Name for the keep screen on preference -->
+ <string name="pref_keepalive_title">"Држи екран укљученим"</string>
+ <!-- Summary for the camera shortcut usage preference -->
+ <string name="pref_keepalive_summary">"Спречи искључивање екрана при раду у конзоли"</string>
+
+ <!-- Name for the Wi-Fi lock preference -->
+ <string name="pref_wifilock_title">"Држи бежични активним"</string>
+ <!-- Summary for the Wi-Fi lock preference -->
+ <string name="pref_wifilock_summary">"Спречи искључивање бежичног кад је сесија активна"</string>
+
+ <!-- Name for the haptic feedback (bumpy arrow) preference -->
+ <string name="pref_bumpyarrows_title">"Џомбасте стрелице"</string>
+ <!-- Summary for the haptic feedback (bumpy arrow) preference -->
+ <string name="pref_bumpyarrows_summary">"Вибрирај по слању тастера стрелице са трекбола; корисно при спорим везама"</string>
+
+ <!-- Category title for the Terminal Bell preferences -->
+ <string name="pref_bell_category">"Звоно терминала"</string>
+
+ <!-- Checkbox preference title for the audible terminal bell feature -->
+ <string name="pref_bell_title">"Звучно звоно"</string>
+
+ <!-- Title for the slider preference to set the volume -->
+ <string name="pref_bell_volume_title">"Јачина звука звона"</string>
+
+ <!-- Checkbox preference title for the vibrate on terminal bell feature -->
+ <string name="pref_bell_vibrate_title">"Вибрирај на звоно"</string>
+
+ <!-- Checkbox preference title for the receive notifications on terminal bell feature -->
+ <string name="pref_bell_notification_title">"Позадинска обавештења"</string>
+ <!-- Brief summary of the feature that is enabled when the checkbox preference for the receive notifications on terminal bell feature is checked -->
+ <string name="pref_bell_notification_summary">"Прикажи обавештење кад терминал у позадини огласи звоно."</string>
+
+ <!-- Preference selection to indicate use of right side of keyboard for special shortcuts. -->
+ <string name="list_keymode_right">"Користи тастере десне стране"</string>
+ <!-- Preference selection to indicate use of left side of keyboard for special shortcuts. -->
+ <string name="list_keymode_left">"Користи тастере леве стране"</string>
+ <!-- Preference selection to indicate never to use special shortcut keys. -->
+ <string name="list_keymode_none">"Онемогући"</string>
+
+ <!-- Preference to not use pubkeys to authenticate to this host. -->
+ <string name="list_pubkeyids_none">"Не користи кључеве"</string>
+ <!-- Preference to use any pubkey to authenticate to this host. -->
+ <string name="list_pubkeyids_any">"Користи било који откључани кључ"</string>
+
+ <!-- Host nickname field preference title -->
+ <string name="hostpref_nickname_title">"Надимак"</string>
+
+ <!-- Host color category preference title -->
+ <string name="hostpref_color_title">"Категорија боје"</string>
+
+ <!-- Host's default font size when opening the terminal in points (pt) -->
+ <string name="hostpref_fontsize_title">"Величина фонта (pt)"</string>
+
+ <!-- Host pubkey usage preference title -->
+ <string name="hostpref_pubkeyid_title">"Користи аутентификацију кључем"</string>
+
+ <!-- Preference title for the SSH Authentication Agent Forwarding for a host connection -->
+ <string name="hostpref_authagent_title">"Користи ССХ агента за аутентификацију"</string>
+
+ <!-- Host post-login automation preference title -->
+ <string name="hostpref_postlogin_title">"Аутоматизација по пријави"</string>
+ <!-- Host post-login automation preference summary -->
+ <string name="hostpref_postlogin_summary">"Наредбе за покретање на удаљеном серверу након аутентификације"</string>
+
+ <!-- Host compression preference title -->
+ <string name="hostpref_compression_title">"Компресија"</string>
+ <!-- Summary for compression preference -->
+ <string name="hostpref_compression_summary">"Ово може да помогне при спорим мрежама"</string>
+
+ <!-- Setting for whether we want a session to start up when we connect to a host -->
+ <string name="hostpref_wantsession_title">"Покрени сесију шкољке"</string>
+ <!-- Summary for field asking whether a shell session should be started up upon connection or not -->
+ <string name="hostpref_wantsession_summary">"Онемогућите да бисте користили само прослеђења портова"</string>
+
+ <!-- Setting for whether the host should be reconnected to automatically upon disconnect -->
+ <string name="hostpref_stayconnected_title">"Остани повезан"</string>
+ <!-- Summary for preference asking whether the host should be reconnected to when it disconnects -->
+ <string name="hostpref_stayconnected_summary">"Покушај се поново повезати по прекиду везе"</string>
+
+ <!-- Setting for whether we should prompt to close after getting disconnected -->
+ <string name="hostpref_quickdisconnect_title">"Затвори по прекиду"</string>
+ <string name="hostpref_quickdisconnect_summary">"Затвори без питања одмах по прекиду везе."</string>
+
+ <!-- Setting for what key code is sent to the server when DEL key is pressed. -->
+ <string name="hostpref_delkey_title">"DEL тастер"</string>
+ <!-- Summary for field asking what key code is sent to the server when DEL key is pressed. -->
+ <string name="hostpref_delkey_summary">"Кôд тастера који се шаље притиском на DEL тастер"</string>
+
+ <!-- Host character encoding preference title -->
+ <string name="hostpref_encoding_title">"Кодирање"</string>
+ <!-- Host character encoding preference summary -->
+ <string name="hostpref_encoding_summary">"Кодирање за домаћина"</string>
+
+ <!-- Host preference category title for connection settings -->
+ <string name="hostpref_connection_category">"Поставке везе"</string>
+
+ <!-- Username field title for host editor preference -->
+ <string name="hostpref_username_title">"Корисничко име"</string>
+
+ <!-- Hostname field title for host editor preference -->
+ <string name="hostpref_hostname_title">"Домаћин"</string>
+
+ <!-- Port field title for host editor preference -->
+ <string name="hostpref_port_title">"Порт"</string>
+
+ <!-- Displayed to indicate a host has never been connected to. -->
+ <string name="bind_never">"Никад повезиван"</string>
+ <!-- The time that has elapsed since a host was connected to when it has been less than an hour. -->
+ <string name="bind_minutes">"пре %1$s минут(а)"</string>
+ <!-- The time that has elapsed since a host was connected to when it has been less than a day. -->
+ <string name="bind_hours">"пре %1$s сата(и)"</string>
+ <!-- The time that has elapsed since a host was connected to when it has been a day or more. -->
+ <string name="bind_days">"пре %1$s дан(а)"</string>
+
+ <!-- Message given when user copies from the terminal. -->
+ <string name="console_copy_done">"Копирано %1$d бајта на клипборд"</string>
+ <!-- Instructions for how to copy from the terminal. The '\n' entries are to split lines to improve readability and prevent wrapping off the screen. -->
+ <string name="console_copy_start">"Додирните и превуците"\n"или користите дирекциони контролер"\n"да изаберете површину за копирање</string>
+
+ <!-- Button to close the disconnected terminal window. -->
+ <string name="console_menu_close">"Затвори"</string>
+ <!-- Button to begin copying from the terminal to the clipboard. -->
+ <string name="console_menu_copy">"Копирај"</string>
+ <!-- Button to paste from the clipboard to the terminal. -->
+ <string name="console_menu_paste">"Налепи"</string>
+ <!-- Button that brings user to the Port Forwards List. -->
+ <string name="console_menu_portforwards">"Прослеђења портова"</string>
+ <!-- Button that brings user to the terminal resizing dialog where they can force a size. -->
+ <string name="console_menu_resize">"Наметни величину"</string>
+ <!-- Button that brings up the list of URLs on the current screen -->
+ <string name="console_menu_urlscan">"Тражење УРЛова"</string>
+
+ <!-- Button label to answer "Yes" to a yes/no prompt -->
+ <string name="button_yes">"Да"</string>
+ <!-- Button label to answer "No" to a yes/no prompt -->
+ <string name="button_no">"Не"</string>
+
+ <!-- Selection for a "local" port forward. E.g., connections to a port listening locally is forwarded to the remote end's listening port. -->
+ <string name="portforward_local">"локални"</string>
+ <!-- Selection for a "remote" port forward. E.g., connections to a port listening remotely is forwarded to the local end's listening port. -->
+ <string name="portforward_remote">"удаљени"</string>
+ <!-- Selection for a "dynamic" port forward. E.g., connections to a port listening locally is forwarded based on the SOCKS protocol to an arbitrary remote host and port. -->
+ <string name="portforward_dynamic">"динамички (СОЦКС)"</string>
+ <!-- Button that commits the port forward to be made from the Port Forward Creation dialog. -->
+ <string name="portforward_pos">"Направи прослеђење порта"</string>
+
+ <string name="portforward_done">"Успешно направљено прослеђење порта"</string>
+ <string name="portforward_problem">"Појавио се проблем при прављењу прослеђења порта. Можда користите портове испод 1024 или је порт већ у употреби?"</string>
+
+ <string name="portforward_menu_add">"Додај прослеђење порта"</string>
+
+ <!-- The string to present in the quick-connect box to hint the user to the format for connecting to hosts. -->
+ <string name="hint_userhost">"korisnik@domacin"</string>
+
+ <!-- Hint given to user when the format they're using is incorrect in the quick-connect box. -->
+ <string name="list_format_error">"Користи формат „%1$s“"</string>
+
+ <!-- Part of the formatting hints that will be used like: username@hostname:port -->
+ <string name="format_username">"korisnik"</string>
+ <!-- Part of the formatting hints that will be used like: username@hostname:port -->
+ <string name="format_hostname">"domacin"</string>
+ <!-- Part of the formatting hints that will be used like: username@hostname:port -->
+ <string name="format_port">"port"</string>
+
+ <string name="list_menu_pubkeys">"Управљај кључевима"</string>
+ <!-- Selection choice to sort hosts by color. -->
+ <string name="list_menu_sortcolor">"Поређај по боји"</string>
+ <!-- Selection choice to sort hosts by nickname. -->
+ <string name="list_menu_sortname">"Поређај по имену"</string>
+ <string name="list_menu_settings">"Поставке"</string>
+
+ <string name="list_host_disconnect">"Прекини везу"</string>
+ <string name="list_host_edit">"Уреди домаћина"</string>
+ <string name="list_host_portforwards">"Уреди прослеђења портова"</string>
+ <string name="list_host_delete">"Обриши домаћина"</string>
+ <!-- Note that the '\n' splits the lines so it's actually "quick-connect box below to connect" -->
+ <string name="list_host_empty">"Користите поље за брзо повезивање "\n"испод да бисте се повезали са домаћином."</string>
+
+ <!-- Default screen rotation preference selection -->
+ <string name="list_rotation_default">"Подразумевана"</string>
+ <string name="list_rotation_land">"Наметни пејзаж"</string>
+ <string name="list_rotation_port">"Наметни портрет"</string>
+ <!-- Selection to indicate the rotation should be selected automatically based on the tilt sensor. -->
+ <string name="list_rotation_auto">"Аутоматска"</string>
+
+ <!-- Selection to indicate pressing the Camera button should send "Ctrl+A then Space". -->
+ <string name="list_camera_ctrlaspace">"Ctrl+A онда размакница"</string>
+ <!-- Selection to indicate pressing the Camera button should send "Ctrl+A". -->
+ <string name="list_camera_ctrla">"Ctrl+A"</string>
+ <!-- Selection to indicate pressing the Camera button should send the "Esc" key. -->
+ <string name="list_camera_esc">"Esc"</string>
+ <!-- Selection to indicate pressing the Camera button should send "Esc+A". -->
+ <string name="list_camera_esc_a">"Esc+A"</string>
+ <!-- Selection to indicate pressing the Camera button should send nothing at all. -->
+ <string name="list_camera_none">"Ништа"</string>
+
+ <!-- Name for the backspace character -->
+ <string name="list_delkey_backspace">"Backspace"</string>
+ <!-- Name for the ASCII DEL character -->
+ <string name="list_delkey_del">"Обриши"</string>
+
+ <string name="delete_message">"Желите ли заиста да обришете „%1$s“?"</string>
+ <string name="delete_pos">"Да, обриши"</string>
+ <string name="delete_neg">"Одустани"</string>
+
+ <!-- Button to agree to license terms. -->
+ <string name="wizard_agree">"Прихваћам"</string>
+ <!-- Button to go to the next page in the first time start-up wizard. -->
+ <string name="wizard_next">"Следеће"</string>
+ <!-- Button to go to the previous page in the first time start-up wizard. -->
+ <string name="wizard_back">"Назад"</string>
+
+ <string name="terminal_no_hosts_connected">"Нема повезаних домаћина тренутно"</string>
+
+ <!-- Displayed in terminal when attempting to connect to a host. The first two
+ variables are host:port and the third is the protocol (e.g., SSH) -->
+ <string name="terminal_connecting">"Повезујем се са %1$s:%2$d преко %3$s"</string>
+
+ <!-- Displays the host key to the user in the terminal -->
+ <string name="terminal_sucess">"Verified host '%1$s' key: %2$s"</string>
+ <string name="terminal_failed">"Host key verification failed."</string>
+
+ <!-- Displayed on the terminal describing the cryptographic algorithm names -->
+ <string name="terminal_using_s2c_algorithm">"Сервер-клијент алгоритам: %1$s %2$s"</string>
+ <!-- Displayed on the terminal describing the cryptographic algorithm names -->
+ <string name="terminal_using_c2s_algorithm">"Клијент-сервер алгоритам: %1$s %2$s"</string>
+ <!-- Displayed on the terminal describing the cryptographic algorithm names -->
+ <string name="terminal_using_algorithm">"Користим алгоритам: %1$s %2$s"</string>
+
+ <string name="terminal_auth">"Покушавам аутентификацију"</string>
+
+ <string name="terminal_auth_pass">"Покушавам аутентификацију лозинком"</string>
+ <string name="terminal_auth_pass_fail">"Метода аутентификације лозинком није успела"</string>
+
+ <string name="terminal_auth_pubkey_any">"Покушавам аутентификацију кључем помоћу било којег јавног кључа у меморији"</string>
+ <string name="terminal_auth_pubkey_invalid">"Изабрани јавни кључ није исправан, покушајте поново изабрати кључ у уређивачу домаћина"</string>
+ <string name="terminal_auth_pubkey_specific">"Покушавам аутентификацију кључем помоћу наведеног јавног кључа"</string>
+ <string name="terminal_auth_pubkey_fail">"Метода аутентификације кључем помоћу кључа „%1$s“ није успела"</string>
+
+ <string name="terminal_auth_ki">"Покушавам аутентификацију интерактивном тастатуром"</string>
+ <string name="terminal_auth_ki_fail">"Метода аутентификације интерактивном тастатуром није успела"</string>
+
+ <string name="terminal_auth_fail">"[Ваш домаћин не подржава аутентификацију лозинком или интерактивном тастатуром.]"</string>
+
+ <string name="terminal_no_session">"Сесија неће бити покренута због поставке домаћина."</string>
+ <string name="terminal_enable_portfoward">"Омогући прослеђење порта: %1$s"</string>
+
+ <string name="local_shell_unavailable">"Неуспех! Нема локалне шкољке на овом телефону."</string>
+
+ <!-- Text sent to the user to alert them that a Terminal Bell is received in a background session -->
+ <string name="notification_text">"%1$s жели вашу пажњу."</string>
+
+ <!-- Preference selection for SSH Authentication Agent to never use pubkeys -->
+ <string name="no">"Не"</string>
+ <!-- Preference selection for SSH Authentication Agent to be able to use pubkeys "with confirmation" only -->
+ <string name="with_confirmation">"Тражи потврду"</string>
+ <!-- Preference selection for SSH Authentication Agent to be able to use pubkeys -->
+ <string name="yes">"Да"</string>
+
+ <!-- String displayed to user when they're asked to submit exceptions to the ConnectBot developers -->
+ <string name="exceptions_submit_message">"Чини се да је Конектбот имао проблем последњи пут кад је покренут. Да пошаљем извештај о грешци програмерима?"</string>
+
+ <!-- Menu selection to reset colors to their defaults. -->
+ <string name="menu_colors_reset">"Ресетуј"</string>
+
+ <!-- Displayed in the notification bar that connections are active -->
+ <string name="app_is_running">"Конектбот је покренут"</string>
+
+ <string name="color_red">"црвена"</string>
+ <string name="color_green">"зелена"</string>
+ <string name="color_blue">"плава"</string>
+ <string name="color_gray">"сива"</string>
+
+ <!-- Very short label indicating the number next to it is "foreground color" number. -->
+ <string name="colors_fg_label">"FG: %1$d"</string>
+
+ <!-- Very short label indicating the number next to it is "background color" number. -->
+ <string name="color_bg_label">"BG: %1$d"</string>
+
+ <!-- Describes the image of the "connected to host" icon for accessibility purposes. -->
+ <string name="image_description_connected">"Повезан."</string>
+
+ <!-- Describes the icon of the "locked pubkey" icon for accessibility purposes. -->
+ <string name="image_description_key_is_locked">"Кључ је закључан."</string>
+
+ <!-- Describes the icon of the "send control character" button in the terminal view for
+ accessibility purposes. -->
+ <string name="image_description_toggle_control_character">Мењај контролни знак.</string>
+
+ <!-- Describes the icon of the "send escape character" button in the terminal view for
+ accessibility purposes. -->
+ <string name="image_description_send_escape_character">Пошаљи Esc знак.</string>
+
+ <!-- Describes the icon of the "show keyboard" button in the terminal view for accessibility
+ purposes. -->
+ <string name="image_description_show_keyboard">Прикажи тастатуру.</string>
+</resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index ad50555..73e73da 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -79,8 +79,6 @@
<string name="pref_fullscreen_summary">Göm status medan konsol visas</string>
<string name="pref_memkeys_title">Kom ihåg nycklar</string>
<string name="pref_memkeys_summary">Behåll olåsta nycklar i minnet tills bakände-tjänst avslutas</string>
- <string name="pref_update_title">Uppdateringskontroll</string>
- <string name="pref_update_summary">Intervall för att söka efter ConnectBot-uppdateringar</string>
<string name="pref_conn_persist_title">Kvarstående anslutningar</string>
<string name="pref_conn_persist_summary">Tvinga anslutningar att fortsätta i bakgrunden</string>
<string name="pref_keymode_title">Genvägar för katalog</string>
@@ -104,9 +102,6 @@
<string name="list_keymode_none">Avaktivera</string>
<string name="list_pubkeyids_none">Använd inte knapparna</string>
<string name="list_pubkeyids_any">Använd valfri olåst nyckel</string>
- <string name="list_update_daily">Varje dag</string>
- <string name="list_update_weekly">Varje vecka</string>
- <string name="list_update_never">Aldrig</string>
<string name="hostpref_nickname_title">Smeknamn</string>
<string name="hostpref_color_title">Färgkategori</string>
<string name="hostpref_fontsize_title">Teckenstorlek</string>
@@ -130,7 +125,7 @@
<string name="hostpref_port_title">Port</string>
<string name="bind_never">Aldrig ansluten</string>
<string name="bind_minutes">%1$s minuter sedan</string>
- <string name="bind_hours">%1$s timmar sendan</string>
+ <string name="bind_hours">%1$s timmar sedan</string>
<string name="bind_days">%1$s dagar sedan</string>
<string name="console_copy_done">Kopierade %1$d bytes till urklippshanteraren.</string>
<string name="console_copy_start">Tryck och drag\neller använd bollen\nför att markera en yta för kopiering</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index d7582c3..6e1527b 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">Host\'u Düzenle</string>
<string name="title_help">Yardım</string>
<string name="title_colors">Renkler</string>
+ <string name="title_color_picker">Bir renk seç</string>
<string name="resolve_connect">Bağlan</string>
<string name="resolve_entropy">Rastgele girdi topla</string>
<string name="menu_insert">Host ekle</string>
@@ -77,10 +78,9 @@
<string name="pref_rotation_summary">Klavye saklandığında/açıldığında dönüş nasıl değişir</string>
<string name="pref_fullscreen_title">Tüm ekran</string>
<string name="pref_fullscreen_summary">Konsolda iken durum çubuğunu gizle</string>
+ <string name="pref_keyboard_category">Klavye</string>
<string name="pref_memkeys_title">Anahtarları bellekte tut</string>
<string name="pref_memkeys_summary">Kilidi açılmış anahtarları arkadaki hizmetler sonlanana kadar bellekte tut</string>
- <string name="pref_update_title">Güncellemelere bak</string>
- <string name="pref_update_summary">ConnectBot güncellemelerine bakmak için en fazla sıklığı ayarla</string>
<string name="pref_conn_persist_title">Bağlantıları sürekli tut</string>
<string name="pref_conn_persist_summary">Arkaplanda iken bağlantıları bağlı tutmaya zorla</string>
<string name="pref_keymode_title">Dizin kısayolları</string>
@@ -104,9 +104,6 @@
<string name="list_keymode_none">Devre Dışı Bırak</string>
<string name="list_pubkeyids_none">Tuşları kullanma</string>
<string name="list_pubkeyids_any">Herhangi bir tuşu kullan</string>
- <string name="list_update_daily">Günlük</string>
- <string name="list_update_weekly">Haftalık</string>
- <string name="list_update_never">Asla</string>
<string name="hostpref_nickname_title">Rumuz</string>
<string name="hostpref_color_title">Renk kategorisi</string>
<string name="hostpref_fontsize_title">Yazıtipi boyutu (pt)</string>
@@ -211,8 +208,8 @@
<string name="color_green">yeşil</string>
<string name="color_blue">mavi</string>
<string name="color_gray">gri</string>
- <string name="colors_fg">ÖR:</string>
- <string name="color_bg">AR:</string>
+ <string name="colors_fg_label">ÖR: %1$d</string>
+ <string name="color_bg_label">AR: %1$d</string>
<string name="image_description_connected">Bağlandı.</string>
<string name="image_description_show_keyboard">Klavye göster.</string>
</resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 3b1b548..61fc9f5 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">编辑主机</string>
<string name="title_help">帮助</string>
<string name="title_colors">颜色</string>
+ <string name="title_color_picker">选择一种颜色</string>
<string name="resolve_connect">连接</string>
<string name="resolve_entropy">收集杂乱数</string>
<string name="menu_insert">添加主机</string>
@@ -77,10 +78,15 @@
<string name="pref_rotation_summary">当键盘打开或关闭时屏幕如何旋转(水平或竖直)</string>
<string name="pref_fullscreen_title">全屏</string>
<string name="pref_fullscreen_summary">处于控制台时隐藏状态栏</string>
+ <string name="pref_keyboard_category">键盘</string>
+ <string name="pref_shiftfkeys_title">Shift+num(数字键) 作为 功能键</string>
+ <string name="pref_shiftfkeys_summary">在硬件键盘上,数字键和 shift 键组合发送 F1-F10</string>
+ <string name="pref_ctrlfkeys_title">Ctrl+num(数字键) 作为 功能键</string>
+ <string name="pref_ctrlfkeys_summary">在软件键盘上,数字键和 ctrl 键组合发送 F1-F10</string>
+ <string name="pref_volumefont_title">音量键用来改变字体大小</string>
+ <string name="pref_volumefont_summary">字体大小也可以在每个主机的设置中改变</string>
<string name="pref_memkeys_title">在内存中记录密钥</string>
<string name="pref_memkeys_summary">保留解锁的密匙于内存中直到后台服务停止</string>
- <string name="pref_update_title">检查更新</string>
- <string name="pref_update_summary">设置检查ConnectBot更新的最大频率</string>
<string name="pref_conn_persist_title">保持联机</string>
<string name="pref_conn_persist_summary">切换到后台时强制保持连接</string>
<string name="pref_keymode_title">目录快捷方式</string>
@@ -104,9 +110,6 @@
<string name="list_keymode_none">禁用</string>
<string name="list_pubkeyids_none">不使用密匙</string>
<string name="list_pubkeyids_any">使用解锁密匙</string>
- <string name="list_update_daily">每天</string>
- <string name="list_update_weekly">每周</string>
- <string name="list_update_never">永不</string>
<string name="hostpref_nickname_title">昵称</string>
<string name="hostpref_color_title">颜色类型</string>
<string name="hostpref_fontsize_title">字型大小 (pt)</string>
@@ -211,8 +214,8 @@
<string name="color_green">绿色</string>
<string name="color_blue">蓝色</string>
<string name="color_gray">灰色</string>
- <string name="colors_fg">前景色:</string>
- <string name="color_bg">背景色:</string>
+ <string name="colors_fg_label">前景色:%1$d</string>
+ <string name="color_bg_label">背景色:%1$d</string>
<string name="image_description_connected">已连接。</string>
<string name="image_description_key_is_locked">密钥已锁。</string>
<string name="image_description_toggle_control_character">切换控制字符。</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 88ccaf2..bbfd6f0 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -8,6 +8,7 @@
<string name="title_host_editor">編輯主機資訊</string>
<string name="title_help">說明</string>
<string name="title_colors">顏色</string>
+ <string name="title_color_picker">挑選顏色</string>
<string name="resolve_connect">連線</string>
<string name="resolve_entropy">收集用戶熵</string>
<string name="menu_insert">新增主機</string>
@@ -66,7 +67,7 @@
<string name="button_generate">產生金鑰</string>
<string name="button_resize">調整大小</string>
<string name="alert_disconnect_msg">連線中斷</string>
- <string name="msg_copyright">版權所有 2007-2008 Kenny Root http://the-b.org/ , Jeffrey Sharkey http://jsharkey.org/</string>
+ <string name="msg_copyright">版權所有 © 2007-2008 Kenny Root http://the-b.org/ , Jeffrey Sharkey http://jsharkey.org/</string>
<string name="pref_emulation_category">終端模擬器</string>
<string name="pref_emulation_title">終端機類型</string>
<string name="pref_emulation_summary">設置使用 PTY 連接時的終端模式</string>
@@ -75,22 +76,24 @@
<string name="pref_ui_category">使用者介面</string>
<string name="pref_rotation_title">螢幕旋轉模式</string>
<string name="pref_rotation_summary">當鍵盤視窗出現或隱藏時要如何改變螢幕轉向</string>
+ <string name="pref_titlebarhide_title">自動隱藏標題列</string>
+ <string name="pref_titlebarhide_summary">輕觸終端機來顯示標題列並存取選單</string>
<string name="pref_fullscreen_title">全螢幕</string>
<string name="pref_fullscreen_summary">當在控制台時隱藏狀態列</string>
+ <string name="pref_keyboard_category">鍵盤</string>
<string name="pref_shiftfkeys_title">Shift+num 為功能鍵</string>
<string name="pref_shiftfkeys_summary">在硬體鍵盤上,shift 加數字鍵時傳送 F1-F10</string>
<string name="pref_ctrlfkeys_title">Ctrl+num 為功能鍵</string>
<string name="pref_ctrlfkeys_summary">在軟體鍵盤上,ctrl 加數字時傳送 F1-F10</string>
<string name="pref_volumefont_title">音量鍵更改字體大小</string>
- <string name="pref_volumefont_summary">字體大小可以在每個主機設定內變更</string>
+ <string name="pref_volumefont_summary">字體大小可以在各主機設定內更改</string>
<string name="pref_memkeys_title">將金鑰儲存在記憶體</string>
<string name="pref_memkeys_summary">保持記憶體中的金鑰是解鎖狀態,直到背景服務結束</string>
- <string name="pref_update_title">檢查更新</string>
- <string name="pref_update_summary">將 ConnectBot 的檢查更新頻率設為最大</string>
<string name="pref_conn_persist_title">保持連線</string>
<string name="pref_conn_persist_summary">在背景執行時仍保持連線狀態</string>
<string name="pref_keymode_title">快捷鍵</string>
<string name="pref_keymode_summary">選擇如何使用 Alt 來叫出 \'/\' 和用 Shift 呼叫 Tab</string>
+ <string name="only_alt">只有Alt</string>
<string name="pref_camera_title">照相快捷鍵</string>
<string name="pref_camera_summary">選擇當照相按鈕按下時將要觸發的快捷鍵</string>
<string name="pref_keepalive_title">保持螢幕喚醒</string>
@@ -110,9 +113,6 @@
<string name="list_keymode_none">停用</string>
<string name="list_pubkeyids_none">不使用公鑰</string>
<string name="list_pubkeyids_any">使用任何解鎖金鑰</string>
- <string name="list_update_daily">每日</string>
- <string name="list_update_weekly">每週</string>
- <string name="list_update_never">永不</string>
<string name="hostpref_nickname_title">暱稱</string>
<string name="hostpref_color_title">顏色類型</string>
<string name="hostpref_fontsize_title">字體大小 (pt)</string>
@@ -127,7 +127,7 @@
<string name="hostpref_stayconnected_title">保持連線</string>
<string name="hostpref_stayconnected_summary">斷線後與主機重新連線</string>
<string name="hostpref_delkey_title">DEL 鍵</string>
- <string name="hostpref_delkey_summary">當按下 DEL 時傳送按鍵碼</string>
+ <string name="hostpref_delkey_summary">當按下 DEL 鍵時,傳送金鑰代碼</string>
<string name="hostpref_encoding_title">編碼</string>
<string name="hostpref_encoding_summary">主機的字元編碼</string>
<string name="hostpref_connection_category">連線設定</string>
@@ -194,16 +194,16 @@
<string name="terminal_using_c2s_algorithm">用戶端到伺服器算法:%1$s %2$s</string>
<string name="terminal_using_algorithm">使用演算法:%1$s %2$s</string>
<string name="terminal_auth">嘗試驗證</string>
- <string name="terminal_auth_pass">嘗試 \'密碼\' 認證</string>
+ <string name="terminal_auth_pass">正在嘗試 \'密碼\' 認證</string>
<string name="terminal_auth_pass_fail">認證方法 \'密碼\' 失敗</string>
- <string name="terminal_auth_pubkey_any">嘗試 \'公鑰\' 認證暨記憶體中任何公鑰</string>
+ <string name="terminal_auth_pubkey_any">正在嘗試 \'公鑰\' 認證暨記憶體中任何公鑰</string>
<string name="terminal_auth_pubkey_invalid">所選擇的公鑰無法使用,請在主機編輯中嘗試重新選擇</string>
- <string name="terminal_auth_pubkey_specific">嘗試 \'公鑰\' 認證暨指定公鑰</string>
- <string name="terminal_auth_pubkey_fail">認證方法 \'密碼\' 暨金鑰 \'%1$s\' 失敗</string>
+ <string name="terminal_auth_pubkey_specific">正在嘗試 \'公鑰\' 認證暨指定公鑰</string>
+ <string name="terminal_auth_pubkey_fail">認證方法 \'公鑰\' 暨金鑰 \'%1$s\' 失敗</string>
<string name="terminal_auth_ki">正在嘗試 \'keyboard-interactive\' 認證</string>
<string name="terminal_auth_ki_fail">認證方法 \'keyboard-interactive\' 失敗</string>
<string name="terminal_auth_fail">[您的主機不支援 \'密碼\' 或 \'keyboard-interactive\' 驗證機制。]</string>
- <string name="terminal_no_session">由於主機的相關設置,因此不會啓動連線階段。</string>
+ <string name="terminal_no_session">因為主機的相關設置,不會啓動會話階段。</string>
<string name="terminal_enable_portfoward">啓用連接埠轉址:%1$s</string>
<string name="local_shell_unavailable">失敗!此手機 Shell 不可用。</string>
<string name="notification_text">%1$s 需要您的注意。</string>
@@ -217,8 +217,8 @@
<string name="color_green">綠</string>
<string name="color_blue">藍</string>
<string name="color_gray">灰</string>
- <string name="colors_fg">前景:</string>
- <string name="color_bg">背景:</string>
+ <string name="colors_fg_label">前景:%1$d</string>
+ <string name="color_bg_label">背景:%1$d</string>
<string name="image_description_connected">已連線。</string>
<string name="image_description_key_is_locked">金鑰已鎖定。</string>
<string name="image_description_toggle_control_character">切換控制字元</string>
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index c9090ea..4721490 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -71,16 +71,16 @@
<item>gray</item>
</string-array>
- <string-array name="list_update" translatable="false">
- <item>@string/list_update_daily</item>
- <item>@string/list_update_weekly</item>
- <item>@string/list_update_never</item>
+ <string-array name="list_stickymodifiers" translatable="false">
+ <item>@string/no</item>
+ <item>@string/only_alt</item>
+ <item>@string/yes</item>
</string-array>
- <string-array name="list_update_values" translatable="false">
- <item>Daily</item>
- <item>Weekly</item>
- <item>Never</item>
+ <string-array name="list_stickymodifiers_values" translatable="false">
+ <item>no</item>
+ <item>alt</item>
+ <item>yes</item>
</string-array>
<string-array name="list_keymode" translatable="false">
diff --git a/res/values/strings.xml b/res/values/strings.xml
index e4f2aa5..49c3af4 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -19,7 +19,10 @@
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <!-- Summary of what ConnectBot is; used as a short description in the Android running apps list -->
<string name="app_desc">"Simple, powerful, open-source SSH client."</string>
+
+ <!-- Summary of what the ConnectBot service does; displayed in the Android running apps list -->
<string name="service_desc">"Maintains SSH connections and loaded pubkeys"</string>
<!-- Window title for the Host List -->
@@ -34,6 +37,8 @@
<string name="title_help">"Help"</string>
<!-- Window title for color list editing screen -->
<string name="title_colors">"Colors"</string>
+ <!-- Dialog title for color picker dialog -->
+ <string name="title_color_picker">"Pick a color"</string>
<string name="resolve_connect">"Connect"</string>
<!-- Menu selection where user must move finger randomly over an area to gather entropy (collect random bits) -->
@@ -163,6 +168,9 @@
<!-- Summary for the full screen preference -->
<string name="pref_fullscreen_summary">"Hide status bar while in console"</string>
+ <!-- The category title for keyboard preferences -->
+ <string name="pref_keyboard_category">"Keyboard"</string>
+
<!-- Name for the shifted numbers are f-keys preference -->
<string name="pref_shiftfkeys_title">"Shift+num are F-keys"</string>
<!-- Summary for the shifted numbers are f-keys preference -->
@@ -183,11 +191,6 @@
<!-- Summary for the memorize keys preference -->
<string name="pref_memkeys_summary">"Keep unlocked keys in memory until backend service is terminated"</string>
- <!-- Name for the update check preference -->
- <string name="pref_update_title">"Update check"</string>
- <!-- Summary for the update check preference -->
- <string name="pref_update_summary">"Set the maximum frequency to check for ConnectBot updates"</string>
-
<!-- Name for the preference that forces the service to stay running in the background.-->
<string name="pref_conn_persist_title">"Persist connections"</string>
<!-- Summary for the preference that forces the service to stay running in the background. -->
@@ -198,6 +201,14 @@
<!-- Summary for the keyboard shortcuts preference -->
<string name="pref_keymode_summary">"Select how to use Alt for '/' and Shift for Tab"</string>
+ <!-- Name for the sticky modifiers preference -->
+ <string name="pref_stickymodifiers_title">"Sticky modifiers"</string>
+ <!-- Summary for the sticky modifiers preference -->
+ <string name="pref_stickymodifiers_summary">"Modifier keys remain enabled until another key is pressed"</string>
+
+ <!-- Sticky modifier preference value description for when only the Alt key should be a sticky modifier. -->
+ <string name="only_alt">"Only alt"</string>
+
<!-- Name for the camera shortcut usage preference -->
<string name="pref_camera_title">"Camera shortcut"</string>
<!-- Summary for the camera shortcut usage preference -->
@@ -247,13 +258,6 @@
<!-- Preference to use any pubkey to authenticate to this host. -->
<string name="list_pubkeyids_any">"Use any unlocked key"</string>
- <!-- Frequency for which to check for program updates. -->
- <string name="list_update_daily">"Daily"</string>
- <!-- Frequency for which to check for program updates. -->
- <string name="list_update_weekly">"Weekly"</string>
- <!-- Frequency for which to check for program updates. -->
- <string name="list_update_never">"Never"</string>
-
<!-- Host nickname field preference title -->
<string name="hostpref_nickname_title">"Nickname"</string>
@@ -289,6 +293,10 @@
<!-- Summary for preference asking whether the host should be reconnected to when it disconnects -->
<string name="hostpref_stayconnected_summary">"Try to reconnect to host if disconnected"</string>
+ <!-- Setting for whether we should prompt to close after getting disconnected -->
+ <string name="hostpref_quickdisconnect_title">"Close on disconnect"</string>
+ <string name="hostpref_quickdisconnect_summary">"Close immediately after remote disconnect without prompting."</string>
+
<!-- Setting for what key code is sent to the server when DEL key is pressed. -->
<string name="hostpref_delkey_title">"DEL Key"</string>
<!-- Summary for field asking what key code is sent to the server when DEL key is pressed. -->
@@ -479,11 +487,11 @@
<string name="color_blue">"blue"</string>
<string name="color_gray">"gray"</string>
- <!-- Very short label indicating the thing next to it is "foreground color." -->
- <string name="colors_fg">"FG":</string>
+ <!-- Very short label indicating the number next to it is "foreground color" number. -->
+ <string name="colors_fg_label">"FG: %1$d"</string>
- <!-- Very short label indicating the thing next to it is "background color." -->
- <string name="color_bg">"BG:"</string>
+ <!-- Very short label indicating the number next to it is "background color" number. -->
+ <string name="color_bg_label">"BG: %1$d"</string>
<!-- Describes the image of the "connected to host" icon for accessibility purposes. -->
<string name="image_description_connected">"Connected."</string>
diff --git a/res/xml/host_prefs.xml b/res/xml/host_prefs.xml
index fea90cb..a2fc1a4 100644
--- a/res/xml/host_prefs.xml
+++ b/res/xml/host_prefs.xml
@@ -85,6 +85,12 @@
android:summary="@string/hostpref_stayconnected_summary"
/>
+ <CheckBoxPreference
+ android:key="quickdisconnect"
+ android:title="@string/hostpref_quickdisconnect_title"
+ android:summary="@string/hostpref_quickdisconnect_summary"
+ />
+
<ListPreference
android:key="delkey"
android:title="@string/hostpref_delkey_title"
diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml
index 6d64ce2..70bdb5b 100644
--- a/res/xml/preferences.xml
+++ b/res/xml/preferences.xml
@@ -27,15 +27,6 @@
android:defaultValue="true"
/>
- <ListPreference
- android:key="update"
- android:title="@string/pref_update_title"
- android:summary="@string/pref_update_summary"
- android:entries="@array/list_update"
- android:entryValues="@array/list_update_values"
- android:defaultValue="Daily"
- />
-
<CheckBoxPreference
android:key="connPersist"
android:title="@string/pref_conn_persist_title"
@@ -43,6 +34,13 @@
android:defaultValue="true"
/>
+ <CheckBoxPreference
+ android:key="wifilock"
+ android:title="@string/pref_wifilock_title"
+ android:summary="@string/pref_wifilock_summary"
+ android:defaultValue="true"
+ />
+
<PreferenceCategory
android:title="@string/pref_emulation_category">
@@ -92,6 +90,24 @@
/>
<CheckBoxPreference
+ android:key="volumefont"
+ android:title="@string/pref_volumefont_title"
+ android:summary="@string/pref_volumefont_summary"
+ android:defaultValue="true"
+ />
+
+ <CheckBoxPreference
+ android:key="keepalive"
+ android:title="@string/pref_keepalive_title"
+ android:summary="@string/pref_keepalive_summary"
+ android:defaultValue="true"
+ />
+ </PreferenceCategory>
+
+ <PreferenceCategory
+ android:title="@string/pref_keyboard_category">
+
+ <CheckBoxPreference
android:key="shiftfkeys"
android:title="@string/pref_shiftfkeys_title"
android:summary="@string/pref_shiftfkeys_summary"
@@ -105,11 +121,13 @@
android:defaultValue="false"
/>
- <CheckBoxPreference
- android:key="volumefont"
- android:title="@string/pref_volumefont_title"
- android:summary="@string/pref_volumefont_summary"
- android:defaultValue="true"
+ <ListPreference
+ android:key="stickymodifiers"
+ android:title="@string/pref_stickymodifiers_title"
+ android:summary="@string/pref_stickymodifiers_summary"
+ android:entries="@array/list_stickymodifiers"
+ android:entryValues="@array/list_stickymodifiers_values"
+ android:defaultValue="no"
/>
<ListPreference
@@ -118,7 +136,7 @@
android:summary="@string/pref_keymode_summary"
android:entries="@array/list_keymode"
android:entryValues="@array/list_keymode_values"
- android:defaultValue="Use right-side keys"
+ android:defaultValue="none"
/>
<ListPreference
@@ -131,20 +149,6 @@
/>
<CheckBoxPreference
- android:key="keepalive"
- android:title="@string/pref_keepalive_title"
- android:summary="@string/pref_keepalive_summary"
- android:defaultValue="true"
- />
-
- <CheckBoxPreference
- android:key="wifilock"
- android:title="@string/pref_wifilock_title"
- android:summary="@string/pref_wifilock_summary"
- android:defaultValue="true"
- />
-
- <CheckBoxPreference
android:key="bumpyarrows"
android:title="@string/pref_bumpyarrows_title"
android:summary="@string/pref_bumpyarrows_summary"
diff --git a/src/org/connectbot/ColorsActivity.java b/src/org/connectbot/ColorsActivity.java
index 38336f7..be5dfb1 100644
--- a/src/org/connectbot/ColorsActivity.java
+++ b/src/org/connectbot/ColorsActivity.java
@@ -17,6 +17,7 @@
package org.connectbot;
+import java.text.NumberFormat;
import java.util.Arrays;
import java.util.List;
@@ -30,6 +31,7 @@ import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.os.Bundle;
+import android.util.DisplayMetrics;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
@@ -54,11 +56,12 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
private int mColorScheme;
private List<Integer> mColorList;
- private HostDatabase hostdb;
+ private HostDatabase mHostDb;
private int mCurrentColor = 0;
private int[] mDefaultColors;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -71,10 +74,10 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
mColorScheme = HostDatabase.DEFAULT_COLOR_SCHEME;
- hostdb = new HostDatabase(this);
+ mHostDb = new HostDatabase(this);
- mColorList = Arrays.asList(hostdb.getColorsForScheme(mColorScheme));
- mDefaultColors = hostdb.getDefaultColorsForScheme(mColorScheme);
+ mColorList = Arrays.asList(mHostDb.getColorsForScheme(mColorScheme));
+ mDefaultColors = mHostDb.getDefaultColorsForScheme(mColorScheme);
mColorGrid = (GridView) findViewById(R.id.color_grid);
mColorGrid.setAdapter(new ColorsAdapter(true));
@@ -82,12 +85,12 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
mColorGrid.setSelection(0);
mFgSpinner = (Spinner) findViewById(R.id.fg);
- mFgSpinner.setAdapter(new ColorsAdapter(false));
+ mFgSpinner.setAdapter(new ColorsAdapter(false, R.string.colors_fg_label));
mFgSpinner.setSelection(mDefaultColors[0]);
mFgSpinner.setOnItemSelectedListener(this);
mBgSpinner = (Spinner) findViewById(R.id.bg);
- mBgSpinner.setAdapter(new ColorsAdapter(false));
+ mBgSpinner.setAdapter(new ColorsAdapter(false, R.string.color_bg_label));
mBgSpinner.setSelection(mDefaultColors[1]);
mBgSpinner.setOnItemSelectedListener(this);
}
@@ -96,9 +99,9 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
protected void onDestroy() {
super.onDestroy();
- if (hostdb != null) {
- hostdb.close();
- hostdb = null;
+ if (mHostDb != null) {
+ mHostDb.close();
+ mHostDb = null;
}
}
@@ -106,22 +109,28 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
protected void onResume() {
super.onResume();
- if (hostdb == null)
- hostdb = new HostDatabase(this);
+ if (mHostDb == null)
+ mHostDb = new HostDatabase(this);
}
private class ColorsAdapter extends BaseAdapter {
- private boolean mSquareViews;
+ private final boolean mSquareViews;
+ private final int mResourceLabel;
public ColorsAdapter(boolean squareViews) {
+ this(squareViews, -1);
+ }
+
+ public ColorsAdapter(boolean squareViews, int resourceLabel) {
mSquareViews = squareViews;
+ mResourceLabel = resourceLabel;
}
public View getView(int position, View convertView, ViewGroup parent) {
ColorView c;
if (convertView == null) {
- c = new ColorView(ColorsActivity.this, mSquareViews);
+ c = new ColorView(ColorsActivity.this, mResourceLabel, mSquareViews);
} else {
c = (ColorView) convertView;
}
@@ -146,7 +155,16 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
}
private class ColorView extends View {
- private boolean mSquare;
+ /** The font size displayed in the GridView entries. */
+ private static final float FONT_SIZE_DP = 20f;
+
+ /** Margin around the GridView entries. */
+ private static final float MARGIN_DP = 10f;
+
+ private final boolean mSquare;
+
+ private final int mResourceLabel;
+ private final NumberFormat mNumberFormatter;
private Paint mTextPaint;
private Paint mShadowPaint;
@@ -159,14 +177,19 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
private int mWidthCenter;
private int mHeightCenter;
- public ColorView(Context context, boolean square) {
+ public ColorView(Context context, int resourceLabel, boolean square) {
super(context);
mSquare = square;
+ mResourceLabel = resourceLabel;
+
+ mNumberFormatter = NumberFormat.getIntegerInstance(getContext().getResources().getConfiguration().locale);
+
+ DisplayMetrics metrics = context.getResources().getDisplayMetrics();
mTextPaint = new Paint();
mTextPaint.setAntiAlias(true);
- mTextPaint.setTextSize(16);
+ mTextPaint.setTextSize((int) (metrics.density * FONT_SIZE_DP + 0.5f));
mTextPaint.setColor(0xFFFFFFFF);
mTextPaint.setTextAlign(Paint.Align.CENTER);
@@ -177,7 +200,8 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
mShadowPaint.setStrokeWidth(4f);
mShadowPaint.setColor(0xFF000000);
- setPadding(10, 10, 10, 10);
+ int marginPx = (int) (MARGIN_DP * metrics.density + 0.5f);
+ setPadding(marginPx, marginPx, marginPx, marginPx);
}
public void setColor(int color) {
@@ -185,7 +209,11 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
}
public void setNumber(int number) {
- mText = Integer.toString(number);
+ if (mResourceLabel != -1) {
+ mText = getContext().getResources().getString(mResourceLabel, number);
+ } else {
+ mText = mNumberFormatter.format(number);
+ }
}
@Override
@@ -193,10 +221,12 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
int width = measureWidth(widthMeasureSpec);
int height;
- if (mSquare)
+ if (mSquare) {
+ //noinspection SuspiciousNameCombination
height = width;
- else
+ } else {
height = measureHeight(heightMeasureSpec);
+ }
mAscent = (int) mTextPaint.ascent();
mWidthCenter = width / 2;
@@ -206,7 +236,8 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
}
private int measureWidth(int measureSpec) {
- int result = 0;
+ int result;
+
int specMode = MeasureSpec.getMode(measureSpec);
int specSize = MeasureSpec.getSize(measureSpec);
@@ -228,7 +259,8 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
}
private int measureHeight(int measureSpec) {
- int result = 0;
+ int result;
+
int specMode = MeasureSpec.getMode(measureSpec);
int specSize = MeasureSpec.getSize(measureSpec);
@@ -249,7 +281,6 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
return result;
}
-
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
@@ -273,7 +304,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
public void onNothingSelected(AdapterView<?> arg0) { }
public void colorChanged(int value) {
- hostdb.setGlobalColor(mCurrentColor, value);
+ mHostDb.setGlobalColor(mCurrentColor, value);
mColorList.set(mCurrentColor, value);
mColorGrid.invalidateViews();
}
@@ -294,7 +325,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
}
if (needUpdate)
- hostdb.setDefaultColorsForScheme(mColorScheme, mDefaultColors[0], mDefaultColors[1]);
+ mHostDb.setDefaultColorsForScheme(mColorScheme, mDefaultColors[0], mDefaultColors[1]);
}
@Override
@@ -309,8 +340,8 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
public boolean onMenuItemClick(MenuItem arg0) {
// Reset each individual color to defaults.
for (int i = 0; i < Colors.defaults.length; i++) {
- if (mColorList.get(i) != Colors.defaults[i]) {
- hostdb.setGlobalColor(i, Colors.defaults[i]);
+ if (!mColorList.get(i).equals(Colors.defaults[i])) {
+ mHostDb.setGlobalColor(i, Colors.defaults[i]);
mColorList.set(i, Colors.defaults[i]);
}
}
@@ -319,7 +350,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC
// Reset the default FG/BG colors as well.
mFgSpinner.setSelection(HostDatabase.DEFAULT_FG_COLOR);
mBgSpinner.setSelection(HostDatabase.DEFAULT_BG_COLOR);
- hostdb.setDefaultColorsForScheme(HostDatabase.DEFAULT_COLOR_SCHEME,
+ mHostDb.setDefaultColorsForScheme(HostDatabase.DEFAULT_COLOR_SCHEME,
HostDatabase.DEFAULT_FG_COLOR, HostDatabase.DEFAULT_BG_COLOR);
return true;
diff --git a/src/org/connectbot/ConsoleActivity.java b/src/org/connectbot/ConsoleActivity.java
index 7aca08c..aeb0e67 100644
--- a/src/org/connectbot/ConsoleActivity.java
+++ b/src/org/connectbot/ConsoleActivity.java
@@ -422,7 +422,7 @@ public class ConsoleActivity extends Activity {
TerminalView terminal = (TerminalView)flip;
TerminalKeyListener handler = terminal.bridge.getKeyHandler();
- handler.metaPress(TerminalKeyListener.OUR_CTRL_ON);
+ handler.metaPress(TerminalKeyListener.OUR_CTRL_ON, true);
hideEmulatedKeys();
}
});
diff --git a/src/org/connectbot/HostListActivity.java b/src/org/connectbot/HostListActivity.java
index dc39d49..7dce760 100644
--- a/src/org/connectbot/HostListActivity.java
+++ b/src/org/connectbot/HostListActivity.java
@@ -165,11 +165,23 @@ public class HostListActivity extends ListActivity {
// detect HTC Dream and apply special preferences
if (Build.MANUFACTURER.equals("HTC") && Build.DEVICE.equals("dream")) {
+ SharedPreferences.Editor editor = prefs.edit();
+ boolean doCommit = false;
if (!prefs.contains(PreferenceConstants.SHIFT_FKEYS) &&
!prefs.contains(PreferenceConstants.CTRL_FKEYS)) {
- SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean(PreferenceConstants.SHIFT_FKEYS, true);
editor.putBoolean(PreferenceConstants.CTRL_FKEYS, true);
+ doCommit = true;
+ }
+ if (!prefs.contains(PreferenceConstants.STICKY_MODIFIERS)) {
+ editor.putString(PreferenceConstants.STICKY_MODIFIERS, PreferenceConstants.YES);
+ doCommit = true;
+ }
+ if (!prefs.contains(PreferenceConstants.KEYMODE)) {
+ editor.putString(PreferenceConstants.KEYMODE, PreferenceConstants.KEYMODE_RIGHT);
+ doCommit = true;
+ }
+ if (doCommit) {
editor.commit();
}
}
diff --git a/src/org/connectbot/PubkeyListActivity.java b/src/org/connectbot/PubkeyListActivity.java
index be7a46f..b9654a4 100644
--- a/src/org/connectbot/PubkeyListActivity.java
+++ b/src/org/connectbot/PubkeyListActivity.java
@@ -155,7 +155,7 @@ public class PubkeyListActivity extends ListActivity implements EventListener {
getListView().setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> adapter, View view, int position, long id) {
PubkeyBean pubkey = (PubkeyBean) getListView().getItemAtPosition(position);
- boolean loaded = bound.isKeyLoaded(pubkey.getNickname());
+ boolean loaded = bound != null && bound.isKeyLoaded(pubkey.getNickname());
// handle toggling key in-memory on/off
if(loaded) {
@@ -307,7 +307,7 @@ public class PubkeyListActivity extends ListActivity implements EventListener {
// cant change password or clipboard imported keys
final boolean imported = PubkeyDatabase.KEY_TYPE_IMPORTED.equals(pubkey.getType());
- final boolean loaded = bound.isKeyLoaded(pubkey.getNickname());
+ final boolean loaded = bound != null && bound.isKeyLoaded(pubkey.getNickname());
MenuItem load = menu.add(loaded ? R.string.pubkey_memory_unload : R.string.pubkey_memory_load);
load.setOnMenuItemClickListener(new OnMenuItemClickListener() {
diff --git a/src/org/connectbot/bean/HostBean.java b/src/org/connectbot/bean/HostBean.java
index 2fd7bfb..183d047 100644
--- a/src/org/connectbot/bean/HostBean.java
+++ b/src/org/connectbot/bean/HostBean.java
@@ -50,6 +50,7 @@ public class HostBean extends AbstractBean {
private boolean compression = false;
private String encoding = HostDatabase.ENCODING_DEFAULT;
private boolean stayConnected = false;
+ private boolean quickDisconnect = false;
public HostBean() {
@@ -202,6 +203,14 @@ public class HostBean extends AbstractBean {
return stayConnected;
}
+ public void setQuickDisconnect(boolean quickDisconnect) {
+ this.quickDisconnect = quickDisconnect;
+ }
+
+ public boolean getQuickDisconnect() {
+ return quickDisconnect;
+ }
+
public String getDescription() {
String description = String.format("%s@%s", username, hostname);
@@ -234,6 +243,7 @@ public class HostBean extends AbstractBean {
values.put(HostDatabase.FIELD_HOST_COMPRESSION, Boolean.toString(compression));
values.put(HostDatabase.FIELD_HOST_ENCODING, encoding);
values.put(HostDatabase.FIELD_HOST_STAYCONNECTED, stayConnected);
+ values.put(HostDatabase.FIELD_HOST_QUICKDISCONNECT, quickDisconnect);
return values;
}
diff --git a/src/org/connectbot/service/FontSizeChangedListener.java b/src/org/connectbot/service/FontSizeChangedListener.java
index eb1c33d..56b9971 100644
--- a/src/org/connectbot/service/FontSizeChangedListener.java
+++ b/src/org/connectbot/service/FontSizeChangedListener.java
@@ -24,8 +24,8 @@ package org.connectbot.service;
public interface FontSizeChangedListener {
/**
- * @param size
- * new font size
+ * @param sizeDp
+ * new font size in dp
*/
- void onFontSizeChanged(float size);
+ void onFontSizeChanged(float sizeDp);
}
diff --git a/src/org/connectbot/service/TerminalBridge.java b/src/org/connectbot/service/TerminalBridge.java
index 6b87b74..2065a97 100644
--- a/src/org/connectbot/service/TerminalBridge.java
+++ b/src/org/connectbot/service/TerminalBridge.java
@@ -61,8 +61,9 @@ import de.mud.terminal.vt320;
public class TerminalBridge implements VDUDisplay {
public final static String TAG = "ConnectBot.TerminalBridge";
- public final static int DEFAULT_FONT_SIZE = 10;
+ public final static int DEFAULT_FONT_SIZE_DP = 10;
private final static int FONT_SIZE_STEP = 2;
+ private final float displayDensity;
public Integer[] color;
@@ -107,7 +108,7 @@ public class TerminalBridge implements VDUDisplay {
public int charHeight = -1;
private int charTop = -1;
- private float fontSize = -1;
+ private float fontSizeDp = -1;
private final List<FontSizeChangedListener> fontSizeChangedListeners;
@@ -143,6 +144,8 @@ public class TerminalBridge implements VDUDisplay {
emulation = null;
manager = null;
+ displayDensity = 1f;
+
defaultPaint = new Paint();
selectionArea = new SelectionArea();
@@ -169,6 +172,8 @@ public class TerminalBridge implements VDUDisplay {
emulation = manager.getEmulation();
scrollback = manager.getScrollback();
+ this.displayDensity = manager.getResources().getDisplayMetrics().density;
+
// create prompt helper to relay password and hostkey requests up to gui
promptHelper = new PromptHelper(this);
@@ -182,10 +187,11 @@ public class TerminalBridge implements VDUDisplay {
fontSizeChangedListeners = new LinkedList<FontSizeChangedListener>();
- int hostFontSize = host.getFontSize();
- if (hostFontSize <= 0)
- hostFontSize = DEFAULT_FONT_SIZE;
- setFontSize(hostFontSize);
+ int hostFontSizeDp = host.getFontSize();
+ if (hostFontSizeDp <= 0) {
+ hostFontSizeDp = DEFAULT_FONT_SIZE_DP;
+ }
+ setFontSize(hostFontSizeDp);
// create terminal buffer and handle outgoing data
// this is probably status reply information
@@ -384,7 +390,7 @@ public class TerminalBridge implements VDUDisplay {
relayThread.start();
// force font-size to make sure we resizePTY as needed
- setFontSize(fontSize);
+ setFontSize(fontSizeDp);
// finally send any post-login string, if requested
injectString(host.getPostLogin());
@@ -429,7 +435,7 @@ public class TerminalBridge implements VDUDisplay {
disconnectThread.setName("Disconnect");
disconnectThread.start();
- if (immediate) {
+ if (immediate || (host.getQuickDisconnect() && !host.getStayConnected())) {
awaitingClose = true;
if (disconnectListener != null)
disconnectListener.onDisconnected(TerminalBridge.this);
@@ -480,13 +486,18 @@ public class TerminalBridge implements VDUDisplay {
/**
* Request a different font size. Will make call to parentChanged() to make
* sure we resize PTY if needed.
+ *
+ * @param sizeDp Size of font in dp
*/
- /* package */ final void setFontSize(float size) {
- if (size <= 0.0)
+ /* package */ final void setFontSize(float sizeDp) {
+ if (sizeDp <= 0.0) {
return;
+ }
+
+ final int fontSizePx = (int) (sizeDp * this.displayDensity + 0.5f);
- defaultPaint.setTextSize(size);
- fontSize = size;
+ defaultPaint.setTextSize(fontSizePx);
+ fontSizeDp = sizeDp;
// read new metrics to get exact pixel dimensions
FontMetrics fm = defaultPaint.getFontMetrics();
@@ -498,13 +509,15 @@ public class TerminalBridge implements VDUDisplay {
charHeight = (int)Math.ceil(fm.descent - fm.top);
// refresh any bitmap with new font size
- if(parent != null)
+ if (parent != null) {
parentChanged(parent);
+ }
- for (FontSizeChangedListener ofscl : fontSizeChangedListeners)
- ofscl.onFontSizeChanged(size);
+ for (FontSizeChangedListener ofscl : fontSizeChangedListeners) {
+ ofscl.onFontSizeChanged(sizeDp);
+ }
- host.setFontSize((int) fontSize);
+ host.setFontSize((int) sizeDp);
manager.hostdb.updateFontSize(host);
forcedSize = false;
@@ -771,51 +784,52 @@ public class TerminalBridge implements VDUDisplay {
/**
* Resize terminal to fit [rows]x[cols] in screen of size [width]x[height]
- * @param rows
- * @param cols
- * @param width
- * @param height
+ *
+ * @param rows desired number of text rows
+ * @param cols desired numbor of text colums
+ * @param width width of screen in pixels
+ * @param height height of screen in pixels
*/
public synchronized void resizeComputed(int cols, int rows, int width, int height) {
- float size = 8.0f;
+ float sizeDp = 8.0f;
float step = 8.0f;
float limit = 0.125f;
int direction;
- while ((direction = fontSizeCompare(size, cols, rows, width, height)) < 0)
- size += step;
+ while ((direction = fontSizeCompare(sizeDp, cols, rows, width, height)) < 0)
+ sizeDp += step;
if (direction == 0) {
- Log.d("fontsize", String.format("Found match at %f", size));
+ Log.d("fontsize", String.format("Found match at %f", sizeDp));
return;
}
step /= 2.0f;
- size -= step;
+ sizeDp -= step;
- while ((direction = fontSizeCompare(size, cols, rows, width, height)) != 0
+ while ((direction = fontSizeCompare(sizeDp, cols, rows, width, height)) != 0
&& step >= limit) {
step /= 2.0f;
if (direction > 0) {
- size -= step;
+ sizeDp -= step;
} else {
- size += step;
+ sizeDp += step;
}
}
if (direction > 0)
- size -= step;
+ sizeDp -= step;
this.columns = cols;
this.rows = rows;
- setFontSize(size);
+ setFontSize(sizeDp);
forcedSize = true;
}
- private int fontSizeCompare(float size, int cols, int rows, int width, int height) {
+ private int fontSizeCompare(float sizeDp, int cols, int rows, int width, int height) {
// read new metrics to get exact pixel dimensions
- defaultPaint.setTextSize(size);
+ defaultPaint.setTextSize((int) (sizeDp * this.displayDensity + 0.5f));
FontMetrics fm = defaultPaint.getFontMetrics();
float[] widths = new float[1];
@@ -823,7 +837,7 @@ public class TerminalBridge implements VDUDisplay {
int termWidth = (int)widths[0] * cols;
int termHeight = (int)Math.ceil(fm.descent - fm.top) * rows;
- Log.d("fontsize", String.format("font size %f resulted in %d x %d", size, termWidth, termHeight));
+ Log.d("fontsize", String.format("font size %fdp resulted in %d x %d", sizeDp, termWidth, termHeight));
// Check to see if it fits in resolution specified.
if (termWidth > width || termHeight > height)
@@ -1003,16 +1017,16 @@ public class TerminalBridge implements VDUDisplay {
}
/**
- *
+ * Convenience function to increase the font size by a given step.
*/
public void increaseFontSize() {
- setFontSize(fontSize + FONT_SIZE_STEP);
+ setFontSize(fontSizeDp + FONT_SIZE_STEP);
}
/**
- *
+ * Convenience function to decrease the font size by a given step.
*/
public void decreaseFontSize() {
- setFontSize(fontSize - FONT_SIZE_STEP);
+ setFontSize(fontSizeDp - FONT_SIZE_STEP);
}
}
diff --git a/src/org/connectbot/service/TerminalKeyListener.java b/src/org/connectbot/service/TerminalKeyListener.java
index 7ff21df..13e8dd1 100644
--- a/src/org/connectbot/service/TerminalKeyListener.java
+++ b/src/org/connectbot/service/TerminalKeyListener.java
@@ -64,6 +64,14 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
// backport constants from api level 11
private final static int KEYCODE_ESCAPE = 111;
+ private final static int KEYCODE_CTRL_LEFT = 113;
+ private final static int KEYCODE_CTRL_RIGHT = 114;
+ private final static int KEYCODE_INSERT = 124;
+ private final static int KEYCODE_FORWARD_DEL = 112;
+ private final static int KEYCODE_MOVE_HOME = 122;
+ private final static int KEYCODE_MOVE_END = 123;
+ private final static int KEYCODE_PAGE_DOWN = 93;
+ private final static int KEYCODE_PAGE_UP = 92;
private final static int HC_META_CTRL_ON = 0x1000;
private final static int HC_META_CTRL_LEFT_ON = 0x2000;
private final static int HC_META_CTRL_RIGHT_ON = 0x4000;
@@ -81,6 +89,7 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
private boolean shiftedNumbersAreFKeysOnHardKeyboard;
private boolean controlNumbersAreFKeysOnSoftKeyboard;
private boolean volumeKeysChangeFontSize;
+ private int stickyMetas;
private int ourMetaState = 0;
@@ -234,6 +243,10 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
return true;
}
}
+ if (keyCode == KEYCODE_CTRL_LEFT || keyCode == KEYCODE_CTRL_RIGHT) {
+ metaPress(OUR_CTRL_ON);
+ return true;
+ }
}
if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
@@ -258,7 +271,7 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
sendEscape();
ourMetaState &= ~OUR_CTRL_ON;
} else
- metaPress(OUR_CTRL_ON);
+ metaPress(OUR_CTRL_ON, true);
}
bridge.redraw();
return true;
@@ -292,7 +305,11 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
int uchar = event.getUnicodeChar(derivedMetaState & ~HC_META_CTRL_MASK);
int ucharWithoutAlt = event.getUnicodeChar(
derivedMetaState & ~(HC_META_ALT_MASK | HC_META_CTRL_MASK));
- if (uchar != ucharWithoutAlt) {
+ if (uchar == 0) {
+ // Keymap doesn't know the key with alt on it, so just go with the unmodified version
+ uchar = ucharWithoutAlt;
+ }
+ else if (uchar != ucharWithoutAlt) {
// The alt key was used to modify the character returned; therefore, drop the alt
// modifier from the state so we don't end up sending alt+key.
derivedMetaState &= ~HC_META_ALT_MASK;
@@ -405,6 +422,31 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
bridge.tryKeyVibrate();
}
return true;
+
+ case KEYCODE_INSERT:
+ ((vt320) buffer).keyPressed(vt320.KEY_INSERT, ' ',
+ getStateForBuffer());
+ return true;
+ case KEYCODE_FORWARD_DEL:
+ ((vt320) buffer).keyPressed(vt320.KEY_DELETE, ' ',
+ getStateForBuffer());
+ return true;
+ case KEYCODE_MOVE_HOME:
+ ((vt320) buffer).keyPressed(vt320.KEY_HOME, ' ',
+ getStateForBuffer());
+ return true;
+ case KEYCODE_MOVE_END:
+ ((vt320) buffer).keyPressed(vt320.KEY_END, ' ',
+ getStateForBuffer());
+ return true;
+ case KEYCODE_PAGE_UP:
+ ((vt320) buffer).keyPressed(vt320.KEY_PAGE_UP, ' ',
+ getStateForBuffer());
+ return true;
+ case KEYCODE_PAGE_DOWN:
+ ((vt320) buffer).keyPressed(vt320.KEY_PAGE_DOWN, ' ',
+ getStateForBuffer());
+ return true;
}
} catch (IOException e) {
@@ -493,17 +535,25 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
*
* @param code
*/
- public void metaPress(int code) {
+ public void metaPress(int code, boolean forceSticky) {
if ((ourMetaState & (code << 1)) != 0) {
ourMetaState &= ~(code << 1);
} else if ((ourMetaState & code) != 0) {
ourMetaState &= ~code;
ourMetaState |= code << 1;
- } else
+ } else if (forceSticky || (stickyMetas & code) != 0) {
ourMetaState |= code;
+ } else {
+ // skip redraw
+ return;
+ }
bridge.redraw();
}
+ public void metaPress(int code) {
+ metaPress(code, false);
+ }
+
public void setTerminalKeyMode(String keymode) {
this.keymode = keymode;
}
@@ -538,18 +588,28 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
if (PreferenceConstants.KEYMODE.equals(key) ||
PreferenceConstants.SHIFT_FKEYS.equals(key) ||
PreferenceConstants.CTRL_FKEYS.equals(key) ||
- PreferenceConstants.VOLUME_FONT.equals(key)) {
+ PreferenceConstants.VOLUME_FONT.equals(key) ||
+ PreferenceConstants.STICKY_MODIFIERS.equals(key)) {
updatePrefs();
}
}
private void updatePrefs() {
- keymode = prefs.getString(PreferenceConstants.KEYMODE, PreferenceConstants.KEYMODE_RIGHT);
+ keymode = prefs.getString(PreferenceConstants.KEYMODE, PreferenceConstants.KEYMODE_NONE);
shiftedNumbersAreFKeysOnHardKeyboard =
prefs.getBoolean(PreferenceConstants.SHIFT_FKEYS, false);
controlNumbersAreFKeysOnSoftKeyboard =
prefs.getBoolean(PreferenceConstants.CTRL_FKEYS, false);
volumeKeysChangeFontSize = prefs.getBoolean(PreferenceConstants.VOLUME_FONT, true);
+ String stickyModifiers = prefs.getString(PreferenceConstants.STICKY_MODIFIERS,
+ PreferenceConstants.NO);
+ if (PreferenceConstants.ALT.equals(stickyModifiers)) {
+ stickyMetas = OUR_ALT_ON;
+ } else if (PreferenceConstants.YES.equals(stickyModifiers)) {
+ stickyMetas = OUR_SHIFT_ON | OUR_CTRL_ON | OUR_ALT_ON;
+ } else {
+ stickyMetas = 0;
+ }
}
public void setCharset(String encoding) {
diff --git a/src/org/connectbot/transport/Local.java b/src/org/connectbot/transport/Local.java
index 5ace1b0..f7bbf11 100644
--- a/src/org/connectbot/transport/Local.java
+++ b/src/org/connectbot/transport/Local.java
@@ -153,6 +153,11 @@ public class Local extends AbsTransport {
@Override
public void setDimensions(int columns, int rows, int width, int height) {
+ // We are not connected yet.
+ if (shellFd == null) {
+ return;
+ }
+
try {
Exec.setPtyWindowSize(shellFd, rows, columns, width, height);
} catch (Exception e) {
diff --git a/src/org/connectbot/util/HostDatabase.java b/src/org/connectbot/util/HostDatabase.java
index 2a92bab..c6707ae 100644
--- a/src/org/connectbot/util/HostDatabase.java
+++ b/src/org/connectbot/util/HostDatabase.java
@@ -47,7 +47,7 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
public final static String TAG = "ConnectBot.HostDatabase";
public final static String DB_NAME = "hosts";
- public final static int DB_VERSION = 22;
+ public final static int DB_VERSION = 24;
public final static String TABLE_HOSTS = "hosts";
public final static String FIELD_HOST_NICKNAME = "nickname";
@@ -69,6 +69,7 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
public final static String FIELD_HOST_COMPRESSION = "compression";
public final static String FIELD_HOST_ENCODING = "encoding";
public final static String FIELD_HOST_STAYCONNECTED = "stayconnected";
+ public final static String FIELD_HOST_QUICKDISCONNECT = "quickdisconnect";
public final static String TABLE_PORTFORWARDS = "portforwards";
public final static String FIELD_PORTFORWARD_HOSTID = "hostid";
@@ -139,9 +140,14 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
public static final Object[] dbLock = new Object[0];
+ /** Used during upgrades from DB version 23 to 24. */
+ private final float displayDensity;
+
public HostDatabase(Context context) {
super(context, DB_NAME, null, DB_VERSION);
+ this.displayDensity = context.getResources().getDisplayMetrics().density;
+
getWritableDatabase().close();
}
@@ -169,7 +175,8 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
+ FIELD_HOST_WANTSESSION + " TEXT DEFAULT '" + Boolean.toString(true) + "', "
+ FIELD_HOST_COMPRESSION + " TEXT DEFAULT '" + Boolean.toString(false) + "', "
+ FIELD_HOST_ENCODING + " TEXT DEFAULT '" + ENCODING_DEFAULT + "', "
- + FIELD_HOST_STAYCONNECTED + " TEXT)");
+ + FIELD_HOST_STAYCONNECTED + " TEXT, "
+ + FIELD_HOST_QUICKDISCONNECT + " TEXT DEFAULT '" + Boolean.toString(false) + "')");
db.execSQL("CREATE TABLE " + TABLE_PORTFORWARDS
+ " (_id INTEGER PRIMARY KEY, "
@@ -259,12 +266,18 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
db.execSQL("DROP TABLE " + TABLE_COLOR_DEFAULTS);
db.execSQL(CREATE_TABLE_COLOR_DEFAULTS);
db.execSQL(CREATE_TABLE_COLOR_DEFAULTS_INDEX);
+ case 22:
+ db.execSQL("ALTER TABLE " + TABLE_HOSTS
+ + " ADD COLUMN " + FIELD_HOST_QUICKDISCONNECT + " TEXT DEFAULT '" + Boolean.toString(false) + "'");
+ case 23:
+ db.execSQL("UPDATE " + TABLE_HOSTS
+ + " SET " + FIELD_HOST_FONTSIZE + " = " + FIELD_HOST_FONTSIZE + " / " + displayDensity);
}
}
/**
* Touch a specific host to update its "last connected" field.
- * @param nickname Nickname field of host to update
+ * @param host host to update
*/
public void touchHost(HostBean host) {
long now = System.currentTimeMillis() / 1000;
@@ -353,8 +366,7 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
}
/**
- * @param hosts
- * @param c
+ * @param c cursor to read from
*/
private List<HostBean> createHostBeans(Cursor c) {
List<HostBean> hosts = new LinkedList<HostBean>();
@@ -376,8 +388,8 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
COL_FONTSIZE = c.getColumnIndexOrThrow(FIELD_HOST_FONTSIZE),
COL_COMPRESSION = c.getColumnIndexOrThrow(FIELD_HOST_COMPRESSION),
COL_ENCODING = c.getColumnIndexOrThrow(FIELD_HOST_ENCODING),
- COL_STAYCONNECTED = c.getColumnIndexOrThrow(FIELD_HOST_STAYCONNECTED);
-
+ COL_STAYCONNECTED = c.getColumnIndexOrThrow(FIELD_HOST_STAYCONNECTED),
+ COL_QUICKDISCONNECT = c.getColumnIndexOrThrow(FIELD_HOST_QUICKDISCONNECT);
while (c.moveToNext()) {
HostBean host = new HostBean();
@@ -400,6 +412,7 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
host.setCompression(Boolean.valueOf(c.getString(COL_COMPRESSION)));
host.setEncoding(c.getString(COL_ENCODING));
host.setStayConnected(Boolean.valueOf(c.getString(COL_STAYCONNECTED)));
+ host.setQuickDisconnect(Boolean.valueOf(c.getString(COL_QUICKDISCONNECT)));
hosts.add(host);
}
@@ -408,8 +421,8 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
}
/**
- * @param c
- * @return
+ * @param c cursor with zero or more hosts
+ * @return the first host from the cursor or {@code null} if none.
*/
private HostBean getFirstHostBean(Cursor c) {
HostBean host = null;
@@ -424,13 +437,8 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
}
/**
- * @param nickname
- * @param protocol
- * @param username
- * @param hostname
- * @param hostname2
- * @param port
- * @return
+ * @param selection parameters describing the desired host
+ * @return host matching selection or {@code null}.
*/
public HostBean findHost(Map<String, String> selection) {
StringBuilder selectionBuilder = new StringBuilder();
@@ -475,8 +483,8 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
}
/**
- * @param hostId
- * @return
+ * @param hostId host id for the host
+ * @return host matching the hostId or {@code null} if none match
*/
public HostBean findHostById(long hostId) {
HostBean host;
@@ -496,10 +504,10 @@ public class HostDatabase extends RobustSQLiteOpenHelper {
/**
* Record the given hostkey into database under this nickname.
- * @param hostname
- * @param port
- * @param hostkeyalgo
- * @param hostkey
+ * @param hostname hostname to match
+ * @param port port to match
+ * @param hostkeyalgo algorithm for host key
+ * @param hostkey the bytes of the host key itself
*/
public void saveKnownHost(String hostname, int port, String hostkeyalgo, byte[] hostkey) {
ContentValues values = new ContentValues();
diff --git a/src/org/connectbot/util/PreferenceConstants.java b/src/org/connectbot/util/PreferenceConstants.java
index ad29c39..d3cd832 100644
--- a/src/org/connectbot/util/PreferenceConstants.java
+++ b/src/org/connectbot/util/PreferenceConstants.java
@@ -30,11 +30,6 @@ public class PreferenceConstants {
public static final boolean PRE_HONEYCOMB = SDK_INT < 11;
public static final String MEMKEYS = "memkeys";
- public static final String UPDATE = "update";
-
- public static final String UPDATE_DAILY = "Daily";
- public static final String UPDATE_WEEKLY = "Weekly";
- public static final String UPDATE_NEVER = "Never";
public static final String LAST_CHECKED = "lastchecked";
@@ -56,6 +51,7 @@ public class PreferenceConstants {
public static final String KEYMODE_RIGHT = "Use right-side keys";
public static final String KEYMODE_LEFT = "Use left-side keys";
+ public static final String KEYMODE_NONE = "none";
public static final String CAMERA = "camera";
@@ -85,6 +81,10 @@ public class PreferenceConstants {
public static final String SHIFT_FKEYS = "shiftfkeys";
public static final String CTRL_FKEYS = "ctrlfkeys";
public static final String VOLUME_FONT = "volumefont";
+ public static final String STICKY_MODIFIERS = "stickymodifiers";
+ public static final String YES = "yes";
+ public static final String NO = "no";
+ public static final String ALT = "alt";
/* Backup identifiers */
public static final String BACKUP_PREF_KEY = "prefs";
diff --git a/src/org/connectbot/util/UberColorPickerDialog.java b/src/org/connectbot/util/UberColorPickerDialog.java
index 2c01b30..dc36bcb 100644
--- a/src/org/connectbot/util/UberColorPickerDialog.java
+++ b/src/org/connectbot/util/UberColorPickerDialog.java
@@ -33,6 +33,8 @@
package org.connectbot.util;
+import org.connectbot.R;
+
import android.app.Dialog;
import android.content.Context;
import android.graphics.Bitmap;
@@ -80,7 +82,6 @@ public class UberColorPickerDialog extends Dialog {
* @param context
* @param listener
* @param initialColor
- * @param showTitle If true, a title is shown across the top of the dialog. If false a toast is shown instead.
*/
public UberColorPickerDialog(Context context,
OnColorChangedListener listener,
@@ -109,7 +110,7 @@ public class UberColorPickerDialog extends Dialog {
int screenWidth = dm.widthPixels;
int screenHeight = dm.heightPixels;
- setTitle("Pick a color (try the trackball)");
+ setTitle(getContext().getResources().getString(R.string.title_color_picker));
try {
setContentView(new ColorPickerView(getContext(), l, screenWidth, screenHeight, mInitialColor));
@@ -132,20 +133,13 @@ public class UberColorPickerDialog extends Dialog {
* I highly recommend adding new methods to the end of the list. If you want to try to reorder the list, you're on your own.
*/
private static class ColorPickerView extends View {
- private static int SWATCH_WIDTH = 95;
- private static final int SWATCH_HEIGHT = 60;
-
- private static int PALETTE_POS_X = 0;
- private static int PALETTE_POS_Y = SWATCH_HEIGHT;
- private static final int PALETTE_DIM = SWATCH_WIDTH * 2;
- private static final int PALETTE_RADIUS = PALETTE_DIM / 2;
- private static final int PALETTE_CENTER_X = PALETTE_RADIUS;
- private static final int PALETTE_CENTER_Y = PALETTE_RADIUS;
+ private static int SWATCH_WIDTH_PORTRAIT_DP = 95;
+ private static int SWATCH_WIDTH_LANDSCAPE_DP = 110;
+ private static final int SWATCH_HEIGHT_DP = 60;
- private static final int SLIDER_THICKNESS = 40;
+ private static final int PALETTE_DIM_DP = SWATCH_WIDTH_PORTRAIT_DP * 2;
- private static int VIEW_DIM_X = PALETTE_DIM;
- private static int VIEW_DIM_Y = SWATCH_HEIGHT;
+ private static final int SLIDER_THICKNESS_DP = 40;
//NEW_METHOD_WORK_NEEDED_HERE
private static final int METHOD_HS_V_PALETTE = 0;
@@ -158,7 +152,11 @@ public class UberColorPickerDialog extends Dialog {
private static final int TRACK_HS_PALETTE = 30;
private static final int TRACK_VER_VALUE_SLIDER = 31;
- private static final int TEXT_SIZE = 12;
+ private static final int TEXT_SIZE_DP = 12;
+ private static final int TEXT_SIZE_LABEL_DP = 12;
+
+ private static final int BUTTON_TEXT_MARGIN_DP = 16;
+
private static int[] TEXT_HSV_POS = new int[2];
private static int[] TEXT_RGB_POS = new int[2];
private static int[] TEXT_YUV_POS = new int[2];
@@ -166,6 +164,19 @@ public class UberColorPickerDialog extends Dialog {
private static final float PI = 3.141592653589793f;
+ private final int mSwatchWidthPx;
+ private final int mTextSizePx;
+ private final int mTextSizeLabelPx;
+ private final int mPalettePosX;
+ private final int mPalettePosY;
+ private final int mPaletteDimPx;
+ private final int mPaletteRadiusPx;
+ private final int mSliderThicknessPx;
+ private final int mViewDimXPx;
+ private final int mViewDimYPx;
+ private final int mPaletteCenterPx;
+ private final int mButtonTextMarginPx;
+
private int mMethod = METHOD_HS_V_PALETTE;
private int mTracking = TRACKED_NONE; //What object on screen is currently being tracked for movement
@@ -224,6 +235,10 @@ public class UberColorPickerDialog extends Dialog {
throws Exception {
super(c);
+ DisplayMetrics metrics = c.getResources().getDisplayMetrics();
+ mTextSizePx = (int) (TEXT_SIZE_DP * metrics.density + 0.5f);
+ mTextSizeLabelPx = (int) (TEXT_SIZE_LABEL_DP * metrics.density + 0.5f);
+
//We need to make the dialog focusable to retrieve trackball events.
setFocusable(true);
@@ -235,56 +250,64 @@ public class UberColorPickerDialog extends Dialog {
updateAllFromHSV();
+ mPaletteDimPx = (int) (PALETTE_DIM_DP * metrics.density + 0.5f);
+ mSliderThicknessPx = (int) (SLIDER_THICKNESS_DP * metrics.density + 0.5f);
+ mButtonTextMarginPx = (int) (BUTTON_TEXT_MARGIN_DP * metrics.density + 0.5f);
+
//Setup the layout based on whether this is a portrait or landscape orientation.
- if (width <= height) { //Portrait layout
- SWATCH_WIDTH = (PALETTE_DIM + SLIDER_THICKNESS) / 2;
+ if (width <= height) { //Portrait layout
+ mSwatchWidthPx = (int) (((PALETTE_DIM_DP + SLIDER_THICKNESS_DP) / 2) * metrics.density + 0.5f);
+ final int swatchHeightPx = (int) (SWATCH_HEIGHT_DP * metrics.density + 0.5f);
- PALETTE_POS_X = 0;
- PALETTE_POS_Y = TEXT_SIZE * 4 + SWATCH_HEIGHT;
+ mPalettePosX = 0;
+ mPalettePosY = mTextSizePx * 4 + swatchHeightPx;
//Set more rects, lots of rects
- mOldSwatchRect.set(0, TEXT_SIZE * 4, SWATCH_WIDTH, TEXT_SIZE * 4 + SWATCH_HEIGHT);
- mNewSwatchRect.set(SWATCH_WIDTH, TEXT_SIZE * 4, SWATCH_WIDTH * 2, TEXT_SIZE * 4 + SWATCH_HEIGHT);
- mPaletteRect.set(0, PALETTE_POS_Y, PALETTE_DIM, PALETTE_POS_Y + PALETTE_DIM);
- mVerSliderRect.set(PALETTE_DIM, PALETTE_POS_Y, PALETTE_DIM + SLIDER_THICKNESS, PALETTE_POS_Y + PALETTE_DIM);
+ mOldSwatchRect.set(0, mTextSizePx * 4, mSwatchWidthPx, mTextSizePx * 4 + swatchHeightPx);
+ mNewSwatchRect.set(mSwatchWidthPx, mTextSizePx * 4, mSwatchWidthPx * 2, mTextSizePx * 4 + swatchHeightPx);
+ mPaletteRect.set(0, mPalettePosY, mPaletteDimPx, mPalettePosY + mPaletteDimPx);
+ mVerSliderRect.set(mPaletteDimPx, mPalettePosY, mPaletteDimPx + mSliderThicknessPx, mPalettePosY + mPaletteDimPx);
- TEXT_HSV_POS[0] = 3;
+ TEXT_HSV_POS[0] = (int) (3 * metrics.density + 0.5f);
TEXT_HSV_POS[1] = 0;
- TEXT_RGB_POS[0] = TEXT_HSV_POS[0] + 50;
+ TEXT_RGB_POS[0] = TEXT_HSV_POS[0] + (int) (50 * metrics.density + 0.5f);
TEXT_RGB_POS[1] = TEXT_HSV_POS[1];
- TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + 100;
+ TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + (int) (100 * metrics.density + 0.5f);
TEXT_YUV_POS[1] = TEXT_HSV_POS[1];
- TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + 150;
+ TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + (int) (150 * metrics.density + 0.5f);
TEXT_HEX_POS[1] = TEXT_HSV_POS[1];
- VIEW_DIM_X = PALETTE_DIM + SLIDER_THICKNESS;
- VIEW_DIM_Y = SWATCH_HEIGHT + PALETTE_DIM + TEXT_SIZE * 4;
- }
- else { //Landscape layout
- SWATCH_WIDTH = 110;
+ mViewDimXPx = mPaletteDimPx + mSliderThicknessPx;
+ mViewDimYPx = swatchHeightPx + mPaletteDimPx + mTextSizePx * 4;
+ } else { //Landscape layout
+ mSwatchWidthPx = (int) (SWATCH_WIDTH_LANDSCAPE_DP * metrics.density + 0.5f);
+ final int swatchHeightPx = (int) (SWATCH_HEIGHT_DP * metrics.density + 0.5f);
- PALETTE_POS_X = SWATCH_WIDTH;
- PALETTE_POS_Y = 0;
+ mPalettePosX = mSwatchWidthPx;
+ mPalettePosY = 0;
//Set more rects, lots of rects
- mOldSwatchRect.set(0, TEXT_SIZE * 7, SWATCH_WIDTH, TEXT_SIZE * 7 + SWATCH_HEIGHT);
- mNewSwatchRect.set(0, TEXT_SIZE * 7 + SWATCH_HEIGHT, SWATCH_WIDTH, TEXT_SIZE * 7 + SWATCH_HEIGHT * 2);
- mPaletteRect.set(SWATCH_WIDTH, PALETTE_POS_Y, SWATCH_WIDTH + PALETTE_DIM, PALETTE_POS_Y + PALETTE_DIM);
- mVerSliderRect.set(SWATCH_WIDTH + PALETTE_DIM, PALETTE_POS_Y, SWATCH_WIDTH + PALETTE_DIM + SLIDER_THICKNESS, PALETTE_POS_Y + PALETTE_DIM);
+ mOldSwatchRect.set(0, mTextSizePx * 7, mSwatchWidthPx, mTextSizePx * 7 + swatchHeightPx);
+ mNewSwatchRect.set(0, mTextSizePx * 7 + mSliderThicknessPx, mSwatchWidthPx, mTextSizePx * 7 + swatchHeightPx * 2);
+ mPaletteRect.set(mSwatchWidthPx, mPalettePosY, mSwatchWidthPx + mPaletteDimPx, mPalettePosY + mPaletteDimPx);
+ mVerSliderRect.set(mSwatchWidthPx + mPaletteDimPx, mPalettePosY, mSwatchWidthPx + mPaletteDimPx + mSliderThicknessPx, mPalettePosY + mPaletteDimPx);
- TEXT_HSV_POS[0] = 3;
+ TEXT_HSV_POS[0] = (int) (3 * metrics.density + 0.5f);
TEXT_HSV_POS[1] = 0;
TEXT_RGB_POS[0] = TEXT_HSV_POS[0];
- TEXT_RGB_POS[1] = (int)(TEXT_HSV_POS[1] + TEXT_SIZE * 3.5);
- TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + 50;
- TEXT_YUV_POS[1] = (int)(TEXT_HSV_POS[1] + TEXT_SIZE * 3.5);
- TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + 50;
+ TEXT_RGB_POS[1] = (int) (TEXT_HSV_POS[1] + mTextSizePx * 3.5);
+ TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + (int) (50 * metrics.density + 0.5f);
+ TEXT_YUV_POS[1] = (int) (TEXT_HSV_POS[1] + mTextSizePx * 3.5);
+ TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + (int) (50 * metrics.density + 0.5f);
TEXT_HEX_POS[1] = TEXT_HSV_POS[1];
- VIEW_DIM_X = PALETTE_POS_X + PALETTE_DIM + SLIDER_THICKNESS;
- VIEW_DIM_Y = Math.max(mNewSwatchRect.bottom, PALETTE_DIM);
+ mViewDimXPx = mPalettePosX + mPaletteDimPx + mSliderThicknessPx;
+ mViewDimYPx = Math.max(mNewSwatchRect.bottom, mPaletteDimPx);
}
+ mPaletteCenterPx = mPaletteDimPx / 2;
+ mPaletteRadiusPx = mPaletteDimPx / 2;
+
//Rainbows make everybody happy!
mSpectrumColorsRev = new int[] {
0xFFFF0000, 0xFFFF00FF, 0xFF0000FF, 0xFF00FFFF,
@@ -305,18 +328,18 @@ public class UberColorPickerDialog extends Dialog {
mSwatchNew.setColor(Color.HSVToColor(mHSV));
Shader shaderA = new SweepGradient(0, 0, mSpectrumColorsRev, null);
- Shader shaderB = new RadialGradient(0, 0, PALETTE_CENTER_X, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
+ Shader shaderB = new RadialGradient(0, 0, mPaletteCenterPx, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
Shader shader = new ComposeShader(shaderA, shaderB, PorterDuff.Mode.SCREEN);
mOvalHueSat = new Paint(Paint.ANTI_ALIAS_FLAG);
mOvalHueSat.setShader(shader);
mOvalHueSat.setStyle(Paint.Style.FILL);
mOvalHueSat.setDither(true);
- mVerSliderBM = Bitmap.createBitmap(SLIDER_THICKNESS, PALETTE_DIM, Bitmap.Config.RGB_565);
+ mVerSliderBM = Bitmap.createBitmap(mSliderThicknessPx, mPaletteDimPx, Bitmap.Config.RGB_565);
mVerSliderCv = new Canvas(mVerSliderBM);
for (int i = 0; i < 3; i++) {
- mHorSlidersBM[i] = Bitmap.createBitmap(PALETTE_DIM, SLIDER_THICKNESS, Bitmap.Config.RGB_565);
+ mHorSlidersBM[i] = Bitmap.createBitmap(mPaletteDimPx, mSliderThicknessPx, Bitmap.Config.RGB_565);
mHorSlidersCv[i] = new Canvas(mHorSlidersBM[i]);
}
@@ -332,7 +355,7 @@ public class UberColorPickerDialog extends Dialog {
//Add Paints to represent the icon for the new method
shaderA = new SweepGradient(0, 0, mSpectrumColorsRev, null);
- shaderB = new RadialGradient(0, 0, PALETTE_DIM / 2, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
+ shaderB = new RadialGradient(0, 0, mPaletteDimPx / 2, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
shader = new ComposeShader(shaderA, shaderB, PorterDuff.Mode.SCREEN);
mOvalHueSatSmall = new Paint(Paint.ANTI_ALIAS_FLAG);
mOvalHueSatSmall.setShader(shader);
@@ -345,7 +368,7 @@ public class UberColorPickerDialog extends Dialog {
//Make a basic text Paint.
mText = new Paint(Paint.ANTI_ALIAS_FLAG);
- mText.setTextSize(TEXT_SIZE);
+ mText.setTextSize(mTextSizePx);
mText.setColor(Color.WHITE);
//Kickstart
@@ -375,7 +398,7 @@ public class UberColorPickerDialog extends Dialog {
private void drawSwatches(Canvas canvas) {
float[] hsv = new float[3];
- mText.setTextSize(16);
+ mText.setTextSize(mTextSizePx);
//Draw the original swatch
canvas.drawRect(mOldSwatchRect, mSwatchOld);
@@ -384,17 +407,17 @@ public class UberColorPickerDialog extends Dialog {
// hsv[1] = 0;
if (hsv[2] > .5)
mText.setColor(Color.BLACK);
- canvas.drawText("Revert", mOldSwatchRect.left + SWATCH_WIDTH / 2 - mText.measureText("Revert") / 2, mOldSwatchRect.top + 16, mText);
+ canvas.drawText("Revert", mOldSwatchRect.left + mSwatchWidthPx / 2 - mText.measureText("Revert") / 2, mOldSwatchRect.top + mButtonTextMarginPx, mText);
mText.setColor(Color.WHITE);
//Draw the new swatch
canvas.drawRect(mNewSwatchRect, mSwatchNew);
if (mHSV[2] > .5)
mText.setColor(Color.BLACK);
- canvas.drawText("Accept", mNewSwatchRect.left + SWATCH_WIDTH / 2 - mText.measureText("Accept") / 2, mNewSwatchRect.top + 16, mText);
+ canvas.drawText("Accept", mNewSwatchRect.left + mSwatchWidthPx / 2 - mText.measureText("Accept") / 2, mNewSwatchRect.top + mButtonTextMarginPx, mText);
mText.setColor(Color.WHITE);
- mText.setTextSize(TEXT_SIZE);
+ mText.setTextSize(mTextSizePx);
}
/**
@@ -403,25 +426,25 @@ public class UberColorPickerDialog extends Dialog {
*/
private void writeColorParams(Canvas canvas) {
if (mHSVenabled) {
- canvas.drawText("H: " + Integer.toString((int)(mHSV[0] / 360.0f * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + TEXT_SIZE, mText);
- canvas.drawText("S: " + Integer.toString((int)(mHSV[1] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + TEXT_SIZE * 2, mText);
- canvas.drawText("V: " + Integer.toString((int)(mHSV[2] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + TEXT_SIZE * 3, mText);
+ canvas.drawText("H: " + Integer.toString((int) (mHSV[0] / 360.0f * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + mTextSizePx, mText);
+ canvas.drawText("S: " + Integer.toString((int) (mHSV[1] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + mTextSizePx * 2, mText);
+ canvas.drawText("V: " + Integer.toString((int) (mHSV[2] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + mTextSizePx * 3, mText);
}
if (mRGBenabled) {
- canvas.drawText("R: " + mRGB[0], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + TEXT_SIZE, mText);
- canvas.drawText("G: " + mRGB[1], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + TEXT_SIZE * 2, mText);
- canvas.drawText("B: " + mRGB[2], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + TEXT_SIZE * 3, mText);
+ canvas.drawText("R: " + mRGB[0], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + mTextSizePx, mText);
+ canvas.drawText("G: " + mRGB[1], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + mTextSizePx * 2, mText);
+ canvas.drawText("B: " + mRGB[2], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + mTextSizePx * 3, mText);
}
if (mYUVenabled) {
- canvas.drawText("Y: " + Integer.toString((int)(mYUV[0] * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + TEXT_SIZE, mText);
- canvas.drawText("U: " + Integer.toString((int)((mYUV[1] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + TEXT_SIZE * 2, mText);
- canvas.drawText("V: " + Integer.toString((int)((mYUV[2] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + TEXT_SIZE * 3, mText);
+ canvas.drawText("Y: " + Integer.toString((int) (mYUV[0] * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + mTextSizePx, mText);
+ canvas.drawText("U: " + Integer.toString((int) ((mYUV[1] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + mTextSizePx * 2, mText);
+ canvas.drawText("V: " + Integer.toString((int) ((mYUV[2] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + mTextSizePx * 3, mText);
}
if (mHexenabled)
- canvas.drawText("#" + mHexStr, TEXT_HEX_POS[0], TEXT_HEX_POS[1] + TEXT_SIZE, mText);
+ canvas.drawText("#" + mHexStr, TEXT_HEX_POS[0], TEXT_HEX_POS[1] + mTextSizePx, mText);
}
/**
@@ -444,9 +467,9 @@ public class UberColorPickerDialog extends Dialog {
*/
private void markVerSlider(Canvas canvas, int markerPos) {
mPosMarker.setColor(Color.BLACK);
- canvas.drawRect(new Rect(0, markerPos - 2, SLIDER_THICKNESS, markerPos + 3), mPosMarker);
+ canvas.drawRect(new Rect(0, markerPos - 2, mSliderThicknessPx, markerPos + 3), mPosMarker);
mPosMarker.setColor(Color.WHITE);
- canvas.drawRect(new Rect(0, markerPos, SLIDER_THICKNESS, markerPos + 1), mPosMarker);
+ canvas.drawRect(new Rect(0, markerPos, mSliderThicknessPx, markerPos + 1), mPosMarker);
}
/**
@@ -455,9 +478,9 @@ public class UberColorPickerDialog extends Dialog {
*/
private void hilightFocusedVerSlider(Canvas canvas) {
mPosMarker.setColor(Color.WHITE);
- canvas.drawRect(new Rect(0, 0, SLIDER_THICKNESS, PALETTE_DIM), mPosMarker);
+ canvas.drawRect(new Rect(0, 0, mSliderThicknessPx, mPaletteDimPx), mPosMarker);
mPosMarker.setColor(Color.BLACK);
- canvas.drawRect(new Rect(2, 2, SLIDER_THICKNESS - 2, PALETTE_DIM - 2), mPosMarker);
+ canvas.drawRect(new Rect(2, 2, mSliderThicknessPx - 2, mPaletteDimPx - 2), mPosMarker);
}
/**
@@ -466,9 +489,9 @@ public class UberColorPickerDialog extends Dialog {
*/
private void hilightFocusedOvalPalette(Canvas canvas) {
mPosMarker.setColor(Color.WHITE);
- canvas.drawOval(new RectF(-PALETTE_RADIUS, -PALETTE_RADIUS, PALETTE_RADIUS, PALETTE_RADIUS), mPosMarker);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx, -mPaletteRadiusPx, mPaletteRadiusPx, mPaletteRadiusPx), mPosMarker);
mPosMarker.setColor(Color.BLACK);
- canvas.drawOval(new RectF(-PALETTE_RADIUS + 2, -PALETTE_RADIUS + 2, PALETTE_RADIUS - 2, PALETTE_RADIUS - 2), mPosMarker);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx + 2, -mPaletteRadiusPx + 2, mPaletteRadiusPx - 2, mPaletteRadiusPx - 2), mPosMarker);
}
//NEW_METHOD_WORK_NEEDED_HERE
@@ -480,19 +503,19 @@ public class UberColorPickerDialog extends Dialog {
private void drawHSV1Palette(Canvas canvas) {
canvas.save();
- canvas.translate(PALETTE_POS_X, PALETTE_POS_Y);
+ canvas.translate(mPalettePosX, mPalettePosY);
//Draw the 2D palette
- canvas.translate(PALETTE_CENTER_X, PALETTE_CENTER_Y);
- canvas.drawOval(new RectF(-PALETTE_RADIUS, -PALETTE_RADIUS, PALETTE_RADIUS, PALETTE_RADIUS), mOvalHueSat);
- canvas.drawOval(new RectF(-PALETTE_RADIUS, -PALETTE_RADIUS, PALETTE_RADIUS, PALETTE_RADIUS), mValDimmer);
+ canvas.translate(mPaletteCenterPx, mPaletteCenterPx);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx, -mPaletteRadiusPx, mPaletteRadiusPx, mPaletteRadiusPx), mOvalHueSat);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx, -mPaletteRadiusPx, mPaletteRadiusPx, mPaletteRadiusPx), mValDimmer);
if (mFocusedControl == 0)
hilightFocusedOvalPalette(canvas);
mark2DPalette(canvas, mCoord[0], mCoord[1]);
- canvas.translate(-PALETTE_CENTER_X, -PALETTE_CENTER_Y);
+ canvas.translate(-mPaletteCenterPx, -mPaletteCenterPx);
//Draw the 1D slider
- canvas.translate(PALETTE_DIM, 0);
+ canvas.translate(mPaletteDimPx, 0);
canvas.drawBitmap(mVerSliderBM, 0, 0, null);
if (mFocusedControl == 1)
hilightFocusedVerSlider(canvas);
@@ -520,12 +543,12 @@ public class UberColorPickerDialog extends Dialog {
setOvalValDimmer();
setVerValSlider();
- float angle = 2*PI - mHSV[0] / (180 / 3.1415927f);
- float radius = mHSV[1] * PALETTE_RADIUS;
- mCoord[0] = (int)(Math.cos(angle) * radius);
- mCoord[1] = (int)(Math.sin(angle) * radius);
+ float angle = 2 * PI - mHSV[0] / (180 / 3.1415927f);
+ float radius = mHSV[1] * mPaletteRadiusPx;
+ mCoord[0] = (int) (Math.cos(angle) * radius);
+ mCoord[1] = (int) (Math.sin(angle) * radius);
- mCoord[2] = PALETTE_DIM - (int)(mHSV[2] * PALETTE_DIM);
+ mCoord[2] = mPaletteDimPx - (int) (mHSV[2] * mPaletteDimPx);
}
//NEW_METHOD_WORK_NEEDED_HERE
@@ -558,7 +581,7 @@ public class UberColorPickerDialog extends Dialog {
GradientDrawable gradDraw = new GradientDrawable(Orientation.TOP_BOTTOM, colors);
gradDraw.setDither(true);
gradDraw.setLevel(10000);
- gradDraw.setBounds(0, 0, SLIDER_THICKNESS, PALETTE_DIM);
+ gradDraw.setBounds(0, 0, mSliderThicknessPx, mPaletteDimPx);
gradDraw.draw(mVerSliderCv);
}
@@ -567,7 +590,7 @@ public class UberColorPickerDialog extends Dialog {
*/
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- setMeasuredDimension(VIEW_DIM_X, VIEW_DIM_Y);
+ setMeasuredDimension(mViewDimXPx, mViewDimYPx);
}
/**
@@ -744,18 +767,18 @@ public class UberColorPickerDialog extends Dialog {
mCoord[0] += x2;
mCoord[1] += y2;
- if (mCoord[0] < -PALETTE_RADIUS)
- mCoord[0] = -PALETTE_RADIUS;
- else if (mCoord[0] > PALETTE_RADIUS)
- mCoord[0] = PALETTE_RADIUS;
- if (mCoord[1] < -PALETTE_RADIUS)
- mCoord[1] = -PALETTE_RADIUS;
- else if (mCoord[1] > PALETTE_RADIUS)
- mCoord[1] = PALETTE_RADIUS;
+ if (mCoord[0] < -mPaletteRadiusPx)
+ mCoord[0] = -mPaletteRadiusPx;
+ else if (mCoord[0] > mPaletteRadiusPx)
+ mCoord[0] = mPaletteRadiusPx;
+ if (mCoord[1] < -mPaletteRadiusPx)
+ mCoord[1] = -mPaletteRadiusPx;
+ else if (mCoord[1] > mPaletteRadiusPx)
+ mCoord[1] = mPaletteRadiusPx;
- float radius = (float)java.lang.Math.sqrt(mCoord[0] * mCoord[0] + mCoord[1] * mCoord[1]);
- if (radius > PALETTE_RADIUS)
- radius = PALETTE_RADIUS;
+ float radius = (float) java.lang.Math.sqrt(mCoord[0] * mCoord[0] + mCoord[1] * mCoord[1]);
+ if (radius > mPaletteRadiusPx)
+ radius = mPaletteRadiusPx;
float angle = (float)java.lang.Math.atan2(mCoord[1], mCoord[0]);
// need to turn angle [-PI ... PI] into unit [0....1]
@@ -771,7 +794,7 @@ public class UberColorPickerDialog extends Dialog {
float[] hsv = new float[3];
Color.colorToHSV(c, hsv);
mHSV[0] = hsv[0];
- mHSV[1] = radius / PALETTE_RADIUS;
+ mHSV[1] = radius / mPaletteRadiusPx;
updateAllFromHSV();
mSwatchNew.setColor(Color.HSVToColor(mHSV));
@@ -797,7 +820,7 @@ public class UberColorPickerDialog extends Dialog {
mHSV[2] += (increase ? jump : -jump) / 256.0f;
mHSV[2] = pinToUnit(mHSV[2]);
updateAllFromHSV();
- mCoord[2] = PALETTE_DIM - (int)(mHSV[2] * PALETTE_DIM);
+ mCoord[2] = mPaletteDimPx - (int) (mHSV[2] * mPaletteDimPx);
mSwatchNew.setColor(Color.HSVToColor(mHSV));
@@ -872,11 +895,11 @@ public class UberColorPickerDialog extends Dialog {
float y = event.getY();
//Generate coordinates which are palette=local with the origin at the upper left of the main 2D palette
- int y2 = (int)(pin(round(y - PALETTE_POS_Y), PALETTE_DIM));
+ int y2 = (int) (pin(round(y - mPalettePosY), mPaletteDimPx));
//Generate coordinates which are palette-local with the origin at the center of the main 2D palette
- float circlePinnedX = x - PALETTE_POS_X - PALETTE_CENTER_X;
- float circlePinnedY = y - PALETTE_POS_Y - PALETTE_CENTER_Y;
+ float circlePinnedX = x - mPalettePosX - mPaletteCenterPx;
+ float circlePinnedY = y - mPalettePosY - mPaletteCenterPx;
//Is the event in a swatch?
boolean inSwatchOld = ptInRect(round(x), round(y), mOldSwatchRect);
@@ -886,11 +909,11 @@ public class UberColorPickerDialog extends Dialog {
float radius = (float)java.lang.Math.sqrt(circlePinnedX * circlePinnedX + circlePinnedY * circlePinnedY);
//Is the event in a circle-pinned 2D palette?
- boolean inOvalPalette = radius <= PALETTE_RADIUS;
+ boolean inOvalPalette = radius <= mPaletteRadiusPx;
//Pin the radius
- if (radius > PALETTE_RADIUS)
- radius = PALETTE_RADIUS;
+ if (radius > mPaletteRadiusPx)
+ radius = mPaletteRadiusPx;
//Is the event in a vertical slider to the right of the main 2D palette
boolean inVerSlider = ptInRect(round(x), round(y), mVerSliderRect);
@@ -935,7 +958,7 @@ public class UberColorPickerDialog extends Dialog {
float[] hsv = new float[3];
Color.colorToHSV(c, hsv);
mHSV[0] = hsv[0];
- mHSV[1] = radius / PALETTE_RADIUS;
+ mHSV[1] = radius / mPaletteRadiusPx;
updateAllFromHSV();
mSwatchNew.setColor(Color.HSVToColor(mHSV));
@@ -946,7 +969,7 @@ public class UberColorPickerDialog extends Dialog {
else if (mTracking == TRACK_VER_VALUE_SLIDER) {
if (mCoord[2] != y2) {
mCoord[2] = y2;
- float value = 1.0f - (float)y2 / (float)PALETTE_DIM;
+ float value = 1.0f - (float) y2 / (float) mPaletteDimPx;
mHSV[2] = value;
updateAllFromHSV();