diff --git a/src/main/res/drawable-hdpi/ab_bottom_solid_shadow.9.png b/src/main/res/drawable-hdpi/ab_bottom_solid_shadow.9.png
index afca9466..758468cf 100755
Binary files a/src/main/res/drawable-hdpi/ab_bottom_solid_shadow.9.png and b/src/main/res/drawable-hdpi/ab_bottom_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/ab_solid_shadow.9.png b/src/main/res/drawable-hdpi/ab_solid_shadow.9.png
index fb524bdc..da77e95c 100755
Binary files a/src/main/res/drawable-hdpi/ab_solid_shadow.9.png and b/src/main/res/drawable-hdpi/ab_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/ab_texture_tile_shadow.png b/src/main/res/drawable-hdpi/ab_texture_tile_shadow.png
index cc8dee60..45512c35 100755
Binary files a/src/main/res/drawable-hdpi/ab_texture_tile_shadow.png and b/src/main/res/drawable-hdpi/ab_texture_tile_shadow.png differ
diff --git a/src/main/res/drawable-hdpi/btn_cab_done_pressed_shadow.9.png b/src/main/res/drawable-hdpi/btn_cab_done_pressed_shadow.9.png
index ef1f8f0b..8d332ef2 100755
Binary files a/src/main/res/drawable-hdpi/btn_cab_done_pressed_shadow.9.png and b/src/main/res/drawable-hdpi/btn_cab_done_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/list_pressed_shadow.9.png b/src/main/res/drawable-hdpi/list_pressed_shadow.9.png
new file mode 100755
index 00000000..74e43594
Binary files /dev/null and b/src/main/res/drawable-hdpi/list_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/menu_dropdown_panel_shadow.9.png b/src/main/res/drawable-hdpi/menu_dropdown_panel_shadow.9.png
index bab5e3ba..9e12ec08 100755
Binary files a/src/main/res/drawable-hdpi/menu_dropdown_panel_shadow.9.png and b/src/main/res/drawable-hdpi/menu_dropdown_panel_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/spinner_ab_pressed_shadow.9.png b/src/main/res/drawable-hdpi/spinner_ab_pressed_shadow.9.png
index 39f778c8..dda5bd51 100755
Binary files a/src/main/res/drawable-hdpi/spinner_ab_pressed_shadow.9.png and b/src/main/res/drawable-hdpi/spinner_ab_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/tab_selected_pressed_shadow.9.png b/src/main/res/drawable-hdpi/tab_selected_pressed_shadow.9.png
index 65688cb1..545e1b76 100755
Binary files a/src/main/res/drawable-hdpi/tab_selected_pressed_shadow.9.png and b/src/main/res/drawable-hdpi/tab_selected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-hdpi/tab_unselected_pressed_shadow.9.png b/src/main/res/drawable-hdpi/tab_unselected_pressed_shadow.9.png
index f44171cc..4f18a95a 100755
Binary files a/src/main/res/drawable-hdpi/tab_unselected_pressed_shadow.9.png and b/src/main/res/drawable-hdpi/tab_unselected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/ab_bottom_solid_shadow.9.png b/src/main/res/drawable-mdpi/ab_bottom_solid_shadow.9.png
index 62e58107..370f5fe2 100755
Binary files a/src/main/res/drawable-mdpi/ab_bottom_solid_shadow.9.png and b/src/main/res/drawable-mdpi/ab_bottom_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/ab_solid_shadow.9.png b/src/main/res/drawable-mdpi/ab_solid_shadow.9.png
index e8ee5c48..cd8df3d2 100755
Binary files a/src/main/res/drawable-mdpi/ab_solid_shadow.9.png and b/src/main/res/drawable-mdpi/ab_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/ab_texture_tile_shadow.png b/src/main/res/drawable-mdpi/ab_texture_tile_shadow.png
index 38f04ff9..47838474 100755
Binary files a/src/main/res/drawable-mdpi/ab_texture_tile_shadow.png and b/src/main/res/drawable-mdpi/ab_texture_tile_shadow.png differ
diff --git a/src/main/res/drawable-mdpi/btn_cab_done_pressed_shadow.9.png b/src/main/res/drawable-mdpi/btn_cab_done_pressed_shadow.9.png
index 15cb5d89..4acbbf62 100755
Binary files a/src/main/res/drawable-mdpi/btn_cab_done_pressed_shadow.9.png and b/src/main/res/drawable-mdpi/btn_cab_done_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/list_pressed_shadow.9.png b/src/main/res/drawable-mdpi/list_pressed_shadow.9.png
new file mode 100755
index 00000000..a58996d4
Binary files /dev/null and b/src/main/res/drawable-mdpi/list_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/menu_dropdown_panel_shadow.9.png b/src/main/res/drawable-mdpi/menu_dropdown_panel_shadow.9.png
index 2b2458ef..f1999201 100755
Binary files a/src/main/res/drawable-mdpi/menu_dropdown_panel_shadow.9.png and b/src/main/res/drawable-mdpi/menu_dropdown_panel_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/spinner_ab_pressed_shadow.9.png b/src/main/res/drawable-mdpi/spinner_ab_pressed_shadow.9.png
index 73922383..3580ff27 100755
Binary files a/src/main/res/drawable-mdpi/spinner_ab_pressed_shadow.9.png and b/src/main/res/drawable-mdpi/spinner_ab_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/tab_selected_pressed_shadow.9.png b/src/main/res/drawable-mdpi/tab_selected_pressed_shadow.9.png
index 1eb92c10..a52c51d2 100755
Binary files a/src/main/res/drawable-mdpi/tab_selected_pressed_shadow.9.png and b/src/main/res/drawable-mdpi/tab_selected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-mdpi/tab_unselected_pressed_shadow.9.png b/src/main/res/drawable-mdpi/tab_unselected_pressed_shadow.9.png
index 2c13a555..4365d178 100755
Binary files a/src/main/res/drawable-mdpi/tab_unselected_pressed_shadow.9.png and b/src/main/res/drawable-mdpi/tab_unselected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/ab_bottom_solid_shadow.9.png b/src/main/res/drawable-xhdpi/ab_bottom_solid_shadow.9.png
index cf9c0d64..fc0b308e 100755
Binary files a/src/main/res/drawable-xhdpi/ab_bottom_solid_shadow.9.png and b/src/main/res/drawable-xhdpi/ab_bottom_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/ab_solid_shadow.9.png b/src/main/res/drawable-xhdpi/ab_solid_shadow.9.png
index 416e8521..17f16075 100755
Binary files a/src/main/res/drawable-xhdpi/ab_solid_shadow.9.png and b/src/main/res/drawable-xhdpi/ab_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/ab_texture_tile_shadow.png b/src/main/res/drawable-xhdpi/ab_texture_tile_shadow.png
index 3a16187e..0c1174bc 100755
Binary files a/src/main/res/drawable-xhdpi/ab_texture_tile_shadow.png and b/src/main/res/drawable-xhdpi/ab_texture_tile_shadow.png differ
diff --git a/src/main/res/drawable-xhdpi/btn_cab_done_pressed_shadow.9.png b/src/main/res/drawable-xhdpi/btn_cab_done_pressed_shadow.9.png
index 33b9d1da..772bde13 100755
Binary files a/src/main/res/drawable-xhdpi/btn_cab_done_pressed_shadow.9.png and b/src/main/res/drawable-xhdpi/btn_cab_done_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/list_pressed_shadow.9.png b/src/main/res/drawable-xhdpi/list_pressed_shadow.9.png
new file mode 100755
index 00000000..4f6f689b
Binary files /dev/null and b/src/main/res/drawable-xhdpi/list_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/menu_dropdown_panel_shadow.9.png b/src/main/res/drawable-xhdpi/menu_dropdown_panel_shadow.9.png
index 2974663c..3a04b510 100755
Binary files a/src/main/res/drawable-xhdpi/menu_dropdown_panel_shadow.9.png and b/src/main/res/drawable-xhdpi/menu_dropdown_panel_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/spinner_ab_pressed_shadow.9.png b/src/main/res/drawable-xhdpi/spinner_ab_pressed_shadow.9.png
index 870d2bec..cfc8b5e1 100755
Binary files a/src/main/res/drawable-xhdpi/spinner_ab_pressed_shadow.9.png and b/src/main/res/drawable-xhdpi/spinner_ab_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/tab_selected_pressed_shadow.9.png b/src/main/res/drawable-xhdpi/tab_selected_pressed_shadow.9.png
index bd51d365..f6d8ee5c 100755
Binary files a/src/main/res/drawable-xhdpi/tab_selected_pressed_shadow.9.png and b/src/main/res/drawable-xhdpi/tab_selected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xhdpi/tab_unselected_pressed_shadow.9.png b/src/main/res/drawable-xhdpi/tab_unselected_pressed_shadow.9.png
index fd190dbe..a5a2c25e 100755
Binary files a/src/main/res/drawable-xhdpi/tab_unselected_pressed_shadow.9.png and b/src/main/res/drawable-xhdpi/tab_unselected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/ab_bottom_solid_shadow.9.png b/src/main/res/drawable-xxhdpi/ab_bottom_solid_shadow.9.png
new file mode 100755
index 00000000..d767dd92
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ab_bottom_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/ab_solid_shadow.9.png b/src/main/res/drawable-xxhdpi/ab_solid_shadow.9.png
new file mode 100755
index 00000000..04314abf
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ab_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/ab_stacked_solid_shadow.9.png b/src/main/res/drawable-xxhdpi/ab_stacked_solid_shadow.9.png
new file mode 100755
index 00000000..47555f2f
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ab_stacked_solid_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/ab_texture_tile_shadow.png b/src/main/res/drawable-xxhdpi/ab_texture_tile_shadow.png
new file mode 100755
index 00000000..5f5299ca
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ab_texture_tile_shadow.png differ
diff --git a/src/main/res/drawable-xxhdpi/ab_transparent_shadow.9.png b/src/main/res/drawable-xxhdpi/ab_transparent_shadow.9.png
new file mode 100755
index 00000000..0e9ba38d
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/ab_transparent_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/btn_cab_done_default_shadow.9.png b/src/main/res/drawable-xxhdpi/btn_cab_done_default_shadow.9.png
new file mode 100755
index 00000000..0c0079c7
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/btn_cab_done_default_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/btn_cab_done_focused_shadow.9.png b/src/main/res/drawable-xxhdpi/btn_cab_done_focused_shadow.9.png
new file mode 100755
index 00000000..ddf7531b
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/btn_cab_done_focused_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/btn_cab_done_pressed_shadow.9.png b/src/main/res/drawable-xxhdpi/btn_cab_done_pressed_shadow.9.png
new file mode 100755
index 00000000..2ef2a7be
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/btn_cab_done_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/cab_background_bottom_shadow.9.png b/src/main/res/drawable-xxhdpi/cab_background_bottom_shadow.9.png
new file mode 100755
index 00000000..858de47e
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/cab_background_bottom_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/cab_background_top_shadow.9.png b/src/main/res/drawable-xxhdpi/cab_background_top_shadow.9.png
new file mode 100755
index 00000000..3480efff
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/cab_background_top_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/list_focused_shadow.9.png b/src/main/res/drawable-xxhdpi/list_focused_shadow.9.png
new file mode 100755
index 00000000..cc17ef5b
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/list_focused_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/list_pressed_shadow.9.png b/src/main/res/drawable-xxhdpi/list_pressed_shadow.9.png
new file mode 100755
index 00000000..3af5169d
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/list_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/menu_dropdown_panel_shadow.9.png b/src/main/res/drawable-xxhdpi/menu_dropdown_panel_shadow.9.png
new file mode 100755
index 00000000..c2ff4a09
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/menu_dropdown_panel_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/progress_bg_shadow.9.png b/src/main/res/drawable-xxhdpi/progress_bg_shadow.9.png
new file mode 100755
index 00000000..7c221af9
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/progress_bg_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/progress_primary_shadow.9.png b/src/main/res/drawable-xxhdpi/progress_primary_shadow.9.png
new file mode 100755
index 00000000..3a2d7056
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/progress_primary_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/progress_secondary_shadow.9.png b/src/main/res/drawable-xxhdpi/progress_secondary_shadow.9.png
new file mode 100755
index 00000000..1a7fb589
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/progress_secondary_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/spinner_ab_default_shadow.9.png b/src/main/res/drawable-xxhdpi/spinner_ab_default_shadow.9.png
new file mode 100755
index 00000000..f178f195
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/spinner_ab_default_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/spinner_ab_disabled_shadow.9.png b/src/main/res/drawable-xxhdpi/spinner_ab_disabled_shadow.9.png
new file mode 100755
index 00000000..9ec5a1ef
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/spinner_ab_disabled_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/spinner_ab_focused_shadow.9.png b/src/main/res/drawable-xxhdpi/spinner_ab_focused_shadow.9.png
new file mode 100755
index 00000000..125bbda7
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/spinner_ab_focused_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/spinner_ab_pressed_shadow.9.png b/src/main/res/drawable-xxhdpi/spinner_ab_pressed_shadow.9.png
new file mode 100755
index 00000000..5770c069
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/spinner_ab_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/tab_selected_focused_shadow.9.png b/src/main/res/drawable-xxhdpi/tab_selected_focused_shadow.9.png
new file mode 100755
index 00000000..4cc29080
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/tab_selected_focused_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/tab_selected_pressed_shadow.9.png b/src/main/res/drawable-xxhdpi/tab_selected_pressed_shadow.9.png
new file mode 100755
index 00000000..539f850d
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/tab_selected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/tab_selected_shadow.9.png b/src/main/res/drawable-xxhdpi/tab_selected_shadow.9.png
new file mode 100755
index 00000000..f9b28d0f
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/tab_selected_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/tab_unselected_focused_shadow.9.png b/src/main/res/drawable-xxhdpi/tab_unselected_focused_shadow.9.png
new file mode 100755
index 00000000..cf9c97a2
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/tab_unselected_focused_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/tab_unselected_pressed_shadow.9.png b/src/main/res/drawable-xxhdpi/tab_unselected_pressed_shadow.9.png
new file mode 100755
index 00000000..8dd01d5c
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/tab_unselected_pressed_shadow.9.png differ
diff --git a/src/main/res/drawable-xxhdpi/tab_unselected_shadow.9.png b/src/main/res/drawable-xxhdpi/tab_unselected_shadow.9.png
new file mode 100755
index 00000000..7b5c16da
Binary files /dev/null and b/src/main/res/drawable-xxhdpi/tab_unselected_shadow.9.png differ
diff --git a/src/main/res/drawable/pressed_background_shadow.xml b/src/main/res/drawable/pressed_background_shadow.xml
deleted file mode 100755
index e660d9ac..00000000
--- a/src/main/res/drawable/pressed_background_shadow.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
diff --git a/src/main/res/drawable/selectable_background_shadow.xml b/src/main/res/drawable/selectable_background_shadow.xml
index e0a3f0da..6feb6539 100755
--- a/src/main/res/drawable/selectable_background_shadow.xml
+++ b/src/main/res/drawable/selectable_background_shadow.xml
@@ -20,6 +20,6 @@
-
+
\ No newline at end of file
diff --git a/src/main/res/layout/layout_apps.xml b/src/main/res/layout/layout_apps.xml
index 20871800..99256204 100644
--- a/src/main/res/layout/layout_apps.xml
+++ b/src/main/res/layout/layout_apps.xml
@@ -21,7 +21,7 @@
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"/>
-
-
-
-
+
-
+
-
+
+
-
+
+ - center_vertical
+ - 16dp
+ - @drawable/md__category_background
-
+ - true
+ - end
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/scala/com/github/shadowsocks/AppManager.scala b/src/main/scala/com/github/shadowsocks/AppManager.scala
index fc8d63ed..775ae827 100644
--- a/src/main/scala/com/github/shadowsocks/AppManager.scala
+++ b/src/main/scala/com/github/shadowsocks/AppManager.scala
@@ -39,7 +39,7 @@
package com.github.shadowsocks
-import android.app.ProgressDialog
+import android.app.{Activity, ProgressDialog}
import android.content.Context
import android.content.SharedPreferences
import android.content.pm.PackageManager
@@ -53,22 +53,13 @@ import android.view.View.OnClickListener
import android.view.ViewGroup
import android.view.ViewGroup.LayoutParams
import android.view.WindowManager
-import android.widget.AbsListView
+import android.widget._
import android.widget.AbsListView.OnScrollListener
-import android.widget.ArrayAdapter
-import android.widget.CheckBox
-import android.widget.CompoundButton
import android.widget.CompoundButton.OnCheckedChangeListener
-import android.widget.ImageView
-import android.widget.ListAdapter
-import android.widget.ListView
-import android.widget.TextView
-import com.actionbarsherlock.app.SherlockActivity
import com.nostra13.universalimageloader.core.download.BaseImageDownloader
import java.io.{ByteArrayOutputStream, ByteArrayInputStream, InputStream}
import com.nostra13.universalimageloader.core.{DisplayImageOptions, ImageLoader, ImageLoaderConfiguration}
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer
-import org.jraf.android.backport.switchwidget.Switch
import com.github.shadowsocks.utils.{Utils, Scheme, Key}
case class ProxiedApp(uid: Int, name: String, var proxied: Boolean)
@@ -105,7 +96,7 @@ object AppManager {
}
}
-class AppManager extends SherlockActivity with OnCheckedChangeListener with OnClickListener {
+class AppManager extends Activity with OnCheckedChangeListener with OnClickListener {
val MSG_LOAD_START = 1
val MSG_LOAD_FINISH = 2
@@ -217,7 +208,7 @@ class AppManager extends SherlockActivity with OnCheckedChangeListener with OnCl
protected override def onCreate(savedInstanceState: Bundle) {
super.onCreate(savedInstanceState)
- getSupportActionBar.setTitle(R.string.proxied_help)
+ getActionBar.setTitle(R.string.proxied_help)
this.setContentView(R.layout.layout_apps)
this.overlay = View.inflate(this, R.layout.overlay, null).asInstanceOf[TextView]
getWindowManager.addView(overlay, new
@@ -232,7 +223,7 @@ class AppManager extends SherlockActivity with OnCheckedChangeListener with OnCl
.build()
ImageLoader.getInstance().init(config)
- val bypassSwitch: Switch = findViewById(R.id.bypassSwitch).asInstanceOf[Switch]
+ val bypassSwitch = findViewById(R.id.bypassSwitch).asInstanceOf[Switch]
val prefs: SharedPreferences = PreferenceManager.getDefaultSharedPreferences(getBaseContext)
bypassSwitch.setOnCheckedChangeListener(new OnCheckedChangeListener {
def onCheckedChanged(button: CompoundButton, checked: Boolean) {
diff --git a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala
index 7f98b010..c268cecd 100644
--- a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala
+++ b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala
@@ -225,18 +225,19 @@ class Shadowsocks
}
}
- lazy val settings = PreferenceManager.getDefaultSharedPreferences(this)
- lazy val status = getSharedPreferences(Key.status, Context.MODE_PRIVATE)
- lazy val preferenceReceiver = new PreferenceBroadcastReceiver
- lazy val drawer = MenuDrawer.attach(this)
- lazy val menuAdapter = new MenuAdapter(this, getMenuList)
- lazy val listView = new ListView(this)
- lazy val profileManager =
+ private lazy val settings = PreferenceManager.getDefaultSharedPreferences(this)
+ private lazy val status = getSharedPreferences(Key.status, Context.MODE_PRIVATE)
+ private lazy val preferenceReceiver = new PreferenceBroadcastReceiver
+ private lazy val drawer = MenuDrawer.attach(this)
+ private lazy val menuAdapter = new MenuAdapter(this, getMenuList)
+ private lazy val listView = new ListView(this)
+ private lazy val profileManager =
new ProfileManager(settings, getApplication.asInstanceOf[ShadowsocksApplication].dbHelper)
- private lazy val handler = new Handler()
private lazy val application = getApplication.asInstanceOf[ShadowsocksApplication]
+ val handler = new Handler()
+
def isSinglePane: Boolean = {
if (singlePane == -1) {
val metrics = new DisplayMetrics()
@@ -518,8 +519,8 @@ class Shadowsocks
case ignored: RemoteException => // Nothing
}
bgService = null
+ unbindService(connection)
}
- unbindService(connection)
}
override def onRestoreInstanceState(inState: Bundle) {
diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksApplication.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksApplication.scala
index f757278c..48cb6f45 100644
--- a/src/main/scala/com/github/shadowsocks/ShadowsocksApplication.scala
+++ b/src/main/scala/com/github/shadowsocks/ShadowsocksApplication.scala
@@ -39,19 +39,16 @@
package com.github.shadowsocks
+import java.util
import java.util.concurrent.TimeUnit
import android.app.Application
import com.github.shadowsocks.database.DBHelper
-import com.google.android.gms.analytics.{GoogleAnalytics, Tracker}
+import com.github.shadowsocks.utils.Utils
+import com.google.android.gms.analytics.GoogleAnalytics
import com.google.android.gms.common.api.ResultCallback
import com.google.android.gms.tagmanager.Container.FunctionCallMacroCallback
-import com.google.android.gms.tagmanager.{ContainerHolder, TagManager, Container}
-import com.google.tagmanager.{Container, ContainerOpener, TagManager}
-import com.google.tagmanager.ContainerOpener.{Notifier, OpenType}
-import com.google.tagmanager.Container.FunctionCallMacroHandler
-import java.util
-import com.github.shadowsocks.utils.Utils
+import com.google.android.gms.tagmanager.{ContainerHolder, TagManager}
class ShadowsocksApplication extends Application {
lazy val dbHelper = new DBHelper(this)
@@ -64,7 +61,7 @@ class ShadowsocksApplication extends Application {
val pending = tm.loadContainerPreferNonDefault("GTM-NT8WS8", R.raw.gtm_default_container)
val callback = new ResultCallback[ContainerHolder] {
override def onResult(holder: ContainerHolder): Unit = {
- if (!containerHolder.getStatus.isSuccess) {
+ if (!holder.getStatus.isSuccess) {
return
}
containerHolder = holder
diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksBackupAgent.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksBackupAgent.scala
index 062e03c5..5640ef7c 100644
--- a/src/main/scala/com/github/shadowsocks/ShadowsocksBackupAgent.scala
+++ b/src/main/scala/com/github/shadowsocks/ShadowsocksBackupAgent.scala
@@ -39,8 +39,7 @@
package com.github.shadowsocks
-import android.app.backup.{FileBackupHelper, SharedPreferencesBackupHelper, BackupAgentHelper}
-import android.content.Context
+import android.app.backup.{BackupAgentHelper, FileBackupHelper, SharedPreferencesBackupHelper}
import com.github.shadowsocks.database.DBHelper
class ShadowsocksBackupAgent extends BackupAgentHelper {
diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala
index 08d46bc8..ba9e4794 100644
--- a/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala
+++ b/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala
@@ -39,30 +39,26 @@
package com.github.shadowsocks
-import android.app.Notification
-import android.app.NotificationManager
-import android.app.PendingIntent
-import android.app.Service
+import java.io.File
+import java.lang.reflect.{InvocationTargetException, Method}
+import java.util.{Timer, TimerTask}
+
+import android.app.{Notification, NotificationManager, PendingIntent, Service}
import android.content._
-import android.content.pm.PackageInfo
-import android.content.pm.PackageManager
+import android.content.pm.{PackageInfo, PackageManager}
+import android.graphics.Color
+import android.net.TrafficStats
import android.os._
import android.support.v4.app.NotificationCompat
import android.util.Log
-import java.lang.reflect.InvocationTargetException
-import java.lang.reflect.Method
+import com.github.shadowsocks.aidl.Config
+import com.github.shadowsocks.utils._
import com.google.android.gms.analytics.HitBuilders
import org.apache.http.conn.util.InetAddressUtils
+
import scala.collection._
-import java.util.{TimerTask, Timer}
-import android.net.TrafficStats
-import scala.concurrent.ops._
-import com.github.shadowsocks.utils._
-import scala.Some
-import android.graphics.Color
-import com.github.shadowsocks.aidl.Config
import scala.collection.mutable.ArrayBuffer
-import java.io.File
+import scala.concurrent.ops._
case class TrafficStat(tx: Long, rx: Long, timestamp: Long)
@@ -275,6 +271,7 @@ class ShadowsocksNatService extends Service with BaseService {
}
def onBind(intent: Intent): IBinder = {
+ Log.d(TAG, "onBind")
if (Action.SERVICE == intent.getAction) {
binder
} else {