Merge with ui. Synchronous connection worked.
authorDa Risk <darisk972@gmail.com>
Sat, 21 Mar 2009 02:09:05 +0100
changeset 33 0e65d5f55d2f
parent 32 4d26854143e2 (current diff)
parent 24 b915994d895e (diff)
child 35 8006e9ee734e
Merge with ui. Synchronous connection worked. Add some checkstyle xml rules to use with the checkstyle plugin for eclipse and also a formatter for eclipse. Still work needs on asynchrounous connect
AndroidManifest.xml
Beem-ecipse-formatter.xml
checkstyle.xml
res/layout/main.xml
res/layout/settings.xml
res/menu/account.xml
src/com/beem/project/beem/Beem.java
src/com/beem/project/beem/BeemService.java
src/com/beem/project/beem/SettingsDialog.java
src/com/beem/project/beem/service/aidl/IXMPPFacade.aidl
src/com/beem/project/beem/ui/Beem.java
src/com/beem/project/beem/ui/ContactList.java
--- a/AndroidManifest.xml	Fri Mar 20 23:21:05 2009 +0100
+++ b/AndroidManifest.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -3,12 +3,13 @@
 	package="com.beem.project.beem" android:versionCode="1"
 	android:versionName="1.0">
 	<application android:label="@string/app_name">
-		<activity android:name=".Beem" android:label="@string/app_name">
+		<activity android:name=".ui.Beem" android:label="@string/app_name">
 			<intent-filter>
 				<action android:name="android.intent.action.MAIN" />
 				<category android:name="android.intent.category.LAUNCHER" />
 			</intent-filter>
 		</activity>
+		<activity android:name=".ui.ContactList" android:label="@string/app_name" />
 		<service android:name="BeemService" android:enabled="true"
 			android:label="Beem Service" android:permission="com.beem.project.beem.BEEM_SERVICE">
 			<intent-filter>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Beem-ecipse-formatter.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,267 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<profiles version="11">
+<profile kind="CodeFormatterProfile" name="Eclipse [good tabsize]" version="11">
+<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
+<setting id="org.eclipse.jdt.core.compiler.source" value="1.5"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="80"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="4"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
+<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
+<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="mixed"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="8"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
+<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.5"/>
+<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
+<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="80"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.5"/>
+<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
+</profile>
+</profiles>
--- a/checkstyle.xml	Fri Mar 20 23:21:05 2009 +0100
+++ b/checkstyle.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -7,17 +7,17 @@
 
   Checkstyle configuration that checks the sun coding conventions from:
 
-    - the Java Language Specification at
-      http://java.sun.com/docs/books/jls/second_edition/html/index.html
+  - the Java Language Specification at
+  http://java.sun.com/docs/books/jls/second_edition/html/index.html
 
-    - the Sun Code Conventions at http://java.sun.com/docs/codeconv/
+  - the Sun Code Conventions at http://java.sun.com/docs/codeconv/
 
-    - the Javadoc guidelines at
-      http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
+  - the Javadoc guidelines at
+  http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
 
-    - the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html
+  - the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html
 
-    - some best practices
+  - some best practices
 
   Checkstyle is very configurable. Be sure to read the documentation at
   http://checkstyle.sf.net (or in your downloaded distribution).
@@ -47,127 +47,129 @@
 
     <module name="TreeWalker">
 
-        <!-- Checks for Javadoc comments.                     -->
-        <!-- See http://checkstyle.sf.net/config_javadoc.html -->
-	<module name="JavadocMethod"/>
+	<!-- Checks for Javadoc comments.                     -->
+	<!-- See http://checkstyle.sf.net/config_javadoc.html -->
+	<module name="JavadocMethod">
 	    <property name="allowUndeclaredRTE" value="true"/>
 	</module>
-        <module name="JavadocType"/>
-        <module name="JavadocVariable"/>
-        <module name="JavadocStyle"/>
+	<module name="JavadocType"/>
+	<module name="JavadocVariable">
+	    <property name="scope" value="package" />
+	</module>
+	<module name="JavadocStyle">
 	    <property name="checkEmptyJavadoc" value="true"/>
 	</module>
 
 
-        <!-- Checks for Naming Conventions.                  -->
-        <!-- See http://checkstyle.sf.net/config_naming.html -->
-        <module name="ConstantName"/>
-        <module name="LocalFinalVariableName"/>
-        <module name="LocalVariableName"/>
+	<!-- Checks for Naming Conventions.                  -->
+	<!-- See http://checkstyle.sf.net/config_naming.html -->
+	<module name="ConstantName"/>
+	<module name="LocalFinalVariableName"/>
+	<module name="LocalVariableName"/>
 	<module name="MemberName">
 	    <property  name="format" value="^m[A-Z][a-zA-Z0-9]*$"/>
 	</module>
