Browse Source

finished merge fixes

Alexander Brakowski 10 years ago
parent
commit
7a42f2394a

+ 2 - 1
AndroidManifest.xml

@@ -16,8 +16,9 @@
     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
+	<uses-permission android:name="android.permission.BLUETOOTH" />
 
-    <uses-feature
+	<uses-feature
         android:name="android.hardware.nfc"
         android:required="false" />
 

BIN
res/drawable-hdpi/ic_action_refresh.png


BIN
res/drawable-mdpi/ic_action_refresh.png


BIN
res/drawable-xhdpi/ic_action_refresh.png


BIN
res/drawable-xxhdpi/ic_action_refresh.png


+ 3 - 3
res/layout/fragment_home.xml

@@ -91,10 +91,10 @@
                 android:id="@+id/home_button_connection_info"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignParentEnd="true"
+                android:src="@android:drawable/ic_menu_info_details"
+                android:layout_alignTop="@+id/home_text_name"
                 android:layout_alignParentRight="true"
-                android:layout_alignParentTop="true"
-                android:src="@android:drawable/ic_menu_info_details" />
+                android:layout_alignParentEnd="true"/>
         </RelativeLayout>
 
         <TextView

+ 8 - 0
res/menu/home_actions.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+	<item android:id="@+id/home_action_synchronize"
+	      android:icon="@drawable/ic_action_refresh"
+	      android:title="Synchronize"
+	      android:showAsAction="always" />
+</menu>

+ 8 - 0
src/de/tudarmstadt/informatik/hostage/commons/HelperUtils.java

@@ -398,4 +398,12 @@ public final class HelperUtils {
 
 		return mWifi.isConnected();
 	}
+
+	public static boolean isNetworkAvailable(Context context) {
+		if(context == null) return false;
+
+		ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+		NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
+		return activeNetworkInfo != null && activeNetworkInfo.isConnected();
+	}
 }

+ 49 - 30
src/de/tudarmstadt/informatik/hostage/ui2/fragment/HomeFragment.java

@@ -16,6 +16,9 @@ import android.content.SharedPreferences;
 import android.os.Bundle;
 import android.support.v4.content.LocalBroadcastManager;
 import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.CompoundButton;
@@ -27,8 +30,10 @@ import de.tudarmstadt.informatik.hostage.commons.HelperUtils;
 import de.tudarmstadt.informatik.hostage.persistence.ProfileManager;
 import de.tudarmstadt.informatik.hostage.deprecated.UglyDbHelper;
 import de.tudarmstadt.informatik.hostage.model.Profile;
+import de.tudarmstadt.informatik.hostage.sync.BluetoothSync;
 import de.tudarmstadt.informatik.hostage.ui.LogFilter;
 import de.tudarmstadt.informatik.hostage.ui2.activity.MainActivity;
