1 package de
.ub0r
.android
.adBlock
;
3 import java
.util
.ArrayList
;
5 import android
.app
.Activity
;
6 import android
.app
.AlertDialog
;
7 import android
.content
.DialogInterface
;
8 import android
.content
.Intent
;
9 import android
.os
.Bundle
;
10 import android
.view
.View
;
11 import android
.view
.View
.OnClickListener
;
12 import android
.widget
.AdapterView
;
13 import android
.widget
.ArrayAdapter
;
14 import android
.widget
.Button
;
15 import android
.widget
.EditText
;
16 import android
.widget
.ListView
;
17 import android
.widget
.AdapterView
.OnItemClickListener
;
20 * Main Activity to controle ad blocking proxy.
24 public class AdBlock
extends Activity
implements OnClickListener
,
27 /** ItemDialog: edit. */
28 private static final short ITEM_DIALOG_EDIT
= 0;
29 /** ItemDialog: delete. */
30 private static final short ITEM_DIALOG_DELETE
= 1;
33 private ArrayList
<String
> filter
= new ArrayList
<String
>();
34 /** The ArrayAdapter. */
35 private ArrayAdapter
<String
> adapter
= null;
38 private int itemToEdit
= -1;
41 * Called when the activity is first created.
43 * @param savedInstanceState
47 public final void onCreate(final Bundle savedInstanceState
) {
48 super.onCreate(savedInstanceState
);
49 this.setContentView(R
.layout
.main
);
51 ((Button
) this.findViewById(R
.id
.start_service
))
52 .setOnClickListener(this);
53 ((Button
) this.findViewById(R
.id
.stop_service
))
54 .setOnClickListener(this);
55 ((Button
) this.findViewById(R
.id
.filter_add_
)).setOnClickListener(this);
56 ListView lv
= (ListView
) this.findViewById(R
.id
.filter
);
57 this.adapter
= new ArrayAdapter
<String
>(this,
58 android
.R
.layout
.simple_list_item_1
, this.filter
);
59 lv
.setAdapter(this.adapter
);
60 lv
.setTextFilterEnabled(true);
61 lv
.setOnItemClickListener(this);
71 public final void onClick(final View v
) {
73 case R
.id
.start_service
:
74 this.startService(new Intent(this, Proxy
.class));
76 case R
.id
.stop_service
:
77 this.stopService(new Intent(this, Proxy
.class));
78 case R
.id
.filter_add_
:
79 EditText et
= (EditText
) this.findViewById(R
.id
.filter_add
);
80 String f
= et
.getText().toString();
82 if (this.itemToEdit
>= 0) {
83 this.filter
.remove(this.itemToEdit
);
88 this.adapter
.notifyDataSetChanged();
97 * Handle clicked ListItem.
109 public final void onItemClick(final AdapterView
<?
> parent
, final View v
,
110 final int position
, final long id
) {
112 AlertDialog
.Builder builder
= new AlertDialog
.Builder(this);
113 // builder.setTitle("Pick a color");
115 this.getResources().getStringArray(R
.array
.itemDialog
),
116 new DialogInterface
.OnClickListener() {
117 public void onClick(final DialogInterface dialog
,
120 case ITEM_DIALOG_EDIT
:
121 AdBlock
.this.itemToEdit
= position
;
122 ((EditText
) AdBlock
.this
123 .findViewById(R
.id
.filter_add
))
124 .setText(AdBlock
.this.adapter
127 case ITEM_DIALOG_DELETE
:
128 AdBlock
.this.filter
.remove(position
);
129 AdBlock
.this.adapter
.notifyDataSetChanged();
136 AlertDialog alert
= builder
.create();