-        <module name="MethodName"/>
-        <module name="PackageName"/>
-        <module name="ParameterName"/>
-        <module name="StaticVariableName"/>
-        <module name="TypeName"/>
+	<module name="MethodName"/>
+	<module name="PackageName"/>
+	<module name="ParameterName"/>
+	<module name="StaticVariableName"/>
+	<module name="TypeName"/>
 
 
-        <!-- Checks for Headers                                -->
-        <!-- See http://checkstyle.sf.net/config_header.html   -->
-        <!-- <module name="Header">                            -->
-            <!-- The follow property value demonstrates the ability     -->
-            <!-- to have access to ANT properties. In this case it uses -->
-            <!-- the ${basedir} property to allow Checkstyle to be run  -->
-            <!-- from any directory within a project. See property      -->
-            <!-- expansion,                                             -->
-            <!-- http://checkstyle.sf.net/config.html#properties        -->
-            <!-- <property                                              -->
-            <!--     name="headerFile"                                  -->
-            <!--     value="${basedir}/java.header"/>                   -->
-        <!-- </module> -->
+	<!-- Checks for Headers                                -->
+	<!-- See http://checkstyle.sf.net/config_header.html   -->
+	<!-- <module name="Header">                            -->
+	<!-- The follow property value demonstrates the ability     -->
+	<!-- to have access to ANT properties. In this case it uses -->
+	<!-- the ${basedir} property to allow Checkstyle to be run  -->
+	<!-- from any directory within a project. See property      -->
+	<!-- expansion,                                             -->
+	<!-- http://checkstyle.sf.net/config.html#properties        -->
+	<!-- <property                                              -->
+	<!--     name="headerFile"                                  -->
+	<!--     value="${basedir}/java.header"/>                   -->
+	<!-- </module> -->
 
-        <!-- Following interprets the header file as regular expressions. -->
-        <!-- <module name="RegexpHeader"/>                                -->
+	<!-- Following interprets the header file as regular expressions. -->
+	<!-- <module name="RegexpHeader"/>                                -->
 
 
-        <!-- Checks for imports                              -->
-        <!-- See http://checkstyle.sf.net/config_import.html -->
-        <module name="AvoidStarImport"/>
-        <module name="IllegalImport"/> <!-- defaults to sun.* packages -->
-        <module name="RedundantImport"/>
-        <module name="UnusedImports"/>
+	<!-- Checks for imports                              -->
+	<!-- See http://checkstyle.sf.net/config_import.html -->
+	<module name="AvoidStarImport"/>
+	<module name="IllegalImport"/> <!-- defaults to sun.* packages -->
+	<module name="RedundantImport"/>
+	<module name="UnusedImports"/>
 
 
-        <!-- Checks for Size Violations.                    -->
-        <!-- See http://checkstyle.sf.net/config_sizes.html -->
-        <module name="FileLength"/>
+	<!-- Checks for Size Violations.                    -->
+	<!-- See http://checkstyle.sf.net/config_sizes.html -->
+	<module name="FileLength"/>
 	<module name="LineLength">
 	    <property name="max" value="120" />
 	</module>
-        <module name="MethodLength"/>
-        <module name="ParameterNumber"/>
+	<module name="MethodLength"/>
+	<module name="ParameterNumber"/>
 	<module name="AnonInnerLength">
 	    <property name="max" value="60" />
 	</module>
 
 
-        <!-- Checks for whitespace                               -->
-        <!-- See http://checkstyle.sf.net/config_whitespace.html -->
-        <module name="EmptyForIteratorPad"/>
-        <module name="MethodParamPad"/>
-        <module name="NoWhitespaceAfter"/>
-        <module name="NoWhitespaceBefore"/>
-        <module name="OperatorWrap"/>
-        <module name="ParenPad"/>
-        <module name="TypecastParenPad"/>
+	<!-- Checks for whitespace                               -->
+	<!-- See http://checkstyle.sf.net/config_whitespace.html -->
+	<module name="EmptyForIteratorPad"/>
+	<module name="MethodParamPad"/>
+	<module name="NoWhitespaceAfter"/>
+	<module name="NoWhitespaceBefore"/>
+	<module name="OperatorWrap"/>
+	<module name="ParenPad"/>
+	<module name="TypecastParenPad"/>
 	<!-- We want mixed tabulation
 	  <module name="TabCharacter"/> 
-      -->
-        <module name="WhitespaceAfter"/>
-        <module name="WhitespaceAround"/>
+	  -->
+	<module name="WhitespaceAfter"/>
+	<module name="WhitespaceAround"/>
 
 
-        <!-- Modifier Checks                                    -->
-        <!-- See http://checkstyle.sf.net/config_modifiers.html -->
-        <module name="ModifierOrder"/>
-        <module name="RedundantModifier"/>
+	<!-- Modifier Checks                                    -->
+	<!-- See http://checkstyle.sf.net/config_modifiers.html -->
+	<module name="ModifierOrder"/>
+	<module name="RedundantModifier"/>
 
 
-        <!-- Checks for blocks. You know, those {}'s         -->
-        <!-- See http://checkstyle.sf.net/config_blocks.html -->
-        <module name="AvoidNestedBlocks"/>
-        <module name="EmptyBlock"/>
-        <module name="LeftCurly"/>
+	<!-- Checks for blocks. You know, those {}'s         -->
+	<!-- See http://checkstyle.sf.net/config_blocks.html -->
+	<module name="AvoidNestedBlocks"/>
+	<module name="EmptyBlock"/>
+	<module name="LeftCurly"/>
 	<!--
 	  <module name="NeedBraces"/>
 	  -->
-        <module name="RightCurly"/>
+	<module name="RightCurly"/>
 
 
-        <!-- Checks for common coding problems               -->
-        <!-- See http://checkstyle.sf.net/config_coding.html -->
+	<!-- Checks for common coding problems               -->
+	<!-- See http://checkstyle.sf.net/config_coding.html -->
 	<module name="CovariantEquals"/>
-        <module name="AvoidInlineConditionals"/>
+	<module name="AvoidInlineConditionals"/>
 	<module name="InnerAssignment" />
