Merge branch 'master' into development
This commit is contained in:
		
						commit
						db01c9c476
					
				
							
								
								
									
										2
									
								
								extern/Universal-Image-Loader
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
								
									
									
								
							
						
						
									
										2
									
								
								extern/Universal-Image-Loader
									
									
									
									
										vendored
									
									
								
							| @ -1 +1 @@ | ||||
| Subproject commit 66042fe4a38d5e96030144546290ba0404d24e28 | ||||
| Subproject commit 1c2a91e464b49874068a8bf2a6e39d39aae9208a | ||||
							
								
								
									
										4
									
								
								media/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								media/README
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| Most of the SVG files found in here are in the Inkscape format You should | ||||
| convert them to plain SVG with Inkscape if you would like to use them in a | ||||
| website, for example. Depending on the viewer/browser, the resulting look of | ||||
| the SVG might differ. | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>През 12 часа</item> | ||||
|     <item>Всеки ден</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Изключено (опасно)</item> | ||||
|     <item>Нормално</item> | ||||
|  | ||||
| @ -48,6 +48,9 @@ Die Adresse einer Paketquelle sieht etwa so aus: https://f-droid.org/repo</strin | ||||
|   <string name="repo_add_title">Paketquelle hinzufügen</string> | ||||
|   <string name="repo_add_add">Hinzufügen</string> | ||||
|   <string name="cancel">Abbrechen</string> | ||||
|   <string name="enable">Aktivieren</string> | ||||
|   <string name="add_key">Schlüssel hinzufügen</string> | ||||
|   <string name="overwrite">Überschreiben</string> | ||||
|   <string name="repo_delete_title">Zu entfernende Paketquelle auswählen</string> | ||||
|   <string name="repo_update_title">Paketquellen aktualisieren</string> | ||||
|   <string name="tab_installed">Installiert</string> | ||||
| @ -60,6 +63,12 @@ Die Adresse einer Paketquelle sieht etwa so aus: https://f-droid.org/repo</strin | ||||
|   <string name="process_update_msg">Anwendungsliste wird aktualisiert …</string> | ||||
|   <string name="download_server">Anwendung wird heruntergeladen von</string> | ||||
|   <string name="repo_add_url">Adresse der Paketquelle</string> | ||||
|   <string name="repo_add_fingerprint">Fingerabdruck (optional)</string> | ||||
|   <string name="repo_exists">Diese Paketquelle existiert bereits!</string> | ||||
|   <string name="repo_exists_add_fingerprint">Diese Paketquelle ist bereits eingerichtet, dieses wird neue Schlüsselinformationen hinzuzufügen.</string> | ||||
|   <string name="repo_exists_enable">Diese Paketquelle ist bereits eingerichtet, bestätigen, dass Sie diese wieder aktivieren möchten.</string> | ||||
|   <string name="repo_exists_and_enabled">Die eingehende Paketquelle ist bereits eingerichtet und aktiviert!</string> | ||||
|   <string name="repo_delete_to_overwrite">Sie müssen zuerst diese Paketquelle löschen, bevor Sie eine mit einem anderen Schlüssel hinzuzufügen!</string> | ||||
|   <string name="repo_alrt">Die Liste der genutzten Paketquellen hat sich geändert. | ||||
| Sollen diese aktualisiert werden?</string> | ||||
|   <string name="menu_update_repo">Paketquellen aktualisieren</string> | ||||
| @ -69,7 +78,7 @@ Sollen diese aktualisiert werden?</string> | ||||
|   <string name="menu_search">Suchen</string> | ||||
|   <string name="menu_add_repo">Paketquelle hinzufügen</string> | ||||
|   <string name="menu_rem_repo">Paketquelle entfernen</string> | ||||
|   <string name="menu_launch">Ausführen</string> | ||||
|   <string name="menu_launch">Starten</string> | ||||
|   <string name="menu_share">Empfehlen</string> | ||||
|   <string name="menu_install">Installieren</string> | ||||
|   <string name="menu_uninstall">Entfernen</string> | ||||
| @ -89,6 +98,7 @@ Sollen diese aktualisiert werden?</string> | ||||
|   <string name="antinonfreeadlist">Diese Anwendung bewirbt nicht freie Erweiterungen</string> | ||||
|   <string name="antinonfreenetlist">Diese Anwendung bewirbt nicht freie Netzwerkdienste</string> | ||||
|   <string name="antinonfreedeplist">Diese Anwendung hängt ab von nicht freien Anwendungen</string> | ||||
|   <string name="antiupstreamnonfreelist">Der Originalcode ist nicht völlig frei</string> | ||||
|   <string name="display">Anzeige</string> | ||||
|   <string name="expert">Experte</string> | ||||
|   <string name="expert_mode">Expertenmodus einschalten</string> | ||||
|  | ||||
| @ -2,5 +2,18 @@ | ||||
| <resources> | ||||
|   <string-array name="updateIntervalNames"> | ||||
|     <item>Neniam</item> | ||||
|     <item>Hourly</item> | ||||
|     <item>Every 4 Hours</item> | ||||
|     <item>Every 12 Hours</item> | ||||
|     <item>Daily</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Off (unsafe)</item> | ||||
|     <item>Normal</item> | ||||
|     <item>Full</item> | ||||
|   </string-array> | ||||
| </resources> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>12 orduero</item> | ||||
|     <item>Egunero</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Itzalita (ez da segurua)</item> | ||||
|     <item>Normala</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>દર 12 કલાકે</item> | ||||
|     <item>દરરોજ</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>બંધ (અસુરક્ષિત)</item> | ||||
|     <item>સામાન્ય</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>Co 12 godzin</item> | ||||
|     <item>Codziennie</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Wyłączone (niebezpieczne)</item> | ||||
|     <item>Normalny</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>La 12 ore</item> | ||||
|     <item>Zilnic</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Inchis (nerecomandat)</item> | ||||
|     <item>Normal</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>Каждые 12 часов</item> | ||||
|     <item>Ежедневно</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Откл. (опасно)</item> | ||||
|     <item>Обычный</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>Vsakih 12 ur</item> | ||||
|     <item>Dnevno</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Izključeno (ni varno)</item> | ||||
|     <item>Običajno</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>Сваких 12 сати</item> | ||||
|     <item>Једном Дневно</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Искључено (није безбедно)</item> | ||||
|     <item>Нормално</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>Кожні 12 годин</item> | ||||
|     <item>Щодня</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>Ніколи (небезпечно)</item> | ||||
|     <item>Типово</item> | ||||
|  | ||||
| @ -7,6 +7,10 @@ | ||||
|     <item>每12个小时</item> | ||||
|     <item>每天</item> | ||||
|   </string-array> | ||||
|   <string-array name="themeNames"> | ||||
|     <item>Dark</item> | ||||
|     <item>Light</item> | ||||
|   </string-array> | ||||
|   <string-array name="dbSyncModeNames"> | ||||
|     <item>关闭(存在安全风险)</item> | ||||
|     <item>正常</item> | ||||
|  | ||||
| @ -47,6 +47,7 @@ import android.database.Cursor; | ||||
| import android.database.sqlite.SQLiteDatabase; | ||||
| import android.preference.PreferenceManager; | ||||
| import android.text.TextUtils.SimpleStringSplitter; | ||||
| import android.util.DisplayMetrics; | ||||
| import android.util.Log; | ||||
| 
 | ||||
