summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * make updateStatus() more closely match the state given from TorServiceHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | | | | | | | This aims to make the UI more tighly in sync with the data coming from TorService. It is not currently perfect in the UI, but it means that the UI will represent the status bugs in TorService. This is important because that status info is now broadcast to any app that wants it. So the visible part of Orbot should show want the apps are seeing to aid debugging. And status report bugs should be fixed in TorService so that everyone gets the correctinfo.
| * purge unused code from OrbotMainActivityHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | | | | | mItemOnOff no longer exists, there is no more start/stop button on the menu and this code was trying to update menu.getItem(0), which is currently the settings button. onSharedPreferenceChanged() was entirely empty, and the prefs are all handled in their own Activity
| * use the same action string for local and broadcast statusHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | No need to have separate action strings, using the LocalBroadcastManager enforces the local-only messaging, and Orbot does not claim the global broadcasts in any kind of receiver.
| * purge unused OrbotLogActivityHans-Christoph Steiner2015-06-09
| |
| * strictly target local broadcastsHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | This sets an action for each kind of local broadcast, and uses the action to choose how to handle it. Before, it was a mix of the action and which extras the Intent included.
| * rename mMessageReceiver to mLocalBroadcastReceiverHans-Christoph Steiner2015-06-09
| |
| * use "SIGNAL HUP" to request Tor re-read its configHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | | | | | The tor daemon supports both "SIGNAL HUP" via its control port or the UNIX signal `kill -HUP` via the terminal as a way to trigger the tor daemon to reload its config. This is needed for new bridges and hidden services. It is not necessary to restart everything to add those. https://stem.torproject.org/faq.html#how-do-i-reload-my-torrc
| * use context.stopService() to shutdown TorService instead of custom messageHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | Since running stopService() automatically triggers Service.onDestroy(), there is a nice way to hook in and run the shutdown procedure. This provides an obvious point of entry as well as simplifying the shutdown procedure.
| * rename mHandler to mStatusUpdateHandlerHans-Christoph Steiner2015-06-09
| | | | | | | | Hopefully this will make the code a little easier to follow...
| * broadcast Tor state to any app that might want to knowHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | | | In order for apps to follow the current state of Tor, this broadcasts the state both locally, since global broadcasts are insecure, and globally, for any app to receive. The internal workings of Orbot need to use a local broadcast, otherwise any app could trigger stop, start, etc or DoS in other ways.
| * only set mCurrentStatus in sendCallbackStatus(), the one stop shopHans-Christoph Steiner2015-06-09
| | | | | | | | | | Make sendCallbackStatus() the one thing that updates the all of the bits related to running status.
| * rework start/stop procedure to have clear points for ON, OFF, STARTING, STOPPINGHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | | | | | In order to send reliable information to any app using Tor, Orbot itself needs reliable state broadcasts. Before, there the ON/OFF/STARTING state were being set multiple times during the process, and sometimes not even in a useful order (i.e. STARTING ON STARTING ON ON). This reworks the start/stop procedure into startTor() and stopTor().
| * rename startService() to sendIntentToService() to reflect what it doesHans-Christoph Steiner2015-06-09
| | | | | | | | | | Even though this method is a wrapper around startService(), it is really used to send various Intents to the Service, not only starting it.
| * mark TorService methods from EventHandler as overriddenHans-Christoph Steiner2015-06-09
| | | | | | | | This keeps me from getting confused...
| * rename status to STARTING and STOPPING since it also starts/stops daemonsHans-Christoph Steiner2015-06-09
| | | | | | | | | | The CONNECTING status also is starting up daemons as well as connecting to the tor daemon.
| * on start and tor daemon not running, kill all daemons before starting againHans-Christoph Steiner2015-06-09
| | | | | | | | | | To make sure there are not any other daemons still running when trying to start the whole thing again, kill all daemons before starting tor afresh.
| * rework killing all daemons to continue trying after a failureHans-Christoph Steiner2015-06-09
| | | | | | | | | | Before, it would quit the process on the first exception while killing. This makes it keep on trying each daemon.
| * use Java methods for setting permissions on native executablesHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | As of android-9, java.io.File has native methods for setting permissions, inherited from Java 1.6. Using these will help deal with compatibility across devices, since some devices might not have chmod installed.
| * make prefs called directly when needed instead of requiring refreshHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | The code was using global variables that were refreshed from the prefs on certain occasions. That means that the global vars could easily get out of sync with the actual values. Instead, just read the prefs directly when the values are needed, and they will always be up-to-date.
| * purge dead and unused code from TorServiceHans-Christoph Steiner2015-06-09
| |
| * handle logging native process Exceptions closer to the sourceHans-Christoph Steiner2015-06-09
| | | | | | | | | | Instead of passing Exceptions through many layers only to log them, just log them where they are thrown. Keeps things neater.
| * purge CMD_INIT/initialize() from TorService, an IntentService doesn't need itHans-Christoph Steiner2015-06-09
| | | | | | | | | | when switching to an IntentService, a new Intent will always start the Service, and onCreate() can be used to initialize the Service.
| * create String constants for Intent actions and extrasHans-Christoph Steiner2015-06-09
| | | | | | | | | | | | Following the Android system naming convention, this uses constants for the action and extra names for Intents. This makes it much easier to track which "log" is which, since there are "log" actions, extras, and messages.
| * purge troublesome half-disabled Wizard, rename menu to "Get Apps..."Hans-Christoph Steiner2015-06-09
| | | | | | | | | | | | | | | | | | When clicking on "Wizard" from the menu, then clicking back, it gets stuck in a strange back stack purgatory, and then randomly changes the language. So purge the wizard stuff for now, and add back the parts that are still needed once that is all figured out. This also simplifies the refactoring of the Intent handling.
| * convert status variable to String for easy sharing in IntentsHans-Christoph Steiner2015-06-09
| | | | | | | | | | Instead of making the apps who receive the broadcasts decipher a number scheme, send the string of the status. Then it'll be self-documenting.
| * remove unused IntentFilter from TorServiceHans-Christoph Steiner2015-06-09
| |
| * convert app description to XLIFF to make translation management easierHans-Christoph Steiner2015-06-09
|/
* Merge pull request #10 from eighthave/fix-translationsn8fr82015-06-08
|\ | | | | Fix translations
| * remove empty translationsHans-Christoph Steiner2015-06-08
| |
| * fixed directory names for Indonesian and HebrewHans-Christoph Steiner2015-06-05
| | | | | | | | | | | | | | | | | | | | https://stackoverflow.com/questions/13291578/how-to-localize-an-android-app-in-indonesian-language Note that Java uses several deprecated two-letter codes. The Hebrew ("he") language code is rewritten as "iw", Indonesian ("id") as "in", and Yiddish ("yi") as "ji". This rewriting happens even if you construct your own Locale object, not just for instances returned by the various lookup methods.
| * add config for transifex-client aka txHans-Christoph Steiner2015-06-05
| |
| * rename zh to zh_CN following conventionHans-Christoph Steiner2015-06-05
| |
| * rework setting locale from pref to have a lighter touch and be dynamicHans-Christoph Steiner2015-06-05
| | | | | | | | | | | | This leaves the default Locale unchanged, i.e. Locale.setDefault(). This also will immediately change the language after the user selects it in the pref.
| * include proxy config info when returning from START_TOR IntentHans-Christoph Steiner2015-06-05
| | | | | | | | | | | | | | | | | | The recommended way to send a START_TOR Intent is using startActivityWithResult() so that the sender knows when Tor is actually started. The return includes an Intent that can also include the config info for the proxies that Orbot runs. Right now, this is based on the app defaults, but ultimately, it should dynamically get the port numbers for cases like Samsung devices where there is a port conflict.
| * switch language/locale preference to use Languages utility classHans-Christoph Steiner2015-06-05
| | | | | | | | | | | | The Languages utility class merges the techniques from ChatSecure and Courier. It fetches the supported locales from the APK itself, and fetches the native names of the languages from the system.
| * update SettingsActivity to use simpler findPreferences() methodHans-Christoph Steiner2015-06-05
| |
| * no need to override methods with nothingHans-Christoph Steiner2015-06-05
| |
| * remove global NumberFormat for more flexible Locale handlingHans-Christoph Steiner2015-06-05
|/
* Merge pull request #9 from eighthave/reboot-and-reproduciblen8fr82015-06-05
|\ | | | | Reboot and reproducible
| * add script to compare APKs for the reproducible processHans-Christoph Steiner2015-06-04
| |
| * ignore build products in the submodules (ignore = dirty)Hans-Christoph Steiner2015-06-04
| |
| * add standard ./make-release-build scriptHans-Christoph Steiner2015-06-04
| |
| * add custom ant rules for automating the release processHans-Christoph Steiner2015-06-04
| |
| * ignore all build products from submodulesHans-Christoph Steiner2015-06-04
| |
| * put up error notification if Orbot cannot kill a processHans-Christoph Steiner2015-06-04
| | | | | | | | | | | | | | | | There are a couple of different times when Orbot will be unable to kill the running processes. One example is when Orbot is running, then uninstalled, then installed again. closes #5254 https://dev.guardianproject.info/issues/5254
| * remove unused icons to save spaceHans-Christoph Steiner2015-06-04
| | | | | | | | These are all reported by `ant debug lint` as unused.
| * run ./fix-translationsHans-Christoph Steiner2015-06-04
| |
| * ./fix-translations script to fix common problems in the strings.xmlHans-Christoph Steiner2015-06-04
| |
| * remove Firefox ProxyMob recommendation, ProxyMob is no longer supportedHans-Christoph Steiner2015-06-04
| | | | | | | | | | This removes the translations after the originals were removed in 0e6ba61ac0369072b6ff83a5df124b931b7f73f6
| * Promo Apps: choose "all apps" URL based on which app store is installedHans-Christoph Steiner2015-06-04
| | | | | | | | | | | | Since most people using devices without Google Play will be in China, where Google is generally blocked, instead direct people to f-droid.org unless they have Google Play installed.