-        <module name="DoubleCheckedLocking"/>    <!-- MY FAVOURITE -->
-        <module name="EmptyStatement"/>
-        <module name="EqualsHashCode"/>
+	<module name="DoubleCheckedLocking"/>    <!-- MY FAVOURITE -->
+	<module name="EmptyStatement"/>
+	<module name="EqualsHashCode"/>
 	<module name="HiddenField">
 	    <property name="ignoreConstructorParameter" value="true"/>
 	    <property name="ignoreAbstractMethods" value="true"/>
 	    <property name="ignoreSetter" value="true"/>
 	</module>
-        <module name="IllegalInstantiation"/>
-        <module name="InnerAssignment"/>
+	<module name="IllegalInstantiation"/>
+	<module name="InnerAssignment"/>
 	<!--
 	  <module name="MagicNumber"/>
 	  -->
-        <module name="MissingSwitchDefault"/>
-        <module name="RedundantThrows"/>
-        <module name="SimplifyBooleanExpression"/>
-        <module name="SimplifyBooleanReturn"/>
+	<module name="MissingSwitchDefault"/>
+	<module name="RedundantThrows"/>
+	<module name="SimplifyBooleanExpression"/>
+	<module name="SimplifyBooleanReturn"/>
 	<module name="StringLiteralEquality"/>
 	<module name="SuperFinalize"/>
 	<module name="IllegalCatch"/>
@@ -185,43 +187,39 @@
 	<module name="ParameterAssignment"/>
 	<module name="SuperClone"/>
 
-        <!-- Checks for class design                         -->
-        <!-- See http://checkstyle.sf.net/config_design.html -->
-        <module name="DesignForExtension"/>
-        <module name="FinalClass"/>
-        <module name="HideUtilityClassConstructor"/>
-        <module name="InterfaceIsType"/>
-        <module name="VisibilityModifier"/>
+	<!-- Checks for class design                         -->
+	<!-- See http://checkstyle.sf.net/config_design.html -->
+	<module name="DesignForExtension"/>
+	<module name="FinalClass"/>
+	<module name="HideUtilityClassConstructor"/>
+	<module name="InterfaceIsType"/>
+	<module name="VisibilityModifier"/>
 	<module name="MutableException"/>
-	    
+
 
-        <!-- Miscellaneous other checks.                   -->
-        <!-- See http://checkstyle.sf.net/config_misc.html -->
-        <module name="ArrayTypeStyle"/>
+	<!-- Miscellaneous other checks.                   -->
+	<!-- See http://checkstyle.sf.net/config_misc.html -->
+	<module name="ArrayTypeStyle"/>
 	<module name="FinalParameters">
 	    <property name="tokens" value="CTOR_DEF"/>
 	</module>
 	<module name="Indentation"/>
-	
-        <module name="GenericIllegalRegexp">
-            <property name="format" value="\s+$"/>
-            <property name="message" value="Line has trailing spaces."/>
-        </module>
-        <module name="TodoComment"/>
-        <module name="UpperEll"/>
 
-	<module name="StrictDuplicateCode"/>
+	<module name="GenericIllegalRegexp">
+	    <property name="format" value="\s+$"/>
+	    <property name="message" value="Line has trailing spaces."/>
+	</module>
+	<module name="TodoComment"/>
+	<module name="UpperEll"/>
+
 	<module name="BooleanExpressionComplexity"/>
-	<module name="NewlineAtEndOfFile"/>
 	<module name="UpperEll"/>
 
 
 	<module name="ArrayTypeStyle"/>
 
-	    
-	    
-	    
-
     </module>
+    <module name="StrictDuplicateCode"/>
+    <module name="NewlineAtEndOfFile"/>
 
 </module>