+import de.tudarmstadt.informatik.hostage.ui2.activity.ProfileEditActivity;
 import de.tudarmstadt.informatik.hostage.ui2.fragment.opengl.ThreatIndicatorGLRenderer;
 
 /**
@@ -46,29 +51,28 @@ public class HomeFragment extends Fragment {
 	private ImageView mHomeProfileImage;
 	private ImageView mHomeConnectionInfoButton;
 
-	private View rootView;
+	private View mRootView;
 	private BroadcastReceiver mReceiver;
 
-	private CompoundButton.OnCheckedChangeListener switchChangeListener = null;
+	private CompoundButton.OnCheckedChangeListener mSwitchChangeListener = null;
 
-	private int defaultTextColor;
+	private int mDefaultTextColor;
 	private ProfileManager mProfileManager;
 
 	private SharedPreferences mConnectionInfo;
-	private UglyDbHelper dbh;
+	private UglyDbHelper mDbHelper;
 
-	private static ThreatIndicatorGLRenderer.ThreatLevel THREAT_LEVEL = ThreatIndicatorGLRenderer.ThreatLevel.NO_THREAT;
 	private boolean mReceiverRegistered;
 
 	private void assignViews() {
-		mHomeSwitchConnection = (Switch) rootView.findViewById(R.id.home_switch_connection);
-		mHomeTextName = (TextView) rootView.findViewById(R.id.home_text_name);
-		mHomeTextSecurity = (TextView) rootView.findViewById(R.id.home_text_security);
-		mHomeTextAttacks = (TextView) rootView.findViewById(R.id.home_text_attacks);
-		mHomeTextProfile = (TextView) rootView.findViewById(R.id.home_text_profile);
-		mHomeTextProfileHeader = (TextView) rootView.findViewById(R.id.home_text_profile_header);
-		mHomeProfileImage = (ImageView) rootView.findViewById(R.id.home_image_profile);
-		mHomeConnectionInfoButton = (ImageView) rootView.findViewById(R.id.home_button_connection_info);
+		mHomeSwitchConnection = (Switch) mRootView.findViewById(R.id.home_switch_connection);
+		mHomeTextName = (TextView) mRootView.findViewById(R.id.home_text_name);
+		mHomeTextSecurity = (TextView) mRootView.findViewById(R.id.home_text_security);
+		mHomeTextAttacks = (TextView) mRootView.findViewById(R.id.home_text_attacks);
+		mHomeTextProfile = (TextView) mRootView.findViewById(R.id.home_text_profile);
+		mHomeTextProfileHeader = (TextView) mRootView.findViewById(R.id.home_text_profile_header);
+		mHomeProfileImage = (ImageView) mRootView.findViewById(R.id.home_image_profile);
+		mHomeConnectionInfoButton = (ImageView) mRootView.findViewById(R.id.home_button_connection_info);
 	}
 
 	private void registerBroadcastReceiver() {
@@ -114,9 +118,9 @@ public class HomeFragment extends Fragment {
 		mHomeTextAttacks.setVisibility(View.VISIBLE);
 		mHomeTextSecurity.setVisibility(View.VISIBLE);
 
-		mHomeTextName.setTextColor(defaultTextColor);
-		mHomeTextProfile.setTextColor(defaultTextColor);
-		mHomeTextProfileHeader.setTextColor(defaultTextColor);
+		mHomeTextName.setTextColor(mDefaultTextColor);
+		mHomeTextProfile.setTextColor(mDefaultTextColor);
+		mHomeTextProfileHeader.setTextColor(mDefaultTextColor);
 
 		if (!initial) {
 			ThreatIndicatorGLRenderer.setThreatLevel(ThreatIndicatorGLRenderer.ThreatLevel.NO_THREAT);
@@ -156,7 +160,7 @@ public class HomeFragment extends Fragment {
 		}
 
 		boolean hasActiveListeners = false;
-		int totalAttacks = dbh.numBssidSeen(mConnectionInfo.getString(getString(R.string.connection_info_bssid), null));
+		int totalAttacks = mDbHelper.numBssidSeen(mConnectionInfo.getString(getString(R.string.connection_info_bssid), null));
 		ThreatIndicatorGLRenderer.ThreatLevel threatLevel = ThreatIndicatorGLRenderer.ThreatLevel.NOT_MONITORING;
 
 		if (MainActivity.getInstance().getHostageService() != null) {
@@ -213,20 +217,20 @@ public class HomeFragment extends Fragment {
 
 	@Override
 	public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
-
 		super.onCreateView(inflater, container, savedInstanceState);
+		setHasOptionsMenu(true);
 
 		final Activity activity = getActivity();
 		if (activity != null) {
 			activity.setTitle(getResources().getString(R.string.drawer_overview));
 		}
 
-		dbh = new UglyDbHelper(getActivity());
+		mDbHelper = new UglyDbHelper(getActivity());
 
 		mProfileManager = ProfileManager.getInstance();
 		mConnectionInfo = getActivity().getSharedPreferences(getString(R.string.connection_info), Context.MODE_PRIVATE);
 
-		rootView = inflater.inflate(R.layout.fragment_home, container, false);
+		mRootView = inflater.inflate(R.layout.fragment_home, container, false);
 		assignViews();
 
 		// hook up the connection info button
@@ -241,7 +245,7 @@ public class HomeFragment extends Fragment {
 			}
 		});
 
-		defaultTextColor = mHomeTextName.getCurrentTextColor();
+		mDefaultTextColor = mHomeTextName.getCurrentTextColor();
 
 		setStateNotActive(true);
 		setStateNotConnected();
@@ -258,12 +262,12 @@ public class HomeFragment extends Fragment {
 
 		updateUI();
 
-		mHomeSwitchConnection = (Switch) rootView.findViewById(R.id.home_switch_connection);
+		mHomeSwitchConnection = (Switch) mRootView.findViewById(R.id.home_switch_connection);
 
-		if (switchChangeListener == null) {
-			switchChangeListener = new CompoundButton.OnCheckedChangeListener() {
+		if (mSwitchChangeListener == null) {
+			mSwitchChangeListener = new CompoundButton.OnCheckedChangeListener() {
 				public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
-					if (!HelperUtils.isWifiConnected(getActivity())) {
+					if (!HelperUtils.isNetworkAvailable(getActivity())) {
 						new AlertDialog.Builder(getActivity()).setTitle(R.string.information).setMessage(R.string.wifi_not_connected_msg)
 								.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
 									public void onClick(DialogInterface dialog, int which) {
@@ -333,9 +337,9 @@ public class HomeFragment extends Fragment {
 				}
 			};
 		}
-		mHomeSwitchConnection.setOnCheckedChangeListener(switchChangeListener);
+		mHomeSwitchConnection.setOnCheckedChangeListener(mSwitchChangeListener);
 
-		rootView.findViewById(R.id.home_profile_details).setOnClickListener(new View.OnClickListener() {
+		mRootView.findViewById(R.id.home_profile_details).setOnClickListener(new View.OnClickListener() {
 			@Override
 			public void onClick(View v) {
 				Fragment fragment = new ProfileManagerFragment();
@@ -366,13 +370,29 @@ public class HomeFragment extends Fragment {
 		mHomeTextAttacks.setOnClickListener(attackClickListener);
 		mHomeTextSecurity.setOnClickListener(attackClickListener);
 
-		return rootView;
+		return mRootView;
+	}
+
+	@Override
+	public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+		// Inflate the menu items for use in the action bar
+		inflater.inflate(R.menu.home_actions, menu);
+	}
+
+	@Override
+	public boolean onOptionsItemSelected(MenuItem item) {
+		switch(item.getItemId()){
+			case R.id.home_action_synchronize:
+				getActivity().startActivity(new Intent(this.getActivity(), BluetoothSync.class));
+				return true;
+		}
+
+		return false;
 	}
 
 	@Override
 	public void onStop() {
 		unregisterBroadcastReceiver();
-		// mHomeSwitchConnection.setOnCheckedChangeListener(null);
 		super.onStop();
 	}
 
@@ -381,7 +401,6 @@ public class HomeFragment extends Fragment {
 		super.onStart();
 		registerBroadcastReceiver();
 		updateUI();
-		// mHomeSwitchConnection.setOnCheckedChangeListener(switchChangeListener);
 	}
 
 	@Override

+ 0 - 60
src/de/tudarmstadt/informatik/hostage/ui2/listeners/OnSwipeTouchListener.java

@@ -1,60 +0,0 @@
-package de.tudarmstadt.informatik.hostage.ui2.listeners;
-
-import android.view.GestureDetector;
-import android.view.GestureDetector.SimpleOnGestureListener;
-import android.view.MotionEvent;
-import android.view.View;
-import android.view.View.OnTouchListener;
-
-import de.tudarmstadt.informatik.hostage.ui2.activity.MainActivity;
-
-/**
- * @author Alexander Brakowski
- * @created 27.01.14 23:47
- */
-public class OnSwipeTouchListener implements OnTouchListener {
-
-	private final GestureDetector gestureDetector = new GestureDetector(MainActivity.getContext(), new GestureListener());
-
-	public boolean onTouch(final View view, final MotionEvent motionEvent) {
-		return gestureDetector.onTouchEvent(motionEvent);
-	}
-
-	private final class GestureListener extends SimpleOnGestureListener {
-
-		private static final int SWIPE_THRESHOLD = 50;
-		private static final int SWIPE_VELOCITY_THRESHOLD = 150;
-
-		@Override
-		public boolean onDown(MotionEvent e) {
-			return true;
-		}
-
-		@Override
-		public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
-
-			try {
-				float diffX = e2.getX() - e1.getX();
-
-				if (Math.abs(diffX) > SWIPE_THRESHOLD) {
-					if (diffX > 0) {
-						onSwipeRight();
-					} else {
-						onSwipeLeft();
-					}
-				}
-			} catch (Exception exception) {
-				exception.printStackTrace();
-				return false;
-			}
-
-			return true;
-		}
-	}
-
-	public void onSwipeRight() {
-	}
-
-	public void onSwipeLeft() {
-	}
-}

+ 0 - 41
src/de/tudarmstadt/informatik/hostage/ui2/preference/ImageSelectPreference.java

@@ -1,41 +0,0 @@
-package de.tudarmstadt.informatik.hostage.ui2.preference;
-
-import android.content.Context;
-import android.preference.Preference;
-import android.util.AttributeSet;
-import android.view.View;
-import android.view.ViewGroup;
-
-import de.tudarmstadt.informatik.hostage.R;
-
-/**
- * @author Alexander Brakowski
- * @created 08.02.14 18:38
- */
-public class ImageSelectPreference extends Preference {
-
-	private Context context;
-
-	public ImageSelectPreference(Context context, AttributeSet attrs,
-			int defStyle) {
-		super(context, attrs, defStyle);
-
-		this.context = context;
-	}
-
-	public void init(){
-		this.setWidgetLayoutResource(R.layout.preferences_image_widget);
-	}
-
-	@Override
-	protected void onClick() {
-		//context.start
-	}
-
-	/*protected View onCreateView(ViewGroup parent) {
-		View p = super.onCreateView(parent);
-
-
-		return p;
-	}*/
-}