Created an activity that will allow a user to change a pin code.
Added the action buttons to the pin dialog
Pin dialog now responds to its buttons! Only need to make it so that you can pass arguments and that it returns the pin when ready
The pin fragment can now be interacted with. It should be ready! Just need to finish up the activity to open the app :)
Created a (probably temporary!) widget that opens the pin dialog. The pin dialog cant open the app yet though. Will work on that soon.
YAY! Dialog can now start our activity
Merge branch 'master' of https://github.com/AlexKolpa/AndroidStealth into Pin_dialog

Conflicts:
	AndroidStealth/src/main/res/values/styles.xml
	GUI/ic_select_multi.psd
Added the ignore for the thumbs folder
I made the pin manager that will be able to manage the pins of a user. Modified the broadcast receiver to use it too and the pin dialog also uses it now to launch the home activity directly. Also moved the code to launch the activity to HomeActivity.launch where you can launch it but only with the right pin. The broadcast receiver and the pinactivity dialog are modified accordingly.
Now the widget only opens the pin dialog when the user presses 5 times on the widget. Idea: dont just use an amount of times pressed, but use a morse/beat/musical sequence in order to open the pin dialog. Should be unrelated to speed, so one should use percentages of clicks intervals based on the previous.
Moved to Utils: copyFiles (from content/ContentManager.java)
Added quick read/write methods for text file reading/writing
Added quick randomString and randomCacheFile generators
Moved all references in the ContentManager to our files, to a new class: Directories.java, this class will handle the preferences of our main folder and provides File instances to all our sub directories.
Created the EncryptedPreferences.java class that will replace the SharedPreferences as it will save the preferences in our main folder and will save it there encrypted.
Fix for dot too many. Also added random file generation to given preferred location
Merge branch 'master' of https://github.com/AlexKolpa/AndroidStealth into Pin_dialog

Also cleaned up some code of the encryption part in the contentManager so it fits my current project

Conflicts:
	AndroidStealth/src/main/AndroidManifest.xml
	AndroidStealth/src/main/java/com/stealth/android/HomeActivity.java
	AndroidStealth/src/main/java/content/ContentManager.java
Ok I should commit more often...
Anyway BIG BIG changes (sorry for using this branch constantly :P I just still work better this way. Can't get the hang of branches yet)

- UI changed significantly. thumbnails are always same size, they are as big as possible within the space they have so no empty space is wasted on paddings and margins. There now is a nice green/red indicator line and icon to show the status of a file.
- FileIndex: we now have a fully working file index. This means that we have folders and files working virtually but on the disk the files are all just in 1 folder. I redesigned the folder stucture of our app for easier access and readability.
- EncryptedPreferences: we now should not use the SharedPreferences anymore, but the encrypted preferences. It uses JSON structures to save the settings to a file, and saves it encrypted (not yet, is a todo..). The preferences are then saved in our same folder structure. We can allow users to change to different main folders where different settings will then apply (think about pins, fileindex, default encryption timer settings etc etc). However the switching of these folders is not yet working. NOTE: some things still need to be in the SharedPreferences: the keychain of our crypto library, and the setting of the main folder.
- Reworked the encryption a bit in a sense that I moved some things around but it works exactly as walterbos created. Moved encryption from contentmanager to the encryptionmanager to separate the functionality. It now also uses our fileindex system.
- Created listeners to the encryptionservice so that the contentfragment can listen to changes in the encryption queue
- Connected the FileStatusNotificationsManager to the encryptionservice so now the correct notifications are shown depending on the status of files and the (en/de)cryption queue. Tapping on the "Unlocked files. tap to lock" now also locks are currently unlocked files and due to the listener structure the UI can listen to this and shows the status of files accordingly
Changes:
 - List now only updates 2 times when doing for instance a lock of a file. Once when it starts, once when it ends.
 - Removed the filename from the elements, as images don't need them directly. "An image speaks a thousand words". However, need to find a solution for files and folders, as filenames are important in these cases.
 - Selection of items is now more pretty and in style with the current design (was difficult to do since i had to find out the hard way that a gridview pre-loads grid items with id = 0, while the first element in the grid also had id = 0... but works good now)
 - Added a yellow bottom bar with a tip. Was meant to show debug messages (like the old toasts in the previous commit) as fast as they come in, but I canceled this (for now). the idea was that tapping on the bar would show the log of messages that was shown in that bar. It would show tips and when selecting items it could show the filename and size
 - everything in the HomeActivity.onNavigationDrawerItemSelected is now moved to check for pin correctness
 - Directories.java is now DirectoryManager.java
 - Moved some IOnResult creations outside method calls
 - JSONArrayUnsorted.remove now returns an object containing the full result of the removal
Now you can call again with this branch :P
Significant bug fixes:
 - when removing last file, got a crash because I didnt check for null
 - JSONArrayUnsorted was broken because I didnt decrease the size when removing an object
 - Now the ids of items are remembered in the CheckableLinearLayout class, because:
 - A lot of problems were caused by my faulty check for checked views, as I manage the display of checked/unchecked items myself. Important problem was that the gridlayout reuses previously removed views and has a pool available, so I didnt take all the possible changes into account. Now I don't have to anymore
 - Added a debug line to check when the crypto service dies, and if it does: restart
- Moved encryption classes to new package to separate from the content classes
- somehow the tap to lock works now, but I don't know what I changed that caused the fix. I'm suspecting that it might still happen that it breaks. Perhaps if the service is not active?
- Made some debug logs a bit less extremely informal
Changed Utils.debugToast to Utils.d and now includes a stacktrace print so you can find out the source of the debug log. Same counts for the toast call. If the build is not in debug mode, the debug messages will not be sent. EPIC
Hmm it wanted to be saved and this file is in the correct state. So perhaps I didn't save properly last time. Just in case, I'll commit.