Skip to content
This repository has been archived by the owner on Sep 6, 2019. It is now read-only.

Commit

Permalink
Show third extra
Browse files Browse the repository at this point in the history
Refs #1474
  • Loading branch information
M66B committed Jun 28, 2014
1 parent 5353002 commit 663a0cc
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 2 deletions.
8 changes: 8 additions & 0 deletions res/layout/ondemand.xml
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,14 @@
android:visibility="gone" >
</CheckBox>

<CheckBox
android:id="@+id/cbWhitelistExtra3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:visibility="gone" >
</CheckBox>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
Expand Down
32 changes: 30 additions & 2 deletions src/biz/bokhorst/xprivacy/PrivacyService.java
Original file line number Diff line number Diff line change
Expand Up @@ -1548,6 +1548,7 @@ private View getOnDemandView(final PRestriction restriction, final Hook hook, Ap
final CheckBox cbWhitelist = (CheckBox) view.findViewById(R.id.cbWhitelist);
final CheckBox cbWhitelistExtra1 = (CheckBox) view.findViewById(R.id.cbWhitelistExtra1);
final CheckBox cbWhitelistExtra2 = (CheckBox) view.findViewById(R.id.cbWhitelistExtra2);
final CheckBox cbWhitelistExtra3 = (CheckBox) view.findViewById(R.id.cbWhitelistExtra3);
Button btnDeny = (Button) view.findViewById(R.id.btnDeny);
Button btnDontKnow = (Button) view.findViewById(R.id.btnDontKnow);
Button btnAllow = (Button) view.findViewById(R.id.btnAllow);
Expand Down Expand Up @@ -1590,6 +1591,10 @@ private View getOnDemandView(final PRestriction restriction, final Hook hook, Ap
cbWhitelistExtra2.setText(resources.getString(R.string.title_whitelist, xextra[1]));
cbWhitelistExtra2.setVisibility(View.VISIBLE);
}
if (xextra.length > 2) {
cbWhitelistExtra3.setText(resources.getString(R.string.title_whitelist, xextra[2]));
cbWhitelistExtra3.setVisibility(View.VISIBLE);
}
}

// Category, once and whitelist exclude each other
Expand All @@ -1600,6 +1605,7 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
cbWhitelist.setChecked(false);
cbWhitelistExtra1.setChecked(false);
cbWhitelistExtra2.setChecked(false);
cbWhitelistExtra3.setChecked(false);
}
}
});
Expand All @@ -1610,6 +1616,7 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
cbWhitelist.setChecked(false);
cbWhitelistExtra1.setChecked(false);
cbWhitelistExtra2.setChecked(false);
cbWhitelistExtra3.setChecked(false);
}
}
});
Expand All @@ -1621,6 +1628,7 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
cbOnce.setChecked(false);
cbWhitelistExtra1.setChecked(false);
cbWhitelistExtra2.setChecked(false);
cbWhitelistExtra3.setChecked(false);
}
}
});
Expand All @@ -1632,6 +1640,7 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
cbOnce.setChecked(false);
cbWhitelist.setChecked(false);
cbWhitelistExtra2.setChecked(false);
cbWhitelistExtra3.setChecked(false);
}
}
});
Expand All @@ -1643,6 +1652,19 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
cbOnce.setChecked(false);
cbWhitelist.setChecked(false);
cbWhitelistExtra1.setChecked(false);
cbWhitelistExtra3.setChecked(false);
}
}
});
cbWhitelistExtra3.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
cbCategory.setChecked(false);
cbOnce.setChecked(false);
cbWhitelist.setChecked(false);
cbWhitelistExtra1.setChecked(false);
cbWhitelistExtra2.setChecked(false);
}
}
});
Expand All @@ -1652,7 +1674,8 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
public void onClick(View v) {
// Allow
result.restricted = false;
if (!cbWhitelist.isChecked() && !cbWhitelistExtra1.isChecked() && !cbWhitelistExtra2.isChecked()) {
if (!cbWhitelist.isChecked() && !cbWhitelistExtra1.isChecked() && !cbWhitelistExtra2.isChecked()
&& !cbWhitelistExtra3.isChecked()) {
mSelectCategory = cbCategory.isChecked();
mSelectOnce = cbOnce.isChecked();
}
Expand All @@ -1662,6 +1685,8 @@ else if (cbWhitelistExtra1.isChecked())
onDemandWhitelist(restriction, getXExtra(restriction, hook)[0], result, hook);
else if (cbWhitelistExtra2.isChecked())
onDemandWhitelist(restriction, getXExtra(restriction, hook)[1], result, hook);
else if (cbWhitelistExtra3.isChecked())
onDemandWhitelist(restriction, getXExtra(restriction, hook)[2], result, hook);
else if (cbOnce.isChecked())
onDemandOnce(restriction, cbCategory.isChecked(), result);
else
Expand All @@ -1685,7 +1710,8 @@ public void onClick(View v) {
public void onClick(View view) {
// Deny
result.restricted = true;
if (!cbWhitelist.isChecked() && !cbWhitelistExtra1.isChecked() && !cbWhitelistExtra2.isChecked()) {
if (!cbWhitelist.isChecked() && !cbWhitelistExtra1.isChecked() && !cbWhitelistExtra2.isChecked()
&& !cbWhitelistExtra3.isChecked()) {
mSelectCategory = cbCategory.isChecked();
mSelectOnce = cbOnce.isChecked();
}
Expand All @@ -1695,6 +1721,8 @@ else if (cbWhitelistExtra1.isChecked())
onDemandWhitelist(restriction, getXExtra(restriction, hook)[0], result, hook);
else if (cbWhitelistExtra2.isChecked())
onDemandWhitelist(restriction, getXExtra(restriction, hook)[1], result, hook);
else if (cbWhitelistExtra3.isChecked())
onDemandWhitelist(restriction, getXExtra(restriction, hook)[2], result, hook);
else if (cbOnce.isChecked())
onDemandOnce(restriction, cbCategory.isChecked(), result);
else
Expand Down

0 comments on commit 663a0cc

Please sign in to comment.