Binary file res/drawable/avatar.png has changed
Binary file res/drawable/bart.jpg has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/res/layout/beem.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+	android:orientation="vertical"
+	android:layout_width="fill_parent"
+	android:layout_height="fill_parent">
+
+	<ImageView android:id="@+id/logo"
+		android:src="@drawable/logo"
+		android:adjustViewBounds="true"
+		android:layout_width="wrap_content"
+		android:layout_height="wrap_content"/>
+		
+	<TextView android:text="@string/BeemJabberID"
+		android:textSize="25sp"
+		android:paddingLeft="100sp"
+		android:paddingTop="50sp"
+		android:paddingBottom="15sp"
+		android:layout_width="fill_parent"
+		android:layout_height="wrap_content" />
+		
+	<ImageView android:id="@+id/avatar"
+		android:src="@drawable/bart"
+		android:paddingTop="10sp"
+		android:paddingBottom="10sp"		
+		android:adjustViewBounds="true"
+		android:layout_width="fill_parent"
+		android:layout_height="wrap_content"/>
+		
+	<Button android:id="@+id/connection"
+		android:textSize="20sp"
+		android:singleLine="true"
+		android:layout_width="fill_parent"
+		android:layout_height="wrap_content"/>
+
+</LinearLayout>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/res/layout/beemdialogsettings.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:orientation="vertical"
+              android:layout_width="fill_parent"
+              android:layout_height="fill_parent"
+        >
+    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+                  android:orientation="horizontal"
+                  android:layout_width="fill_parent"
+                  android:layout_height="wrap_content"
+            >
+        <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="Host/Port:"
+                android:minWidth="70dp"
+                />
+                
+        <EditText android:id="@+id/host"
+                  android:layout_width="wrap_content"
+                  android:layout_height="wrap_content"
+                  android:singleLine="true"
+                  android:textSize="16sp"
+                  android:autoText="false"
+                  android:capitalize="none"
+                  android:minWidth="150dp"
+                  android:scrollHorizontally="true"/>
+        <EditText android:id="@+id/port"
+                  android:layout_width="wrap_content"
+                  android:layout_height="wrap_content"
+                  android:singleLine="true"
+                  android:textSize="16sp"
+                  android:autoText="false"
+                  android:minWidth="80dp"
+                  android:capitalize="none"
+                  android:scrollHorizontally="true"/>
+    </LinearLayout>
+
+    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+                  android:orientation="horizontal"
+                  android:layout_width="fill_parent"
+                  android:layout_height="wrap_content"
+            >
+        <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="Userid:"
+                android:minWidth="70dp"
+                />
+        <EditText android:id="@+id/userid"
+                  android:layout_width="wrap_content"
+                  android:layout_height="wrap_content"
+                  android:singleLine="true"
+                  android:textSize="16sp"
+                  android:autoText="false"
+                  android:minWidth="250dp"
+                  android:capitalize="none"
+                  android:scrollHorizontally="true"/>
+    </LinearLayout>
+    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+                  android:orientation="horizontal"
+                  android:layout_width="fill_parent"
+                  android:layout_height="wrap_content"
+            >
+        <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="Password:"
+                android:minWidth="70dp"
+                />
+        <EditText android:id="@+id/password"
+                  android:layout_width="wrap_content"
+                  android:layout_height="wrap_content"
+                  android:singleLine="true"
+                  android:password="true"
+                  android:textSize="16sp"
+                  android:autoText="false"
+                  android:minWidth="250dp"
+                  android:capitalize="none"
+                  android:scrollHorizontally="true"/>
+    </LinearLayout>
+
+    <Button android:id="@+id/ok"
+            android:layout_width="fill_parent"
+            android:layout_height="fill_parent"
+            android:text="OK">
+        <requestFocus/>
+    </Button>
+</LinearLayout>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/res/layout/contactlist.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ 	android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:orientation="vertical">
+                    	         	
+	<ImageView android:id="@+id/avatar"
+		android:src="@drawable/avatar"
+		android:paddingLeft="50sp"
+		android:layout_width="wrap_content"
+		android:layout_height="wrap_content"/>
+ 
+     <TextView android:id="@+id/textchild"
+         android:textSize="16sp"         
+         android:paddingLeft="100sp"
+         android:layout_width="fill_parent"
+         android:layout_height="wrap_content"/>
+		
+ </LinearLayout>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/res/layout/contactlistgroup.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+	android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:orientation="vertical">
+
+	<TextView android:id="@+id/textgroup"
+		android:height="50sp"
+		android:textSize="20sp"
+       	android:textStyle="bold"
+       	android:paddingTop="10sp"
+       	android:paddingLeft="40sp"
+       	android:layout_width="fill_parent"
+       	android:layout_height="wrap_content" />	
+
+ </LinearLayout>
--- a/res/layout/main.xml	Fri Mar 20 23:21:05 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-	android:orientation="vertical"
-	android:layout_width="fill_parent"
-	android:layout_height="fill_parent">
-
-	<ImageView android:id="@+id/logo"
-		android:src="@drawable/logo"
-		android:adjustViewBounds="true"
-		android:layout_width="wrap_content"
-		android:layout_height="wrap_content"/>
-		
-	<TextView android:text="Jabber ID"
-		android:textSize="25sp"
-		android:paddingLeft="100sp"
-		android:paddingTop="50sp"
-		android:paddingBottom="15sp"
-		android:layout_width="wrap_content"
-		android:layout_height="wrap_content" />
-		
-	<EditText android:id="@+id/jid"
-		android:singleLine="true"
-		android:layout_width="fill_parent"
-		android:layout_height="wrap_content"
-		android:scrollHorizontally="true" />
-	
-	<TextView
-		android:layout_width="fill_parent"
-		android:layout_height="10sp"/>
-
-	<Button android:id="@+id/connection"
-		android:textSize="20sp"
-		android:singleLine="true"
-		android:layout_width="fill_parent"
-		android:layout_height="wrap_content"
-		android:text="Connection" />
-
-</LinearLayout>
-
--- a/res/layout/settings.xml	Fri Mar 20 23:21:05 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-              android:orientation="vertical"
-              android:layout_width="fill_parent"
-              android:layout_height="fill_parent"
-        >
-    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-                  android:orientation="horizontal"
-                  android:layout_width="fill_parent"
-                  android:layout_height="wrap_content"
-            >
-        <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:text="Host/Port:"
-                android:minWidth="70dp"
-                />
-                
-        <EditText android:id="@+id/host"
-                  android:layout_width="wrap_content"
-                  android:layout_height="wrap_content"
-                  android:singleLine="true"
-                  android:textSize="16sp"
-                  android:autoText="false"
-                  android:capitalize="none"
-                  android:minWidth="150dp"
-                  android:scrollHorizontally="true"/>
-        <EditText android:id="@+id/port"
-                  android:layout_width="wrap_content"
-                  android:layout_height="wrap_content"
-                  android:singleLine="true"
-                  android:textSize="16sp"
-                  android:autoText="false"
-                  android:minWidth="80dp"
-                  android:capitalize="none"
-                  android:scrollHorizontally="true"/>
-    </LinearLayout>
-
-    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-                  android:orientation="horizontal"
-                  android:layout_width="fill_parent"
-                  android:layout_height="wrap_content"
-            >
-        <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:text="Userid:"
-                android:minWidth="70dp"
-                />
-        <EditText android:id="@+id/userid"
-                  android:layout_width="wrap_content"
-                  android:layout_height="wrap_content"
-                  android:singleLine="true"
-                  android:textSize="16sp"
-                  android:autoText="false"
-                  android:minWidth="250dp"
-                  android:capitalize="none"
-                  android:scrollHorizontally="true"/>
-    </LinearLayout>
-    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-                  android:orientation="horizontal"
-                  android:layout_width="fill_parent"
-                  android:layout_height="wrap_content"
-            >
-        <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:text="Password:"
-                android:minWidth="70dp"
-                />
-        <EditText android:id="@+id/password"
-                  android:layout_width="wrap_content"
-                  android:layout_height="wrap_content"
-                  android:singleLine="true"
-                  android:password="true"
-                  android:textSize="16sp"
-                  android:autoText="false"
-                  android:minWidth="250dp"
-                  android:capitalize="none"
-                  android:scrollHorizontally="true"/>
-    </LinearLayout>
-
-    <Button android:id="@+id/ok"
-            android:layout_width="fill_parent"
-            android:layout_height="fill_parent"
-            android:text="OK">
-        <requestFocus/>
-    </Button>
-</LinearLayout>
-
--- a/res/menu/account.xml	Fri Mar 20 23:21:05 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6 +0,0 @@
-<menu xmlns:android="http://schemas.android.com/apk/res/android">
-	<item android:id="@+id/account_edit"
-			android:title="Create or Edit Account" />
-	<item android:id="@+id/account_about"
-		android:title="About Beem" />
-</menu>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/res/menu/beemmenu.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,4 @@
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+	<item android:title="Creer ou Editer un compte" android:id="@+id/account_edit"/>
+	<item android:title="L'equipe Beem" android:id="@+id/account_about"/>
+</menu>
--- a/res/values/strings.xml	Fri Mar 20 23:21:05 2009 +0100
+++ b/res/values/strings.xml	Sat Mar 21 02:09:05 2009 +0100
@@ -1,15 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
-    <string name="app_name">Beem</string>
-		
-<string name="BeemServiceDescription">Use the Beem Service</string>
-<string name="BeemServiceCreated">BeemService Created</string>
-<string name="BeemServiceDestroyed">BeemService destroyed</string>
+	<string name="app_name">Beem</string>
 