| import org.fdroid.fdroid.compat.Compatibility; | ||||
| @ -705,16 +706,8 @@ public class DB { | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // Start the map at the actual number of apps we will have | ||||
|         Cursor c = db.rawQuery("select count(*) from "+TABLE_APP, null); | ||||
|         c.moveToFirst(); | ||||
|         int count = c.getInt(0); | ||||
|         c.close(); | ||||
|         c = null; | ||||
| 
 | ||||
|         Log.d("FDroid", "Will be fetching " + count + " apps, and this took us "); | ||||
| 
 | ||||
|         Map<String, App> apps = new HashMap<String, App>(count); | ||||
|         Map<String, App> apps = new HashMap<String, App>(); | ||||
|         Cursor c = null; | ||||
|         long startTime = System.currentTimeMillis(); | ||||
|         try { | ||||
| 
 | ||||
| @ -772,7 +765,7 @@ public class DB { | ||||
|             c.close(); | ||||
|             c = null; | ||||
| 
 | ||||
|             Log.d("FDroid", "Read app data from database (took " | ||||
|             Log.d("FDroid", "Read app data from database " + " (took " | ||||
|                     + (System.currentTimeMillis() - startTime) + " ms)"); | ||||
| 
 | ||||
|             List<Repo> repos = getRepos(); | ||||
| @ -784,6 +777,25 @@ public class DB { | ||||
|             c = db.query(TABLE_APK, cols, null, null, null, null, | ||||
|                     "vercode desc"); | ||||
|             c.moveToFirst(); | ||||
| 
 | ||||
|             DisplayMetrics metrics = mContext.getResources() | ||||
|                 .getDisplayMetrics(); | ||||
|             String iconsDir = null; | ||||
|             if (metrics.densityDpi >= 640) { | ||||
|                 iconsDir = "/icons-640/"; | ||||
|             } else if (metrics.densityDpi >= 480) { | ||||
|                 iconsDir = "/icons-480/"; | ||||
|             } else if (metrics.densityDpi >= 320) { | ||||
|                 iconsDir = "/icons-320/"; | ||||
|             } else if (metrics.densityDpi >= 240) { | ||||
|                 iconsDir = "/icons-240/"; | ||||
|             } else if (metrics.densityDpi >= 160) { | ||||
|                 iconsDir = "/icons-160/"; | ||||
|             } else { | ||||
|                 iconsDir = "/icons-120/"; | ||||
|             } | ||||
|             metrics = null; | ||||
| 
 | ||||
|             while (!c.isAfterLast()) { | ||||
|                 String id = c.getString(0); | ||||
|                 App app = apps.get(id); | ||||
| @ -811,11 +823,13 @@ public class DB { | ||||
|                 app.apks.add(apk); | ||||
|                 if (app.iconUrl == null && app.icon != null) { | ||||
|                     for (DB.Repo repo : repos) { | ||||
|                         if (repo.id == repoid) { | ||||
|                             app.iconUrl = | ||||
|                                 repo.address + "/icons/" + app.icon; | ||||
|                             break; | ||||
|                         if (repo.id != repoid) continue; | ||||
|                         if (repo.version >= 11) { | ||||
|                             app.iconUrl = repo.address + iconsDir + app.icon; | ||||
|                         } else { | ||||
|                             app.iconUrl = repo.address + "/icons/" + app.icon; | ||||
|                         } | ||||
|                         break; | ||||
|                     } | ||||
|                 } | ||||
|                 c.moveToNext(); | ||||
| @ -831,7 +845,7 @@ public class DB { | ||||
|                 c.close(); | ||||
|             } | ||||
| 
 | ||||
|             Log.d("FDroid", "Read app and apk data from database (took " | ||||
|             Log.d("FDroid", "Read app and apk data from database " + " (took " | ||||
|                     + (System.currentTimeMillis() - startTime) + " ms)"); | ||||
|         } | ||||
| 
 | ||||
|  | ||||
| @ -151,7 +151,7 @@ public class ManageRepo extends ListActivity { | ||||
| 
 | ||||
|         DB.Repo repo = (DB.Repo)getListView().getItemAtPosition(position); | ||||
|         editRepo(repo); | ||||
| 	} | ||||
|     } | ||||
| 
 | ||||
|     private void refreshList() { | ||||
|         repoAdapter.refresh(); | ||||
|  | ||||
| @ -119,14 +119,11 @@ public class SearchResults extends ListActivity { | ||||
|         TextView tv = (TextView) findViewById(R.id.description); | ||||
|         String headertext; | ||||
|         if (apps.size() == 0) { | ||||
|             headertext = String.format(getString(R.string.searchres_noapps), | ||||
|                     mQuery); | ||||
|             headertext = getString(R.string.searchres_noapps, mQuery); | ||||
|         } else if (apps.size() == 1) { | ||||
|             headertext = String.format(getString(R.string.searchres_oneapp), | ||||
|                     mQuery); | ||||
|             headertext = getString(R.string.searchres_oneapp, mQuery); | ||||
|         } else { | ||||
|             headertext = String.format(getString(R.string.searchres_napps), | ||||
|                     apps.size(), mQuery); | ||||
|             headertext = getString(R.string.searchres_napps, apps.size(), mQuery); | ||||
|         } | ||||
|         tv.setText(headertext); | ||||
|         Log.d("FDroid", "Search for '" + mQuery + "' returned " + apps.size() | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Daniel Martí
						Daniel Martí