From 38afb0c753d03c01f9ae611be88f95f6b94d4496 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Wed, 21 Aug 2013 18:55:54 +0100 Subject: [PATCH 01/16] Added circular progress bar for when filter is preocessing --- res/layout/mainlist.xml | 26 +++++++++++++++++---- src/biz/bokhorst/xprivacy/ActivityMain.java | 9 +++++-- 2 files changed, 28 insertions(+), 7 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index 49fc120f3..b76be426e 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -151,12 +151,28 @@ - + android:layout_marginRight="@dimen/activity_vertical_margin" > + + + + + + diff --git a/src/biz/bokhorst/xprivacy/ActivityMain.java b/src/biz/bokhorst/xprivacy/ActivityMain.java index 47bead094..3cbe8b38d 100644 --- a/src/biz/bokhorst/xprivacy/ActivityMain.java +++ b/src/biz/bokhorst/xprivacy/ActivityMain.java @@ -67,6 +67,7 @@ import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ListView; +import android.widget.ProgressBar; import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; @@ -491,8 +492,10 @@ private void applyFilter() { if (mAppAdapter != null) { EditText etFilter = (EditText) findViewById(R.id.etFilter); CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); - String filter = String.format("%b\n%b\n%s\n%b", mUsed, mInternet, etFilter.getText().toString(), - cbFilter.isChecked()); + ProgressBar pbFilter = (ProgressBar) findViewById(R.id.pbFilter); + String filter = String.format("%b\n%b\n%s\n%b", mUsed, mInternet, etFilter.getText().toString(), + cbFilter.isChecked()); + pbFilter.setVisibility(ProgressBar.VISIBLE); mAppAdapter.getFilter().filter(filter); } } @@ -1222,6 +1225,8 @@ protected FilterResults performFiltering(CharSequence constraint) { @SuppressWarnings("unchecked") protected void publishResults(CharSequence constraint, FilterResults results) { clear(); + ProgressBar pbFilter = (ProgressBar) findViewById(R.id.pbFilter); + pbFilter.setVisibility(ProgressBar.GONE); if (results.values == null) notifyDataSetInvalidated(); else { From 67f469bee0958a94c49d9f83791bf3b4f13f5614 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Wed, 21 Aug 2013 19:03:29 +0100 Subject: [PATCH 02/16] Added stats for filters : visible/total --- res/layout/mainlist.xml | 8 +++++++- src/biz/bokhorst/xprivacy/ActivityMain.java | 7 ++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index b76be426e..148c3b145 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -164,6 +164,13 @@ android:textAppearance="?android:attr/textAppearanceSmall" android:textIsSelectable="false" /> + + - diff --git a/src/biz/bokhorst/xprivacy/ActivityMain.java b/src/biz/bokhorst/xprivacy/ActivityMain.java index 3cbe8b38d..9001051ff 100644 --- a/src/biz/bokhorst/xprivacy/ActivityMain.java +++ b/src/biz/bokhorst/xprivacy/ActivityMain.java @@ -493,9 +493,11 @@ private void applyFilter() { EditText etFilter = (EditText) findViewById(R.id.etFilter); CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); ProgressBar pbFilter = (ProgressBar) findViewById(R.id.pbFilter); + TextView tvStats = (TextView) findViewById(R.id.tvStats); String filter = String.format("%b\n%b\n%s\n%b", mUsed, mInternet, etFilter.getText().toString(), cbFilter.isChecked()); pbFilter.setVisibility(ProgressBar.VISIBLE); + tvStats.setVisibility(TextView.GONE); mAppAdapter.getFilter().filter(filter); } } @@ -1225,8 +1227,11 @@ protected FilterResults performFiltering(CharSequence constraint) { @SuppressWarnings("unchecked") protected void publishResults(CharSequence constraint, FilterResults results) { clear(); + TextView tvStats = (TextView) findViewById(R.id.tvStats); ProgressBar pbFilter = (ProgressBar) findViewById(R.id.pbFilter); - pbFilter.setVisibility(ProgressBar.GONE); + pbFilter.setVisibility(ProgressBar.GONE); + tvStats.setVisibility(TextView.VISIBLE); + tvStats.setText(results.count + "/" + AppListAdapter.this.mListAppSelected.size()); if (results.values == null) notifyDataSetInvalidated(); else { From 6aa0e8db75c9aad0a2a25f965058553b2efe13d4 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Wed, 21 Aug 2013 19:06:25 +0100 Subject: [PATCH 03/16] Fixed icon_edit attr --- res/values/attrs.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/res/values/attrs.xml b/res/values/attrs.xml index 07cc7a42f..3a3e18cbb 100644 --- a/res/values/attrs.xml +++ b/res/values/attrs.xml @@ -1,6 +1,5 @@ - From fe1a30730721d845a6c14fb2b6b4b3ebc4ba920d Mon Sep 17 00:00:00 2001 From: tonymanou Date: Thu, 22 Aug 2013 01:03:41 +0100 Subject: [PATCH 04/16] Moved 'category' out of the collapsible filters --- res/layout/mainlist.xml | 104 +++++++++----------- src/biz/bokhorst/xprivacy/ActivityMain.java | 10 +- 2 files changed, 55 insertions(+), 59 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index 148c3b145..c7cc0dc69 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -9,7 +9,7 @@ android:paddingTop="@dimen/activity_vertical_margin" tools:context=".ActivityMain" > - + + + + + + + + + + + + @@ -33,36 +64,25 @@ android:contentDescription="@string/title_category" android:src="?attr/icon_expander_maximized" /> - - - - - - - - + android:ems="10" + android:hint="@string/help_application" + android:inputType="textNoSuggestions" + android:textAppearance="?android:attr/textAppearanceSmall" /> + + - - - - - - - 0) numberOfFilters++; CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); @@ -893,7 +894,8 @@ private void toggleFiltersVisibility() { // Change visibility tvFilters.setVisibility(TextView.VISIBLE); - llCategory.setVisibility(LinearLayout.GONE); + etFilter.setVisibility(EditText.GONE); + imgClear.setVisibility(ImageView.GONE); llFilters.setVisibility(LinearLayout.GONE); cbFPermission.setVisibility(CheckBox.GONE); cbFSystem.setVisibility(CheckBox.GONE); From 215dfce647551dbd58bd26e6adab4509ed5c45d6 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Thu, 22 Aug 2013 18:52:01 +0100 Subject: [PATCH 05/16] Moved clickable image filters to checkboxes --- res/layout/mainlist.xml | 126 ++++++++++++++------ src/biz/bokhorst/xprivacy/ActivityMain.java | 78 ++++-------- 2 files changed, 107 insertions(+), 97 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index c7cc0dc69..380fe602e 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -100,47 +100,95 @@ android:id="@+id/llFilters" android:layout_width="match_parent" android:layout_height="wrap_content" - android:orientation="horizontal" > - - + android:layout_marginLeft="4dp" > - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - diff --git a/src/biz/bokhorst/xprivacy/ActivityMain.java b/src/biz/bokhorst/xprivacy/ActivityMain.java index 723da5626..36f3f30c4 100644 --- a/src/biz/bokhorst/xprivacy/ActivityMain.java +++ b/src/biz/bokhorst/xprivacy/ActivityMain.java @@ -61,7 +61,6 @@ import android.widget.CheckBox; import android.widget.CheckedTextView; import android.widget.CompoundButton; -import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.EditText; import android.widget.Filter; import android.widget.ImageView; @@ -166,38 +165,12 @@ public void onClick(View view) { spRestriction.setOnItemSelectedListener(this); // Setup used filter - final ImageView imgUsed = (ImageView) findViewById(R.id.imgUsed); - if (savedInstanceState != null && savedInstanceState.containsKey("Used")) { - mUsed = savedInstanceState.getBoolean("Used"); - imgUsed.setImageDrawable(getResources().getDrawable( - getThemed(mUsed ? R.attr.icon_used : R.attr.icon_used_grayed))); - } - imgUsed.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - mUsed = !mUsed; - imgUsed.setImageDrawable(getResources().getDrawable( - getThemed(mUsed ? R.attr.icon_used : R.attr.icon_used_grayed))); - applyFilter(); - } - }); + CheckBox cbUsed = (CheckBox) findViewById(R.id.cbFUsed); + cbUsed.setOnCheckedChangeListener(this); // Setup internet filter - final ImageView imgInternet = (ImageView) findViewById(R.id.imgInternet); - if (savedInstanceState != null && savedInstanceState.containsKey("Internet")) { - mInternet = savedInstanceState.getBoolean("Internet"); - imgInternet.setImageDrawable(getResources().getDrawable( - getThemed(mInternet ? R.attr.icon_internet : R.attr.icon_internet_grayed))); - } - imgInternet.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - mInternet = !mInternet; - imgInternet.setImageDrawable(getResources().getDrawable( - getThemed(mInternet ? R.attr.icon_internet : R.attr.icon_internet_grayed))); - applyFilter(); - } - }); + CheckBox cbInternet = (CheckBox) findViewById(R.id.cbFInternet); + cbInternet.setOnCheckedChangeListener(this); // Setup name filter final EditText etFilter = (EditText) findViewById(R.id.etFilter); @@ -237,32 +210,14 @@ public void onClick(View view) { PrivacyManager.cSettingFPermission, true, false); CheckBox cbFPermission = (CheckBox) findViewById(R.id.cbFPermission); cbFPermission.setChecked(fPermission); - cbFPermission.setOnCheckedChangeListener(new OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - PrivacyManager.setSetting(null, ActivityMain.this, PrivacyManager.cSettingFPermission, - Boolean.toString(isChecked)); - - AppListTask appListTask = new AppListTask(); - appListTask.executeOnExecutor(mExecutor, (Object) null); - } - }); + cbFPermission.setOnCheckedChangeListener(this); // Setup system filter boolean fSystem = PrivacyManager.getSettingBool(null, ActivityMain.this, PrivacyManager.cSettingFSystem, true, false); CheckBox cbFSystem = (CheckBox) findViewById(R.id.cbFSystem); cbFSystem.setChecked(fSystem); - cbFSystem.setOnCheckedChangeListener(new OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - PrivacyManager.setSetting(null, ActivityMain.this, PrivacyManager.cSettingFSystem, - Boolean.toString(isChecked)); - - AppListTask appListTask = new AppListTask(); - appListTask.executeOnExecutor(mExecutor, (Object) null); - } - }); + cbFSystem.setOnCheckedChangeListener(this); // Hide filters if (savedInstanceState != null && savedInstanceState.containsKey("Filters")) @@ -484,8 +439,21 @@ private void selectRestriction(int pos) { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); - if (buttonView == cbFilter) + CheckBox cbUsed = (CheckBox) findViewById(R.id.cbFUsed); + CheckBox cbInternet = (CheckBox) findViewById(R.id.cbFInternet); + CheckBox cbPermission = (CheckBox) findViewById(R.id.cbFPermission); + CheckBox cbSystem = (CheckBox) findViewById(R.id.cbFSystem); + if (buttonView == cbFilter || buttonView == cbUsed || buttonView == cbInternet) + applyFilter(); + else if (buttonView == cbPermission) { + PrivacyManager.setSetting(null, ActivityMain.this, PrivacyManager.cSettingFPermission, + Boolean.toString(isChecked)); applyFilter(); + } else if (buttonView == cbSystem) { + PrivacyManager.setSetting(null, ActivityMain.this, PrivacyManager.cSettingFSystem, + Boolean.toString(isChecked)); + applyFilter(); + } } private void applyFilter() { @@ -1028,12 +996,6 @@ protected void onPreExecute() { spRestriction.setEnabled(false); // Reset filters - final ImageView imgUsed = (ImageView) findViewById(R.id.imgUsed); - imgUsed.setEnabled(false); - - final ImageView imgInternet = (ImageView) findViewById(R.id.imgInternet); - imgInternet.setEnabled(false); - EditText etFilter = (EditText) findViewById(R.id.etFilter); etFilter.setEnabled(false); From f0279734ace63e6da260ef5486306f1b838af887 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Thu, 22 Aug 2013 20:10:04 +0100 Subject: [PATCH 06/16] Linked checkboxes into filter's implementation --- src/biz/bokhorst/xprivacy/ActivityMain.java | 31 +++++++++++---------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/src/biz/bokhorst/xprivacy/ActivityMain.java b/src/biz/bokhorst/xprivacy/ActivityMain.java index 36f3f30c4..c72bfe3eb 100644 --- a/src/biz/bokhorst/xprivacy/ActivityMain.java +++ b/src/biz/bokhorst/xprivacy/ActivityMain.java @@ -75,8 +75,6 @@ public class ActivityMain extends Activity implements OnItemSelectedListener, Co private int mThemeId; private Spinner spRestriction = null; private AppListAdapter mAppAdapter = null; - private boolean mUsed = false; - private boolean mInternet = false; private boolean mFiltersHidden = false; private static final int ACTIVITY_LICENSE = 0; @@ -259,8 +257,6 @@ public void onClick(View view) { @Override protected void onSaveInstanceState(Bundle outState) { - outState.putBoolean("Used", mUsed); - outState.putBoolean("Internet", mInternet); outState.putBoolean("Filters", mFiltersHidden); super.onSaveInstanceState(outState); } @@ -460,10 +456,13 @@ private void applyFilter() { if (mAppAdapter != null) { EditText etFilter = (EditText) findViewById(R.id.etFilter); CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); + CheckBox cbUsed = (CheckBox) findViewById(R.id.cbFUsed); + CheckBox cbInternet = (CheckBox) findViewById(R.id.cbFInternet); + CheckBox cbSystem = (CheckBox) findViewById(R.id.cbFSystem); ProgressBar pbFilter = (ProgressBar) findViewById(R.id.pbFilter); TextView tvStats = (TextView) findViewById(R.id.tvStats); - String filter = String.format("%b\n%b\n%s\n%b", mUsed, mInternet, etFilter.getText().toString(), - cbFilter.isChecked()); + String filter = String.format("%b\n%b\n%s\n%b\n%b", cbUsed.isChecked(), cbInternet.isChecked(), etFilter + .getText().toString(), cbFilter.isChecked(), cbSystem.isChecked()); pbFilter.setVisibility(ProgressBar.VISIBLE); tvStats.setVisibility(TextView.GONE); mAppAdapter.getFilter().filter(filter); @@ -822,6 +821,9 @@ private void toggleFiltersVisibility() { TextView tvFilters = (TextView) findViewById(R.id.tvFilterDetail); EditText etFilter = (EditText) findViewById(R.id.etFilter); LinearLayout llFilters = (LinearLayout) findViewById(R.id.llFilters); + CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); + CheckBox cbFUsed = (CheckBox) findViewById(R.id.cbFUsed); + CheckBox cbFInternet = (CheckBox) findViewById(R.id.cbFInternet); CheckBox cbFPermission = (CheckBox) findViewById(R.id.cbFPermission); CheckBox cbFSystem = (CheckBox) findViewById(R.id.cbFSystem); @@ -831,21 +833,18 @@ private void toggleFiltersVisibility() { etFilter.setVisibility(EditText.VISIBLE); imgClear.setVisibility(ImageView.VISIBLE); llFilters.setVisibility(LinearLayout.VISIBLE); - cbFPermission.setVisibility(CheckBox.VISIBLE); - cbFSystem.setVisibility(CheckBox.VISIBLE); } else { int numberOfFilters = 0; // Count number of activated filters if (spRestriction.getSelectedItemPosition() > 0) numberOfFilters++; - if (mUsed) + if (cbFUsed.isChecked()) numberOfFilters++; - if (mInternet) + if (cbFInternet.isChecked()) numberOfFilters++; if (etFilter.getText().length() > 0) numberOfFilters++; - CheckBox cbFilter = (CheckBox) findViewById(R.id.cbFilter); if (cbFilter.isChecked()) numberOfFilters++; if (cbFPermission.isChecked()) @@ -865,8 +864,6 @@ private void toggleFiltersVisibility() { etFilter.setVisibility(EditText.GONE); imgClear.setVisibility(ImageView.GONE); llFilters.setVisibility(LinearLayout.GONE); - cbFPermission.setVisibility(CheckBox.GONE); - cbFSystem.setVisibility(CheckBox.GONE); } imgFilterToggle.setImageDrawable(getResources().getDrawable( @@ -1139,6 +1136,7 @@ protected FilterResults performFiltering(CharSequence constraint) { boolean fInternet = Boolean.parseBoolean(components[1]); String fName = components[2]; boolean fRestricted = Boolean.parseBoolean(components[3]); + boolean fSystem = Boolean.parseBoolean(components[4]); // Match applications List lstApp = new ArrayList(); @@ -1172,10 +1170,15 @@ protected FilterResults performFiltering(CharSequence constraint) { } else someRestricted = PrivacyManager.getRestricted(null, getApplicationContext(), xAppInfo.getUid(), mRestrictionName, null, false, false); + + // Get if system + boolean system = false; + if (fSystem) + system = !xAppInfo.getIsSystem(); // Match application if ((fUsed ? used : true) && (fInternet ? internet : true) && (fName.equals("") ? true : contains) - && (fRestricted ? someRestricted : true)) + && (fRestricted ? someRestricted : true) && (fSystem ? system : true)) lstApp.add(xAppInfo); } From d7a63bbca481c6e8fc50e4964c9d4ab41aba7f2a Mon Sep 17 00:00:00 2001 From: tonymanou Date: Thu, 22 Aug 2013 20:12:29 +0100 Subject: [PATCH 07/16] Fixed filter bug by keeping sys app in the app list when the activity starts --- src/biz/bokhorst/xprivacy/ApplicationInfoEx.java | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/biz/bokhorst/xprivacy/ApplicationInfoEx.java b/src/biz/bokhorst/xprivacy/ApplicationInfoEx.java index 89a79311a..a4da55956 100644 --- a/src/biz/bokhorst/xprivacy/ApplicationInfoEx.java +++ b/src/biz/bokhorst/xprivacy/ApplicationInfoEx.java @@ -83,7 +83,6 @@ private void Initialize(Context context, ApplicationInfo appInfo) { public static List getXApplicationList(Context context, ProgressDialog dialog) { // Get references PackageManager pm = context.getPackageManager(); - boolean fSystem = PrivacyManager.getSettingBool(null, context, PrivacyManager.cSettingFSystem, true, false); // Get app list SparseArray mapApp = new SparseArray(); @@ -94,14 +93,12 @@ public static List getXApplicationList(Context context, Progr try { dialog.setProgress(app + 1); ApplicationInfoEx xAppInfo = new ApplicationInfoEx(context, listAppInfo.get(app)); - if (fSystem ? !(xAppInfo.isFrozen() || xAppInfo.getIsSystem()) : true) { - ApplicationInfoEx yAppInfo = mapApp.get(xAppInfo.getUid()); - if (yAppInfo == null) { - mapApp.put(xAppInfo.getUid(), xAppInfo); - listApp.add(xAppInfo); - } else - yAppInfo.AddApplicationName(getApplicationName(listAppInfo.get(app), pm)); - } + ApplicationInfoEx yAppInfo = mapApp.get(xAppInfo.getUid()); + if (yAppInfo == null) { + mapApp.put(xAppInfo.getUid(), xAppInfo); + listApp.add(xAppInfo); + } else + yAppInfo.AddApplicationName(getApplicationName(listAppInfo.get(app), pm)); } catch (Throwable ex) { Util.bug(null, ex); } From f68a67c70fc58d67aa92fbf5ae30dfac86e17aad Mon Sep 17 00:00:00 2001 From: tonymanou Date: Thu, 22 Aug 2013 20:37:09 +0100 Subject: [PATCH 08/16] Added icon for 'restricted' filter + small layout fix + fixed NPE --- res/drawable/check_holo_dark.png | Bin 0 -> 970 bytes res/drawable/check_holo_light.png | Bin 0 -> 915 bytes res/layout/mainlist.xml | 33 ++++++++++---------- res/values-v14/styles.xml | 2 ++ res/values/attrs.xml | 1 + src/biz/bokhorst/xprivacy/ActivityMain.java | 6 ---- 6 files changed, 20 insertions(+), 22 deletions(-) create mode 100644 res/drawable/check_holo_dark.png create mode 100644 res/drawable/check_holo_light.png diff --git a/res/drawable/check_holo_dark.png b/res/drawable/check_holo_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..2e06dd01be8ccbab90d63cbf47d13e905aed3e20 GIT binary patch literal 970 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877l!}s{b%+Ad7K3vk;OpT z1B~5HX4`=T%L*LRfwTh{zxwOjfK$EgnR$;T z=N`Kp(hSrM@CU%evd=bf=-4w^bQmnuhmUH-jd<6WZ; zHl4_>Rk2U@t}L_t|AiwlQ891B3C|YS1B^O3M@oxo5*z)LB91b?+QOQX_r0yH)YX2= zvK_aW4}ZVF|MIp0)1X?{@CS{e_APBtKk;H~nV$PVB{N8HV+L1tOj6 z``KDz%d4l`HAyHPxAByb%b6xG^S8m<-YfXS7v>b+zlZNGcwheZcvv-P0dQ7=MviH9v^t)=yc559VF`j43j z_pMt2oAX|`goy_Fm~UMa9d%t_^^2qU)cXl;U0e%IRZSM> z>7Ksk_VioOmKv*1mN|c~ELg&~mMikt+LpAdYoES)QG3#uo404uV`0ytJ&!XS^rKz< zU6j9{ob*(;{k73gyQmwdmG2d+82l2_J(5-Z=Epp_^THpe+eb5HIvzUo?fW(va5{7P zd0GD0trC|9zjsRjleub%YeY#(Vo9o1a#1RfVlXl=G}JY)&^0g*F*LI>FtRc>2C}UT z3_|{Y+l-q7HAsSN2+mI{DNig)WpGT%PfAtr%uP&B Z4N6T+sVqF1Y6Dcn;OXk;vd$@?2>?&0tquSH literal 0 HcmV?d00001 diff --git a/res/drawable/check_holo_light.png b/res/drawable/check_holo_light.png new file mode 100644 index 0000000000000000000000000000000000000000..bb19810bc2062509e4e4968099a359ad73818728 GIT binary patch literal 915 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877l!}s{b%+Ad7K3vk;OpT z1B~5HX4`=T%L*LRfwTh{zxw0jNgl<&3j(^ zeD(x}!be9sh1LD$__>xwFX-mty1-MRJ?GVgBPRYo&#phmts!D?ltV3&FI%+a$=z1Z zV;YHl1iMSDgJ+|>#46F---v^ z=n46F|IdfFb=)S0I4Coo@!g}n4Nex)S*)#RZPN@k9D49tzo1o|L;8h-cSg(aGrNAg7qQ^lmAJNnY2BwD zmg$yB$_Kc(9`bFT@$ln4rdg7D8~IZ-f3I60`0mq%qw5167@Xn!BqR{_Lfuy~aYE2x zQ4_Q6{SU<2c z;lT8&TH+c}l9E`GYL#4+3Zxi}3=9o*4J>pG%tH*#tPG5-jE#Y8D+7a&|KB#FXvob^ z$xN$6(O_z2Y7RsY4Yp<(!9Wd?ARB`7(@M${i&7aJQ}UBi6+Ckj(^G>|6H_V+Po~-c P6)||a`njxgN@xNAiwS~- literal 0 HcmV?d00001 diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index 380fe602e..334f8b6ad 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -69,6 +69,7 @@ android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="3dp" + android:layout_marginRight="3dp" android:layout_toRightOf="@id/imgToggleFilters" android:ems="10" android:hint="@string/help_application" @@ -79,7 +80,7 @@ android:id="@+id/imgClear" android:layout_width="24dip" android:layout_height="24dip" - android:layout_alignParentRight="true" + android:layout_alignRight="@id/etFilter" android:layout_centerVertical="true" android:contentDescription="@string/help_application" android:src="?attr/icon_clear_grayed" /> @@ -107,13 +108,6 @@ android:layout_height="match_parent" android:orientation="vertical" > - - + + - - + + diff --git a/res/values-v14/styles.xml b/res/values-v14/styles.xml index 5dfa1d086..3fa3583f0 100644 --- a/res/values-v14/styles.xml +++ b/res/values-v14/styles.xml @@ -14,6 +14,7 @@ @drawable/expander_ic_minimized_holo_dark @drawable/expander_ic_maximized_holo_dark @drawable/ic_launcher_holo_dark + @drawable/check_holo_dark @drawable/cross_holo_dark @drawable/cross_grayed_out_holo_dark @drawable/frozen_holo_dark @@ -34,6 +35,7 @@ @drawable/expander_ic_minimized_holo_light @drawable/expander_ic_maximized_holo_light @drawable/ic_launcher_holo_light + @drawable/check_holo_light @drawable/cross_holo_light @drawable/cross_grayed_out_holo_light @drawable/frozen_holo_light diff --git a/res/values/attrs.xml b/res/values/attrs.xml index 3a3e18cbb..3dab956f6 100644 --- a/res/values/attrs.xml +++ b/res/values/attrs.xml @@ -1,5 +1,6 @@ + diff --git a/src/biz/bokhorst/xprivacy/ActivityMain.java b/src/biz/bokhorst/xprivacy/ActivityMain.java index c72bfe3eb..cf5c9ddc7 100644 --- a/src/biz/bokhorst/xprivacy/ActivityMain.java +++ b/src/biz/bokhorst/xprivacy/ActivityMain.java @@ -1025,12 +1025,6 @@ protected void onPostExecute(List listApp) { } // Enable filters - final ImageView imgUsed = (ImageView) findViewById(R.id.imgUsed); - imgUsed.setEnabled(true); - - final ImageView imgInternet = (ImageView) findViewById(R.id.imgInternet); - imgInternet.setEnabled(true); - EditText etFilter = (EditText) findViewById(R.id.etFilter); etFilter.setEnabled(true); From 1fe973758089c0f0b8106ee6de8cddea44a34054 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 19:49:54 +0100 Subject: [PATCH 09/16] Removed 'category' from the filter counter --- src/biz/bokhorst/xprivacy/ActivityMain.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/biz/bokhorst/xprivacy/ActivityMain.java b/src/biz/bokhorst/xprivacy/ActivityMain.java index cf5c9ddc7..344bb772a 100644 --- a/src/biz/bokhorst/xprivacy/ActivityMain.java +++ b/src/biz/bokhorst/xprivacy/ActivityMain.java @@ -837,8 +837,6 @@ private void toggleFiltersVisibility() { int numberOfFilters = 0; // Count number of activated filters - if (spRestriction.getSelectedItemPosition() > 0) - numberOfFilters++; if (cbFUsed.isChecked()) numberOfFilters++; if (cbFInternet.isChecked()) From 68a7bd85d34e1c22982761c80f57c8e89e1cdd98 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 19:55:33 +0100 Subject: [PATCH 10/16] New card-like UI --- res/drawable/application_filter_border.xml | 24 --------------------- res/drawable/card_dark.xml | 13 +++++++++++ res/drawable/card_light.9.png | Bin 0 -> 330 bytes res/layout/mainlist.xml | 9 ++++++-- res/layout/restrictionlist.xml | 1 + res/values-v14/styles.xml | 4 ++++ res/values/attrs.xml | 2 ++ res/values/colors.xml | 1 + 8 files changed, 28 insertions(+), 26 deletions(-) delete mode 100644 res/drawable/application_filter_border.xml create mode 100644 res/drawable/card_dark.xml create mode 100644 res/drawable/card_light.9.png diff --git a/res/drawable/application_filter_border.xml b/res/drawable/application_filter_border.xml deleted file mode 100644 index d28a43728..000000000 --- a/res/drawable/application_filter_border.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/res/drawable/card_dark.xml b/res/drawable/card_dark.xml new file mode 100644 index 000000000..1424b17c3 --- /dev/null +++ b/res/drawable/card_dark.xml @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/res/drawable/card_light.9.png b/res/drawable/card_light.9.png new file mode 100644 index 0000000000000000000000000000000000000000..1d350880aec275d657c29fee1f5c3487df862c01 GIT binary patch literal 330 zcmV-Q0k!^#P)Px#24YJ`L;(K){{a7>y{D4^008nyL_t(I%gvQBZo@DPMZcUPW4D|j*YE)XWYI~p zz;*Vx z;H7QN%%0{Fnb~u@h%xR`O2?^>ETwdeG45I-@BJo(u+KT4&FpoIz|5{W=f@Dj-h034 z3e>%%Rc%vHN&1lV)=bU*po&9Eih3$=^@baeR62=G(tB;yU8lt6U{ME+Rnibuy&^vH c2@J-60?d6*+QkGU=>Px#07*qoM6N<$g2=v+NB{r; literal 0 HcmV?d00001 diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index 334f8b6ad..4fb03095d 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -3,6 +3,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" + android:background="?attr/drawable_background" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" @@ -16,8 +17,12 @@ android:layout_height="wrap_content" android:layout_marginBottom="4dp" android:layout_marginRight="@dimen/activity_vertical_margin" - android:background="@drawable/application_filter_border" - android:orientation="vertical" > + android:background="?attr/drawable_card" + android:orientation="vertical" + android:paddingBottom="6dp" + android:paddingLeft="6dp" + android:paddingRight="6dp" + android:paddingTop="6dp" > diff --git a/res/layout/restrictionlist.xml b/res/layout/restrictionlist.xml index f8d9fd979..d45e4515f 100644 --- a/res/layout/restrictionlist.xml +++ b/res/layout/restrictionlist.xml @@ -2,6 +2,7 @@ @drawable/cross_holo_dark @drawable/cross_grayed_out_holo_dark @drawable/frozen_holo_dark + @android:color/black + @drawable/card_dark @color/color_dangerous_dark @@ -39,6 +41,8 @@ @drawable/cross_holo_light @drawable/cross_grayed_out_holo_light @drawable/frozen_holo_light + @color/home_background_ligth + @drawable/card_light @color/color_dangerous_light diff --git a/res/values/attrs.xml b/res/values/attrs.xml index 3dab956f6..64b0ee7bc 100644 --- a/res/values/attrs.xml +++ b/res/values/attrs.xml @@ -17,6 +17,8 @@ + + \ No newline at end of file diff --git a/res/values/colors.xml b/res/values/colors.xml index e367d8b8e..e9149ee71 100644 --- a/res/values/colors.xml +++ b/res/values/colors.xml @@ -6,5 +6,6 @@ #70707070 #30404040 #30D0D0D0 + #ffe5e5e5 \ No newline at end of file From 92cbdc487073e69fb785e84c999aae72f2796ab4 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 20:01:24 +0100 Subject: [PATCH 11/16] Added dividers --- res/drawable/divider_dark.9.png | Bin 0 -> 188 bytes res/drawable/divider_light.9.png | Bin 0 -> 223 bytes res/layout/mainlist.xml | 1 + res/values-v14/styles.xml | 2 ++ res/values/attrs.xml | 1 + 5 files changed, 4 insertions(+) create mode 100644 res/drawable/divider_dark.9.png create mode 100644 res/drawable/divider_light.9.png diff --git a/res/drawable/divider_dark.9.png b/res/drawable/divider_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..a6128ba3310e1256f05a66359ee1d97e96e9c8ba GIT binary patch literal 188 zcmeAS@N?(olHy`uVBq!ia0vp^ia^ZI!3HF=oR(<kJ`Vb-|@BaqjDq-56JFl{=vJuEBHmpB1^M)*WDuIiPFyQ_cRB iS=!ydI*fLSm5lA|61?q}f9-+xF?hQAxvX{XE)7O>#E{C`fj{z4;CkId{-qXb~#NzbZ zsT;W(40v4PWn**1PyVluEy$cJbNT2(k-0HVPYxcOsN?R$QFEN5u0>ZaXa{GaA*a6L zBda7?V@`+A@C0U~fV}u+QF12V${#S@YW7>O?+06mpyi}y{~1=(+9Y_t?D @drawable/frozen_holo_dark @android:color/black @drawable/card_dark + @drawable/divider_dark @color/color_dangerous_dark @@ -43,6 +44,7 @@ @drawable/frozen_holo_light @color/home_background_ligth @drawable/card_light + @drawable/divider_light @color/color_dangerous_light diff --git a/res/values/attrs.xml b/res/values/attrs.xml index 64b0ee7bc..00cca2b2c 100644 --- a/res/values/attrs.xml +++ b/res/values/attrs.xml @@ -18,6 +18,7 @@ + From 1397ccbd6eb7e780634a72c15e3e506a4159aa6f Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 20:02:55 +0100 Subject: [PATCH 12/16] Empty space reduced --- res/layout/mainlist.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index c883ea6f6..fd1689e44 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -22,7 +22,7 @@ android:paddingBottom="6dp" android:paddingLeft="6dp" android:paddingRight="6dp" - android:paddingTop="6dp" > + android:paddingTop="1dp" > @@ -44,7 +44,7 @@ Date: Fri, 23 Aug 2013 20:03:51 +0100 Subject: [PATCH 13/16] New strings for filters --- res/layout/mainlist.xml | 6 +++--- res/values/strings.xml | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index fd1689e44..a6abcb3b9 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -160,7 +160,7 @@ android:layout_width="wrap_content" android:layout_height="24dp" android:layout_marginLeft="4dp" - android:text="@string/help_used" + android:text="@string/filter_used" android:textAppearance="?android:attr/textAppearanceSmall" /> diff --git a/res/values/strings.xml b/res/values/strings.xml index 8d213f7a8..16c3ecb0f 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -90,6 +90,9 @@ however it is impossible to guarantee it will work flawless on each and every de Subscriber ID Filter by permission Filter system applications + Filter on data usage + Filter on internet access + Filter on restricted Application has internet permission has Android permission From cf50ff02985015b6247085ea71b3495eb7aaa048 Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 20:18:13 +0100 Subject: [PATCH 14/16] New strings for other languages --- res/values-ar/strings.xml | 3 +++ res/values-bg/strings.xml | 3 +++ res/values-ca/strings.xml | 3 +++ res/values-cs/strings.xml | 3 +++ res/values-da/strings.xml | 3 +++ res/values-de/strings.xml | 3 +++ res/values-el/strings.xml | 3 +++ res/values-es/strings.xml | 3 +++ res/values-fr/strings.xml | 3 +++ res/values-he/strings.xml | 3 +++ res/values-hu/strings.xml | 3 +++ res/values-it/strings.xml | 3 +++ res/values-iw/strings.xml | 3 +++ res/values-ja/strings.xml | 3 +++ res/values-lt/strings.xml | 3 +++ res/values-nb-rNO/strings.xml | 3 +++ res/values-nl/strings.xml | 5 ++++- res/values-nn-rNO/strings.xml | 3 +++ res/values-no-rNO/strings.xml | 3 +++ res/values-pl/strings.xml | 3 +++ res/values-pt/strings.xml | 3 +++ res/values-ro/strings.xml | 3 +++ res/values-ru/strings.xml | 3 +++ res/values-sk/strings.xml | 3 +++ res/values-sl/strings.xml | 3 +++ res/values-sr/strings.xml | 3 +++ res/values-sv/strings.xml | 3 +++ res/values-tr/strings.xml | 3 +++ res/values-vi/strings.xml | 3 +++ res/values-zh-rCN/strings.xml | 3 +++ 30 files changed, 91 insertions(+), 1 deletion(-) diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml index 876fbe90b..7d91a66d7 100644 --- a/res/values-ar/strings.xml +++ b/res/values-ar/strings.xml @@ -77,6 +77,9 @@ IMSI تصفية بواسطة الأُذونات فلترة برامج النظام + Filter on data usage + Filter on internet access + Filter on restricted التطبيق لديه صلاحية الوصول للإنترنت لديه صلاحية أندرويد diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml index e135782fb..faef909c7 100644 --- a/res/values-bg/strings.xml +++ b/res/values-bg/strings.xml @@ -77,6 +77,9 @@ Абонатно ID Филтриране по разрешения Филтриране на системни приложения + Filter on data usage + Filter on internet access + Filter on restricted Приложение има разрешение за интернет има разрешение в Android diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml index 591aa9dc7..a35cb78f8 100644 --- a/res/values-ca/strings.xml +++ b/res/values-ca/strings.xml @@ -75,6 +75,9 @@ ID de subscriptor Filta per permís Filtra aplicacions de sistema + Filter on data usage + Filter on internet access + Filter on restricted Aplicació té permís d\'Internet té permisos d\'Android diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index d611a1bb4..20e99582a 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -78,6 +78,9 @@ nicméně je nemožné zaručit bezchybnou funkčnost na všech zařízeních a IMSI Filtrovat dle oprávnění Nezobrazovat systémové aplikace + Filter on data usage + Filter on internet access + Filter on restricted Aplikace má oprávnění k Internetu má Android oprávnění diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml index 5f0cd9955..8e0c5dd14 100644 --- a/res/values-da/strings.xml +++ b/res/values-da/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de Abonnent ID Filtrer efter Restriktioner Filtrer System Programmer + Filter on data usage + Filter on internet access + Filter on restricted Program har internet tilladelse har Android tilladelse diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index 980ad9384..86b0fe5ec 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -77,6 +77,9 @@ Subscriber-ID Nach Android-Berechtigungen filtern System-Apps ausblenden + Filter on data usage + Filter on internet access + Filter on restricted App hat Internet-Berechtigung hat Android-Berechtigung diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml index ca9df4263..c192becb5 100644 --- a/res/values-el/strings.xml +++ b/res/values-el/strings.xml @@ -77,6 +77,9 @@ Αναγνωριστικό συνδρομητή Φιλτράρισμα ανά άδεια Φιλτράρισμα εφαρμογών συστήματος + Filter on data usage + Filter on internet access + Filter on restricted Εφαρμογή έχει άδεια internet έχει άδεια Android diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index 3c0f93413..59711c404 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de Subscriber ID Ocultar permisos no utilizados Ocultar aplicaciones del sistema + Filter on data usage + Filter on internet access + Filter on restricted Aplicación Tiene permisos para Internet Tiene permisos por Android diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index 5bb397bab..89c753783 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -77,6 +77,9 @@ il est impossible de garantir un fonctionnement parfait sur chaque appareil et p ID Abonné Filtrer par permissions Masquer les applications système + Filter on data usage + Filter on internet access + Filter on restricted Application a les permissions Internet a les permissions Android diff --git a/res/values-he/strings.xml b/res/values-he/strings.xml index c574a4fac..cf8eafb3f 100644 --- a/res/values-he/strings.xml +++ b/res/values-he/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de מנוי ID סינון לפי הרשאות סנן יישומי מערכת + Filter on data usage + Filter on internet access + Filter on restricted יישום כולל הרשאות גישה לאינטרנט כולל הרשאות גישה לאנדרואיד diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml index f83e4217d..d70420201 100644 --- a/res/values-hu/strings.xml +++ b/res/values-hu/strings.xml @@ -77,6 +77,9 @@ de lehetetlen garantálni hogy tökéletesen működjön az összes eszközön Előfizető azonosító Szűrés engedély szerint Rendszer alkalmazások szűrése + Filter on data usage + Filter on internet access + Filter on restricted Alkalmazás Internet engedély Android engedély diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index 76e39c174..5ce78ef05 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de Subscriber ID Filtra per permessi Filtra applicazioni di sistema + Filter on data usage + Filter on internet access + Filter on restricted Applicazione ha permesso internet ha permesso Android diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml index c574a4fac..cf8eafb3f 100644 --- a/res/values-iw/strings.xml +++ b/res/values-iw/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de מנוי ID סינון לפי הרשאות סנן יישומי מערכת + Filter on data usage + Filter on internet access + Filter on restricted יישום כולל הרשאות גישה לאינטרנט כולל הרשאות גישה לאנדרואיד diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index 0b37c54d4..1f36070e1 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -77,6 +77,9 @@ 契約者固有ID 権限でフィルタ システムアプリをフィルタ + Filter on data usage + Filter on internet access + Filter on restricted アプリ はインターネット権限を持っています はAndroid権限を持っています diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml index 94a8587db..1f35509c9 100644 --- a/res/values-lt/strings.xml +++ b/res/values-lt/strings.xml @@ -77,6 +77,9 @@ Tačiau neįmanoma garantuoti, kad dirbs nepriekaištingai su kiekvienu prietais Abonento ID Tik naudojami leidimai Nerodyti sistemos programų + Filter on data usage + Filter on internet access + Filter on restricted Programa Interneto leidimai Android leidimai diff --git a/res/values-nb-rNO/strings.xml b/res/values-nb-rNO/strings.xml index 9a5d1c343..33230baca 100644 --- a/res/values-nb-rNO/strings.xml +++ b/res/values-nb-rNO/strings.xml @@ -77,6 +77,9 @@ Abonnent ID Velg etter tillatelse Filtrer system applikasjoner + Filter on data usage + Filter on internet access + Filter on restricted Applikasjon har internet tillatelse har Android tillatelse diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index 7ebb2f4c3..586d79d19 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -79,6 +79,9 @@ maar het is onmogelijk om te garanderen dat het op elk apparaat en voor elke app Abonnee ID Filter op rechten Filter systeem applicaties + Filter on data usage + Filter on internet access + Filter on restricted Applicatie heeft internet rechten heeft Android rechten @@ -86,4 +89,4 @@ maar het is onmogelijk om te garanderen dat het op elk apparaat en voor elke app is uitgezet is gevaarlijk - \ No newline at end of file + diff --git a/res/values-nn-rNO/strings.xml b/res/values-nn-rNO/strings.xml index 9a5d1c343..33230baca 100644 --- a/res/values-nn-rNO/strings.xml +++ b/res/values-nn-rNO/strings.xml @@ -77,6 +77,9 @@ Abonnent ID Velg etter tillatelse Filtrer system applikasjoner + Filter on data usage + Filter on internet access + Filter on restricted Applikasjon har internet tillatelse har Android tillatelse diff --git a/res/values-no-rNO/strings.xml b/res/values-no-rNO/strings.xml index 9a5d1c343..33230baca 100644 --- a/res/values-no-rNO/strings.xml +++ b/res/values-no-rNO/strings.xml @@ -77,6 +77,9 @@ Abonnent ID Velg etter tillatelse Filtrer system applikasjoner + Filter on data usage + Filter on internet access + Filter on restricted Applikasjon har internet tillatelse har Android tillatelse diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 613f71ca5..346cba20e 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -78,6 +78,9 @@ Subscriber ID Filtruj według uprawnień Filtruj aplikacje systemowe + Filter on data usage + Filter on internet access + Filter on restricted Aplikacja wymaga dostępu do internetu wymaga dostępu do tych uprawnień Androida diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index 35ec2bc94..11f87c1c7 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -79,6 +79,9 @@ porém é impossível garantir que irá funcionar sem problemas em todos os disp Identidade do subscritor Filtrar por permissão Filtrar aplicações do sistema + Filter on data usage + Filter on internet access + Filter on restricted Aplicação Tem permissão da internet Tem permissão do Android diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml index 709dcdc5d..ac2353276 100644 --- a/res/values-ro/strings.xml +++ b/res/values-ro/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de Subscriber ID Filter by permission Filter system applications + Filter on data usage + Filter on internet access + Filter on restricted Aplicatie are permisiune Internet are permisiune Android diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index b08e2c873..e9e8b785d 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -77,6 +77,9 @@ Subscriber ID Фильтровать по разрешениям Скрывать системные приложения + Filter on data usage + Filter on internet access + Filter on restricted Приложение запрашивает доступ в интернет имеет разрешение Android diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml index e047ee17e..dd51baa9f 100644 --- a/res/values-sk/strings.xml +++ b/res/values-sk/strings.xml @@ -78,6 +78,9 @@ avšak nie je nemožné zaručiť, že bude fungovať bezchybne na každom zaria IMSI Filtrovať podľa povolenia Filtrovať systémové aplikácie + Filter on data usage + Filter on internet access + Filter on restricted Aplikácia má internetové povolenie má Android povolenie diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml index 7a07fbc46..f7284f62f 100644 --- a/res/values-sl/strings.xml +++ b/res/values-sl/strings.xml @@ -79,6 +79,9 @@ ID naročnika Filtriraj po pravicah Filtriraj sistemske programe + Filter on data usage + Filter on internet access + Filter on restricted Program uporablja internetne pravice uporablja Android pravice diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml index 513d737e1..dc9a297d3 100644 --- a/res/values-sr/strings.xml +++ b/res/values-sr/strings.xml @@ -77,6 +77,9 @@ however it is impossible to guarantee it will work flawless on each and every de Претплатнички ИД Филтрирај по дозволи Филтрирај системске апликације + Filter on data usage + Filter on internet access + Filter on restricted Апликација има дозволу за Интернет има дозволу за Андроид diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index beb9a9a6d..35fbc220a 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -77,6 +77,9 @@ Det är emellertid omöjligt att garantera att appen fungerar på alla enheter o Abonnent-ID Filtrera efter behörighet Filtrera systemappar + Filter on data usage + Filter on internet access + Filter on restricted Applikation har internetbehörighet har Android-behörighet diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index 9bf4980a3..d1f348f32 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -76,6 +76,9 @@ Sim Numarası (IMSI) İzne göre filtre et Sistem uygulamalarını gösterme + Filter on data usage + Filter on internet access + Filter on restricted Uygulama internet izni var Android izni var diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml index ca176851c..763eecad6 100644 --- a/res/values-vi/strings.xml +++ b/res/values-vi/strings.xml @@ -76,6 +76,9 @@ ID người đăng kí Lọc theo quyền Lọc theo ứng dụng hệ thống + Filter on data usage + Filter on internet access + Filter on restricted Ứng dụng có quyền truy cập mạng có các quyền của hệ điều hành diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index 75df15196..8f35118d9 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -77,6 +77,9 @@ IMSI 隐藏无关权限 隐藏系统应用 + Filter on data usage + Filter on internet access + Filter on restricted 应用 表示联网的权限 表示授予的权限 From 1c1096b316bc7fa58c0dbd0a5ff5abd0dcfcdc6c Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 20:39:23 +0100 Subject: [PATCH 15/16] Updated French translation --- res/values-fr/strings.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index 89c753783..ff75af85a 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -76,10 +76,10 @@ il est impossible de garantir un fonctionnement parfait sur chaque appareil et p Opérateur ID Abonné Filtrer par permissions - Masquer les applications système - Filter on data usage - Filter on internet access - Filter on restricted + Masquer les applis système + Filtrer utilisation des données + Filtrer ayant accès à internet + Filtrer restreintes Application a les permissions Internet a les permissions Android From cd6efca438c31f66723b35700fc602c308ae759d Mon Sep 17 00:00:00 2001 From: tonymanou Date: Fri, 23 Aug 2013 20:50:54 +0100 Subject: [PATCH 16/16] Fixed background misplaced when app list is almost empty --- res/layout/mainlist.xml | 2 +- res/layout/restrictionlist.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/res/layout/mainlist.xml b/res/layout/mainlist.xml index a6abcb3b9..183e4079b 100644 --- a/res/layout/mainlist.xml +++ b/res/layout/mainlist.xml @@ -2,7 +2,7 @@