-<!--  Preferences information -->
-<string name="PreferenceFileName">Beem</string>
-<string name="PreferenceLoginKey">login</string>
-<string name="PreferenceHostKey">host</string>
-<string name="PreferencePasswordKey">password</string>
-<string name="PreferencePortKey">port</string>
+	<!--  Class Beem -->
+	<string name="BeemCreateAccount">Creer un compte</string>
+	<string name="BeemJabberID">Jabber ID</string>
+	
+	<!--  Class BeemService -->
+	<string name="BeemServiceDescription">Use the Beem Service</string>
+	<string name="BeemServiceCreated">BeemService Created</string>
+	<string name="BeemServiceDestroyed">BeemService destroyed</string>
+
+	<!--  Preferences information -->
+	<string name="PreferenceFileName">Beem</string>
+	<string name="PreferenceLoginKey">login</string>
+	<string name="PreferenceHostKey">host</string>
+	<string name="PreferencePasswordKey">password</string>
+	<string name="PreferencePortKey">port</string>
 </resources>
--- a/src/com/beem/project/beem/Beem.java	Fri Mar 20 23:21:05 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,167 +0,0 @@
-package com.beem.project.beem;
-
-import com.beem.project.beem.service.aidl.IBeemConnectionListener;
-import com.beem.project.beem.service.aidl.IXMPPConnection;
-import com.beem.project.beem.service.aidl.IXMPPFacade;
-
-import android.app.Activity;
-import android.content.ComponentName;
-import android.content.Intent;
-import android.content.ServiceConnection;
-import android.content.SharedPreferences;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.IBinder;
-import android.os.Message;
-import android.os.RemoteException;
-import android.util.Log;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.EditText;
-import android.widget.Toast;
-
-public class Beem extends Activity {
-    
-    private SharedPreferences mSettings;
-
-    private IXMPPFacade facade; 
-    
-    private Handler mHandler;
-    
-    /** 
-     * Called when the activity is first created.
-     */
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        mHandler = new Handler();
-        setContentView(R.layout.main);
-        mSettings = getSharedPreferences(getString(R.string.PreferenceFileName), MODE_PRIVATE);
-        showJID();
-        Button btConnection = (Button) findViewById(R.id.connection);
-        btConnection.setOnClickListener(new OnClickListener() {
-           
-	    @Override
-	    public void onClick(View v) {
-		// TODO Auto-generated method stub
-	//	startService(new Intent(Beem.this,BeemService.class));
-		boolean ok = bindService(new Intent(Beem.this,BeemService.class), new ServiceConnection() {
-		
-		    @Override
-		    public void onServiceDisconnected(ComponentName name) {
-			// TODO Auto-generated method stub
-		
-		    }
-		
-		    @Override
-		    public void onServiceConnected(ComponentName name, IBinder service) {
-			// TODO Auto-generated method stub
-			try {
-				facade = (IXMPPFacade) service;
-				IXMPPConnection con = facade.getXMPPConnection();
-				con.addConnectionListener(new IBeemConnectionListener.Stub() {
-					
-				    @Override
-				    public void reconnectionSuccessful() throws RemoteException {
-					// TODO Auto-generated method stub
-				
-				    }
-				
-				    @Override
-				    public void reconnectionFailed() throws RemoteException {
-					// TODO Auto-generated method stub
-				
-				    }
-				
-				    @Override
-				    public void reconnectingIn(int seconds) throws RemoteException {
-					// TODO Auto-generated method stub
-				
-				    }
-				
-				    @Override
-				    public void onConnect() throws RemoteException {
-					// TODO Auto-generated method stub
-					mHandler.post(new Runnable() {
-					
-					    @Override
-					    public void run() {
-						// TODO Auto-generated method stub
-						Log.w("BEEM", "ON s'est COnnecter !!!");
-						Toast toast = Toast.makeText(Beem.this, "Connection estabished", Toast.LENGTH_LONG);
-						toast.show();
-					    }
-					});
-					
-				    }
-				
-				    @Override
-				    public void connectionClosedOnError() throws RemoteException {
-					// TODO Auto-generated method stub
-				
-				    }
-				
-				    @Override
-				    public void connectionClosed() throws RemoteException {
-					// TODO Auto-generated method stub
-				
-				    }
-				});
-				facade.connectAsync();
-			} catch (RemoteException e) {
-			    // TODO Auto-generated catch block
-			    e.printStackTrace();
-			}
-		    }
-		}, BIND_AUTO_CREATE);
-		if (! ok)
-		    Log.w("BEEM", "Connection au service echoue");
-	    }
-        });
-    }
-    
-    @Override
-    public boolean onCreateOptionsMenu(Menu menu) {
-        super.onCreateOptionsMenu(menu);
-        MenuInflater inflater = getMenuInflater();
-        inflater.inflate(R.menu.account, menu);
-        return true;
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        SettingsDialog Dialog = new SettingsDialog(this, mSettings);
-        switch (item.getItemId()) {        
-        case R.id.account_edit:
-            Dialog.show();
-            return true;
-        case R.id.account_about:
-            return true;
-        }
-        return false;
-    }
-
-    public void showJID() {
-        EditText ejid = (EditText) findViewById(R.id.jid);
-        String jid = mSettings.getString("login", "") +
-            "@" +  mSettings.getString("host", "") ;
-        if (jid.length() == 1)
-            jid = "Enter Jabber ID / Create New Account";
-        ejid.setText(jid);
-    }
-    
-
-    private class TestHandler extends Handler{
-	
-	@Override
-	public void handleMessage(Message msg) {
-	    // TODO Auto-generated method stub
-	    super.handleMessage(msg);
-	}
-	
-    }
-}
--- a/src/com/beem/project/beem/BeemService.java	Fri Mar 20 23:21:05 2009 +0100
+++ b/src/com/beem/project/beem/BeemService.java	Sat Mar 21 02:09:05 2009 +0100
@@ -10,6 +10,8 @@
 import org.jivesoftware.smack.Roster;
 import org.jivesoftware.smack.RosterListener;
 import org.jivesoftware.smack.packet.Presence;
+import org.jivesoftware.smack.XMPPConnection;
+import org.jivesoftware.smack.XMPPException;
 
 import android.app.Notification;
 import android.app.NotificationManager;
@@ -25,10 +27,9 @@
 import com.beem.project.beem.service.XMPPConnectionAdapter;
 import com.beem.project.beem.service.aidl.IXMPPConnection;
 import com.beem.project.beem.service.aidl.IXMPPFacade;
-
 /**
  * @author darisk
- *
+ * 
  */
 public class BeemService extends Service {
 
@@ -39,6 +40,7 @@
     private String mLogin;
     private String mPassword;
     private String mHost;
+
     private IXMPPFacade.Stub bind = new IXMPPFacade.Stub() {
 
 	@Override
@@ -46,7 +48,6 @@
 	    return connection;
 	}
 
-
 	@Override
 	public void disconnect() throws RemoteException {
 	    connection.disconnect();
@@ -90,6 +91,19 @@
 	notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
 	connection = new XMPPConnectionAdapter("10.0.2.2"); // address
     }
+    
+    private void showBasicNotification(int stringResource) {
+        String text = (String) getText(stringResource);
+        Notification notif = new Notification(R.drawable.logo, text, System
+                .currentTimeMillis());
+        notif.defaults = Notification.DEFAULT_ALL;
+        notif.setLatestEventInfo(this, text, text, PendingIntent.getActivity(
+                this, 0, new Intent(), 0));
+        notificationManager.notify(stringResource, notif);
+        Toast toast = Toast.makeText(this, R.string.BeemServiceCreated,
+                Toast.LENGTH_LONG);
+        toast.show();
+    }
 
     @Override
     public void onStart(Intent intent, int startId) {
@@ -107,16 +121,6 @@
 	showBasicNotification(R.string.BeemServiceDestroyed);
     }
 
-    private void showBasicNotification(int stringResource) {
-	String text = (String) getText(stringResource);
-	Notification notif = new Notification(R.drawable.logo, text, System
-		.currentTimeMillis());
-	notif.defaults = Notification.DEFAULT_ALL;
-	notif.setLatestEventInfo(this, text, text, PendingIntent.getActivity(
-		this, 0, new Intent(), 0));
-	notificationManager.notify(stringResource, notif);
-    }
-
     private void closeConnection() {
 	if (connection != null)
 	    try {
--- a/src/com/beem/project/beem/SettingsDialog.java	Fri Mar 20 23:21:05 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-package com.beem.project.beem;
-
-import android.app.Dialog;
-import android.content.Context;
-import android.content.SharedPreferences;
-import android.view.View;
-import android.widget.Button;
-import android.widget.EditText;
-
-/**
- *
- */
-public class SettingsDialog extends Dialog implements android.view.View.OnClickListener {
-
-    private Beem mbeem;
-    private SharedPreferences mSettings;
-    public SettingsDialog(Beem beem, SharedPreferences settings) {
-        super(beem);
-        this.mbeem = beem;
-        this.mSettings = settings;
-    }
-
-    @Override
-    protected void onStart() {
-        super.onStart();
-        setContentView(R.layout.settings);
-        getWindow().setFlags(4, 4);
-        setTitle("Jabber Account Settings");
-        showSettings();
-        Button ok = (Button) findViewById(R.id.ok);
-        ok.setOnClickListener(this);
-    }
-    
-    @Override
-    public void onClick(View v) {
-        SharedPreferences.Editor editor = mSettings.edit();
-        Context ctx = getContext();
-        editor.putString(ctx.getString(R.string.PreferenceHostKey), getWidgetText(R.id.host));
-        editor.putString(ctx.getString(R.string.PreferencePortKey), getWidgetText(R.id.port));
-        editor.putString(ctx.getString(R.string.PreferenceLoginKey), getWidgetText(R.id.userid));
-        editor.putString(ctx.getString(R.string.PreferencePasswordKey), getWidgetText(R.id.password));
-        editor.commit();
-        this.mbeem.showJID();
-        dismiss();
-    }
-    
-    private void showSettings() {
-        String tmp;
-        EditText eHost = (EditText) findViewById(R.id.host);
-        if ((tmp = mSettings.getString("host","")) != "")
-            eHost.setText(tmp);
-        EditText ePort = (EditText) findViewById(R.id.port);
-        if ((tmp = mSettings.getString("port","")) != "")
-            ePort.setText(tmp);
-        EditText eLogin = (EditText) findViewById(R.id.userid);
-        if ((tmp = mSettings.getString("login","")) != "")
-            eLogin.setText(tmp);
-        EditText ePwd = (EditText) findViewById(R.id.password);
-        if ((tmp = mSettings.getString("password","")) != "")
-            ePwd.setText(tmp);
-    }
-    
-    private String getWidgetText(int id) {
-        EditText widget = (EditText) this.findViewById(id);
-        return widget.getText().toString();
-    }
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/com/beem/project/beem/ui/Beem.java	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,109 @@
+package com.beem.project.beem.ui;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.os.Bundle;
+import android.os.Handler;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.Button;
+
+import com.beem.project.beem.R;
+
+/**
+ * La principale activite to be continuous.
+ */
+public class Beem extends Activity {
+
+    private SharedPreferences mSettings;
+    private BeemDialogSettings mDialog;
+    private Button mButton;
+    private Handler mHandler;
+
+    /**
+     * Default constructor.
+     */
+    public Beem() {
+	super();
+	mHandler= new Handler();
+    }
+
+    /**
+     * Called when the activity is first created.
+     * @param savedInstanceState
+     *            previous state.
+     */
+    @Override
+    public final void onCreate(Bundle savedInstanceState) {
+	super.onCreate(savedInstanceState);
+	setContentView(R.layout.beem);
+	mSettings = getSharedPreferences(
+		getString(R.string.PreferenceFileName), MODE_PRIVATE);
+	mDialog = new BeemDialogSettings(this, mSettings);
+
+	mButton = (Button) findViewById(R.id.connection);
+	mButton.setOnClickListener(new OnClickListener() {
+	    @Override
+	    public void onClick(View v) {
+		if (mButton.getText() == getString(R.string.BeemCreateAccount))
+		    mDialog.show();
+		else
+		    startActivity(new Intent(Beem.this, ContactList.class));
+	    }
+	});
+	showJID();
+    }
+
+    /**
+     * Callback for menu creation.
+     * @param menu
+     *            the menu created
+     * @return true on success, false otherwise
+     */
+    @Override
+    public final boolean onCreateOptionsMenu(Menu menu) {
+	super.onCreateOptionsMenu(menu);
+	MenuInflater inflater = getMenuInflater();
+	inflater.inflate(R.menu.beemmenu, menu);
+	return true;
+    }
+
+    /**
+     * Callback for menu item selected.
+     * @param item
+     *            the item selected
+     * @return true on success, false otherwise
+     */
+    @Override
+    public final boolean onOptionsItemSelected(MenuItem item) {
+	switch (item.getItemId()) {
+	    case R.id.account_edit:
+		mDialog.show();
+		return true;
+	    case R.id.account_about:
+		return true;
+	    default:
+		return false;
+	}
+    }
+
+    /**
+     * Show jabber id in button.
+     */
+    public final void showJID() {
+	String jid = mSettings.getString(
+		getString(R.string.PreferenceLoginKey), "")
+		+ "@"
+		+ mSettings
+			.getString(getString(R.string.PreferenceHostKey), "");
+	if (jid.length() == 1)
+	    jid = getString(R.string.BeemCreateAccount);
+	mButton.setText(jid);
+    }
+
+    
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/com/beem/project/beem/ui/BeemDialogSettings.java	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,76 @@
+package com.beem.project.beem.ui;
+
+import android.app.Dialog;
+import android.content.Context;
+import android.content.SharedPreferences;
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+
+import com.beem.project.beem.R;
+
+/**
+ *
+ */
+public class BeemDialogSettings extends Dialog implements
+        android.view.View.OnClickListener {
+
+    private Beem mbeem;
+
+    private SharedPreferences mSettings;
+
+    public BeemDialogSettings(Beem beem, SharedPreferences settings) {
+        super(beem);
+        this.mbeem = beem;
+        this.mSettings = settings;
+    }
+
+    @Override
+    protected void onStart() {
+        super.onStart();
+        setContentView(R.layout.beemdialogsettings);
+        getWindow().setFlags(4, 4);
+        setTitle("Jabber Account Settings");
+        showSettings();
+        Button ok = (Button) findViewById(R.id.ok);
+        ok.setOnClickListener(this);
+    }
+
+    @Override
+    public void onClick(View v) {
+        SharedPreferences.Editor editor = mSettings.edit();
+        Context ctx = getContext();
+        editor.putString(ctx.getString(R.string.PreferenceHostKey),
+                getWidgetText(R.id.host));
+        editor.putString(ctx.getString(R.string.PreferencePortKey),
+                getWidgetText(R.id.port));
+        editor.putString(ctx.getString(R.string.PreferenceLoginKey),
+                getWidgetText(R.id.userid));
+        editor.putString(ctx.getString(R.string.PreferencePasswordKey),
+                getWidgetText(R.id.password));
+        editor.commit();
+        this.mbeem.showJID();
+        dismiss();
+    }
+
+    private void showSettings() {
+        String tmp;
+        EditText eHost = (EditText) findViewById(R.id.host);
+        if ((tmp = mSettings.getString("host", "")) != "")
+            eHost.setText(tmp);
+        EditText ePort = (EditText) findViewById(R.id.port);
+        if ((tmp = mSettings.getString("port", "")) != "")
+            ePort.setText(tmp);
+        EditText eLogin = (EditText) findViewById(R.id.userid);
+        if ((tmp = mSettings.getString("login", "")) != "")
+            eLogin.setText(tmp);
+        EditText ePwd = (EditText) findViewById(R.id.password);
+        if ((tmp = mSettings.getString("password", "")) != "")
+            ePwd.setText(tmp);
+    }
+
+    private String getWidgetText(int id) {
+        EditText widget = (EditText) this.findViewById(id);
+        return widget.getText().toString();
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/com/beem/project/beem/ui/ContactList.java	Sat Mar 21 02:09:05 2009 +0100
@@ -0,0 +1,134 @@
+package com.beem.project.beem.ui;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import android.app.ExpandableListActivity;
+import android.content.ComponentName;
+import android.content.Intent;
+import android.content.ServiceConnection;
+import android.os.Bundle;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.util.Log;
+import android.widget.ExpandableListAdapter;
+import android.widget.SimpleExpandableListAdapter;
+
+import com.beem.project.beem.BeemService;
+import com.beem.project.beem.R;
+import com.beem.project.beem.service.aidl.IBeemConnectionListener;
+import com.beem.project.beem.service.aidl.IXMPPConnection;
+import com.beem.project.beem.service.aidl.IXMPPFacade;
+
+public class ContactList extends ExpandableListActivity {
+
+    private IXMPPFacade mService = null;
+
+    @Override
+    public void onCreate(Bundle saveBundle) {
+        super.onCreate(saveBundle);
+        bindService(new Intent(this, BeemService.class), mConnection,
+                BIND_AUTO_CREATE | BIND_DEBUG_UNBIND);
+    }
+
+    private void showContactList() {
+        ExpandableListAdapter Adapter;
+        List<Map<String, String>> groupData = new ArrayList<Map<String, String>>();
+        List<List<Map<String, String>>> childData = new ArrayList<List<Map<String, String>>>();
+
+        for (int i = 0; i < 2; i++) {
+            Map<String, String> curGroupMap = new HashMap<String, String>();
+            groupData.add(curGroupMap);
+            curGroupMap.put("NAME", "Group " + i);
+            
+            List<Map<String, String>> children = new ArrayList<Map<String, String>>();
+            for (int j = 0; j < 5; j++) {
+                Map<String, String> curChildMap = new HashMap<String, String>();
+                children.add(curChildMap);
+                curChildMap.put("NAOME CHILD", "Child " + j);                
+            }
+            childData.add(children);
+        }
+
+        Adapter = new SimpleExpandableListAdapter(this, 
+                groupData, R.layout.contactlistgroup,
+                new String[] {"NAME"}, new int[] {R.id.textgroup},
+                childData, R.layout.contactlist,
+                new String[] {"NAME CHILD"}, new int[] {R.id.textchild});
+        setListAdapter(Adapter);
+    }
+
+    private ServiceConnection mConnection = new ServiceConnection() {
+        @Override
+        public void onServiceConnected(ComponentName name, IBinder service) {
+            mService = IXMPPFacade.Stub.asInterface(service);
+            try {
+		IXMPPConnection con = mService.getXMPPConnection();
+		con.addConnectionListener(new TestConnectionListener());
+		mService.connectSync();
+		Log.i("BEEM", "Connected !!!");
+	    } catch (RemoteException e) {
+		// TODO Auto-generated catch block
+		e.printStackTrace();
+	    }
+            
+            /*
+             * mService.getGroupList(); mService.getContactList();
+             */
+        }
+
+        @Override
+        public void onServiceDisconnected(ComponentName name) {
+        }
+
+    };
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+        unbindService(mConnection);
+    }
+
+    private class TestConnectionListener extends IBeemConnectionListener.Stub {
+
+	@Override
+	public void connectionClosed() throws RemoteException {
+	    // TODO Auto-generated method stub
+	    
+	}
+
+	@Override
+	public void connectionClosedOnError() throws RemoteException {
+	    // TODO Auto-generated method stub
+	    
+	}
+
+	@Override
+	public void onConnect() throws RemoteException {
+	    // TODO Auto-generated method stub
+	    showContactList();
+	}
+
+	@Override
+	public void reconnectingIn(int seconds) throws RemoteException {
+	    // TODO Auto-generated method stub
+	    
+	}
+
+	@Override
+	public void reconnectionFailed() throws RemoteException {
+	    // TODO Auto-generated method stub
+	    
+	}
+
+	@Override
+	public void reconnectionSuccessful() throws RemoteException {
+	    // TODO Auto-generated method stub
+	    
+	}
+	
+    } 
+    
+}