aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.classpath8
-rw-r--r--.gitignore21
-rw-r--r--.idea/.gitignore17
-rw-r--r--.idea/.name1
-rw-r--r--.idea/codeStyleSettings.xml213
-rw-r--r--.idea/copyright/Apache_ConnectBot.xml9
-rw-r--r--.idea/copyright/profiles_settings.xml7
-rw-r--r--.idea/encodings.xml5
-rw-r--r--.idea/gradle.xml19
-rw-r--r--.idea/scopes/ConnectBot.xml3
-rw-r--r--.idea/vcs.xml7
-rw-r--r--.travis.yml20
-rw-r--r--ant.properties19
-rw-r--r--app/app.iml86
-rw-r--r--app/build.gradle57
-rw-r--r--app/lint.xml4
-rw-r--r--app/proguard.cfg (renamed from proguard.cfg)0
-rw-r--r--app/src/main/AndroidManifest.xml (renamed from AndroidManifest.xml)0
-rw-r--r--app/src/main/assets/help/Hints.html (renamed from assets/help/Hints.html)0
-rw-r--r--app/src/main/assets/help/PhysicalKeyboard.html (renamed from assets/help/PhysicalKeyboard.html)0
-rw-r--r--app/src/main/assets/help/ScreenGestures.html (renamed from assets/help/ScreenGestures.html)0
-rw-r--r--app/src/main/assets/help/VirtualKeyboard.html (renamed from assets/help/VirtualKeyboard.html)0
-rw-r--r--app/src/main/java/com/google/ase/Exec.java (renamed from src/com/google/ase/Exec.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/Adler32.java (renamed from src/com/jcraft/jzlib/Adler32.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/Deflate.java (renamed from src/com/jcraft/jzlib/Deflate.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/InfBlocks.java (renamed from src/com/jcraft/jzlib/InfBlocks.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/InfCodes.java (renamed from src/com/jcraft/jzlib/InfCodes.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/InfTree.java (renamed from src/com/jcraft/jzlib/InfTree.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/Inflate.java (renamed from src/com/jcraft/jzlib/Inflate.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/JZlib.java (renamed from src/com/jcraft/jzlib/JZlib.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/StaticTree.java (renamed from src/com/jcraft/jzlib/StaticTree.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/Tree.java (renamed from src/com/jcraft/jzlib/Tree.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/ZInputStream.java (renamed from src/com/jcraft/jzlib/ZInputStream.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/ZOutputStream.java (renamed from src/com/jcraft/jzlib/ZOutputStream.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/ZStream.java (renamed from src/com/jcraft/jzlib/ZStream.java)0
-rw-r--r--app/src/main/java/com/jcraft/jzlib/ZStreamException.java (renamed from src/com/jcraft/jzlib/ZStreamException.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/AuthAgentCallback.java (renamed from src/com/trilead/ssh2/AuthAgentCallback.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/ChannelCondition.java (renamed from src/com/trilead/ssh2/ChannelCondition.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/Connection.java (renamed from src/com/trilead/ssh2/Connection.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/ConnectionInfo.java (renamed from src/com/trilead/ssh2/ConnectionInfo.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/ConnectionMonitor.java (renamed from src/com/trilead/ssh2/ConnectionMonitor.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/DHGexParameters.java (renamed from src/com/trilead/ssh2/DHGexParameters.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/DebugLogger.java (renamed from src/com/trilead/ssh2/DebugLogger.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/DynamicPortForwarder.java (renamed from src/com/trilead/ssh2/DynamicPortForwarder.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/HTTPProxyData.java (renamed from src/com/trilead/ssh2/HTTPProxyData.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/HTTPProxyException.java (renamed from src/com/trilead/ssh2/HTTPProxyException.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/InteractiveCallback.java (renamed from src/com/trilead/ssh2/InteractiveCallback.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/KnownHosts.java (renamed from src/com/trilead/ssh2/KnownHosts.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/LocalPortForwarder.java (renamed from src/com/trilead/ssh2/LocalPortForwarder.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/LocalStreamForwarder.java (renamed from src/com/trilead/ssh2/LocalStreamForwarder.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/ProxyData.java (renamed from src/com/trilead/ssh2/ProxyData.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/SCPClient.java (renamed from src/com/trilead/ssh2/SCPClient.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/SFTPException.java (renamed from src/com/trilead/ssh2/SFTPException.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/SFTPv3Client.java (renamed from src/com/trilead/ssh2/SFTPv3Client.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/SFTPv3DirectoryEntry.java (renamed from src/com/trilead/ssh2/SFTPv3DirectoryEntry.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/SFTPv3FileAttributes.java (renamed from src/com/trilead/ssh2/SFTPv3FileAttributes.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/SFTPv3FileHandle.java (renamed from src/com/trilead/ssh2/SFTPv3FileHandle.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/ServerHostKeyVerifier.java (renamed from src/com/trilead/ssh2/ServerHostKeyVerifier.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/Session.java (renamed from src/com/trilead/ssh2/Session.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/StreamGobbler.java (renamed from src/com/trilead/ssh2/StreamGobbler.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/auth/AuthenticationManager.java (renamed from src/com/trilead/ssh2/auth/AuthenticationManager.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/AuthAgentForwardThread.java (renamed from src/com/trilead/ssh2/channel/AuthAgentForwardThread.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/Channel.java (renamed from src/com/trilead/ssh2/channel/Channel.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/ChannelInputStream.java (renamed from src/com/trilead/ssh2/channel/ChannelInputStream.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/ChannelManager.java (renamed from src/com/trilead/ssh2/channel/ChannelManager.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/ChannelOutputStream.java (renamed from src/com/trilead/ssh2/channel/ChannelOutputStream.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/DynamicAcceptThread.java (renamed from src/com/trilead/ssh2/channel/DynamicAcceptThread.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/IChannelWorkerThread.java (renamed from src/com/trilead/ssh2/channel/IChannelWorkerThread.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java (renamed from src/com/trilead/ssh2/channel/LocalAcceptThread.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/RemoteAcceptThread.java (renamed from src/com/trilead/ssh2/channel/RemoteAcceptThread.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/RemoteForwardingData.java (renamed from src/com/trilead/ssh2/channel/RemoteForwardingData.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/RemoteX11AcceptThread.java (renamed from src/com/trilead/ssh2/channel/RemoteX11AcceptThread.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/StreamForwarder.java (renamed from src/com/trilead/ssh2/channel/StreamForwarder.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/X11ServerData.java (renamed from src/com/trilead/ssh2/channel/X11ServerData.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/compression/CompressionFactory.java (renamed from src/com/trilead/ssh2/compression/CompressionFactory.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/compression/ICompressor.java (renamed from src/com/trilead/ssh2/compression/ICompressor.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/compression/Zlib.java (renamed from src/com/trilead/ssh2/compression/Zlib.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/compression/ZlibOpenSSH.java (renamed from src/com/trilead/ssh2/compression/ZlibOpenSSH.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/Base64.java (renamed from src/com/trilead/ssh2/crypto/Base64.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/CryptoWishList.java (renamed from src/com/trilead/ssh2/crypto/CryptoWishList.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/KeyMaterial.java (renamed from src/com/trilead/ssh2/crypto/KeyMaterial.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/PEMDecoder.java (renamed from src/com/trilead/ssh2/crypto/PEMDecoder.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/PEMStructure.java (renamed from src/com/trilead/ssh2/crypto/PEMStructure.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/SimpleDERReader.java (renamed from src/com/trilead/ssh2/crypto/SimpleDERReader.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/AES.java (renamed from src/com/trilead/ssh2/crypto/cipher/AES.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/BlockCipher.java (renamed from src/com/trilead/ssh2/crypto/cipher/BlockCipher.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/BlockCipherFactory.java (renamed from src/com/trilead/ssh2/crypto/cipher/BlockCipherFactory.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/BlowFish.java (renamed from src/com/trilead/ssh2/crypto/cipher/BlowFish.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/CBCMode.java (renamed from src/com/trilead/ssh2/crypto/cipher/CBCMode.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/CTRMode.java (renamed from src/com/trilead/ssh2/crypto/cipher/CTRMode.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/CipherInputStream.java (renamed from src/com/trilead/ssh2/crypto/cipher/CipherInputStream.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/CipherOutputStream.java (renamed from src/com/trilead/ssh2/crypto/cipher/CipherOutputStream.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/DES.java (renamed from src/com/trilead/ssh2/crypto/cipher/DES.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/DESede.java (renamed from src/com/trilead/ssh2/crypto/cipher/DESede.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/cipher/NullCipher.java (renamed from src/com/trilead/ssh2/crypto/cipher/NullCipher.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/dh/DhExchange.java (renamed from src/com/trilead/ssh2/crypto/dh/DhExchange.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/dh/DhGroupExchange.java (renamed from src/com/trilead/ssh2/crypto/dh/DhGroupExchange.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/dh/EcDhExchange.java (renamed from src/com/trilead/ssh2/crypto/dh/EcDhExchange.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/dh/GenericDhExchange.java (renamed from src/com/trilead/ssh2/crypto/dh/GenericDhExchange.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/digest/HashForSSH2Types.java (renamed from src/com/trilead/ssh2/crypto/digest/HashForSSH2Types.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/crypto/digest/MAC.java (renamed from src/com/trilead/ssh2/crypto/digest/MAC.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/log/Logger.java (renamed from src/com/trilead/ssh2/log/Logger.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketChannelAuthAgentReq.java (renamed from src/com/trilead/ssh2/packets/PacketChannelAuthAgentReq.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketChannelOpenConfirmation.java (renamed from src/com/trilead/ssh2/packets/PacketChannelOpenConfirmation.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketChannelOpenFailure.java (renamed from src/com/trilead/ssh2/packets/PacketChannelOpenFailure.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketChannelTrileadPing.java (renamed from src/com/trilead/ssh2/packets/PacketChannelTrileadPing.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketChannelWindowAdjust.java (renamed from src/com/trilead/ssh2/packets/PacketChannelWindowAdjust.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketDisconnect.java (renamed from src/com/trilead/ssh2/packets/PacketDisconnect.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketGlobalCancelForwardRequest.java (renamed from src/com/trilead/ssh2/packets/PacketGlobalCancelForwardRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketGlobalForwardRequest.java (renamed from src/com/trilead/ssh2/packets/PacketGlobalForwardRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketGlobalTrileadPing.java (renamed from src/com/trilead/ssh2/packets/PacketGlobalTrileadPing.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketIgnore.java (renamed from src/com/trilead/ssh2/packets/PacketIgnore.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDHInit.java (renamed from src/com/trilead/ssh2/packets/PacketKexDHInit.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDHReply.java (renamed from src/com/trilead/ssh2/packets/PacketKexDHReply.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexGroup.java (renamed from src/com/trilead/ssh2/packets/PacketKexDhGexGroup.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexInit.java (renamed from src/com/trilead/ssh2/packets/PacketKexDhGexInit.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexReply.java (renamed from src/com/trilead/ssh2/packets/PacketKexDhGexReply.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexRequest.java (renamed from src/com/trilead/ssh2/packets/PacketKexDhGexRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexRequestOld.java (renamed from src/com/trilead/ssh2/packets/PacketKexDhGexRequestOld.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketKexInit.java (renamed from src/com/trilead/ssh2/packets/PacketKexInit.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketNewKeys.java (renamed from src/com/trilead/ssh2/packets/PacketNewKeys.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketOpenDirectTCPIPChannel.java (renamed from src/com/trilead/ssh2/packets/PacketOpenDirectTCPIPChannel.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketOpenSessionChannel.java (renamed from src/com/trilead/ssh2/packets/PacketOpenSessionChannel.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketServiceAccept.java (renamed from src/com/trilead/ssh2/packets/PacketServiceAccept.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketServiceRequest.java (renamed from src/com/trilead/ssh2/packets/PacketServiceRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketSessionExecCommand.java (renamed from src/com/trilead/ssh2/packets/PacketSessionExecCommand.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketSessionPtyRequest.java (renamed from src/com/trilead/ssh2/packets/PacketSessionPtyRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketSessionPtyResize.java (renamed from src/com/trilead/ssh2/packets/PacketSessionPtyResize.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketSessionStartShell.java (renamed from src/com/trilead/ssh2/packets/PacketSessionStartShell.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketSessionSubsystemRequest.java (renamed from src/com/trilead/ssh2/packets/PacketSessionSubsystemRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketSessionX11Request.java (renamed from src/com/trilead/ssh2/packets/PacketSessionX11Request.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthBanner.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthBanner.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthFailure.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthFailure.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthInfoRequest.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthInfoRequest.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthInfoResponse.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthInfoResponse.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestInteractive.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthRequestInteractive.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestNone.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthRequestNone.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestPassword.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthRequestPassword.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestPublicKey.java (renamed from src/com/trilead/ssh2/packets/PacketUserauthRequestPublicKey.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/Packets.java (renamed from src/com/trilead/ssh2/packets/Packets.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/TypesReader.java (renamed from src/com/trilead/ssh2/packets/TypesReader.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/packets/TypesWriter.java (renamed from src/com/trilead/ssh2/packets/TypesWriter.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/AttrTextHints.java (renamed from src/com/trilead/ssh2/sftp/AttrTextHints.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/AttribBits.java (renamed from src/com/trilead/ssh2/sftp/AttribBits.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/AttribFlags.java (renamed from src/com/trilead/ssh2/sftp/AttribFlags.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/AttribPermissions.java (renamed from src/com/trilead/ssh2/sftp/AttribPermissions.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/AttribTypes.java (renamed from src/com/trilead/ssh2/sftp/AttribTypes.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/ErrorCodes.java (renamed from src/com/trilead/ssh2/sftp/ErrorCodes.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/OpenFlags.java (renamed from src/com/trilead/ssh2/sftp/OpenFlags.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/sftp/Packet.java (renamed from src/com/trilead/ssh2/sftp/Packet.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/signature/DSASHA1Verify.java (renamed from src/com/trilead/ssh2/signature/DSASHA1Verify.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/signature/ECDSASHA2Verify.java (renamed from src/com/trilead/ssh2/signature/ECDSASHA2Verify.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/signature/RSASHA1Verify.java (renamed from src/com/trilead/ssh2/signature/RSASHA1Verify.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/ClientServerHello.java (renamed from src/com/trilead/ssh2/transport/ClientServerHello.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/KexManager.java (renamed from src/com/trilead/ssh2/transport/KexManager.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/KexParameters.java (renamed from src/com/trilead/ssh2/transport/KexParameters.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/KexState.java (renamed from src/com/trilead/ssh2/transport/KexState.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/MessageHandler.java (renamed from src/com/trilead/ssh2/transport/MessageHandler.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/NegotiateException.java (renamed from src/com/trilead/ssh2/transport/NegotiateException.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/NegotiatedParameters.java (renamed from src/com/trilead/ssh2/transport/NegotiatedParameters.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/TransportConnection.java (renamed from src/com/trilead/ssh2/transport/TransportConnection.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/transport/TransportManager.java (renamed from src/com/trilead/ssh2/transport/TransportManager.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/util/TimeoutService.java (renamed from src/com/trilead/ssh2/util/TimeoutService.java)0
-rw-r--r--app/src/main/java/com/trilead/ssh2/util/Tokenizer.java (renamed from src/com/trilead/ssh2/util/Tokenizer.java)0
-rw-r--r--app/src/main/java/de/mud/telnet/TelnetProtocolHandler.java (renamed from src/de/mud/telnet/TelnetProtocolHandler.java)0
-rw-r--r--app/src/main/java/de/mud/terminal/Precomposer.java (renamed from src/de/mud/terminal/Precomposer.java)0
-rw-r--r--app/src/main/java/de/mud/terminal/VDUBuffer.java (renamed from src/de/mud/terminal/VDUBuffer.java)0
-rw-r--r--app/src/main/java/de/mud/terminal/VDUDisplay.java (renamed from src/de/mud/terminal/VDUDisplay.java)0
-rw-r--r--app/src/main/java/de/mud/terminal/VDUInput.java (renamed from src/de/mud/terminal/VDUInput.java)0
-rw-r--r--app/src/main/java/de/mud/terminal/vt320.java (renamed from src/de/mud/terminal/vt320.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Authentication.java (renamed from src/net/sourceforge/jsocks/Authentication.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/AuthenticationNone.java (renamed from src/net/sourceforge/jsocks/AuthenticationNone.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Proxy.java (renamed from src/net/sourceforge/jsocks/Proxy.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/ProxyMessage.java (renamed from src/net/sourceforge/jsocks/ProxyMessage.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/ProxyServer.java (renamed from src/net/sourceforge/jsocks/ProxyServer.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Socks4Message.java (renamed from src/net/sourceforge/jsocks/Socks4Message.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Socks4Proxy.java (renamed from src/net/sourceforge/jsocks/Socks4Proxy.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Socks5DatagramSocket.java (renamed from src/net/sourceforge/jsocks/Socks5DatagramSocket.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Socks5Message.java (renamed from src/net/sourceforge/jsocks/Socks5Message.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/Socks5Proxy.java (renamed from src/net/sourceforge/jsocks/Socks5Proxy.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/SocksException.java (renamed from src/net/sourceforge/jsocks/SocksException.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/SocksServerSocket.java (renamed from src/net/sourceforge/jsocks/SocksServerSocket.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/SocksSocket.java (renamed from src/net/sourceforge/jsocks/SocksSocket.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/UDPEncapsulation.java (renamed from src/net/sourceforge/jsocks/UDPEncapsulation.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/UDPRelayServer.java (renamed from src/net/sourceforge/jsocks/UDPRelayServer.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/server/ServerAuthenticator.java (renamed from src/net/sourceforge/jsocks/server/ServerAuthenticator.java)0
-rw-r--r--app/src/main/java/net/sourceforge/jsocks/server/ServerAuthenticatorNone.java (renamed from src/net/sourceforge/jsocks/server/ServerAuthenticatorNone.java)0
-rw-r--r--app/src/main/java/org/apache/harmony/niochar/charset/additional/IBM437.java (renamed from src/org/apache/harmony/niochar/charset/additional/IBM437.java)0
-rw-r--r--app/src/main/java/org/connectbot/ActionBarWrapper.java (renamed from src/org/connectbot/ActionBarWrapper.java)6
-rw-r--r--app/src/main/java/org/connectbot/ColorsActivity.java (renamed from src/org/connectbot/ColorsActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/ConsoleActivity.java (renamed from src/org/connectbot/ConsoleActivity.java)16
-rw-r--r--app/src/main/java/org/connectbot/GeneratePubkeyActivity.java (renamed from src/org/connectbot/GeneratePubkeyActivity.java)10
-rw-r--r--app/src/main/java/org/connectbot/HelpActivity.java (renamed from src/org/connectbot/HelpActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/HelpTopicActivity.java (renamed from src/org/connectbot/HelpTopicActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/HostEditorActivity.java (renamed from src/org/connectbot/HostEditorActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/HostListActivity.java (renamed from src/org/connectbot/HostListActivity.java)2
-rw-r--r--app/src/main/java/org/connectbot/PortForwardListActivity.java (renamed from src/org/connectbot/PortForwardListActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/PubkeyListActivity.java (renamed from src/org/connectbot/PubkeyListActivity.java)2
-rw-r--r--app/src/main/java/org/connectbot/SettingsActivity.java (renamed from src/org/connectbot/SettingsActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/StrictModeSetup.java (renamed from src/org/connectbot/StrictModeSetup.java)4
-rw-r--r--app/src/main/java/org/connectbot/TerminalView.java (renamed from src/org/connectbot/TerminalView.java)0
-rw-r--r--app/src/main/java/org/connectbot/WizardActivity.java (renamed from src/org/connectbot/WizardActivity.java)0
-rw-r--r--app/src/main/java/org/connectbot/bean/AbstractBean.java (renamed from src/org/connectbot/bean/AbstractBean.java)0
-rw-r--r--app/src/main/java/org/connectbot/bean/HostBean.java (renamed from src/org/connectbot/bean/HostBean.java)0
-rw-r--r--app/src/main/java/org/connectbot/bean/PortForwardBean.java (renamed from src/org/connectbot/bean/PortForwardBean.java)0
-rw-r--r--app/src/main/java/org/connectbot/bean/PubkeyBean.java (renamed from src/org/connectbot/bean/PubkeyBean.java)0
-rw-r--r--app/src/main/java/org/connectbot/bean/SelectionArea.java (renamed from src/org/connectbot/bean/SelectionArea.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/BackupAgent.java (renamed from src/org/connectbot/service/BackupAgent.java)9
-rw-r--r--app/src/main/java/org/connectbot/service/BackupWrapper.java (renamed from src/org/connectbot/service/BackupWrapper.java)5
-rw-r--r--app/src/main/java/org/connectbot/service/BridgeDisconnectedListener.java (renamed from src/org/connectbot/service/BridgeDisconnectedListener.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/ConnectionNotifier.java (renamed from src/org/connectbot/service/ConnectionNotifier.java)2
-rw-r--r--app/src/main/java/org/connectbot/service/ConnectivityReceiver.java (renamed from src/org/connectbot/service/ConnectivityReceiver.java)4
-rw-r--r--app/src/main/java/org/connectbot/service/FontSizeChangedListener.java (renamed from src/org/connectbot/service/FontSizeChangedListener.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/KeyEventUtil.java (renamed from src/org/connectbot/service/KeyEventUtil.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/PromptHelper.java (renamed from src/org/connectbot/service/PromptHelper.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/Relay.java (renamed from src/org/connectbot/service/Relay.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/TerminalBridge.java (renamed from src/org/connectbot/service/TerminalBridge.java)0
-rw-r--r--app/src/main/java/org/connectbot/service/TerminalKeyListener.java (renamed from src/org/connectbot/service/TerminalKeyListener.java)8
-rw-r--r--app/src/main/java/org/connectbot/service/TerminalManager.java (renamed from src/org/connectbot/service/TerminalManager.java)0
-rw-r--r--app/src/main/java/org/connectbot/transport/AbsTransport.java (renamed from src/org/connectbot/transport/AbsTransport.java)0
-rw-r--r--app/src/main/java/org/connectbot/transport/Local.java (renamed from src/org/connectbot/transport/Local.java)0
-rw-r--r--app/src/main/java/org/connectbot/transport/SSH.java (renamed from src/org/connectbot/transport/SSH.java)2
-rw-r--r--app/src/main/java/org/connectbot/transport/Telnet.java (renamed from src/org/connectbot/transport/Telnet.java)0
-rw-r--r--app/src/main/java/org/connectbot/transport/TransportFactory.java (renamed from src/org/connectbot/transport/TransportFactory.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/Colors.java (renamed from src/org/connectbot/util/Colors.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/EastAsianWidth.java (renamed from src/org/connectbot/util/EastAsianWidth.java)2
-rw-r--r--app/src/main/java/org/connectbot/util/Encryptor.java (renamed from src/org/connectbot/util/Encryptor.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/EntropyDialog.java (renamed from src/org/connectbot/util/EntropyDialog.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/EntropyView.java (renamed from src/org/connectbot/util/EntropyView.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/HelpTopicView.java (renamed from src/org/connectbot/util/HelpTopicView.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/HostDatabase.java (renamed from src/org/connectbot/util/HostDatabase.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/OnDbWrittenListener.java (renamed from src/org/connectbot/util/OnDbWrittenListener.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/OnEntropyGatheredListener.java (renamed from src/org/connectbot/util/OnEntropyGatheredListener.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/PreferenceConstants.java (renamed from src/org/connectbot/util/PreferenceConstants.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/PubkeyDatabase.java (renamed from src/org/connectbot/util/PubkeyDatabase.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/PubkeyUtils.java (renamed from src/org/connectbot/util/PubkeyUtils.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/RobustSQLiteOpenHelper.java (renamed from src/org/connectbot/util/RobustSQLiteOpenHelper.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/UberColorPickerDialog.java (renamed from src/org/connectbot/util/UberColorPickerDialog.java)22
-rw-r--r--app/src/main/java/org/connectbot/util/VolumePreference.java (renamed from src/org/connectbot/util/VolumePreference.java)0
-rw-r--r--app/src/main/java/org/connectbot/util/XmlBuilder.java (renamed from src/org/connectbot/util/XmlBuilder.java)0
-rw-r--r--app/src/main/java/org/keyczar/jce/EcCore.java (renamed from src/org/keyczar/jce/EcCore.java)0
-rw-r--r--app/src/main/java/org/openintents/intents/FileManagerIntents.java (renamed from src/org/openintents/intents/FileManagerIntents.java)0
-rw-r--r--app/src/main/jni/com_google_ase_Exec.cpp (renamed from jni/Exec/com_google_ase_Exec.cpp)0
-rw-r--r--app/src/main/jni/com_google_ase_Exec.h (renamed from jni/Exec/com_google_ase_Exec.h)0
-rw-r--r--app/src/main/res/anim/fade_out_delayed.xml (renamed from res/anim/fade_out_delayed.xml)0
-rw-r--r--app/src/main/res/anim/fade_stay_hidden.xml (renamed from res/anim/fade_stay_hidden.xml)0
-rw-r--r--app/src/main/res/anim/keyboard_fade_in.xml (renamed from res/anim/keyboard_fade_in.xml)0
-rw-r--r--app/src/main/res/anim/keyboard_fade_out.xml (renamed from res/anim/keyboard_fade_out.xml)0
-rw-r--r--app/src/main/res/anim/slide_left_in.xml (renamed from res/anim/slide_left_in.xml)0
-rw-r--r--app/src/main/res/anim/slide_left_out.xml (renamed from res/anim/slide_left_out.xml)0
-rw-r--r--app/src/main/res/anim/slide_right_in.xml (renamed from res/anim/slide_right_in.xml)0
-rw-r--r--app/src/main/res/anim/slide_right_out.xml (renamed from res/anim/slide_right_out.xml)0
-rw-r--r--app/src/main/res/color/blue.xml (renamed from res/color/blue.xml)0
-rw-r--r--app/src/main/res/color/green.xml (renamed from res/color/green.xml)0
-rw-r--r--app/src/main/res/color/red.xml (renamed from res/color/red.xml)0
-rw-r--r--app/src/main/res/drawable-hdpi/icon.png (renamed from res/drawable-hdpi/icon.png)bin6394 -> 6394 bytes
-rw-r--r--app/src/main/res/drawable-hdpi/notification_icon.png (renamed from res/drawable-hdpi/notification_icon.png)bin719 -> 719 bytes
-rw-r--r--app/src/main/res/drawable-mdpi-v6/icon.png (renamed from res/drawable-mdpi-v6/icon.png)bin3525 -> 3525 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/icon.png (renamed from res/drawable-mdpi/icon.png)bin5657 -> 5657 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/notification_icon.png (renamed from res/drawable-mdpi/notification_icon.png)bin397 -> 397 bytes
-rw-r--r--app/src/main/res/drawable/button_ctrl.png (renamed from res/drawable/button_ctrl.png)bin3254 -> 3254 bytes
-rw-r--r--app/src/main/res/drawable/button_esc.png (renamed from res/drawable/button_esc.png)bin3638 -> 3638 bytes
-rw-r--r--app/src/main/res/drawable/button_keyboard.png (renamed from res/drawable/button_keyboard.png)bin3326 -> 3326 bytes
-rw-r--r--app/src/main/res/drawable/connected.xml (renamed from res/drawable/connected.xml)0
-rw-r--r--app/src/main/res/drawable/highlight_disabled_pressed.9.png (renamed from res/drawable/highlight_disabled_pressed.9.png)bin898 -> 898 bytes
-rw-r--r--app/src/main/res/drawable/ic_btn_back.png (renamed from res/drawable/ic_btn_back.png)bin861 -> 861 bytes
-rw-r--r--app/src/main/res/drawable/ic_btn_next.png (renamed from res/drawable/ic_btn_next.png)bin729 -> 729 bytes
-rw-r--r--app/src/main/res/drawable/icon_older.png (renamed from res/drawable/icon_older.png)bin5088 -> 5088 bytes
-rw-r--r--app/src/main/res/drawable/pubkey.xml (renamed from res/drawable/pubkey.xml)0
-rw-r--r--app/src/main/res/drawable/pubkey_locked.png (renamed from res/drawable/pubkey_locked.png)bin1487 -> 1487 bytes
-rw-r--r--app/src/main/res/drawable/pubkey_unlocked.png (renamed from res/drawable/pubkey_unlocked.png)bin1743 -> 1743 bytes
-rw-r--r--app/src/main/res/layout-land/item_host.xml (renamed from res/layout-land/item_host.xml)0
-rw-r--r--app/src/main/res/layout-port/item_host.xml (renamed from res/layout-port/item_host.xml)0
-rw-r--r--app/src/main/res/layout/act_colors.xml (renamed from res/layout/act_colors.xml)0
-rw-r--r--app/src/main/res/layout/act_console.xml (renamed from res/layout/act_console.xml)0
-rw-r--r--app/src/main/res/layout/act_generatepubkey.xml (renamed from res/layout/act_generatepubkey.xml)0
-rw-r--r--app/src/main/res/layout/act_help.xml (renamed from res/layout/act_help.xml)0
-rw-r--r--app/src/main/res/layout/act_help_topic.xml (renamed from res/layout/act_help_topic.xml)0
-rw-r--r--app/src/main/res/layout/act_hostlist.xml (renamed from res/layout/act_hostlist.xml)0
-rw-r--r--app/src/main/res/layout/act_portforwardlist.xml (renamed from res/layout/act_portforwardlist.xml)0
-rw-r--r--app/src/main/res/layout/act_pubkeylist.xml (renamed from res/layout/act_pubkeylist.xml)0
-rw-r--r--app/src/main/res/layout/act_wizard.xml (renamed from res/layout/act_wizard.xml)0
-rw-r--r--app/src/main/res/layout/dia_changepassword.xml (renamed from res/layout/dia_changepassword.xml)0
-rw-r--r--app/src/main/res/layout/dia_gatherentropy.xml (renamed from res/layout/dia_gatherentropy.xml)0
-rw-r--r--app/src/main/res/layout/dia_password.xml (renamed from res/layout/dia_password.xml)0
-rw-r--r--app/src/main/res/layout/dia_portforward.xml (renamed from res/layout/dia_portforward.xml)0
-rw-r--r--app/src/main/res/layout/dia_resize.xml (renamed from res/layout/dia_resize.xml)0
-rw-r--r--app/src/main/res/layout/item_portforward.xml (renamed from res/layout/item_portforward.xml)0
-rw-r--r--app/src/main/res/layout/item_pubkey.xml (renamed from res/layout/item_pubkey.xml)0
-rw-r--r--app/src/main/res/layout/item_terminal.xml (renamed from res/layout/item_terminal.xml)0
-rw-r--r--app/src/main/res/layout/wiz_eula.xml (renamed from res/layout/wiz_eula.xml)0
-rw-r--r--app/src/main/res/raw/bell.ogg (renamed from res/raw/bell.ogg)bin5090 -> 5090 bytes
-rw-r--r--app/src/main/res/values-af/strings.xml (renamed from res/values-af/strings.xml)2
-rw-r--r--app/src/main/res/values-ar/strings.xml (renamed from res/values-ar/strings.xml)2
-rw-r--r--app/src/main/res/values-be/strings.xml (renamed from res/values-be/strings.xml)2
-rw-r--r--app/src/main/res/values-bg/strings.xml (renamed from res/values-bg/strings.xml)2
-rw-r--r--app/src/main/res/values-ca/strings.xml (renamed from res/values-ca/strings.xml)2
-rw-r--r--app/src/main/res/values-cs/strings.xml (renamed from res/values-cs/strings.xml)2
-rw-r--r--app/src/main/res/values-da/strings.xml (renamed from res/values-da/strings.xml)2
-rw-r--r--app/src/main/res/values-de/strings.xml (renamed from res/values-de/strings.xml)2
-rw-r--r--app/src/main/res/values-el/strings.xml (renamed from res/values-el/strings.xml)2
-rw-r--r--app/src/main/res/values-en-rCA/strings.xml (renamed from res/values-en-rCA/strings.xml)2
-rw-r--r--app/src/main/res/values-en-rGB/strings.xml (renamed from res/values-en-rGB/strings.xml)0
-rw-r--r--app/src/main/res/values-es/strings.xml (renamed from res/values-es/strings.xml)2
-rw-r--r--app/src/main/res/values-eu/strings.xml (renamed from res/values-eu/strings.xml)2
-rw-r--r--app/src/main/res/values-fa/strings.xml2
-rw-r--r--app/src/main/res/values-fi/strings.xml (renamed from res/values-fi/strings.xml)2
-rw-r--r--app/src/main/res/values-fr/strings.xml (renamed from res/values-fr/strings.xml)2
-rw-r--r--app/src/main/res/values-gl/strings.xml (renamed from res/values-gl/strings.xml)2
-rw-r--r--app/src/main/res/values-he/strings.xml (renamed from res/values-he/strings.xml)2
-rw-r--r--app/src/main/res/values-hr/strings.xml (renamed from res/values-hr/strings.xml)2
-rw-r--r--app/src/main/res/values-hu/strings.xml (renamed from res/values-hu/strings.xml)2
-rw-r--r--app/src/main/res/values-id/strings.xml (renamed from res/values-id/strings.xml)2
-rw-r--r--app/src/main/res/values-is/strings.xml (renamed from res/values-is/strings.xml)2
-rw-r--r--app/src/main/res/values-it/strings.xml (renamed from res/values-it/strings.xml)2
-rw-r--r--app/src/main/res/values-ja/strings.xml (renamed from res/values-ja/strings.xml)2
-rw-r--r--app/src/main/res/values-ka/strings.xml (renamed from res/values-ka/strings.xml)2
-rw-r--r--app/src/main/res/values-ko/strings.xml (renamed from res/values-ko/strings.xml)2
-rw-r--r--app/src/main/res/values-lt/strings.xml (renamed from res/values-lt/strings.xml)2
-rw-r--r--app/src/main/res/values-lv/strings.xml2
-rw-r--r--app/src/main/res/values-mk/strings.xml (renamed from res/values-mk/strings.xml)2
-rw-r--r--app/src/main/res/values-nb/strings.xml (renamed from res/values-nb/strings.xml)2
-rw-r--r--app/src/main/res/values-nl/strings.xml (renamed from res/values-nl/strings.xml)2
-rw-r--r--app/src/main/res/values-oc/strings.xml (renamed from res/values-oc/strings.xml)2
-rw-r--r--app/src/main/res/values-pl/strings.xml (renamed from res/values-pl/strings.xml)2
-rw-r--r--app/src/main/res/values-pt-rBR/strings.xml (renamed from res/values-pt-rBR/strings.xml)2
-rw-r--r--app/src/main/res/values-pt/strings.xml (renamed from res/values-pt/strings.xml)2
-rw-r--r--app/src/main/res/values-ro/strings.xml (renamed from res/values-ro/strings.xml)2
-rw-r--r--app/src/main/res/values-ru/strings.xml (renamed from res/values-ru/strings.xml)2
-rw-r--r--app/src/main/res/values-sk/strings.xml (renamed from res/values-sk/strings.xml)2
-rw-r--r--app/src/main/res/values-sl/strings.xml (renamed from res/values-sl/strings.xml)2
-rw-r--r--app/src/main/res/values-sv/strings.xml (renamed from res/values-sv/strings.xml)2
-rw-r--r--app/src/main/res/values-tr/strings.xml (renamed from res/values-tr/strings.xml)2
-rw-r--r--app/src/main/res/values-uk/strings.xml (renamed from res/values-uk/strings.xml)2
-rw-r--r--app/src/main/res/values-v11/styles.xml (renamed from res/values-v11/styles.xml)0
-rw-r--r--app/src/main/res/values-v14/styles.xml (renamed from res/values-v14/styles.xml)0
-rw-r--r--app/src/main/res/values-vi/strings.xml (renamed from res/values-vi/strings.xml)2
-rw-r--r--app/src/main/res/values-zh-rCN/strings.xml (renamed from res/values-zh-rCN/strings.xml)2
-rw-r--r--app/src/main/res/values-zh-rHK/strings.xml2
-rw-r--r--app/src/main/res/values-zh-rTW/strings.xml (renamed from res/values-zh-rTW/strings.xml)2
-rw-r--r--app/src/main/res/values/arrays.xml (renamed from res/values/arrays.xml)0
-rw-r--r--app/src/main/res/values/notrans.xml (renamed from res/values/notrans.xml)0
-rw-r--r--app/src/main/res/values/strings.xml (renamed from res/values/strings.xml)0
-rw-r--r--app/src/main/res/values/styles.xml (renamed from res/values/styles.xml)0
-rw-r--r--app/src/main/res/values/version.xml (renamed from res/values/version.xml)0
-rw-r--r--app/src/main/res/xml/host_prefs.xml (renamed from res/xml/host_prefs.xml)0
-rw-r--r--app/src/main/res/xml/preferences.xml (renamed from res/xml/preferences.xml)0
-rw-r--r--build.gradle32
-rw-r--r--build.xml76
-rw-r--r--config/quality.gradle16
-rw-r--r--config/quality/checkstyle/checkstyle.xml14
-rw-r--r--connectbot.iml19
-rw-r--r--connectbot.sublime-project36
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin0 -> 49896 bytes
-rw-r--r--gradle/wrapper/gradle-wrapper.properties6
-rwxr-xr-xgradlew164
-rw-r--r--gradlew.bat90
-rw-r--r--jni/Android.mk1
-rw-r--r--jni/Application.mk2
-rw-r--r--jni/Exec/Android.mk10
-rwxr-xr-xlibs/armeabi/libcom_google_ase_Exec.sobin12688 -> 0 bytes
-rwxr-xr-xlibs/x86/libcom_google_ase_Exec.sobin6168 -> 0 bytes
-rw-r--r--project.properties14
-rw-r--r--res/values-fa/strings.xml2
-rw-r--r--res/values-lv/strings.xml2
-rw-r--r--res/values-zh-rHK/strings.xml2
-rw-r--r--robolectric-tests/.gitignore1
-rw-r--r--robolectric-tests/build.gradle48
-rw-r--r--robolectric-tests/robolectric-tests.iml76
-rw-r--r--robolectric-tests/src/test/java/org/connectbot/HostBeanTest.java (renamed from tests/src/org/connectbot/HostBeanTest.java)46
-rw-r--r--robolectric-tests/src/test/java/org/connectbot/SelectionAreaTest.java (renamed from tests/src/org/connectbot/SelectionAreaTest.java)23
-rw-r--r--robolectric-tests/src/test/java/org/connectbot/mock/BeanAssertions.java (renamed from tests/src/org/connectbot/mock/BeanTestCase.java)8
-rw-r--r--robolectric-tests/src/test/java/org/connectbot/mock/NullOutputStream.java (renamed from tests/src/org/connectbot/mock/NullOutputStream.java)0
-rw-r--r--robolectric-tests/src/test/java/org/connectbot/mock/NullTransport.java (renamed from tests/src/org/connectbot/mock/NullTransport.java)0
-rw-r--r--robolectric-tests/src/test/java/org/connectbot/util/PubkeyUtilsTest.java (renamed from tests/src/org/connectbot/util/PubkeyUtilsTest.java)65
-rw-r--r--settings.gradle1
-rw-r--r--tests/.classpath9
-rw-r--r--tests/.gitignore4
-rw-r--r--tests/.project33
-rw-r--r--tests/.settings/org.eclipse.jdt.core.prefs291
-rw-r--r--tests/.settings/org.eclipse.jdt.ui.prefs113
-rw-r--r--tests/AndroidManifest.xml21
-rw-r--r--tests/ant.properties21
-rw-r--r--tests/build.xml138
-rw-r--r--tests/proguard.cfg40
-rw-r--r--tests/project.properties13
-rw-r--r--tests/src/org/connectbot/HostListActivityTest.java47
-rw-r--r--tests/src/org/connectbot/SettingsActivityTest.java47
-rw-r--r--tests/src/org/connectbot/TerminalBridgeTest.java105
389 files changed, 1132 insertions, 1184 deletions
diff --git a/.classpath b/.classpath
deleted file mode 100644
index e69f104..0000000
--- a/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
- <classpathentry kind="src" path="gen"/>
- <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
- <classpathentry kind="output" path="bin/classes"/>
-</classpath>
diff --git a/.gitignore b/.gitignore
index 485e248..bedf6b7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,23 @@
-bin
-gen
+# generated files
+bin/
+gen/
+
+# translation artifacts
launchpad-*.tar.gz
+
+# local config files
local.properties
+
+# working files
*~
+
+# OS X sucks
+.DS_Store
+
+# SublimeText working files
+*.sublime-project
*.sublime-workspace
+
+# Android Studio
+.gradle/
+build/
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..8e587e7
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,17 @@
+*.xml
+
+!/codeStyleSettings.xml
+!/copyright/*.xml
+!/fileColors.xml
+!/encodings.xml
+!/gradle.xml
+!/runConfigurations/*.xml
+
+!/inspectionProfiles/*.xml
+/inspectionProfiles/profiles_settings.xml
+
+!/scopes/*.xml
+/scopes/scope_settings.xml
+
+!/templateLanguages.xml
+!/vcs.xml
diff --git a/.idea/.name b/.idea/.name
new file mode 100644
index 0000000..b7626a2
--- /dev/null
+++ b/.idea/.name
@@ -0,0 +1 @@
+connectbot \ No newline at end of file
diff --git a/.idea/codeStyleSettings.xml b/.idea/codeStyleSettings.xml
new file mode 100644
index 0000000..ef36eab
--- /dev/null
+++ b/.idea/codeStyleSettings.xml
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ProjectCodeStyleSettingsManager">
+ <option name="PER_PROJECT_SETTINGS">
+ <value>
+ <option name="OTHER_INDENT_OPTIONS">
+ <value>
+ <option name="INDENT_SIZE" value="8" />
+ <option name="CONTINUATION_INDENT_SIZE" value="16" />
+ <option name="TAB_SIZE" value="8" />
+ <option name="USE_TAB_CHARACTER" value="true" />
+ <option name="SMART_TABS" value="false" />
+ <option name="LABEL_INDENT_SIZE" value="0" />
+ <option name="LABEL_INDENT_ABSOLUTE" value="false" />
+ <option name="USE_RELATIVE_INDENTS" value="false" />
+ </value>
+ </option>
+ <option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="99" />
+ <option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="99" />
+ <option name="PACKAGES_TO_USE_IMPORT_ON_DEMAND">
+ <value />
+ </option>
+ <option name="IMPORT_LAYOUT_TABLE">
+ <value>
+ <package name="android" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="com" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="junit" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="net" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="org" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="java" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="javax" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="" withSubpackages="true" static="false" />
+ <emptyLine />
+ <package name="" withSubpackages="true" static="true" />
+ <emptyLine />
+ </value>
+ </option>
+ <option name="RIGHT_MARGIN" value="100" />
+ <AndroidXmlCodeStyleSettings>
+ <option name="USE_CUSTOM_SETTINGS" value="true" />
+ </AndroidXmlCodeStyleSettings>
+ <XML>
+ <option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" />
+ </XML>
+ <codeStyleSettings language="Groovy">
+ <indentOptions>
+ <option name="INDENT_SIZE" value="8" />
+ <option name="CONTINUATION_INDENT_SIZE" value="16" />
+ <option name="TAB_SIZE" value="8" />
+ <option name="USE_TAB_CHARACTER" value="true" />
+ </indentOptions>
+ </codeStyleSettings>
+ <codeStyleSettings language="HTML">
+ <indentOptions>
+ <option name="INDENT_SIZE" value="8" />
+ <option name="CONTINUATION_INDENT_SIZE" value="16" />
+ <option name="TAB_SIZE" value="8" />
+ <option name="USE_TAB_CHARACTER" value="true" />
+ </indentOptions>
+ </codeStyleSettings>
+ <codeStyleSettings language="JAVA">
+ <indentOptions>
+ <option name="INDENT_SIZE" value="8" />
+ <option name="CONTINUATION_INDENT_SIZE" value="16" />
+ <option name="TAB_SIZE" value="8" />
+ <option name="USE_TAB_CHARACTER" value="true" />
+ </indentOptions>
+ </codeStyleSettings>
+ <codeStyleSettings language="XML">
+ <option name="FORCE_REARRANGE_MODE" value="1" />
+ <indentOptions>
+ <option name="INDENT_SIZE" value="8" />
+ <option name="CONTINUATION_INDENT_SIZE" value="16" />
+ <option name="TAB_SIZE" value="8" />
+ <option name="USE_TAB_CHARACTER" value="true" />
+ </indentOptions>
+ <arrangement>
+ <rules>
+ <rule>
+ <match>
+ <AND>
+ <NAME>xmlns:android</NAME>
+ <XML_NAMESPACE>Namespace:</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>xmlns:.*</NAME>
+ <XML_NAMESPACE>Namespace:</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:id</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:name</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>name</NAME>
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>style</NAME>
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*</NAME>
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:layout_width</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:layout_height</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:layout_.*</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:width</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:height</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*</NAME>
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*</NAME>
+ <XML_NAMESPACE>.*</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ </rules>
+ </arrangement>
+ </codeStyleSettings>
+ </value>
+ </option>
+ <option name="USE_PER_PROJECT_SETTINGS" value="true" />
+ </component>
+</project>
+
diff --git a/.idea/copyright/Apache_ConnectBot.xml b/.idea/copyright/Apache_ConnectBot.xml
new file mode 100644
index 0000000..6bce32d
--- /dev/null
+++ b/.idea/copyright/Apache_ConnectBot.xml
@@ -0,0 +1,9 @@
+<component name="CopyrightManager">
+ <copyright>
+ <option name="notice" value="ConnectBot: simple, powerful, open-source SSH client for Android&#10;Copyright &amp;#36;today.year Kenny Root, Jeffrey Sharkey&#10;&#10;Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#10;you may not use this file except in compliance with the License.&#10;You may obtain a copy of the License at&#10;&#10; http://www.apache.org/licenses/LICENSE-2.0&#10;&#10;Unless required by applicable law or agreed to in writing, software&#10;distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#10;WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#10;See the License for the specific language governing permissions and&#10;limitations under the License." />
+ <option name="keyword" value="Copyright" />
+ <option name="allowReplaceKeyword" value="" />
+ <option name="myName" value="Apache ConnectBot" />
+ <option name="myLocal" value="true" />
+ </copyright>
+</component> \ No newline at end of file
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
new file mode 100644
index 0000000..0bcdd02
--- /dev/null
+++ b/.idea/copyright/profiles_settings.xml
@@ -0,0 +1,7 @@
+<component name="CopyrightManager">
+ <settings default="Apache ConnectBot">
+ <module2copyright>
+ <element module="ConnectBot" copyright="Apache ConnectBot" />
+ </module2copyright>
+ </settings>
+</component> \ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000..e206d70
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
+</project>
+
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
new file mode 100644
index 0000000..0228264
--- /dev/null
+++ b/.idea/gradle.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="GradleSettings">
+ <option name="linkedExternalProjectsSettings">
+ <GradleProjectSettings>
+ <option name="distributionType" value="DEFAULT_WRAPPED" />
+ <option name="externalProjectPath" value="$PROJECT_DIR$" />
+ <option name="modules">
+ <set>
+ <option value="$PROJECT_DIR$" />
+ <option value="$PROJECT_DIR$/app" />
+ <option value="$PROJECT_DIR$/robolectric-tests" />
+ </set>
+ </option>
+ </GradleProjectSettings>
+ </option>
+ </component>
+</project>
+
diff --git a/.idea/scopes/ConnectBot.xml b/.idea/scopes/ConnectBot.xml
new file mode 100644
index 0000000..4cd2160
--- /dev/null
+++ b/.idea/scopes/ConnectBot.xml
@@ -0,0 +1,3 @@
+<component name="DependencyValidationManager">
+ <scope name="ConnectBot" pattern="src[app]:org.connectbot*..*||src[app]:values*..*||src[app]:drawable*..*||src[app]:layout*..*||src[app]:xml*..*||src[app]:raw*..*||src[app]:anim*..*||src[app]:color*..*" />
+</component> \ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..def6a6a
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="VcsDirectoryMappings">
+ <mapping directory="" vcs="" />
+ </component>
+</project>
+
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..224b6a2
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,20 @@
+language: android
+jdk: openjdk7
+
+before_install:
+ # Required libs for Android build tools
+ - sudo apt-get update
+ - sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch
+ # newest Android NDK
+ - if [ `uname -m` = x86_64 ]; then wget https://dl.google.com/android/ndk/android-ndk32-r10b-linux-x86_64.tar.bz2 -O ndk.tb2; else wget https://dl.google.com/android/ndk/android-ndk32-r10b-linux-x86.tar.bz2 -O ndk.tb2; fi
+ - tar -jxf ndk.tb2
+ - echo "ndk.dir=`pwd`/android-ndk-r10b" >> local.properties
+
+android:
+ components:
+ - build-tools-19.1.0
+ - extra-android-support
+ license:
+ - '.+'
+
+script: ./gradlew build check test
diff --git a/ant.properties b/ant.properties
deleted file mode 100644
index 95af6f4..0000000
--- a/ant.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-# This file is used to override default values used by the Ant build system.
-#
-# This file must be checked in Version Control Systems, as it is
-# integral to the build system of your project.
-
-# This file is only used by the Ant script.
-
-# You can use this to override default values such as
-# 'source.dir' for the location of your java source folder and
-# 'out.dir' for the location of your output folder.
-
-# You can also use it define how the release builds are signed by declaring
-# the following properties:
-# 'key.store' for the location of your keystore and
-# 'key.alias' for the name of the key to use.
-# The password will be asked during the build when you use the 'release' target.
-
-source.dir=src
-out.dir=bin
diff --git a/app/app.iml b/app/app.iml
new file mode 100644
index 0000000..0b6a8a6
--- /dev/null
+++ b/app/app.iml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="connectbot" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
+ <component name="FacetManager">
+ <facet type="android-gradle" name="Android-Gradle">
+ <configuration>
+ <option name="GRADLE_PROJECT_PATH" value=":app" />
+ </configuration>
+ </facet>
+ <facet type="android" name="Android">
+ <configuration>
+ <option name="SELECTED_BUILD_VARIANT" value="debug" />
+ <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
+ <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
+ <option name="ASSEMBLE_TEST_TASK_NAME" value="assembleDebugTest" />
+ <option name="SOURCE_GEN_TASK_NAME" value="generateDebugSources" />
+ <option name="TEST_SOURCE_GEN_TASK_NAME" value="generateDebugTestSources" />
+ <option name="ALLOW_USER_CONFIGURATION" value="false" />
+ <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
+ <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
+ <option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />
+ <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
+ </configuration>
+ </facet>
+ </component>
+ <component name="NewModuleRootManager" inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/build/intermediates/classes/debug" />
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/debug" isTestSource="false" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/debug" isTestSource="false" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/test/debug" isTestSource="true" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/test/debug" isTestSource="true" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/test/debug" isTestSource="true" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/test/debug" isTestSource="true" generated="true" />
+ <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/test/debug" type="java-test-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
+ <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/coverage-instrumented-classes" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex-cache" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jacoco" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaResources" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/libs" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/ndk" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
+ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
+ <excludeFolder url="file://$MODULE_DIR$/build/outputs" />
+ <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
+ </content>
+ <orderEntry type="jdk" jdkName="Android API 20 Platform" jdkType="Android SDK" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
+
diff --git a/app/build.gradle b/app/build.gradle
new file mode 100644
index 0000000..e55ca40
--- /dev/null
+++ b/app/build.gradle
@@ -0,0 +1,57 @@
+apply plugin: 'android-sdk-manager'
+apply plugin: 'com.android.application'
+apply from: '../config/quality.gradle'
+
+android {
+ compileSdkVersion 20
+ buildToolsVersion "20.0.0"
+
+ defaultConfig {
+ applicationId "org.connectbot"
+ minSdkVersion 4
+ targetSdkVersion 15
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_5
+ targetCompatibility JavaVersion.VERSION_1_5
+ }
+
+ ndk {
+ moduleName "com_google_ase_Exec"
+ ldLibs "log"
+ }
+
+ lintOptions {
+ abortOnError false
+ lintConfig file('lint.xml')
+ }
+
+ testApplicationId "org.connectbot.tests"
+ testInstrumentationRunner "android.test.InstrumentationTestRunner"
+ }
+
+ signingConfigs {
+ release
+ }
+
+ buildTypes {
+ release {
+ runProguard true
+ proguardFiles 'proguard.cfg'
+
+ if (project.hasProperty('keystorePassword')) {
+ signingConfig signingConfigs.release
+ }
+ }
+
+ debug {
+ applicationIdSuffix ".debug"
+ }
+ }
+}
+
+if (project.hasProperty('keystorePassword')) {
+ android.signingConfigs.release.storeFile file(keystoreFile)
+ android.signingConfigs.release.storePassword keystorePassword
+ android.signingConfigs.release.keyAlias keystoreAlias
+ android.signingConfigs.release.keyPassword keystorePassword
+}
diff --git a/app/lint.xml b/app/lint.xml
new file mode 100644
index 0000000..db997a5
--- /dev/null
+++ b/app/lint.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<lint>
+ <issue id="MissingTranslation" severity="ignore" />
+</lint>
diff --git a/proguard.cfg b/app/proguard.cfg
index 28ff286..28ff286 100644
--- a/proguard.cfg
+++ b/app/proguard.cfg
diff --git a/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 30b3ad0..30b3ad0 100644
--- a/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
diff --git a/assets/help/Hints.html b/app/src/main/assets/help/Hints.html
index 37583db..37583db 100644
--- a/assets/help/Hints.html
+++ b/app/src/main/assets/help/Hints.html
diff --git a/assets/help/PhysicalKeyboard.html b/app/src/main/assets/help/PhysicalKeyboard.html
index 4ff3753..4ff3753 100644
--- a/assets/help/PhysicalKeyboard.html
+++ b/app/src/main/assets/help/PhysicalKeyboard.html
diff --git a/assets/help/ScreenGestures.html b/app/src/main/assets/help/ScreenGestures.html
index 9332821..9332821 100644
--- a/assets/help/ScreenGestures.html
+++ b/app/src/main/assets/help/ScreenGestures.html
diff --git a/assets/help/VirtualKeyboard.html b/app/src/main/assets/help/VirtualKeyboard.html
index 9788161..9788161 100644
--- a/assets/help/VirtualKeyboard.html
+++ b/app/src/main/assets/help/VirtualKeyboard.html
diff --git a/src/com/google/ase/Exec.java b/app/src/main/java/com/google/ase/Exec.java
index 016fdf3..016fdf3 100644
--- a/src/com/google/ase/Exec.java
+++ b/app/src/main/java/com/google/ase/Exec.java
diff --git a/src/com/jcraft/jzlib/Adler32.java b/app/src/main/java/com/jcraft/jzlib/Adler32.java
index d8b6ef8..d8b6ef8 100644
--- a/src/com/jcraft/jzlib/Adler32.java
+++ b/app/src/main/java/com/jcraft/jzlib/Adler32.java
diff --git a/src/com/jcraft/jzlib/Deflate.java b/app/src/main/java/com/jcraft/jzlib/Deflate.java
index 9978802..9978802 100644
--- a/src/com/jcraft/jzlib/Deflate.java
+++ b/app/src/main/java/com/jcraft/jzlib/Deflate.java
diff --git a/src/com/jcraft/jzlib/InfBlocks.java b/app/src/main/java/com/jcraft/jzlib/InfBlocks.java
index f6997fc..f6997fc 100644
--- a/src/com/jcraft/jzlib/InfBlocks.java
+++ b/app/src/main/java/com/jcraft/jzlib/InfBlocks.java
diff --git a/src/com/jcraft/jzlib/InfCodes.java b/app/src/main/java/com/jcraft/jzlib/InfCodes.java
index c768fb1..c768fb1 100644
--- a/src/com/jcraft/jzlib/InfCodes.java
+++ b/app/src/main/java/com/jcraft/jzlib/InfCodes.java
diff --git a/src/com/jcraft/jzlib/InfTree.java b/app/src/main/java/com/jcraft/jzlib/InfTree.java
index cbca436..cbca436 100644
--- a/src/com/jcraft/jzlib/InfTree.java
+++ b/app/src/main/java/com/jcraft/jzlib/InfTree.java
diff --git a/src/com/jcraft/jzlib/Inflate.java b/app/src/main/java/com/jcraft/jzlib/Inflate.java
index 30310f6..30310f6 100644
--- a/src/com/jcraft/jzlib/Inflate.java
+++ b/app/src/main/java/com/jcraft/jzlib/Inflate.java
diff --git a/src/com/jcraft/jzlib/JZlib.java b/app/src/main/java/com/jcraft/jzlib/JZlib.java
index b84d7a1..b84d7a1 100644
--- a/src/com/jcraft/jzlib/JZlib.java
+++ b/app/src/main/java/com/jcraft/jzlib/JZlib.java
diff --git a/src/com/jcraft/jzlib/StaticTree.java b/app/src/main/java/com/jcraft/jzlib/StaticTree.java
index 0f7f577..0f7f577 100644
--- a/src/com/jcraft/jzlib/StaticTree.java
+++ b/app/src/main/java/com/jcraft/jzlib/StaticTree.java
diff --git a/src/com/jcraft/jzlib/Tree.java b/app/src/main/java/com/jcraft/jzlib/Tree.java
index 8103897..8103897 100644
--- a/src/com/jcraft/jzlib/Tree.java
+++ b/app/src/main/java/com/jcraft/jzlib/Tree.java
diff --git a/src/com/jcraft/jzlib/ZInputStream.java b/app/src/main/java/com/jcraft/jzlib/ZInputStream.java
index 3f97c44..3f97c44 100644
--- a/src/com/jcraft/jzlib/ZInputStream.java
+++ b/app/src/main/java/com/jcraft/jzlib/ZInputStream.java
diff --git a/src/com/jcraft/jzlib/ZOutputStream.java b/app/src/main/java/com/jcraft/jzlib/ZOutputStream.java
index afee65b..afee65b 100644
--- a/src/com/jcraft/jzlib/ZOutputStream.java
+++ b/app/src/main/java/com/jcraft/jzlib/ZOutputStream.java
diff --git a/src/com/jcraft/jzlib/ZStream.java b/app/src/main/java/com/jcraft/jzlib/ZStream.java
index 334475e..334475e 100644
--- a/src/com/jcraft/jzlib/ZStream.java
+++ b/app/src/main/java/com/jcraft/jzlib/ZStream.java
diff --git a/src/com/jcraft/jzlib/ZStreamException.java b/app/src/main/java/com/jcraft/jzlib/ZStreamException.java
index 308bb8a..308bb8a 100644
--- a/src/com/jcraft/jzlib/ZStreamException.java
+++ b/app/src/main/java/com/jcraft/jzlib/ZStreamException.java
diff --git a/src/com/trilead/ssh2/AuthAgentCallback.java b/app/src/main/java/com/trilead/ssh2/AuthAgentCallback.java
index 7fe270b..7fe270b 100644
--- a/src/com/trilead/ssh2/AuthAgentCallback.java
+++ b/app/src/main/java/com/trilead/ssh2/AuthAgentCallback.java
diff --git a/src/com/trilead/ssh2/ChannelCondition.java b/app/src/main/java/com/trilead/ssh2/ChannelCondition.java
index df1ad50..df1ad50 100644
--- a/src/com/trilead/ssh2/ChannelCondition.java
+++ b/app/src/main/java/com/trilead/ssh2/ChannelCondition.java
diff --git a/src/com/trilead/ssh2/Connection.java b/app/src/main/java/com/trilead/ssh2/Connection.java
index 163fdb5..163fdb5 100644
--- a/src/com/trilead/ssh2/Connection.java
+++ b/app/src/main/java/com/trilead/ssh2/Connection.java
diff --git a/src/com/trilead/ssh2/ConnectionInfo.java b/app/src/main/java/com/trilead/ssh2/ConnectionInfo.java
index b0ddbcf..b0ddbcf 100644
--- a/src/com/trilead/ssh2/ConnectionInfo.java
+++ b/app/src/main/java/com/trilead/ssh2/ConnectionInfo.java
diff --git a/src/com/trilead/ssh2/ConnectionMonitor.java b/app/src/main/java/com/trilead/ssh2/ConnectionMonitor.java
index 2f96d25..2f96d25 100644
--- a/src/com/trilead/ssh2/ConnectionMonitor.java
+++ b/app/src/main/java/com/trilead/ssh2/ConnectionMonitor.java
diff --git a/src/com/trilead/ssh2/DHGexParameters.java b/app/src/main/java/com/trilead/ssh2/DHGexParameters.java
index a2945ee..a2945ee 100644
--- a/src/com/trilead/ssh2/DHGexParameters.java
+++ b/app/src/main/java/com/trilead/ssh2/DHGexParameters.java
diff --git a/src/com/trilead/ssh2/DebugLogger.java b/app/src/main/java/com/trilead/ssh2/DebugLogger.java
index adf2c8e..adf2c8e 100644
--- a/src/com/trilead/ssh2/DebugLogger.java
+++ b/app/src/main/java/com/trilead/ssh2/DebugLogger.java
diff --git a/src/com/trilead/ssh2/DynamicPortForwarder.java b/app/src/main/java/com/trilead/ssh2/DynamicPortForwarder.java
index a15efe7..a15efe7 100644
--- a/src/com/trilead/ssh2/DynamicPortForwarder.java
+++ b/app/src/main/java/com/trilead/ssh2/DynamicPortForwarder.java
diff --git a/src/com/trilead/ssh2/HTTPProxyData.java b/app/src/main/java/com/trilead/ssh2/HTTPProxyData.java
index 2edffe6..2edffe6 100644
--- a/src/com/trilead/ssh2/HTTPProxyData.java
+++ b/app/src/main/java/com/trilead/ssh2/HTTPProxyData.java
diff --git a/src/com/trilead/ssh2/HTTPProxyException.java b/app/src/main/java/com/trilead/ssh2/HTTPProxyException.java
index 4687dd1..4687dd1 100644
--- a/src/com/trilead/ssh2/HTTPProxyException.java
+++ b/app/src/main/java/com/trilead/ssh2/HTTPProxyException.java
diff --git a/src/com/trilead/ssh2/InteractiveCallback.java b/app/src/main/java/com/trilead/ssh2/InteractiveCallback.java
index 3b83417..3b83417 100644
--- a/src/com/trilead/ssh2/InteractiveCallback.java
+++ b/app/src/main/java/com/trilead/ssh2/InteractiveCallback.java
diff --git a/src/com/trilead/ssh2/KnownHosts.java b/app/src/main/java/com/trilead/ssh2/KnownHosts.java
index ec022ff..ec022ff 100644
--- a/src/com/trilead/ssh2/KnownHosts.java
+++ b/app/src/main/java/com/trilead/ssh2/KnownHosts.java
diff --git a/src/com/trilead/ssh2/LocalPortForwarder.java b/app/src/main/java/com/trilead/ssh2/LocalPortForwarder.java
index 96fa082..96fa082 100644
--- a/src/com/trilead/ssh2/LocalPortForwarder.java
+++ b/app/src/main/java/com/trilead/ssh2/LocalPortForwarder.java
diff --git a/src/com/trilead/ssh2/LocalStreamForwarder.java b/app/src/main/java/com/trilead/ssh2/LocalStreamForwarder.java
index 7899367..7899367 100644
--- a/src/com/trilead/ssh2/LocalStreamForwarder.java
+++ b/app/src/main/java/com/trilead/ssh2/LocalStreamForwarder.java
diff --git a/src/com/trilead/ssh2/ProxyData.java b/app/src/main/java/com/trilead/ssh2/ProxyData.java
index 059a6e3..059a6e3 100644
--- a/src/com/trilead/ssh2/ProxyData.java
+++ b/app/src/main/java/com/trilead/ssh2/ProxyData.java
diff --git a/src/com/trilead/ssh2/SCPClient.java b/app/src/main/java/com/trilead/ssh2/SCPClient.java
index b692750..b692750 100644
--- a/src/com/trilead/ssh2/SCPClient.java
+++ b/app/src/main/java/com/trilead/ssh2/SCPClient.java
diff --git a/src/com/trilead/ssh2/SFTPException.java b/app/src/main/java/com/trilead/ssh2/SFTPException.java
index d97723f..d97723f 100644
--- a/src/com/trilead/ssh2/SFTPException.java
+++ b/app/src/main/java/com/trilead/ssh2/SFTPException.java
diff --git a/src/com/trilead/ssh2/SFTPv3Client.java b/app/src/main/java/com/trilead/ssh2/SFTPv3Client.java
index 06796e9..06796e9 100644
--- a/src/com/trilead/ssh2/SFTPv3Client.java
+++ b/app/src/main/java/com/trilead/ssh2/SFTPv3Client.java
diff --git a/src/com/trilead/ssh2/SFTPv3DirectoryEntry.java b/app/src/main/java/com/trilead/ssh2/SFTPv3DirectoryEntry.java
index 669ba87..669ba87 100644
--- a/src/com/trilead/ssh2/SFTPv3DirectoryEntry.java
+++ b/app/src/main/java/com/trilead/ssh2/SFTPv3DirectoryEntry.java
diff --git a/src/com/trilead/ssh2/SFTPv3FileAttributes.java b/app/src/main/java/com/trilead/ssh2/SFTPv3FileAttributes.java
index 7b1d321..7b1d321 100644
--- a/src/com/trilead/ssh2/SFTPv3FileAttributes.java
+++ b/app/src/main/java/com/trilead/ssh2/SFTPv3FileAttributes.java
diff --git a/src/com/trilead/ssh2/SFTPv3FileHandle.java b/app/src/main/java/com/trilead/ssh2/SFTPv3FileHandle.java
index 9b3dbb6..9b3dbb6 100644
--- a/src/com/trilead/ssh2/SFTPv3FileHandle.java
+++ b/app/src/main/java/com/trilead/ssh2/SFTPv3FileHandle.java
diff --git a/src/com/trilead/ssh2/ServerHostKeyVerifier.java b/app/src/main/java/com/trilead/ssh2/ServerHostKeyVerifier.java
index ac65955..ac65955 100644
--- a/src/com/trilead/ssh2/ServerHostKeyVerifier.java
+++ b/app/src/main/java/com/trilead/ssh2/ServerHostKeyVerifier.java
diff --git a/src/com/trilead/ssh2/Session.java b/app/src/main/java/com/trilead/ssh2/Session.java
index bf3c7e0..bf3c7e0 100644
--- a/src/com/trilead/ssh2/Session.java
+++ b/app/src/main/java/com/trilead/ssh2/Session.java
diff --git a/src/com/trilead/ssh2/StreamGobbler.java b/app/src/main/java/com/trilead/ssh2/StreamGobbler.java
index e93c388..e93c388 100644
--- a/src/com/trilead/ssh2/StreamGobbler.java
+++ b/app/src/main/java/com/trilead/ssh2/StreamGobbler.java
diff --git a/src/com/trilead/ssh2/auth/AuthenticationManager.java b/app/src/main/java/com/trilead/ssh2/auth/AuthenticationManager.java
index e551495..e551495 100644
--- a/src/com/trilead/ssh2/auth/AuthenticationManager.java
+++ b/app/src/main/java/com/trilead/ssh2/auth/AuthenticationManager.java
diff --git a/src/com/trilead/ssh2/channel/AuthAgentForwardThread.java b/app/src/main/java/com/trilead/ssh2/channel/AuthAgentForwardThread.java
index c6831e6..c6831e6 100644
--- a/src/com/trilead/ssh2/channel/AuthAgentForwardThread.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/AuthAgentForwardThread.java
diff --git a/src/com/trilead/ssh2/channel/Channel.java b/app/src/main/java/com/trilead/ssh2/channel/Channel.java
index 8365f12..8365f12 100644
--- a/src/com/trilead/ssh2/channel/Channel.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/Channel.java
diff --git a/src/com/trilead/ssh2/channel/ChannelInputStream.java b/app/src/main/java/com/trilead/ssh2/channel/ChannelInputStream.java
index f88522c..f88522c 100644
--- a/src/com/trilead/ssh2/channel/ChannelInputStream.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/ChannelInputStream.java
diff --git a/src/com/trilead/ssh2/channel/ChannelManager.java b/app/src/main/java/com/trilead/ssh2/channel/ChannelManager.java
index 88beffd..88beffd 100644
--- a/src/com/trilead/ssh2/channel/ChannelManager.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/ChannelManager.java
diff --git a/src/com/trilead/ssh2/channel/ChannelOutputStream.java b/app/src/main/java/com/trilead/ssh2/channel/ChannelOutputStream.java
index c1d56e8..c1d56e8 100644
--- a/src/com/trilead/ssh2/channel/ChannelOutputStream.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/ChannelOutputStream.java
diff --git a/src/com/trilead/ssh2/channel/DynamicAcceptThread.java b/app/src/main/java/com/trilead/ssh2/channel/DynamicAcceptThread.java
index ef3a3d0..ef3a3d0 100644
--- a/src/com/trilead/ssh2/channel/DynamicAcceptThread.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/DynamicAcceptThread.java
diff --git a/src/com/trilead/ssh2/channel/IChannelWorkerThread.java b/app/src/main/java/com/trilead/ssh2/channel/IChannelWorkerThread.java
index bce9b1b..bce9b1b 100644
--- a/src/com/trilead/ssh2/channel/IChannelWorkerThread.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/IChannelWorkerThread.java
diff --git a/src/com/trilead/ssh2/channel/LocalAcceptThread.java b/app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java
index 0d1bb35..0d1bb35 100644
--- a/src/com/trilead/ssh2/channel/LocalAcceptThread.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java
diff --git a/src/com/trilead/ssh2/channel/RemoteAcceptThread.java b/app/src/main/java/com/trilead/ssh2/channel/RemoteAcceptThread.java
index 29b02b8..29b02b8 100644
--- a/src/com/trilead/ssh2/channel/RemoteAcceptThread.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/RemoteAcceptThread.java
diff --git a/src/com/trilead/ssh2/channel/RemoteForwardingData.java b/app/src/main/java/com/trilead/ssh2/channel/RemoteForwardingData.java
index d05378e..d05378e 100644
--- a/src/com/trilead/ssh2/channel/RemoteForwardingData.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/RemoteForwardingData.java
diff --git a/src/com/trilead/ssh2/channel/RemoteX11AcceptThread.java b/app/src/main/java/com/trilead/ssh2/channel/RemoteX11AcceptThread.java
index 9f99410..9f99410 100644
--- a/src/com/trilead/ssh2/channel/RemoteX11AcceptThread.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/RemoteX11AcceptThread.java
diff --git a/src/com/trilead/ssh2/channel/StreamForwarder.java b/app/src/main/java/com/trilead/ssh2/channel/StreamForwarder.java
index e1afee8..e1afee8 100644
--- a/src/com/trilead/ssh2/channel/StreamForwarder.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/StreamForwarder.java
diff --git a/src/com/trilead/ssh2/channel/X11ServerData.java b/app/src/main/java/com/trilead/ssh2/channel/X11ServerData.java
index 041f9cb..041f9cb 100644
--- a/src/com/trilead/ssh2/channel/X11ServerData.java
+++ b/app/src/main/java/com/trilead/ssh2/channel/X11ServerData.java
diff --git a/src/com/trilead/ssh2/compression/CompressionFactory.java b/app/src/main/java/com/trilead/ssh2/compression/CompressionFactory.java
index 9f8d7ef..9f8d7ef 100644
--- a/src/com/trilead/ssh2/compression/CompressionFactory.java
+++ b/app/src/main/java/com/trilead/ssh2/compression/CompressionFactory.java
diff --git a/src/com/trilead/ssh2/compression/ICompressor.java b/app/src/main/java/com/trilead/ssh2/compression/ICompressor.java
index 0b435b9..0b435b9 100644
--- a/src/com/trilead/ssh2/compression/ICompressor.java
+++ b/app/src/main/java/com/trilead/ssh2/compression/ICompressor.java
diff --git a/src/com/trilead/ssh2/compression/Zlib.java b/app/src/main/java/com/trilead/ssh2/compression/Zlib.java
index c1203a3..c1203a3 100644
--- a/src/com/trilead/ssh2/compression/Zlib.java
+++ b/app/src/main/java/com/trilead/ssh2/compression/Zlib.java
diff --git a/src/com/trilead/ssh2/compression/ZlibOpenSSH.java b/app/src/main/java/com/trilead/ssh2/compression/ZlibOpenSSH.java
index 266fff9..266fff9 100644
--- a/src/com/trilead/ssh2/compression/ZlibOpenSSH.java
+++ b/app/src/main/java/com/trilead/ssh2/compression/ZlibOpenSSH.java
diff --git a/src/com/trilead/ssh2/crypto/Base64.java b/app/src/main/java/com/trilead/ssh2/crypto/Base64.java
index 93770ac..93770ac 100644
--- a/src/com/trilead/ssh2/crypto/Base64.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/Base64.java
diff --git a/src/com/trilead/ssh2/crypto/CryptoWishList.java b/app/src/main/java/com/trilead/ssh2/crypto/CryptoWishList.java
index 86959e7..86959e7 100644
--- a/src/com/trilead/ssh2/crypto/CryptoWishList.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/CryptoWishList.java
diff --git a/src/com/trilead/ssh2/crypto/KeyMaterial.java b/app/src/main/java/com/trilead/ssh2/crypto/KeyMaterial.java
index 1dbd6c7..1dbd6c7 100644
--- a/src/com/trilead/ssh2/crypto/KeyMaterial.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/KeyMaterial.java
diff --git a/src/com/trilead/ssh2/crypto/PEMDecoder.java b/app/src/main/java/com/trilead/ssh2/crypto/PEMDecoder.java
index 5c0c2fd..5c0c2fd 100644
--- a/src/com/trilead/ssh2/crypto/PEMDecoder.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/PEMDecoder.java
diff --git a/src/com/trilead/ssh2/crypto/PEMStructure.java b/app/src/main/java/com/trilead/ssh2/crypto/PEMStructure.java
index 83fb799..83fb799 100644
--- a/src/com/trilead/ssh2/crypto/PEMStructure.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/PEMStructure.java
diff --git a/src/com/trilead/ssh2/crypto/SimpleDERReader.java b/app/src/main/java/com/trilead/ssh2/crypto/SimpleDERReader.java
index ff8112a..ff8112a 100644
--- a/src/com/trilead/ssh2/crypto/SimpleDERReader.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/SimpleDERReader.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/AES.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/AES.java
index e89e4a6..e89e4a6 100644
--- a/src/com/trilead/ssh2/crypto/cipher/AES.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/AES.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/BlockCipher.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/BlockCipher.java
index 4cc28ab..4cc28ab 100644
--- a/src/com/trilead/ssh2/crypto/cipher/BlockCipher.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/BlockCipher.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/BlockCipherFactory.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/BlockCipherFactory.java
index 6e386a5..6e386a5 100644
--- a/src/com/trilead/ssh2/crypto/cipher/BlockCipherFactory.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/BlockCipherFactory.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/BlowFish.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/BlowFish.java
index 0b2f295..0b2f295 100644
--- a/src/com/trilead/ssh2/crypto/cipher/BlowFish.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/BlowFish.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/CBCMode.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CBCMode.java
index 0ae51b3..0ae51b3 100644
--- a/src/com/trilead/ssh2/crypto/cipher/CBCMode.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CBCMode.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/CTRMode.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CTRMode.java
index 8541c8d..8541c8d 100644
--- a/src/com/trilead/ssh2/crypto/cipher/CTRMode.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CTRMode.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/CipherInputStream.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CipherInputStream.java
index c9055ab..c9055ab 100644
--- a/src/com/trilead/ssh2/crypto/cipher/CipherInputStream.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CipherInputStream.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/CipherOutputStream.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CipherOutputStream.java
index cf0db4a..cf0db4a 100644
--- a/src/com/trilead/ssh2/crypto/cipher/CipherOutputStream.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/CipherOutputStream.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/DES.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/DES.java
index 6588459..6588459 100644
--- a/src/com/trilead/ssh2/crypto/cipher/DES.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/DES.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/DESede.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/DESede.java
index f47a636..f47a636 100644
--- a/src/com/trilead/ssh2/crypto/cipher/DESede.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/DESede.java
diff --git a/src/com/trilead/ssh2/crypto/cipher/NullCipher.java b/app/src/main/java/com/trilead/ssh2/crypto/cipher/NullCipher.java
index 38f8215..38f8215 100644
--- a/src/com/trilead/ssh2/crypto/cipher/NullCipher.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/cipher/NullCipher.java
diff --git a/src/com/trilead/ssh2/crypto/dh/DhExchange.java b/app/src/main/java/com/trilead/ssh2/crypto/dh/DhExchange.java
index 3acde25..3acde25 100644
--- a/src/com/trilead/ssh2/crypto/dh/DhExchange.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/dh/DhExchange.java
diff --git a/src/com/trilead/ssh2/crypto/dh/DhGroupExchange.java b/app/src/main/java/com/trilead/ssh2/crypto/dh/DhGroupExchange.java
index a888950..a888950 100644
--- a/src/com/trilead/ssh2/crypto/dh/DhGroupExchange.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/dh/DhGroupExchange.java
diff --git a/src/com/trilead/ssh2/crypto/dh/EcDhExchange.java b/app/src/main/java/com/trilead/ssh2/crypto/dh/EcDhExchange.java
index 43d31ad..43d31ad 100644
--- a/src/com/trilead/ssh2/crypto/dh/EcDhExchange.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/dh/EcDhExchange.java
diff --git a/src/com/trilead/ssh2/crypto/dh/GenericDhExchange.java b/app/src/main/java/com/trilead/ssh2/crypto/dh/GenericDhExchange.java
index 039ff75..039ff75 100644
--- a/src/com/trilead/ssh2/crypto/dh/GenericDhExchange.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/dh/GenericDhExchange.java
diff --git a/src/com/trilead/ssh2/crypto/digest/HashForSSH2Types.java b/app/src/main/java/com/trilead/ssh2/crypto/digest/HashForSSH2Types.java
index 6b0d6e3..6b0d6e3 100644
--- a/src/com/trilead/ssh2/crypto/digest/HashForSSH2Types.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/digest/HashForSSH2Types.java
diff --git a/src/com/trilead/ssh2/crypto/digest/MAC.java b/app/src/main/java/com/trilead/ssh2/crypto/digest/MAC.java
index 561599c..561599c 100644
--- a/src/com/trilead/ssh2/crypto/digest/MAC.java
+++ b/app/src/main/java/com/trilead/ssh2/crypto/digest/MAC.java
diff --git a/src/com/trilead/ssh2/log/Logger.java b/app/src/main/java/com/trilead/ssh2/log/Logger.java
index 20ab397..20ab397 100644
--- a/src/com/trilead/ssh2/log/Logger.java
+++ b/app/src/main/java/com/trilead/ssh2/log/Logger.java
diff --git a/src/com/trilead/ssh2/packets/PacketChannelAuthAgentReq.java b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelAuthAgentReq.java
index 95fa396..95fa396 100644
--- a/src/com/trilead/ssh2/packets/PacketChannelAuthAgentReq.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelAuthAgentReq.java
diff --git a/src/com/trilead/ssh2/packets/PacketChannelOpenConfirmation.java b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelOpenConfirmation.java
index bd2ea3f..bd2ea3f 100644
--- a/src/com/trilead/ssh2/packets/PacketChannelOpenConfirmation.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelOpenConfirmation.java
diff --git a/src/com/trilead/ssh2/packets/PacketChannelOpenFailure.java b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelOpenFailure.java
index 1370355..1370355 100644
--- a/src/com/trilead/ssh2/packets/PacketChannelOpenFailure.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelOpenFailure.java
diff --git a/src/com/trilead/ssh2/packets/PacketChannelTrileadPing.java b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelTrileadPing.java
index c337930..c337930 100644
--- a/src/com/trilead/ssh2/packets/PacketChannelTrileadPing.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelTrileadPing.java
diff --git a/src/com/trilead/ssh2/packets/PacketChannelWindowAdjust.java b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelWindowAdjust.java
index 37ec081..37ec081 100644
--- a/src/com/trilead/ssh2/packets/PacketChannelWindowAdjust.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketChannelWindowAdjust.java
diff --git a/src/com/trilead/ssh2/packets/PacketDisconnect.java b/app/src/main/java/com/trilead/ssh2/packets/PacketDisconnect.java
index 50d6ec2..50d6ec2 100644
--- a/src/com/trilead/ssh2/packets/PacketDisconnect.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketDisconnect.java
diff --git a/src/com/trilead/ssh2/packets/PacketGlobalCancelForwardRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketGlobalCancelForwardRequest.java
index 20bd558..20bd558 100644
--- a/src/com/trilead/ssh2/packets/PacketGlobalCancelForwardRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketGlobalCancelForwardRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketGlobalForwardRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketGlobalForwardRequest.java
index 55257e9..55257e9 100644
--- a/src/com/trilead/ssh2/packets/PacketGlobalForwardRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketGlobalForwardRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketGlobalTrileadPing.java b/app/src/main/java/com/trilead/ssh2/packets/PacketGlobalTrileadPing.java
index 3d8930e..3d8930e 100644
--- a/src/com/trilead/ssh2/packets/PacketGlobalTrileadPing.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketGlobalTrileadPing.java
diff --git a/src/com/trilead/ssh2/packets/PacketIgnore.java b/app/src/main/java/com/trilead/ssh2/packets/PacketIgnore.java
index 2b4d917..2b4d917 100644
--- a/src/com/trilead/ssh2/packets/PacketIgnore.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketIgnore.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDHInit.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDHInit.java
index 0092516..0092516 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDHInit.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDHInit.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDHReply.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDHReply.java
index 51f2bda..51f2bda 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDHReply.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDHReply.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDhGexGroup.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexGroup.java
index db85b61..db85b61 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDhGexGroup.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexGroup.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDhGexInit.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexInit.java
index 8b34230..8b34230 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDhGexInit.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexInit.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDhGexReply.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexReply.java
index 382b3b7..382b3b7 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDhGexReply.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexReply.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDhGexRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexRequest.java
index 50369df..50369df 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDhGexRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexDhGexRequestOld.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexRequestOld.java
index 327f379..327f379 100644
--- a/src/com/trilead/ssh2/packets/PacketKexDhGexRequestOld.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexDhGexRequestOld.java
diff --git a/src/com/trilead/ssh2/packets/PacketKexInit.java b/app/src/main/java/com/trilead/ssh2/packets/PacketKexInit.java
index 087d658..087d658 100644
--- a/src/com/trilead/ssh2/packets/PacketKexInit.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketKexInit.java
diff --git a/src/com/trilead/ssh2/packets/PacketNewKeys.java b/app/src/main/java/com/trilead/ssh2/packets/PacketNewKeys.java
index 3ca6503..3ca6503 100644
--- a/src/com/trilead/ssh2/packets/PacketNewKeys.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketNewKeys.java
diff --git a/src/com/trilead/ssh2/packets/PacketOpenDirectTCPIPChannel.java b/app/src/main/java/com/trilead/ssh2/packets/PacketOpenDirectTCPIPChannel.java
index da6cbef..da6cbef 100644
--- a/src/com/trilead/ssh2/packets/PacketOpenDirectTCPIPChannel.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketOpenDirectTCPIPChannel.java
diff --git a/src/com/trilead/ssh2/packets/PacketOpenSessionChannel.java b/app/src/main/java/com/trilead/ssh2/packets/PacketOpenSessionChannel.java
index a75ea63..a75ea63 100644
--- a/src/com/trilead/ssh2/packets/PacketOpenSessionChannel.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketOpenSessionChannel.java
diff --git a/src/com/trilead/ssh2/packets/PacketServiceAccept.java b/app/src/main/java/com/trilead/ssh2/packets/PacketServiceAccept.java
index d5c9a90..d5c9a90 100644
--- a/src/com/trilead/ssh2/packets/PacketServiceAccept.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketServiceAccept.java
diff --git a/src/com/trilead/ssh2/packets/PacketServiceRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketServiceRequest.java
index c2d2065..c2d2065 100644
--- a/src/com/trilead/ssh2/packets/PacketServiceRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketServiceRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketSessionExecCommand.java b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionExecCommand.java
index 84efa5d..84efa5d 100644
--- a/src/com/trilead/ssh2/packets/PacketSessionExecCommand.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionExecCommand.java
diff --git a/src/com/trilead/ssh2/packets/PacketSessionPtyRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionPtyRequest.java
index d9c3d59..d9c3d59 100644
--- a/src/com/trilead/ssh2/packets/PacketSessionPtyRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionPtyRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketSessionPtyResize.java b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionPtyResize.java
index 1e3b558..1e3b558 100644
--- a/src/com/trilead/ssh2/packets/PacketSessionPtyResize.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionPtyResize.java
diff --git a/src/com/trilead/ssh2/packets/PacketSessionStartShell.java b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionStartShell.java
index e5add01..e5add01 100644
--- a/src/com/trilead/ssh2/packets/PacketSessionStartShell.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionStartShell.java
diff --git a/src/com/trilead/ssh2/packets/PacketSessionSubsystemRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionSubsystemRequest.java
index cdc3a8c..cdc3a8c 100644
--- a/src/com/trilead/ssh2/packets/PacketSessionSubsystemRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionSubsystemRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketSessionX11Request.java b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionX11Request.java
index 26479c7..26479c7 100644
--- a/src/com/trilead/ssh2/packets/PacketSessionX11Request.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketSessionX11Request.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthBanner.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthBanner.java
index 8ad8c3b..8ad8c3b 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthBanner.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthBanner.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthFailure.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthFailure.java
index fd4a726..fd4a726 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthFailure.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthFailure.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthInfoRequest.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthInfoRequest.java
index e1606d1..e1606d1 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthInfoRequest.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthInfoRequest.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthInfoResponse.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthInfoResponse.java
index e8795d4..e8795d4 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthInfoResponse.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthInfoResponse.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthRequestInteractive.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestInteractive.java
index 83e9f49..83e9f49 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthRequestInteractive.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestInteractive.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthRequestNone.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestNone.java
index d786003..d786003 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthRequestNone.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestNone.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthRequestPassword.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestPassword.java
index 83047dd..83047dd 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthRequestPassword.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestPassword.java
diff --git a/src/com/trilead/ssh2/packets/PacketUserauthRequestPublicKey.java b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestPublicKey.java
index 6462864..6462864 100644
--- a/src/com/trilead/ssh2/packets/PacketUserauthRequestPublicKey.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/PacketUserauthRequestPublicKey.java
diff --git a/src/com/trilead/ssh2/packets/Packets.java b/app/src/main/java/com/trilead/ssh2/packets/Packets.java
index 6989286..6989286 100644
--- a/src/com/trilead/ssh2/packets/Packets.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/Packets.java
diff --git a/src/com/trilead/ssh2/packets/TypesReader.java b/app/src/main/java/com/trilead/ssh2/packets/TypesReader.java
index 28f5363..28f5363 100644
--- a/src/com/trilead/ssh2/packets/TypesReader.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/TypesReader.java
diff --git a/src/com/trilead/ssh2/packets/TypesWriter.java b/app/src/main/java/com/trilead/ssh2/packets/TypesWriter.java
index 9f7336b..9f7336b 100644
--- a/src/com/trilead/ssh2/packets/TypesWriter.java
+++ b/app/src/main/java/com/trilead/ssh2/packets/TypesWriter.java
diff --git a/src/com/trilead/ssh2/sftp/AttrTextHints.java b/app/src/main/java/com/trilead/ssh2/sftp/AttrTextHints.java
index 19f0525..19f0525 100644
--- a/src/com/trilead/ssh2/sftp/AttrTextHints.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/AttrTextHints.java
diff --git a/src/com/trilead/ssh2/sftp/AttribBits.java b/app/src/main/java/com/trilead/ssh2/sftp/AttribBits.java
index b143613..b143613 100644
--- a/src/com/trilead/ssh2/sftp/AttribBits.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/AttribBits.java
diff --git a/src/com/trilead/ssh2/sftp/AttribFlags.java b/app/src/main/java/com/trilead/ssh2/sftp/AttribFlags.java
index ea27871..ea27871 100644
--- a/src/com/trilead/ssh2/sftp/AttribFlags.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/AttribFlags.java
diff --git a/src/com/trilead/ssh2/sftp/AttribPermissions.java b/app/src/main/java/com/trilead/ssh2/sftp/AttribPermissions.java
index 558aa6f..558aa6f 100644
--- a/src/com/trilead/ssh2/sftp/AttribPermissions.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/AttribPermissions.java
diff --git a/src/com/trilead/ssh2/sftp/AttribTypes.java b/app/src/main/java/com/trilead/ssh2/sftp/AttribTypes.java
index e2f4169..e2f4169 100644
--- a/src/com/trilead/ssh2/sftp/AttribTypes.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/AttribTypes.java
diff --git a/src/com/trilead/ssh2/sftp/ErrorCodes.java b/app/src/main/java/com/trilead/ssh2/sftp/ErrorCodes.java
index 7317a00..7317a00 100644
--- a/src/com/trilead/ssh2/sftp/ErrorCodes.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/ErrorCodes.java
diff --git a/src/com/trilead/ssh2/sftp/OpenFlags.java b/app/src/main/java/com/trilead/ssh2/sftp/OpenFlags.java
index b2979b9..b2979b9 100644
--- a/src/com/trilead/ssh2/sftp/OpenFlags.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/OpenFlags.java
diff --git a/src/com/trilead/ssh2/sftp/Packet.java b/app/src/main/java/com/trilead/ssh2/sftp/Packet.java
index 444af90..444af90 100644
--- a/src/com/trilead/ssh2/sftp/Packet.java
+++ b/app/src/main/java/com/trilead/ssh2/sftp/Packet.java
diff --git a/src/com/trilead/ssh2/signature/DSASHA1Verify.java b/app/src/main/java/com/trilead/ssh2/signature/DSASHA1Verify.java
index 6fb6ddb..6fb6ddb 100644
--- a/src/com/trilead/ssh2/signature/DSASHA1Verify.java
+++ b/app/src/main/java/com/trilead/ssh2/signature/DSASHA1Verify.java
diff --git a/src/com/trilead/ssh2/signature/ECDSASHA2Verify.java b/app/src/main/java/com/trilead/ssh2/signature/ECDSASHA2Verify.java
index f139cdf..f139cdf 100644
--- a/src/com/trilead/ssh2/signature/ECDSASHA2Verify.java
+++ b/app/src/main/java/com/trilead/ssh2/signature/ECDSASHA2Verify.java
diff --git a/src/com/trilead/ssh2/signature/RSASHA1Verify.java b/app/src/main/java/com/trilead/ssh2/signature/RSASHA1Verify.java
index 3406312..3406312 100644
--- a/src/com/trilead/ssh2/signature/RSASHA1Verify.java
+++ b/app/src/main/java/com/trilead/ssh2/signature/RSASHA1Verify.java
diff --git a/src/com/trilead/ssh2/transport/ClientServerHello.java b/app/src/main/java/com/trilead/ssh2/transport/ClientServerHello.java
index d7a5ee5..d7a5ee5 100644
--- a/src/com/trilead/ssh2/transport/ClientServerHello.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/ClientServerHello.java
diff --git a/src/com/trilead/ssh2/transport/KexManager.java b/app/src/main/java/com/trilead/ssh2/transport/KexManager.java
index cd26530..cd26530 100644
--- a/src/com/trilead/ssh2/transport/KexManager.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/KexManager.java
diff --git a/src/com/trilead/ssh2/transport/KexParameters.java b/app/src/main/java/com/trilead/ssh2/transport/KexParameters.java
index 70bcf3e..70bcf3e 100644
--- a/src/com/trilead/ssh2/transport/KexParameters.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/KexParameters.java
diff --git a/src/com/trilead/ssh2/transport/KexState.java b/app/src/main/java/com/trilead/ssh2/transport/KexState.java
index 8611f3f..8611f3f 100644
--- a/src/com/trilead/ssh2/transport/KexState.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/KexState.java
diff --git a/src/com/trilead/ssh2/transport/MessageHandler.java b/app/src/main/java/com/trilead/ssh2/transport/MessageHandler.java
index 039d473..039d473 100644
--- a/src/com/trilead/ssh2/transport/MessageHandler.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/MessageHandler.java
diff --git a/src/com/trilead/ssh2/transport/NegotiateException.java b/app/src/main/java/com/trilead/ssh2/transport/NegotiateException.java
index ff53097..ff53097 100644
--- a/src/com/trilead/ssh2/transport/NegotiateException.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/NegotiateException.java
diff --git a/src/com/trilead/ssh2/transport/NegotiatedParameters.java b/app/src/main/java/com/trilead/ssh2/transport/NegotiatedParameters.java
index e9f3a0a..e9f3a0a 100644
--- a/src/com/trilead/ssh2/transport/NegotiatedParameters.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/NegotiatedParameters.java
diff --git a/src/com/trilead/ssh2/transport/TransportConnection.java b/app/src/main/java/com/trilead/ssh2/transport/TransportConnection.java
index 906c3c9..906c3c9 100644
--- a/src/com/trilead/ssh2/transport/TransportConnection.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/TransportConnection.java
diff --git a/src/com/trilead/ssh2/transport/TransportManager.java b/app/src/main/java/com/trilead/ssh2/transport/TransportManager.java
index 2e88126..2e88126 100644
--- a/src/com/trilead/ssh2/transport/TransportManager.java
+++ b/app/src/main/java/com/trilead/ssh2/transport/TransportManager.java
diff --git a/src/com/trilead/ssh2/util/TimeoutService.java b/app/src/main/java/com/trilead/ssh2/util/TimeoutService.java
index 3d52161..3d52161 100644
--- a/src/com/trilead/ssh2/util/TimeoutService.java
+++ b/app/src/main/java/com/trilead/ssh2/util/TimeoutService.java
diff --git a/src/com/trilead/ssh2/util/Tokenizer.java b/app/src/main/java/com/trilead/ssh2/util/Tokenizer.java
index dfd480b..dfd480b 100644
--- a/src/com/trilead/ssh2/util/Tokenizer.java
+++ b/app/src/main/java/com/trilead/ssh2/util/Tokenizer.java
diff --git a/src/de/mud/telnet/TelnetProtocolHandler.java b/app/src/main/java/de/mud/telnet/TelnetProtocolHandler.java
index 74f08bb..74f08bb 100644
--- a/src/de/mud/telnet/TelnetProtocolHandler.java
+++ b/app/src/main/java/de/mud/telnet/TelnetProtocolHandler.java
diff --git a/src/de/mud/terminal/Precomposer.java b/app/src/main/java/de/mud/terminal/Precomposer.java
index edad64c..edad64c 100644
--- a/src/de/mud/terminal/Precomposer.java
+++ b/app/src/main/java/de/mud/terminal/Precomposer.java
diff --git a/src/de/mud/terminal/VDUBuffer.java b/app/src/main/java/de/mud/terminal/VDUBuffer.java
index 93e3ccf..93e3ccf 100644
--- a/src/de/mud/terminal/VDUBuffer.java
+++ b/app/src/main/java/de/mud/terminal/VDUBuffer.java
diff --git a/src/de/mud/terminal/VDUDisplay.java b/app/src/main/java/de/mud/terminal/VDUDisplay.java
index bb4a7b8..bb4a7b8 100644
--- a/src/de/mud/terminal/VDUDisplay.java
+++ b/app/src/main/java/de/mud/terminal/VDUDisplay.java
diff --git a/src/de/mud/terminal/VDUInput.java b/app/src/main/java/de/mud/terminal/VDUInput.java
index 43c88de..43c88de 100644
--- a/src/de/mud/terminal/VDUInput.java
+++ b/app/src/main/java/de/mud/terminal/VDUInput.java
diff --git a/src/de/mud/terminal/vt320.java b/app/src/main/java/de/mud/terminal/vt320.java
index 73369af..73369af 100644
--- a/src/de/mud/terminal/vt320.java
+++ b/app/src/main/java/de/mud/terminal/vt320.java
diff --git a/src/net/sourceforge/jsocks/Authentication.java b/app/src/main/java/net/sourceforge/jsocks/Authentication.java
index 18cc48b..18cc48b 100644
--- a/src/net/sourceforge/jsocks/Authentication.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Authentication.java
diff --git a/src/net/sourceforge/jsocks/AuthenticationNone.java b/app/src/main/java/net/sourceforge/jsocks/AuthenticationNone.java
index f28193a..f28193a 100644
--- a/src/net/sourceforge/jsocks/AuthenticationNone.java
+++ b/app/src/main/java/net/sourceforge/jsocks/AuthenticationNone.java
diff --git a/src/net/sourceforge/jsocks/Proxy.java b/app/src/main/java/net/sourceforge/jsocks/Proxy.java
index 381c0a0..381c0a0 100644
--- a/src/net/sourceforge/jsocks/Proxy.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Proxy.java
diff --git a/src/net/sourceforge/jsocks/ProxyMessage.java b/app/src/main/java/net/sourceforge/jsocks/ProxyMessage.java
index 442c380..442c380 100644
--- a/src/net/sourceforge/jsocks/ProxyMessage.java
+++ b/app/src/main/java/net/sourceforge/jsocks/ProxyMessage.java
diff --git a/src/net/sourceforge/jsocks/ProxyServer.java b/app/src/main/java/net/sourceforge/jsocks/ProxyServer.java
index 225149d..225149d 100644
--- a/src/net/sourceforge/jsocks/ProxyServer.java
+++ b/app/src/main/java/net/sourceforge/jsocks/ProxyServer.java
diff --git a/src/net/sourceforge/jsocks/Socks4Message.java b/app/src/main/java/net/sourceforge/jsocks/Socks4Message.java
index 99fb211..99fb211 100644
--- a/src/net/sourceforge/jsocks/Socks4Message.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Socks4Message.java
diff --git a/src/net/sourceforge/jsocks/Socks4Proxy.java b/app/src/main/java/net/sourceforge/jsocks/Socks4Proxy.java
index 9a17fc2..9a17fc2 100644
--- a/src/net/sourceforge/jsocks/Socks4Proxy.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Socks4Proxy.java
diff --git a/src/net/sourceforge/jsocks/Socks5DatagramSocket.java b/app/src/main/java/net/sourceforge/jsocks/Socks5DatagramSocket.java
index b847400..b847400 100644
--- a/src/net/sourceforge/jsocks/Socks5DatagramSocket.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Socks5DatagramSocket.java
diff --git a/src/net/sourceforge/jsocks/Socks5Message.java b/app/src/main/java/net/sourceforge/jsocks/Socks5Message.java
index ea2a321..ea2a321 100644
--- a/src/net/sourceforge/jsocks/Socks5Message.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Socks5Message.java
diff --git a/src/net/sourceforge/jsocks/Socks5Proxy.java b/app/src/main/java/net/sourceforge/jsocks/Socks5Proxy.java
index aa9c643..aa9c643 100644
--- a/src/net/sourceforge/jsocks/Socks5Proxy.java
+++ b/app/src/main/java/net/sourceforge/jsocks/Socks5Proxy.java
diff --git a/src/net/sourceforge/jsocks/SocksException.java b/app/src/main/java/net/sourceforge/jsocks/SocksException.java
index 764587f..764587f 100644
--- a/src/net/sourceforge/jsocks/SocksException.java
+++ b/app/src/main/java/net/sourceforge/jsocks/SocksException.java
diff --git a/src/net/sourceforge/jsocks/SocksServerSocket.java b/app/src/main/java/net/sourceforge/jsocks/SocksServerSocket.java
index 179e9c4..179e9c4 100644
--- a/src/net/sourceforge/jsocks/SocksServerSocket.java
+++ b/app/src/main/java/net/sourceforge/jsocks/SocksServerSocket.java
diff --git a/src/net/sourceforge/jsocks/SocksSocket.java b/app/src/main/java/net/sourceforge/jsocks/SocksSocket.java
index cf9ff65..cf9ff65 100644
--- a/src/net/sourceforge/jsocks/SocksSocket.java
+++ b/app/src/main/java/net/sourceforge/jsocks/SocksSocket.java
diff --git a/src/net/sourceforge/jsocks/UDPEncapsulation.java b/app/src/main/java/net/sourceforge/jsocks/UDPEncapsulation.java
index e965942..e965942 100644
--- a/src/net/sourceforge/jsocks/UDPEncapsulation.java
+++ b/app/src/main/java/net/sourceforge/jsocks/UDPEncapsulation.java
diff --git a/src/net/sourceforge/jsocks/UDPRelayServer.java b/app/src/main/java/net/sourceforge/jsocks/UDPRelayServer.java
index dfa6016..dfa6016 100644
--- a/src/net/sourceforge/jsocks/UDPRelayServer.java
+++ b/app/src/main/java/net/sourceforge/jsocks/UDPRelayServer.java
diff --git a/src/net/sourceforge/jsocks/server/ServerAuthenticator.java b/app/src/main/java/net/sourceforge/jsocks/server/ServerAuthenticator.java
index cb7f0af..cb7f0af 100644
--- a/src/net/sourceforge/jsocks/server/ServerAuthenticator.java
+++ b/app/src/main/java/net/sourceforge/jsocks/server/ServerAuthenticator.java
diff --git a/src/net/sourceforge/jsocks/server/ServerAuthenticatorNone.java b/app/src/main/java/net/sourceforge/jsocks/server/ServerAuthenticatorNone.java
index e4edbe7..e4edbe7 100644
--- a/src/net/sourceforge/jsocks/server/ServerAuthenticatorNone.java
+++ b/app/src/main/java/net/sourceforge/jsocks/server/ServerAuthenticatorNone.java
diff --git a/src/org/apache/harmony/niochar/charset/additional/IBM437.java b/app/src/main/java/org/apache/harmony/niochar/charset/additional/IBM437.java
index d61ef59..d61ef59 100644
--- a/src/org/apache/harmony/niochar/charset/additional/IBM437.java
+++ b/app/src/main/java/org/apache/harmony/niochar/charset/additional/IBM437.java
diff --git a/src/org/connectbot/ActionBarWrapper.java b/app/src/main/java/org/connectbot/ActionBarWrapper.java
index 0c7b65d..f6bed8c 100644
--- a/src/org/connectbot/ActionBarWrapper.java
+++ b/app/src/main/java/org/connectbot/ActionBarWrapper.java
@@ -19,6 +19,7 @@ package org.connectbot;
import org.connectbot.util.PreferenceConstants;
+import android.annotation.TargetApi;
import android.app.Activity;
import android.app.ActionBar;
@@ -49,6 +50,11 @@ public abstract class ActionBarWrapper {
private static class DummyActionBar extends ActionBarWrapper {
}
+ /**
+ * Real ActionBar delegate that is only invoked on Honeycomb
+ * and later.
+ */
+ @TargetApi(11)
private static class RealActionBar extends ActionBarWrapper {
private final ActionBar actionBar;
diff --git a/src/org/connectbot/ColorsActivity.java b/app/src/main/java/org/connectbot/ColorsActivity.java
index 38336f7..38336f7 100644
--- a/src/org/connectbot/ColorsActivity.java
+++ b/app/src/main/java/org/connectbot/ColorsActivity.java
diff --git a/src/org/connectbot/ConsoleActivity.java b/app/src/main/java/org/connectbot/ConsoleActivity.java
index 7aca08c..1e14d16 100644
--- a/src/org/connectbot/ConsoleActivity.java
+++ b/app/src/main/java/org/connectbot/ConsoleActivity.java
@@ -27,6 +27,7 @@ import org.connectbot.service.TerminalKeyListener;
import org.connectbot.service.TerminalManager;
import org.connectbot.util.PreferenceConstants;
+import android.annotation.TargetApi;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
@@ -40,6 +41,7 @@ import android.content.pm.ActivityInfo;
import android.content.res.Configuration;
import android.media.AudioManager;
import android.net.Uri;
+import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
@@ -297,18 +299,14 @@ public class ConsoleActivity extends Activity {
}
}
- // more like configureLaxMode -- enable network IO on UI thread
- private void configureStrictMode() {
- try {
- Class.forName("android.os.StrictMode");
- StrictModeSetup.run();
- } catch (ClassNotFoundException e) {
- }
- }
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
- configureStrictMode();
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
+ StrictModeSetup.run();
+ }
+
hardKeyboard = getResources().getConfiguration().keyboard ==
Configuration.KEYBOARD_QWERTY;
diff --git a/src/org/connectbot/GeneratePubkeyActivity.java b/app/src/main/java/org/connectbot/GeneratePubkeyActivity.java
index 1b8995f..4d7c756 100644
--- a/src/org/connectbot/GeneratePubkeyActivity.java
+++ b/app/src/main/java/org/connectbot/GeneratePubkeyActivity.java
@@ -55,11 +55,11 @@ import com.trilead.ssh2.signature.ECDSASHA2Verify;
public class GeneratePubkeyActivity extends Activity implements OnEntropyGatheredListener {
/**
- *
- */
- private static final int RSA_MINIMUM_BITS = 768;
+ *
+ */
+ private static final int RSA_MINIMUM_BITS = 768;
- public final static String TAG = "ConnectBot.GeneratePubkeyActivity";
+ public final static String TAG = "ConnectBot.GeneratePubkeyActivity";
final static int DEFAULT_BITS = 1024;
@@ -186,7 +186,7 @@ public class GeneratePubkeyActivity extends Activity implements OnEntropyGathere
bitsText.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if (!hasFocus) {
- final boolean isEc = PubkeyDatabase.KEY_TYPE_EC.equals(keyType);
+ final boolean isEc = PubkeyDatabase.KEY_TYPE_EC.equals(keyType);
try {
bits = Integer.parseInt(bitsText.getText().toString());
if (bits < minBits) {
diff --git a/src/org/connectbot/HelpActivity.java b/app/src/main/java/org/connectbot/HelpActivity.java
index d82777d..d82777d 100644
--- a/src/org/connectbot/HelpActivity.java
+++ b/app/src/main/java/org/connectbot/HelpActivity.java
diff --git a/src/org/connectbot/HelpTopicActivity.java b/app/src/main/java/org/connectbot/HelpTopicActivity.java
index a5fa8e0..a5fa8e0 100644
--- a/src/org/connectbot/HelpTopicActivity.java
+++ b/app/src/main/java/org/connectbot/HelpTopicActivity.java
diff --git a/src/org/connectbot/HostEditorActivity.java b/app/src/main/java/org/connectbot/HostEditorActivity.java
index 4e8427f..4e8427f 100644
--- a/src/org/connectbot/HostEditorActivity.java
+++ b/app/src/main/java/org/connectbot/HostEditorActivity.java
diff --git a/src/org/connectbot/HostListActivity.java b/app/src/main/java/org/connectbot/HostListActivity.java
index 648b705..b46b148 100644
--- a/src/org/connectbot/HostListActivity.java
+++ b/app/src/main/java/org/connectbot/HostListActivity.java
@@ -166,7 +166,7 @@ public class HostListActivity extends ListActivity {
// detect HTC Dream and apply special preferences
if (Build.MANUFACTURER.equals("HTC") && Build.DEVICE.equals("dream")) {
if (!prefs.contains(PreferenceConstants.SHIFT_FKEYS) &&
- !prefs.contains(PreferenceConstants.CTRL_FKEYS)) {
+ !prefs.contains(PreferenceConstants.CTRL_FKEYS)) {
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean(PreferenceConstants.SHIFT_FKEYS, true);
editor.putBoolean(PreferenceConstants.CTRL_FKEYS, true);
diff --git a/src/org/connectbot/PortForwardListActivity.java b/app/src/main/java/org/connectbot/PortForwardListActivity.java
index f9982e4..f9982e4 100644
--- a/src/org/connectbot/PortForwardListActivity.java
+++ b/app/src/main/java/org/connectbot/PortForwardListActivity.java
diff --git a/src/org/connectbot/PubkeyListActivity.java b/app/src/main/java/org/connectbot/PubkeyListActivity.java
index be7a46f..226794f 100644
--- a/src/org/connectbot/PubkeyListActivity.java
+++ b/app/src/main/java/org/connectbot/PubkeyListActivity.java
@@ -283,7 +283,7 @@ public class PubkeyListActivity extends ListActivity implements EventListener {
}
if (pair == null) {
- return;
+ return;
}
Log.d(TAG, String.format("Unlocked key '%s'", keybean.getNickname()));
diff --git a/src/org/connectbot/SettingsActivity.java b/app/src/main/java/org/connectbot/SettingsActivity.java
index 460805d..460805d 100644
--- a/src/org/connectbot/SettingsActivity.java
+++ b/app/src/main/java/org/connectbot/SettingsActivity.java
diff --git a/src/org/connectbot/StrictModeSetup.java b/app/src/main/java/org/connectbot/StrictModeSetup.java
index 3a2000e..753a273 100644
--- a/src/org/connectbot/StrictModeSetup.java
+++ b/app/src/main/java/org/connectbot/StrictModeSetup.java
@@ -15,7 +15,11 @@
* limitations under the License.
*/
package org.connectbot;
+
+import android.annotation.TargetApi;
import android.os.StrictMode;
+
+@TargetApi(9)
public class StrictModeSetup {
public static void run() {
StrictMode.setThreadPolicy(StrictMode.ThreadPolicy.LAX);
diff --git a/src/org/connectbot/TerminalView.java b/app/src/main/java/org/connectbot/TerminalView.java
index 02683c2..02683c2 100644
--- a/src/org/connectbot/TerminalView.java
+++ b/app/src/main/java/org/connectbot/TerminalView.java
diff --git a/src/org/connectbot/WizardActivity.java b/app/src/main/java/org/connectbot/WizardActivity.java
index 35a60ca..35a60ca 100644
--- a/src/org/connectbot/WizardActivity.java
+++ b/app/src/main/java/org/connectbot/WizardActivity.java
diff --git a/src/org/connectbot/bean/AbstractBean.java b/app/src/main/java/org/connectbot/bean/AbstractBean.java
index 7f55785..7f55785 100644
--- a/src/org/connectbot/bean/AbstractBean.java
+++ b/app/src/main/java/org/connectbot/bean/AbstractBean.java
diff --git a/src/org/connectbot/bean/HostBean.java b/app/src/main/java/org/connectbot/bean/HostBean.java
index 2fd7bfb..2fd7bfb 100644
--- a/src/org/connectbot/bean/HostBean.java
+++ b/app/src/main/java/org/connectbot/bean/HostBean.java
diff --git a/src/org/connectbot/bean/PortForwardBean.java b/app/src/main/java/org/connectbot/bean/PortForwardBean.java
index 2bdaf20..2bdaf20 100644
--- a/src/org/connectbot/bean/PortForwardBean.java
+++ b/app/src/main/java/org/connectbot/bean/PortForwardBean.java
diff --git a/src/org/connectbot/bean/PubkeyBean.java b/app/src/main/java/org/connectbot/bean/PubkeyBean.java
index 656c6af..656c6af 100644
--- a/src/org/connectbot/bean/PubkeyBean.java
+++ b/app/src/main/java/org/connectbot/bean/PubkeyBean.java
diff --git a/src/org/connectbot/bean/SelectionArea.java b/app/src/main/java/org/connectbot/bean/SelectionArea.java
index 4e6207d..4e6207d 100644
--- a/src/org/connectbot/bean/SelectionArea.java
+++ b/app/src/main/java/org/connectbot/bean/SelectionArea.java
diff --git a/src/org/connectbot/service/BackupAgent.java b/app/src/main/java/org/connectbot/service/BackupAgent.java
index 1e3bd81..312ae3b 100644
--- a/src/org/connectbot/service/BackupAgent.java
+++ b/app/src/main/java/org/connectbot/service/BackupAgent.java
@@ -23,6 +23,7 @@ import org.connectbot.util.HostDatabase;
import org.connectbot.util.PreferenceConstants;
import org.connectbot.util.PubkeyDatabase;
+import android.annotation.TargetApi;
import android.app.backup.BackupAgentHelper;
import android.app.backup.BackupDataInput;
import android.app.backup.BackupDataOutput;
@@ -32,9 +33,11 @@ import android.os.ParcelFileDescriptor;
import android.util.Log;
/**
- * @author kroot
- *
+ * ConnectBot's backup agent. This is only loaded on API 8 and later by
+ * reading the AndroidManifest.xml, so it shouldn't affect any minimum
+ * SDK level.
*/
+@TargetApi(8)
public class BackupAgent extends BackupAgentHelper {
@Override
public void onCreate() {
@@ -53,7 +56,7 @@ public class BackupAgent extends BackupAgentHelper {
@Override
public void onBackup(ParcelFileDescriptor oldState, BackupDataOutput data,
- ParcelFileDescriptor newState) throws IOException {
+ ParcelFileDescriptor newState) throws IOException {
synchronized (HostDatabase.dbLock) {
super.onBackup(oldState, data, newState);
}
diff --git a/src/org/connectbot/service/BackupWrapper.java b/app/src/main/java/org/connectbot/service/BackupWrapper.java
index bfc7535..11f1b52 100644
--- a/src/org/connectbot/service/BackupWrapper.java
+++ b/app/src/main/java/org/connectbot/service/BackupWrapper.java
@@ -19,13 +19,14 @@ package org.connectbot.service;
import org.connectbot.util.PreferenceConstants;
+import android.annotation.TargetApi;
import android.app.backup.BackupManager;
import android.content.Context;
/**
- * @author kroot
- *
+ * This is only invoked on Froyo and beyond.
*/
+@TargetApi(8)
public abstract class BackupWrapper {
public static BackupWrapper getInstance() {
if (PreferenceConstants.PRE_FROYO)
diff --git a/src/org/connectbot/service/BridgeDisconnectedListener.java b/app/src/main/java/org/connectbot/service/BridgeDisconnectedListener.java
index 21c41d1..21c41d1 100644
--- a/src/org/connectbot/service/BridgeDisconnectedListener.java
+++ b/app/src/main/java/org/connectbot/service/BridgeDisconnectedListener.java
diff --git a/src/org/connectbot/service/ConnectionNotifier.java b/app/src/main/java/org/connectbot/service/ConnectionNotifier.java
index d276761..aedbd61 100644
--- a/src/org/connectbot/service/ConnectionNotifier.java
+++ b/app/src/main/java/org/connectbot/service/ConnectionNotifier.java
@@ -26,6 +26,7 @@ import org.connectbot.bean.HostBean;
import org.connectbot.util.HostDatabase;
import org.connectbot.util.PreferenceConstants;
+import android.annotation.TargetApi;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
@@ -174,6 +175,7 @@ public abstract class ConnectionNotifier {
}
}
+ @TargetApi(5)
private static class EclairAndBeyond extends ConnectionNotifier {
private static class Holder {
private static final EclairAndBeyond sInstance = new EclairAndBeyond();
diff --git a/src/org/connectbot/service/ConnectivityReceiver.java b/app/src/main/java/org/connectbot/service/ConnectivityReceiver.java
index 3248a2a..1342661 100644
--- a/src/org/connectbot/service/ConnectivityReceiver.java
+++ b/app/src/main/java/org/connectbot/service/ConnectivityReceiver.java
@@ -62,8 +62,8 @@ public class ConnectivityReceiver extends BroadcastReceiver {
final String action = intent.getAction();
if (!action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
- Log.w(TAG, "onReceived() called: " + intent);
- return;
+ Log.w(TAG, "onReceived() called: " + intent);
+ return;
}
boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
diff --git a/src/org/connectbot/service/FontSizeChangedListener.java b/app/src/main/java/org/connectbot/service/FontSizeChangedListener.java
index eb1c33d..eb1c33d 100644
--- a/src/org/connectbot/service/FontSizeChangedListener.java
+++ b/app/src/main/java/org/connectbot/service/FontSizeChangedListener.java
diff --git a/src/org/connectbot/service/KeyEventUtil.java b/app/src/main/java/org/connectbot/service/KeyEventUtil.java
index 1362afa..1362afa 100644
--- a/src/org/connectbot/service/KeyEventUtil.java
+++ b/app/src/main/java/org/connectbot/service/KeyEventUtil.java
diff --git a/src/org/connectbot/service/PromptHelper.java b/app/src/main/java/org/connectbot/service/PromptHelper.java
index f0a37be..f0a37be 100644
--- a/src/org/connectbot/service/PromptHelper.java
+++ b/app/src/main/java/org/connectbot/service/PromptHelper.java
diff --git a/src/org/connectbot/service/Relay.java b/app/src/main/java/org/connectbot/service/Relay.java
index 36672ec..36672ec 100644
--- a/src/org/connectbot/service/Relay.java
+++ b/app/src/main/java/org/connectbot/service/Relay.java
diff --git a/src/org/connectbot/service/TerminalBridge.java b/app/src/main/java/org/connectbot/service/TerminalBridge.java
index 6b87b74..6b87b74 100644
--- a/src/org/connectbot/service/TerminalBridge.java
+++ b/app/src/main/java/org/connectbot/service/TerminalBridge.java
diff --git a/src/org/connectbot/service/TerminalKeyListener.java b/app/src/main/java/org/connectbot/service/TerminalKeyListener.java
index 7ff21df..64fae56 100644
--- a/src/org/connectbot/service/TerminalKeyListener.java
+++ b/app/src/main/java/org/connectbot/service/TerminalKeyListener.java
@@ -291,7 +291,7 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
// with our derived modifier state applied.
int uchar = event.getUnicodeChar(derivedMetaState & ~HC_META_CTRL_MASK);
int ucharWithoutAlt = event.getUnicodeChar(
- derivedMetaState & ~(HC_META_ALT_MASK | HC_META_CTRL_MASK));
+ derivedMetaState & ~(HC_META_ALT_MASK | HC_META_CTRL_MASK));
if (uchar != ucharWithoutAlt) {
// The alt key was used to modify the character returned; therefore, drop the alt
// modifier from the state so we don't end up sending alt+key.
@@ -536,9 +536,9 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
if (PreferenceConstants.KEYMODE.equals(key) ||
- PreferenceConstants.SHIFT_FKEYS.equals(key) ||
- PreferenceConstants.CTRL_FKEYS.equals(key) ||
- PreferenceConstants.VOLUME_FONT.equals(key)) {
+ PreferenceConstants.SHIFT_FKEYS.equals(key) ||
+ PreferenceConstants.CTRL_FKEYS.equals(key) ||
+ PreferenceConstants.VOLUME_FONT.equals(key)) {
updatePrefs();
}
}
diff --git a/src/org/connectbot/service/TerminalManager.java b/app/src/main/java/org/connectbot/service/TerminalManager.java
index 369d79a..369d79a 100644
--- a/src/org/connectbot/service/TerminalManager.java
+++ b/app/src/main/java/org/connectbot/service/TerminalManager.java
diff --git a/src/org/connectbot/transport/AbsTransport.java b/app/src/main/java/org/connectbot/transport/AbsTransport.java
index 18397ea..18397ea 100644
--- a/src/org/connectbot/transport/AbsTransport.java
+++ b/app/src/main/java/org/connectbot/transport/AbsTransport.java
diff --git a/src/org/connectbot/transport/Local.java b/app/src/main/java/org/connectbot/transport/Local.java
index 5ace1b0..5ace1b0 100644
--- a/src/org/connectbot/transport/Local.java
+++ b/app/src/main/java/org/connectbot/transport/Local.java
diff --git a/src/org/connectbot/transport/SSH.java b/app/src/main/java/org/connectbot/transport/SSH.java
index 6ef9745..e02b4af 100644
--- a/src/org/connectbot/transport/SSH.java
+++ b/app/src/main/java/org/connectbot/transport/SSH.java
@@ -153,7 +153,7 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC
else if ("ssh-dss".equals(serverHostKeyAlgorithm))
algorithmName = "DSA";
else if (serverHostKeyAlgorithm.startsWith("ecdsa-"))
- algorithmName = "EC";
+ algorithmName = "EC";
else
algorithmName = serverHostKeyAlgorithm;
diff --git a/src/org/connectbot/transport/Telnet.java b/app/src/main/java/org/connectbot/transport/Telnet.java
index 5fde2f6..5fde2f6 100644
--- a/src/org/connectbot/transport/Telnet.java
+++ b/app/src/main/java/org/connectbot/transport/Telnet.java
diff --git a/src/org/connectbot/transport/TransportFactory.java b/app/src/main/java/org/connectbot/transport/TransportFactory.java
index 72e5e08..72e5e08 100644
--- a/src/org/connectbot/transport/TransportFactory.java
+++ b/app/src/main/java/org/connectbot/transport/TransportFactory.java
diff --git a/src/org/connectbot/util/Colors.java b/app/src/main/java/org/connectbot/util/Colors.java
index ff88d68..ff88d68 100644
--- a/src/org/connectbot/util/Colors.java
+++ b/app/src/main/java/org/connectbot/util/Colors.java
diff --git a/src/org/connectbot/util/EastAsianWidth.java b/app/src/main/java/org/connectbot/util/EastAsianWidth.java
index 0e274b5..da710fb 100644
--- a/src/org/connectbot/util/EastAsianWidth.java
+++ b/app/src/main/java/org/connectbot/util/EastAsianWidth.java
@@ -17,6 +17,7 @@
package org.connectbot.util;
+import android.annotation.TargetApi;
import android.graphics.Paint;
import android.text.AndroidCharacter;
@@ -61,6 +62,7 @@ public abstract class EastAsianWidth {
}
}
+ @TargetApi(8)
private static class FroyoAndBeyond extends EastAsianWidth {
private static class Holder {
private static final FroyoAndBeyond sInstance = new FroyoAndBeyond();
diff --git a/src/org/connectbot/util/Encryptor.java b/app/src/main/java/org/connectbot/util/Encryptor.java
index 9d21454..9d21454 100644
--- a/src/org/connectbot/util/Encryptor.java
+++ b/app/src/main/java/org/connectbot/util/Encryptor.java
diff --git a/src/org/connectbot/util/EntropyDialog.java b/app/src/main/java/org/connectbot/util/EntropyDialog.java
index 4498ce2..4498ce2 100644
--- a/src/org/connectbot/util/EntropyDialog.java
+++ b/app/src/main/java/org/connectbot/util/EntropyDialog.java
diff --git a/src/org/connectbot/util/EntropyView.java b/app/src/main/java/org/connectbot/util/EntropyView.java
index c988673..c988673 100644
--- a/src/org/connectbot/util/EntropyView.java
+++ b/app/src/main/java/org/connectbot/util/EntropyView.java
diff --git a/src/org/connectbot/util/HelpTopicView.java b/app/src/main/java/org/connectbot/util/HelpTopicView.java
index 0cbc267..0cbc267 100644
--- a/src/org/connectbot/util/HelpTopicView.java
+++ b/app/src/main/java/org/connectbot/util/HelpTopicView.java
diff --git a/src/org/connectbot/util/HostDatabase.java b/app/src/main/java/org/connectbot/util/HostDatabase.java
index 2a92bab..2a92bab 100644
--- a/src/org/connectbot/util/HostDatabase.java
+++ b/app/src/main/java/org/connectbot/util/HostDatabase.java
diff --git a/src/org/connectbot/util/OnDbWrittenListener.java b/app/src/main/java/org/connectbot/util/OnDbWrittenListener.java
index ef33797..ef33797 100644
--- a/src/org/connectbot/util/OnDbWrittenListener.java
+++ b/app/src/main/java/org/connectbot/util/OnDbWrittenListener.java
diff --git a/src/org/connectbot/util/OnEntropyGatheredListener.java b/app/src/main/java/org/connectbot/util/OnEntropyGatheredListener.java
index 5debd65..5debd65 100644
--- a/src/org/connectbot/util/OnEntropyGatheredListener.java
+++ b/app/src/main/java/org/connectbot/util/OnEntropyGatheredListener.java
diff --git a/src/org/connectbot/util/PreferenceConstants.java b/app/src/main/java/org/connectbot/util/PreferenceConstants.java
index ad29c39..ad29c39 100644
--- a/src/org/connectbot/util/PreferenceConstants.java
+++ b/app/src/main/java/org/connectbot/util/PreferenceConstants.java
diff --git a/src/org/connectbot/util/PubkeyDatabase.java b/app/src/main/java/org/connectbot/util/PubkeyDatabase.java
index a8993cb..a8993cb 100644
--- a/src/org/connectbot/util/PubkeyDatabase.java
+++ b/app/src/main/java/org/connectbot/util/PubkeyDatabase.java
diff --git a/src/org/connectbot/util/PubkeyUtils.java b/app/src/main/java/org/connectbot/util/PubkeyUtils.java
index e7922bd..e7922bd 100644
--- a/src/org/connectbot/util/PubkeyUtils.java
+++ b/app/src/main/java/org/connectbot/util/PubkeyUtils.java
diff --git a/src/org/connectbot/util/RobustSQLiteOpenHelper.java b/app/src/main/java/org/connectbot/util/RobustSQLiteOpenHelper.java
index abdd991..abdd991 100644
--- a/src/org/connectbot/util/RobustSQLiteOpenHelper.java
+++ b/app/src/main/java/org/connectbot/util/RobustSQLiteOpenHelper.java
diff --git a/src/org/connectbot/util/UberColorPickerDialog.java b/app/src/main/java/org/connectbot/util/UberColorPickerDialog.java
index 2c01b30..407edfd 100644
--- a/src/org/connectbot/util/UberColorPickerDialog.java
+++ b/app/src/main/java/org/connectbot/util/UberColorPickerDialog.java
@@ -741,17 +741,17 @@ public class UberColorPickerDialog extends Dialog {
else if (y > 0)
y2 = jump;
- mCoord[0] += x2;
- mCoord[1] += y2;
-
- if (mCoord[0] < -PALETTE_RADIUS)
- mCoord[0] = -PALETTE_RADIUS;
- else if (mCoord[0] > PALETTE_RADIUS)
- mCoord[0] = PALETTE_RADIUS;
- if (mCoord[1] < -PALETTE_RADIUS)
- mCoord[1] = -PALETTE_RADIUS;
- else if (mCoord[1] > PALETTE_RADIUS)
- mCoord[1] = PALETTE_RADIUS;
+ mCoord[0] += x2;
+ mCoord[1] += y2;
+
+ if (mCoord[0] < -PALETTE_RADIUS)
+ mCoord[0] = -PALETTE_RADIUS;
+ else if (mCoord[0] > PALETTE_RADIUS)
+ mCoord[0] = PALETTE_RADIUS;
+ if (mCoord[1] < -PALETTE_RADIUS)
+ mCoord[1] = -PALETTE_RADIUS;
+ else if (mCoord[1] > PALETTE_RADIUS)
+ mCoord[1] = PALETTE_RADIUS;
float radius = (float)java.lang.Math.sqrt(mCoord[0] * mCoord[0] + mCoord[1] * mCoord[1]);
if (radius > PALETTE_RADIUS)
diff --git a/src/org/connectbot/util/VolumePreference.java b/app/src/main/java/org/connectbot/util/VolumePreference.java
index 2e7f61c..2e7f61c 100644
--- a/src/org/connectbot/util/VolumePreference.java
+++ b/app/src/main/java/org/connectbot/util/VolumePreference.java
diff --git a/src/org/connectbot/util/XmlBuilder.java b/app/src/main/java/org/connectbot/util/XmlBuilder.java
index 4a6f62d..4a6f62d 100644
--- a/src/org/connectbot/util/XmlBuilder.java
+++ b/app/src/main/java/org/connectbot/util/XmlBuilder.java
diff --git a/src/org/keyczar/jce/EcCore.java b/app/src/main/java/org/keyczar/jce/EcCore.java
index 681d5db..681d5db 100644
--- a/src/org/keyczar/jce/EcCore.java
+++ b/app/src/main/java/org/keyczar/jce/EcCore.java
diff --git a/src/org/openintents/intents/FileManagerIntents.java b/app/src/main/java/org/openintents/intents/FileManagerIntents.java
index fba2555..fba2555 100644
--- a/src/org/openintents/intents/FileManagerIntents.java
+++ b/app/src/main/java/org/openintents/intents/FileManagerIntents.java
diff --git a/jni/Exec/com_google_ase_Exec.cpp b/app/src/main/jni/com_google_ase_Exec.cpp
index b78f356..b78f356 100644
--- a/jni/Exec/com_google_ase_Exec.cpp
+++ b/app/src/main/jni/com_google_ase_Exec.cpp
diff --git a/jni/Exec/com_google_ase_Exec.h b/app/src/main/jni/com_google_ase_Exec.h
index a2a6052..a2a6052 100644
--- a/jni/Exec/com_google_ase_Exec.h
+++ b/app/src/main/jni/com_google_ase_Exec.h
diff --git a/res/anim/fade_out_delayed.xml b/app/src/main/res/anim/fade_out_delayed.xml
index 20ca839..20ca839 100644
--- a/res/anim/fade_out_delayed.xml
+++ b/app/src/main/res/anim/fade_out_delayed.xml
diff --git a/res/anim/fade_stay_hidden.xml b/app/src/main/res/anim/fade_stay_hidden.xml
index e62ca8b..e62ca8b 100644
--- a/res/anim/fade_stay_hidden.xml
+++ b/app/src/main/res/anim/fade_stay_hidden.xml
diff --git a/res/anim/keyboard_fade_in.xml b/app/src/main/res/anim/keyboard_fade_in.xml
index edd5b94..edd5b94 100644
--- a/res/anim/keyboard_fade_in.xml
+++ b/app/src/main/res/anim/keyboard_fade_in.xml
diff --git a/res/anim/keyboard_fade_out.xml b/app/src/main/res/anim/keyboard_fade_out.xml
index 1f37d32..1f37d32 100644
--- a/res/anim/keyboard_fade_out.xml
+++ b/app/src/main/res/anim/keyboard_fade_out.xml
diff --git a/res/anim/slide_left_in.xml b/app/src/main/res/anim/slide_left_in.xml
index 29a0048..29a0048 100644
--- a/res/anim/slide_left_in.xml
+++ b/app/src/main/res/anim/slide_left_in.xml
diff --git a/res/anim/slide_left_out.xml b/app/src/main/res/anim/slide_left_out.xml
index 9c46442..9c46442 100644
--- a/res/anim/slide_left_out.xml
+++ b/app/src/main/res/anim/slide_left_out.xml
diff --git a/res/anim/slide_right_in.xml b/app/src/main/res/anim/slide_right_in.xml
index 0d52c9f..0d52c9f 100644
--- a/res/anim/slide_right_in.xml
+++ b/app/src/main/res/anim/slide_right_in.xml
diff --git a/res/anim/slide_right_out.xml b/app/src/main/res/anim/slide_right_out.xml
index ace4e9d..ace4e9d 100644
--- a/res/anim/slide_right_out.xml
+++ b/app/src/main/res/anim/slide_right_out.xml
diff --git a/res/color/blue.xml b/app/src/main/res/color/blue.xml
index 981c3ef..981c3ef 100644
--- a/res/color/blue.xml
+++ b/app/src/main/res/color/blue.xml
diff --git a/res/color/green.xml b/app/src/main/res/color/green.xml
index 388ea58..388ea58 100644
--- a/res/color/green.xml
+++ b/app/src/main/res/color/green.xml
diff --git a/res/color/red.xml b/app/src/main/res/color/red.xml
index b7e18cd..b7e18cd 100644
--- a/res/color/red.xml
+++ b/app/src/main/res/color/red.xml
diff --git a/res/drawable-hdpi/icon.png b/app/src/main/res/drawable-hdpi/icon.png
index f5154b3..f5154b3 100644
--- a/res/drawable-hdpi/icon.png
+++ b/app/src/main/res/drawable-hdpi/icon.png
Binary files differ
diff --git a/res/drawable-hdpi/notification_icon.png b/app/src/main/res/drawable-hdpi/notification_icon.png
index 518f990..518f990 100644
--- a/res/drawable-hdpi/notification_icon.png
+++ b/app/src/main/res/drawable-hdpi/notification_icon.png
Binary files differ
diff --git a/res/drawable-mdpi-v6/icon.png b/app/src/main/res/drawable-mdpi-v6/icon.png
index e701f14..e701f14 100644
--- a/res/drawable-mdpi-v6/icon.png
+++ b/app/src/main/res/drawable-mdpi-v6/icon.png
Binary files differ
diff --git a/res/drawable-mdpi/icon.png b/app/src/main/res/drawable-mdpi/icon.png
index 8a7202d..8a7202d 100644
--- a/res/drawable-mdpi/icon.png
+++ b/app/src/main/res/drawable-mdpi/icon.png
Binary files differ
diff --git a/res/drawable-mdpi/notification_icon.png b/app/src/main/res/drawable-mdpi/notification_icon.png
index 01f6dca..01f6dca 100644
--- a/res/drawable-mdpi/notification_icon.png
+++ b/app/src/main/res/drawable-mdpi/notification_icon.png
Binary files differ
diff --git a/res/drawable/button_ctrl.png b/app/src/main/res/drawable/button_ctrl.png
index dc4d786..dc4d786 100644
--- a/res/drawable/button_ctrl.png
+++ b/app/src/main/res/drawable/button_ctrl.png
Binary files differ
diff --git a/res/drawable/button_esc.png b/app/src/main/res/drawable/button_esc.png
index 5f0cfc6..5f0cfc6 100644
--- a/res/drawable/button_esc.png
+++ b/app/src/main/res/drawable/button_esc.png
Binary files differ
diff --git a/res/drawable/button_keyboard.png b/app/src/main/res/drawable/button_keyboard.png
index 9205d8b..9205d8b 100644
--- a/res/drawable/button_keyboard.png
+++ b/app/src/main/res/drawable/button_keyboard.png
Binary files differ
diff --git a/res/drawable/connected.xml b/app/src/main/res/drawable/connected.xml
index 7b633d3..7b633d3 100644
--- a/res/drawable/connected.xml
+++ b/app/src/main/res/drawable/connected.xml
diff --git a/res/drawable/highlight_disabled_pressed.9.png b/app/src/main/res/drawable/highlight_disabled_pressed.9.png
index 807fcb5..807fcb5 100644
--- a/res/drawable/highlight_disabled_pressed.9.png
+++ b/app/src/main/res/drawable/highlight_disabled_pressed.9.png
Binary files differ
diff --git a/res/drawable/ic_btn_back.png b/app/src/main/res/drawable/ic_btn_back.png
index 9615e67..9615e67 100644
--- a/res/drawable/ic_btn_back.png
+++ b/app/src/main/res/drawable/ic_btn_back.png
Binary files differ
diff --git a/res/drawable/ic_btn_next.png b/app/src/main/res/drawable/ic_btn_next.png
index ea2a80e..ea2a80e 100644
--- a/res/drawable/ic_btn_next.png
+++ b/app/src/main/res/drawable/ic_btn_next.png
Binary files differ
diff --git a/res/drawable/icon_older.png b/app/src/main/res/drawable/icon_older.png
index 323b99f..323b99f 100644
--- a/res/drawable/icon_older.png
+++ b/app/src/main/res/drawable/icon_older.png
Binary files differ
diff --git a/res/drawable/pubkey.xml b/app/src/main/res/drawable/pubkey.xml
index 1926d24..1926d24 100644
--- a/res/drawable/pubkey.xml
+++ b/app/src/main/res/drawable/pubkey.xml
diff --git a/res/drawable/pubkey_locked.png b/app/src/main/res/drawable/pubkey_locked.png
index 7df56b5..7df56b5 100644
--- a/res/drawable/pubkey_locked.png
+++ b/app/src/main/res/drawable/pubkey_locked.png
Binary files differ
diff --git a/res/drawable/pubkey_unlocked.png b/app/src/main/res/drawable/pubkey_unlocked.png
index eec4558..eec4558 100644
--- a/res/drawable/pubkey_unlocked.png
+++ b/app/src/main/res/drawable/pubkey_unlocked.png
Binary files differ
diff --git a/res/layout-land/item_host.xml b/app/src/main/res/layout-land/item_host.xml
index 9cde624..9cde624 100644
--- a/res/layout-land/item_host.xml
+++ b/app/src/main/res/layout-land/item_host.xml
diff --git a/res/layout-port/item_host.xml b/app/src/main/res/layout-port/item_host.xml
index 24d34ba..24d34ba 100644
--- a/res/layout-port/item_host.xml
+++ b/app/src/main/res/layout-port/item_host.xml
diff --git a/res/layout/act_colors.xml b/app/src/main/res/layout/act_colors.xml
index 625437d..625437d 100644
--- a/res/layout/act_colors.xml
+++ b/app/src/main/res/layout/act_colors.xml
diff --git a/res/layout/act_console.xml b/app/src/main/res/layout/act_console.xml
index f7db787..f7db787 100644
--- a/res/layout/act_console.xml
+++ b/app/src/main/res/layout/act_console.xml
diff --git a/res/layout/act_generatepubkey.xml b/app/src/main/res/layout/act_generatepubkey.xml
index 171ffd8..171ffd8 100644
--- a/res/layout/act_generatepubkey.xml
+++ b/app/src/main/res/layout/act_generatepubkey.xml
diff --git a/res/layout/act_help.xml b/app/src/main/res/layout/act_help.xml
index 833aefb..833aefb 100644
--- a/res/layout/act_help.xml
+++ b/app/src/main/res/layout/act_help.xml
diff --git a/res/layout/act_help_topic.xml b/app/src/main/res/layout/act_help_topic.xml
index 7123d63..7123d63 100644
--- a/res/layout/act_help_topic.xml
+++ b/app/src/main/res/layout/act_help_topic.xml
diff --git a/res/layout/act_hostlist.xml b/app/src/main/res/layout/act_hostlist.xml
index 80d1583..80d1583 100644
--- a/res/layout/act_hostlist.xml
+++ b/app/src/main/res/layout/act_hostlist.xml
diff --git a/res/layout/act_portforwardlist.xml b/app/src/main/res/layout/act_portforwardlist.xml
index b8589d0..b8589d0 100644
--- a/res/layout/act_portforwardlist.xml
+++ b/app/src/main/res/layout/act_portforwardlist.xml
diff --git a/res/layout/act_pubkeylist.xml b/app/src/main/res/layout/act_pubkeylist.xml
index ceabb52..ceabb52 100644
--- a/res/layout/act_pubkeylist.xml
+++ b/app/src/main/res/layout/act_pubkeylist.xml
diff --git a/res/layout/act_wizard.xml b/app/src/main/res/layout/act_wizard.xml
index c68a561..c68a561 100644
--- a/res/layout/act_wizard.xml
+++ b/app/src/main/res/layout/act_wizard.xml
diff --git a/res/layout/dia_changepassword.xml b/app/src/main/res/layout/dia_changepassword.xml
index 1548b3d..1548b3d 100644
--- a/res/layout/dia_changepassword.xml
+++ b/app/src/main/res/layout/dia_changepassword.xml
diff --git a/res/layout/dia_gatherentropy.xml b/app/src/main/res/layout/dia_gatherentropy.xml
index 8c7153a..8c7153a 100644
--- a/res/layout/dia_gatherentropy.xml
+++ b/app/src/main/res/layout/dia_gatherentropy.xml
diff --git a/res/layout/dia_password.xml b/app/src/main/res/layout/dia_password.xml
index 599af83..599af83 100644
--- a/res/layout/dia_password.xml
+++ b/app/src/main/res/layout/dia_password.xml
diff --git a/res/layout/dia_portforward.xml b/app/src/main/res/layout/dia_portforward.xml
index 9402eef..9402eef 100644
--- a/res/layout/dia_portforward.xml
+++ b/app/src/main/res/layout/dia_portforward.xml
diff --git a/res/layout/dia_resize.xml b/app/src/main/res/layout/dia_resize.xml
index 2269bd6..2269bd6 100644
--- a/res/layout/dia_resize.xml
+++ b/app/src/main/res/layout/dia_resize.xml
diff --git a/res/layout/item_portforward.xml b/app/src/main/res/layout/item_portforward.xml
index 4a98f24..4a98f24 100644
--- a/res/layout/item_portforward.xml
+++ b/app/src/main/res/layout/item_portforward.xml
diff --git a/res/layout/item_pubkey.xml b/app/src/main/res/layout/item_pubkey.xml
index 7f4fa5f..7f4fa5f 100644
--- a/res/layout/item_pubkey.xml
+++ b/app/src/main/res/layout/item_pubkey.xml
diff --git a/res/layout/item_terminal.xml b/app/src/main/res/layout/item_terminal.xml
index 9a8ff19..9a8ff19 100644
--- a/res/layout/item_terminal.xml
+++ b/app/src/main/res/layout/item_terminal.xml
diff --git a/res/layout/wiz_eula.xml b/app/src/main/res/layout/wiz_eula.xml
index 06b7c56..06b7c56 100644
--- a/res/layout/wiz_eula.xml
+++ b/app/src/main/res/layout/wiz_eula.xml
diff --git a/res/raw/bell.ogg b/app/src/main/res/raw/bell.ogg
index 674f25d..674f25d 100644
--- a/res/raw/bell.ogg
+++ b/app/src/main/res/raw/bell.ogg
Binary files differ
diff --git a/res/values-af/strings.xml b/app/src/main/res/values-af/strings.xml
index 442f28f..48e602f 100644
--- a/res/values-af/strings.xml
+++ b/app/src/main/res/values-af/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title_hosts_list">Gashere</string>
<string name="title_pubkey_list">Publieke Sleutels</string>
diff --git a/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index 5fb33d6..960e2d9 100644
--- a/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">عميل SSH مفتوح المصدر و بسيط وقوي</string>
<string name="title_hosts_list">المخدمات</string>
diff --git a/res/values-be/strings.xml b/app/src/main/res/values-be/strings.xml
index 1646a69..b629ea5 100644
--- a/res/values-be/strings.xml
+++ b/app/src/main/res/values-be/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="pubkey_list_empty">Tap Menu to create\nor import key pairs.</string>
<string name="portforward_list_empty">Tap Menu to create\nport forwards.</string>
diff --git a/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml
index 32028fa..eb39739 100644
--- a/res/values-bg/strings.xml
+++ b/app/src/main/res/values-bg/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Прост, мощен SSH клиент с отворен код</string>
<string name="title_hosts_list">Хостове</string>
diff --git a/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml
index 3b5801a..e68fdef 100644
--- a/res/values-ca/strings.xml
+++ b/app/src/main/res/values-ca/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Client SSH simple, potent i lliure</string>
<string name="service_desc">Manté les connexions SSH i les claus públiques</string>
diff --git a/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml
index 8fbd0db..a603f07 100644
--- a/res/values-cs/strings.xml
+++ b/app/src/main/res/values-cs/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Jednoduchý, všestranný, open-source SSH klient</string>
<string name="service_desc">Správa SSH spojení a nahraných klíčů</string>
diff --git a/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml
index 950155c..370d5d5 100644
--- a/res/values-da/strings.xml
+++ b/app/src/main/res/values-da/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Enkel, kraftfuld, open source SSH klient</string>
<string name="service_desc">Opretholder SSH forbindelser og indlæste offentlige nøgler</string>
diff --git a/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 39b517b..3edcfaa 100644
--- a/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Einfacher, mächtiger, open-source SSH client.</string>
<string name="service_desc">Hält SSH-Verbindungen und geladene öffentliche Schlüssel aufrecht</string>
diff --git a/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml
index 5b0e837..e5b59ee 100644
--- a/res/values-el/strings.xml
+++ b/app/src/main/res/values-el/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title_help">Βοήθεια</string>
<string name="title_colors">Χρώματα</string>
diff --git a/res/values-en-rCA/strings.xml b/app/src/main/res/values-en-rCA/strings.xml
index 534a588..e1df6f7 100644
--- a/res/values-en-rCA/strings.xml
+++ b/app/src/main/res/values-en-rCA/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title_colors">Colours</string>
<string name="pubkey_list_empty">Tap Menu to create\nor import key pairs.</string>
diff --git a/res/values-en-rGB/strings.xml b/app/src/main/res/values-en-rGB/strings.xml
index 6bc6957..6bc6957 100644
--- a/res/values-en-rGB/strings.xml
+++ b/app/src/main/res/values-en-rGB/strings.xml
diff --git a/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index 28b4865..b7f6306 100644
--- a/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Cliente de SSH sencillo, potente y open-source</string>
<string name="service_desc">Mantiene conexiones SSH y las claves públicas guardadas</string>
diff --git a/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml
index 138dce9..7701c10 100644
--- a/res/values-eu/strings.xml
+++ b/app/src/main/res/values-eu/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">SSH bezero soil, ahaltsu eta librea</string>
<string name="service_desc">SSH konexio eta kargatutako gako publikoak mantentzen ditu</string>
diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml
new file mode 100644
index 0000000..42eba3c
--- /dev/null
+++ b/app/src/main/res/values-fa/strings.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources/>
diff --git a/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml
index 246cea5..fae7213 100644
--- a/res/values-fi/strings.xml
+++ b/app/src/main/res/values-fi/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Yksinkertainen ja tehokas avoimen lähdekoodin SSH-asiakasohjelma.</string>
<string name="service_desc">Ylläpitää SSH-yhteydet ja ladatut julkiset avaimet</string>
diff --git a/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 9255f41..38496d1 100644
--- a/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Un client SSH simple, open-source et puissant.</string>
<string name="service_desc">Maintient les connexions SSH et les clefs publiques chargées</string>
diff --git a/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml
index 7563050..c5ad54a 100644
--- a/res/values-gl/strings.xml
+++ b/app/src/main/res/values-gl/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Cliente SSH simple, potente e open-source</string>
<string name="title_hosts_list">Servidores</string>
diff --git a/res/values-he/strings.xml b/app/src/main/res/values-he/strings.xml
index 246ee95..6cc1571 100644
--- a/res/values-he/strings.xml
+++ b/app/src/main/res/values-he/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">לקוח SSH פשוט, עצמתי ובקוד פתוח.</string>
<string name="service_desc">מתפעל חיבורי SSH ומפתחות ציבוריים שנטענים</string>
diff --git a/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml
index 4d7138f..d8d8988 100644
--- a/res/values-hr/strings.xml
+++ b/app/src/main/res/values-hr/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Jednostavan, moćan, open.source SSH klijent.</string>
<string name="service_desc">Pamti SSH konekcije i učitane javne ključeve</string>
diff --git a/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml
index f95584b..f1c232d 100644
--- a/res/values-hu/strings.xml
+++ b/app/src/main/res/values-hu/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Egyszerű, hatékony, nyílt-forráskódú SSH kliens.</string>
<string name="service_desc">Fenntartja az SSH kapcsolatokat és a betöltött nyilvános kulcsokat</string>
diff --git a/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml
index 0edb77e..3bd6a68 100644
--- a/res/values-id/strings.xml
+++ b/app/src/main/res/values-id/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Sederhana, tangguh, klien SSH dengan kode terbuka.</string>
<string name="service_desc">"Mengelola koneksi SSH dan kunci publik yang terrekam"</string>
diff --git a/res/values-is/strings.xml b/app/src/main/res/values-is/strings.xml
index 5c74d5f..abeaca0 100644
--- a/res/values-is/strings.xml
+++ b/app/src/main/res/values-is/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="service_desc">Heldur utan um SSH tengingar og geymda \"pubkeys\"</string>
<string name="title_hosts_list">Þjónar</string>
diff --git a/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index 12a1752..0a95b01 100644
--- a/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Un client SSH semplice, potente ed open-source.</string>
<string name="service_desc">Mantieni le connessioni SSH e le chiavi pubbliche caricate</string>
diff --git a/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml
index 6c5d185..5edf28a 100644
--- a/res/values-ja/strings.xml
+++ b/app/src/main/res/values-ja/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">シンプルでパワフルなオープンソースのSSHクライアント</string>
<string name="title_hosts_list">ホスト</string>
diff --git a/res/values-ka/strings.xml b/app/src/main/res/values-ka/strings.xml
index d1343d7..ea8da1e 100644
--- a/res/values-ka/strings.xml
+++ b/app/src/main/res/values-ka/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title_host_editor">ჰოსტის შეცვლა</string>
<string name="title_help">დახმარება</string>
diff --git a/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml
index 2993e6d..9542d10 100644
--- a/res/values-ko/strings.xml
+++ b/app/src/main/res/values-ko/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">간단하고, 강력한, 오픈소스 SSH 클라이언트.</string>
<string name="title_hosts_list">호스트</string>
diff --git a/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml
index 7b61c88..ff3c947 100644
--- a/res/values-lt/strings.xml
+++ b/app/src/main/res/values-lt/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title_help">Pagalba</string>
<string name="title_colors">Spalvos</string>
diff --git a/app/src/main/res/values-lv/strings.xml b/app/src/main/res/values-lv/strings.xml
new file mode 100644
index 0000000..42eba3c
--- /dev/null
+++ b/app/src/main/res/values-lv/strings.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources/>
diff --git a/res/values-mk/strings.xml b/app/src/main/res/values-mk/strings.xml
index 183a953..33c18c8 100644
--- a/res/values-mk/strings.xml
+++ b/app/src/main/res/values-mk/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Едноставен но моќен SSH клиент со отворен код.</string>
<string name="service_desc">Ги оддрѓува SSH конекциите и вчитаните pub клучеви</string>
diff --git a/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml
index 6f8941e..3a86729 100644
--- a/res/values-nb/strings.xml
+++ b/app/src/main/res/values-nb/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Enkel og omfattende SSH-klient med åpen kildekode.</string>
<string name="service_desc">Opprettholder SSH-tilkoblinger og innlastede offentlige nøkler</string>
diff --git a/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index a4e4a78..6339ac0 100644
--- a/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Simpele, krachtige, open-source SSH client.</string>
<string name="service_desc">Onderhoud SSH verbindingen en geladen pubkeys</string>
diff --git a/res/values-oc/strings.xml b/app/src/main/res/values-oc/strings.xml
index 4acf5bc..72c7df9 100644
--- a/res/values-oc/strings.xml
+++ b/app/src/main/res/values-oc/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Un client SSH simple, open-source e poderós.</string>
<string name="title_hosts_list">Òstes</string>
diff --git a/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index 2cbde54..9e59d04 100644
--- a/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Prosty, wszechstronny i otwarty klient SSH</string>
<string name="service_desc">Zarządza połączeniami SSH i załadowanymi kluczami publicznymi</string>
diff --git a/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index f4d06f0..491eb05 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Cliente SSH simples e poderoso de código aberto</string>
<string name="service_desc">Mantém conexões SSH e de Chaves Públicas</string>
diff --git a/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml
index 401bc69..c9a2081 100644
--- a/res/values-pt/strings.xml
+++ b/app/src/main/res/values-pt/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Simples e poderoso cliente SSH open-source</string>
<string name="service_desc">Manter ligações SSH e chaves públicas carregadas</string>
diff --git a/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml
index 2581c39..63342e0 100644
--- a/res/values-ro/strings.xml
+++ b/app/src/main/res/values-ro/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Un client SSH simplu, flexibil, open-source</string>
<string name="service_desc">Managementul conexiunilor si al cheilor publice</string>
diff --git a/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index e80b26b..6b6286a 100644
--- a/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Простой и мощный SSH-клиент с открытым исходным кодом.</string>
<string name="service_desc">Управляет SSH-соединениями и загруженными публичными ключами</string>
diff --git a/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml
index 2920121..e107a36 100644
--- a/res/values-sk/strings.xml
+++ b/app/src/main/res/values-sk/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Jednoduchý, výkonný, open-source SSH klient.</string>
<string name="service_desc">Spravuje SSH spojenia a načítané verejné kľúče</string>
diff --git a/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml
index 1647a94..649c473 100644
--- a/res/values-sl/strings.xml
+++ b/app/src/main/res/values-sl/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Enostaven, močan, odprtokodni SSH odjemalec.</string>
<string name="service_desc">Vzdržuje SSH povezave in naložene javne ključe</string>
diff --git a/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml
index ad50555..42b9fa7 100644
--- a/res/values-sv/strings.xml
+++ b/app/src/main/res/values-sv/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Enkel och kraftfull SSH-klient baserad på öppen källkod.</string>
<string name="service_desc">Upprätthåller SSH-anslutningar och laddade publika nycklar</string>
diff --git a/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml
index d7582c3..91cc742 100644
--- a/res/values-tr/strings.xml
+++ b/app/src/main/res/values-tr/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Basit, güçlü, açık kaynak kodlu SSH client</string>
<string name="service_desc">SSH bağlantılarını ve yüklenmiş açık-anahtarları muhafaza eder</string>
diff --git a/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index f6d929c..d6c0401 100644
--- a/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">Простий та потужний SSH клієнт з відкритим кодом</string>
<string name="title_hosts_list">Вузли</string>
diff --git a/res/values-v11/styles.xml b/app/src/main/res/values-v11/styles.xml
index 9a0c22b..9a0c22b 100644
--- a/res/values-v11/styles.xml
+++ b/app/src/main/res/values-v11/styles.xml
diff --git a/res/values-v14/styles.xml b/app/src/main/res/values-v14/styles.xml
index 3969010..3969010 100644
--- a/res/values-v14/styles.xml
+++ b/app/src/main/res/values-v14/styles.xml
diff --git a/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml
index a9c64c2..846b23d 100644
--- a/res/values-vi/strings.xml
+++ b/app/src/main/res/values-vi/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title_hosts_list">Máy chủ</string>
<string name="title_help">Trợ giúp</string>
diff --git a/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 3b1b548..42ec041 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">简洁、强大、开源的SSH客户端</string>
<string name="service_desc">维护SSH连接及已装载的公钥</string>
diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..42eba3c
--- /dev/null
+++ b/app/src/main/res/values-zh-rHK/strings.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources/>
diff --git a/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
index 1ebddd7..bd79a68 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -1,4 +1,4 @@
-<?xml version='1.0' encoding='utf-8'?>
+<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_desc">簡單、強大、開放原始碼的SSH用戶端</string>
<string name="service_desc">管理SSH連線及載入公鑰</string>
diff --git a/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index c9090ea..c9090ea 100644
--- a/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
diff --git a/res/values/notrans.xml b/app/src/main/res/values/notrans.xml
index 3142ed6..3142ed6 100644
--- a/res/values/notrans.xml
+++ b/app/src/main/res/values/notrans.xml
diff --git a/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e4f2aa5..e4f2aa5 100644
--- a/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
diff --git a/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 22e830b..22e830b 100644
--- a/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
diff --git a/res/values/version.xml b/app/src/main/res/values/version.xml
index 94227c9..94227c9 100644
--- a/res/values/version.xml
+++ b/app/src/main/res/values/version.xml
diff --git a/res/xml/host_prefs.xml b/app/src/main/res/xml/host_prefs.xml
index fea90cb..fea90cb 100644
--- a/res/xml/host_prefs.xml
+++ b/app/src/main/res/xml/host_prefs.xml
diff --git a/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 6d64ce2..6d64ce2 100644
--- a/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000..d70a821
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,32 @@
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
+
+buildscript {
+ repositories {
+ jcenter()
+ maven {
+ url 'https://dl.bintray.com/phildopus/maven'
+ }
+ }
+ dependencies {
+ classpath 'com.android.tools.build:gradle:0.13.+'
+ classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.12.+'
+ }
+}
+
+allprojects {
+ repositories {
+ jcenter()
+ }
+}
+
+project.ext.preDexLibs = !project.hasProperty('disablePreDex')
+
+subprojects {
+ project.plugins.whenPluginAdded { plugin ->
+ if ("com.android.build.gradle.AppPlugin".equals(plugin.class.name)) {
+ project.android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
+ } else if ("com.android.build.gradle.LibraryPlugin".equals(plugin.class.name)) {
+ project.android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
+ }
+ }
+}
diff --git a/build.xml b/build.xml
index aebe4f9..376125b 100644
--- a/build.xml
+++ b/build.xml
@@ -2,82 +2,6 @@
<!-- vim: set ts=4 sw=4 et: -->
<project name="ConnectBot" default="help">
- <!-- The local.properties file is created and updated by the 'android' tool.
- It contains the path to the SDK. It should *NOT* be checked into
- Version Control Systems. -->
- <loadproperties srcFile="local.properties" />
-
- <!-- The ant.properties file can be created by you. It is only edited by the
- 'android' tool to add properties to it.
- This is the place to change some Ant specific build properties.
- Here are some properties you may want to change/update:
-
- source.dir
- The name of the source directory. Default is 'src'.
- out.dir
- The name of the output directory. Default is 'bin'.
-
- For other overridable properties, look at the beginning of the rules
- files in the SDK, at tools/ant/build.xml
-
- Properties related to the SDK location or the project target should
- be updated using the 'android' tool with the 'update' action.
-
- This file is an integral part of the build system for your
- application and should be checked into Version Control Systems.
-
- -->
- <property file="ant.properties" />
-
- <!-- The project.properties file is created and updated by the 'android'
- tool, as well as ADT.
- This file is an integral part of the build system for your
- application and should be checked into Version Control Systems. -->
- <loadproperties srcFile="project.properties" />
-
- <!-- quick check on sdk.dir -->
- <fail
- message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'"
- unless="sdk.dir"
- />
-
-
-<!-- extension targets. Uncomment the ones where you want to do custom work
- in between standard targets -->
-<!--
- <target name="-pre-build">
- </target>
- <target name="-pre-compile">
- </target>
-
- /* This is typically used for code obfuscation.
- Compiled code location: ${out.classes.absolute.dir}
- If this is not done in place, override ${out.dex.input.absolute.dir} */
- <target name="-post-compile">
- </target>
--->
-
- <!-- Import the actual build file.
-
- To customize existing targets, there are two options:
- - Customize only one target:
- - copy/paste the target into this file, *before* the
- <import> task.
- - customize it to your needs.
- - Customize the whole content of build.xml
- - copy/paste the content of the rules files (minus the top node)
- into this file, replacing the <import> task.
- - customize to your needs.
-
- ***********************
- ****** IMPORTANT ******
- ***********************
- In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
- in order to avoid having your file be overridden by tools such as "android update project"
- -->
- <!-- version-tag: custom -->
- <import file="${sdk.dir}/tools/ant/build.xml" />
-
<!-- Begin custom ConnectBot stuff -->
<!-- Output directory for .po files. -->
diff --git a/config/quality.gradle b/config/quality.gradle
new file mode 100644
index 0000000..f93b4a1
--- /dev/null
+++ b/config/quality.gradle
@@ -0,0 +1,16 @@
+apply plugin: 'checkstyle'
+
+check.dependsOn 'checkstyle'
+
+task checkstyle(type: Checkstyle) {
+ configFile file("${project.rootDir}/config/quality/checkstyle/checkstyle.xml")
+
+ source 'src/main/java'
+ include 'org/connectbot/**/*.java'
+ exclude '**/gen/**'
+
+ def configProps = ['proj.module.dir': projectDir.absolutePath]
+ configProperties configProps
+
+ classpath = files()
+}
diff --git a/config/quality/checkstyle/checkstyle.xml b/config/quality/checkstyle/checkstyle.xml
new file mode 100644
index 0000000..aa27675
--- /dev/null
+++ b/config/quality/checkstyle/checkstyle.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<!DOCTYPE module PUBLIC
+ "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
+ "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
+<module name="Checker">
+ <module name="TreeWalker">
+ <property name="fileExtensions" value="java"/>
+ <module name="RegexpSinglelineJava">
+ <property name="format" value="^\t* +\t*\S"/>
+ <property name="message" value="Line has leading space characters; indentation should be performed with tabs only."/>
+ <property name="ignoreComments" value="true"/>
+ </module>
+ </module>
+</module>
diff --git a/connectbot.iml b/connectbot.iml
new file mode 100644
index 0000000..0bb6048
--- /dev/null
+++ b/connectbot.iml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
+ <component name="FacetManager">
+ <facet type="java-gradle" name="Java-Gradle">
+ <configuration>
+ <option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" />
+ </configuration>
+ </facet>
+ </component>
+ <component name="NewModuleRootManager" inherit-compiler-output="true">
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <excludeFolder url="file://$MODULE_DIR$/.gradle" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
+
diff --git a/connectbot.sublime-project b/connectbot.sublime-project
deleted file mode 100644
index e35ca4e..0000000
--- a/connectbot.sublime-project
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "folders":
- [
- {
- "path": ".",
- "folder_exclude_patterns": ["bin", "gen"]
- }
- ],
- "build_systems":
- [
- {
- "name": "Android Debug",
- "cmd": ["ant", "debug"],
- "file_regex": "^ *\\[javac\\] (.+):([0-9]+):() (.*)$",
- "working_dir": "${project_path:${folder}}",
- "selector": "source.java",
-
- "windows":
- {
- "cmd": ["ant.bat", "debug"]
- },
-
- "variants":
- [
- {
- "name": "Run",
- "cmd": ["ant", "debug", "install"],
- "windows":
- {
- "cmd": ["ant.bat", "debug", "install"]
- }
- }
- ]
- }
- ]
-}
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000..8c0fb64
--- /dev/null
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..9594cfc
--- /dev/null
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Wed Oct 01 19:40:59 BST 2014
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.1-all.zip
diff --git a/gradlew b/gradlew
new file mode 100755
index 0000000..91a7e26
--- /dev/null
+++ b/gradlew
@@ -0,0 +1,164 @@
+#!/usr/bin/env bash
+
+##############################################################################
+##
+## Gradle start up script for UN*X
+##
+##############################################################################
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+ echo "$*"
+}
+
+die ( ) {
+ echo
+ echo "$*"
+ echo
+ exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+case "`uname`" in
+ CYGWIN* )
+ cygwin=true
+ ;;
+ Darwin* )
+ darwin=true
+ ;;
+ MINGW* )
+ msys=true
+ ;;
+esac
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched.
+if $cygwin ; then
+ [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+fi
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >&-
+APP_HOME="`pwd -P`"
+cd "$SAVED" >&-
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD="java"
+ which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ] ; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ] ; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+ GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+ APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+ CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+
+ # We build the pattern for arguments to be converted via cygpath
+ ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+ SEP=""
+ for dir in $ROOTDIRSRAW ; do
+ ROOTDIRS="$ROOTDIRS$SEP$dir"
+ SEP="|"
+ done
+ OURCYGPATTERN="(^($ROOTDIRS))"
+ # Add a user-defined pattern to the cygpath arguments
+ if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+ OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+ fi
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ i=0
+ for arg in "$@" ; do
+ CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+ CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
+
+ if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
+ eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+ else
+ eval `echo args$i`="\"$arg\""
+ fi
+ i=$((i+1))
+ done
+ case $i in
+ (0) set -- ;;
+ (1) set -- "$args0" ;;
+ (2) set -- "$args0" "$args1" ;;
+ (3) set -- "$args0" "$args1" "$args2" ;;
+ (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+ (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+ (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+ (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+ (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+ (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+ esac
+fi
+
+# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
+function splitJvmOpts() {
+ JVM_OPTS=("$@")
+}
+eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
+JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/gradlew.bat b/gradlew.bat
new file mode 100644
index 0000000..8a0b282
--- /dev/null
+++ b/gradlew.bat
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/jni/Android.mk b/jni/Android.mk
deleted file mode 100644
index 5053e7d..0000000
--- a/jni/Android.mk
+++ /dev/null
@@ -1 +0,0 @@
-include $(call all-subdir-makefiles)
diff --git a/jni/Application.mk b/jni/Application.mk
deleted file mode 100644
index 0a352f9..0000000
--- a/jni/Application.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-# Build both ARMv5TE and x86-32 machine code.
-APP_ABI := armeabi x86
diff --git a/jni/Exec/Android.mk b/jni/Exec/Android.mk
deleted file mode 100644
index 505b7cb..0000000
--- a/jni/Exec/Android.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := com_google_ase_Exec
-LOCAL_CFLAGS := -Werror
-LOCAL_SRC_FILES := com_google_ase_Exec.cpp
-LOCAL_LDLIBS := -llog
-
-include $(BUILD_SHARED_LIBRARY)
diff --git a/libs/armeabi/libcom_google_ase_Exec.so b/libs/armeabi/libcom_google_ase_Exec.so
deleted file mode 100755
index eca95a6..0000000
--- a/libs/armeabi/libcom_google_ase_Exec.so
+++ /dev/null
Binary files differ
diff --git a/libs/x86/libcom_google_ase_Exec.so b/libs/x86/libcom_google_ase_Exec.so
deleted file mode 100755
index 55f602d..0000000
--- a/libs/x86/libcom_google_ase_Exec.so
+++ /dev/null
Binary files differ
diff --git a/project.properties b/project.properties
deleted file mode 100644
index 7892870..0000000
--- a/project.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system use,
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-
-# Indicates whether an apk should be generated for each density.
-split.density=false
-proguard.config=proguard.cfg
-# Project target.
-target=android-15
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
deleted file mode 100644
index 94edc23..0000000
--- a/res/values-fa/strings.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<resources/>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
deleted file mode 100644
index 94edc23..0000000
--- a/res/values-lv/strings.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<resources/>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
deleted file mode 100644
index 94edc23..0000000
--- a/res/values-zh-rHK/strings.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<resources/>
diff --git a/robolectric-tests/.gitignore b/robolectric-tests/.gitignore
new file mode 100644
index 0000000..796b96d
--- /dev/null
+++ b/robolectric-tests/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/robolectric-tests/build.gradle b/robolectric-tests/build.gradle
new file mode 100644
index 0000000..ce644af
--- /dev/null
+++ b/robolectric-tests/build.gradle
@@ -0,0 +1,48 @@
+/*
+ * ConnectBot: simple, powerful, open-source SSH client for Android
+ * Copyright 2014 Kenny Root, Jeffrey Sharkey
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+apply plugin: 'java'
+
+evaluationDependsOn(':app')
+
+dependencies {
+ def androidModule = project(':app')
+ compile androidModule
+
+ testCompile androidModule.android.applicationVariants.toList().first().javaCompile.classpath
+ testCompile androidModule.android.applicationVariants.toList().first().javaCompile.outputs.files
+ testCompile files(androidModule.plugins.findPlugin("com.android.application").getBootClasspath())
+
+ // This gets the location of the SDK's Android Support Repo
+ androidModule.repositories {
+ all { ArtifactRepository repo ->
+ if (repo.url.toString().contains("extras/android/m2repository")) {
+ project.repositories.maven { url = repo.url }
+ }
+ }
+ }
+
+ testCompile 'junit:junit:4.10'
+ testCompile 'org.robolectric:robolectric:2.3'
+}
+
+tasks.withType(Test) {
+ scanForTestClasses = false
+ include "**/*Should.class"
+ include "**/*Test.class"
+ include "**/*Tests.class"
+} \ No newline at end of file
diff --git a/robolectric-tests/robolectric-tests.iml b/robolectric-tests/robolectric-tests.iml
new file mode 100644
index 0000000..ffc093e
--- /dev/null
+++ b/robolectric-tests/robolectric-tests.iml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="connectbot" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
+ <component name="FacetManager">
+ <facet type="android-gradle" name="Android-Gradle">
+ <configuration>
+ <option name="GRADLE_PROJECT_PATH" value=":robolectric-tests" />
+ </configuration>
+ </facet>
+ <facet type="java-gradle" name="Java-Gradle">
+ <configuration>
+ <option name="BUILD_FOLDER_PATH" />
+ </configuration>
+ </facet>
+ </component>
+ <component name="NewModuleRootManager" inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/build/classes/main" />
+ <output-test url="file://$MODULE_DIR$/build/classes/test" />
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
+ <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
+ <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
+ <excludeFolder url="file://$MODULE_DIR$/.gradle" />
+ <excludeFolder url="file://$MODULE_DIR$/build" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module" module-name="app" exported="" />
+ <orderEntry type="library" exported="" scope="TEST" name="junit-4.10" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="robolectric-2.3" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="hamcrest-core-1.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="objenesis-1.3" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="sqlite4java-0.282" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="asm-5.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="asm-commons-5.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="asm-util-5.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="asm-analysis-5.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="commons-logging-1.1.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="commons-codec-1.3" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="httpclient-4.0.3" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="vtd-xml-2.11" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="support-v4-19.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="fest-util-1.2.5" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="fest-reflect-1.4.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-ant-tasks-2.1.3" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="asm-tree-5.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="httpcore-4.0.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="ant-1.8.0" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="classworlds-1.1-alpha-2" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="plexus-container-default-1.0-alpha-9-stable-1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="plexus-utils-1.5.15" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="plexus-interpolation-1.11" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-artifact-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-artifact-manager-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-model-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-project-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-error-diagnostics-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-settings-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="wagon-file-1.0-beta-6" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="wagon-http-lightweight-1.0-beta-6" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="wagon-provider-api-1.0-beta-6" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="ant-launcher-1.8.0" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-repository-metadata-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="backport-util-concurrent-3.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-profile-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="maven-plugin-registry-2.2.1" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="wagon-http-shared-1.0-beta-6" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="xercesMinimal-1.9.6.2" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="nekohtml-1.9.6.2" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="_Users_kenny_git_connectbot_app_build_intermediates_classes_debug" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="_Users_kenny_git_connectbot_app_build_intermediates_dependency_cache_debug" level="project" />
+ <orderEntry type="library" exported="" scope="TEST" name="android" level="project" />
+ </component>
+</module>
+
diff --git a/tests/src/org/connectbot/HostBeanTest.java b/robolectric-tests/src/test/java/org/connectbot/HostBeanTest.java
index a252aca..2f8eb2f 100644
--- a/tests/src/org/connectbot/HostBeanTest.java
+++ b/robolectric-tests/src/test/java/org/connectbot/HostBeanTest.java
@@ -18,25 +18,31 @@
package org.connectbot;
import org.connectbot.bean.HostBean;
-import org.connectbot.mock.BeanTestCase;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
-import android.test.AndroidTestCase;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.connectbot.mock.BeanAssertions.assertMeetsEqualsContract;
+import static org.connectbot.mock.BeanAssertions.assertMeetsHashCodeContract;
/**
* @author Kenny Root
- *
*/
-public class HostBeanTest extends AndroidTestCase {
+@Config(manifest = "../app/src/main/AndroidManifest.xml", emulateSdk = 16)
+@RunWith(RobolectricTestRunner.class)
+public class HostBeanTest {
private static final String[] FIELDS = { "nickname", "username",
"hostname", "port" };
- HostBean host1;
- HostBean host2;
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
+ private HostBean host1;
+ private HostBean host2;
+ @Before
+ public void setUp() {
host1 = new HostBean();
host1.setNickname("Home");
host1.setUsername("bob");
@@ -50,19 +56,16 @@ public class HostBeanTest extends AndroidTestCase {
host2.setPort(22);
}
- @Override
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testIdEquality() {
+ @Test
+ public void id_Equality() {
host1.setId(1);
host2.setId(1);
assertTrue(host1.equals(host2));
assertTrue(host1.hashCode() == host2.hashCode());
}
- public void testIdInequality() {
+ @Test
+ public void id_Inequality() {
host1.setId(1);
host2.setId(2);
// HostBeans shouldn't be equal when their IDs are not the same
@@ -72,7 +75,8 @@ public class HostBeanTest extends AndroidTestCase {
host1.hashCode() == host2.hashCode());
}
- public void testIdEquality2() {
+ @Test
+ public void id_Equality2() {
host1.setId(1);
host2.setId(1);
host2.setNickname("Work");
@@ -86,11 +90,13 @@ public class HostBeanTest extends AndroidTestCase {
host1.hashCode() == host2.hashCode());
}
+ @Test
public void testBeanMeetsEqualsContract() {
- BeanTestCase.assertMeetsEqualsContract(HostBean.class, FIELDS);
+ assertMeetsEqualsContract(HostBean.class, FIELDS);
}
+ @Test
public void testBeanMeetsHashCodeContract() {
- BeanTestCase.assertMeetsHashCodeContract(HostBean.class, FIELDS);
+ assertMeetsHashCodeContract(HostBean.class, FIELDS);
}
}
diff --git a/tests/src/org/connectbot/SelectionAreaTest.java b/robolectric-tests/src/test/java/org/connectbot/SelectionAreaTest.java
index 93e0293..6e4134a 100644
--- a/tests/src/org/connectbot/SelectionAreaTest.java
+++ b/robolectric-tests/src/test/java/org/connectbot/SelectionAreaTest.java
@@ -18,18 +18,26 @@
package org.connectbot;
import org.connectbot.bean.SelectionArea;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
-import android.test.AndroidTestCase;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
/**
* @author Kenny Root
*
*/
-public class SelectionAreaTest extends AndroidTestCase {
+@Config(manifest = "../app/src/main/AndroidManifest.xml", emulateSdk = 16)
+@RunWith(RobolectricTestRunner.class)
+public class SelectionAreaTest {
private static final int WIDTH = 80;
private static final int HEIGHT = 24;
- public void testCreate() {
+ @Test
+ public void createSelectionArea() {
SelectionArea sa = new SelectionArea();
assertTrue(sa.getLeft() == 0);
@@ -39,7 +47,8 @@ public class SelectionAreaTest extends AndroidTestCase {
assertTrue(sa.isSelectingOrigin());
}
- public void testCheckMovement() {
+ @Test
+ public void checkMovement() {
SelectionArea sa = new SelectionArea();
sa.setBounds(WIDTH, HEIGHT);
@@ -65,7 +74,8 @@ public class SelectionAreaTest extends AndroidTestCase {
assertTrue(sa.getBottom() == 0);
}
- public void testBounds() {
+ @Test
+ public void boundsAreCorrect() {
SelectionArea sa = new SelectionArea();
sa.setBounds(WIDTH, HEIGHT);
@@ -99,7 +109,8 @@ public class SelectionAreaTest extends AndroidTestCase {
sa.getTop() == 0);
}
- public void testSetThenMove() {
+ @Test
+ public void setThenMove() {
SelectionArea sa = new SelectionArea();
sa.setBounds(WIDTH, HEIGHT);
diff --git a/tests/src/org/connectbot/mock/BeanTestCase.java b/robolectric-tests/src/test/java/org/connectbot/mock/BeanAssertions.java
index 5d13d9f..cf7b7de 100644
--- a/tests/src/org/connectbot/mock/BeanTestCase.java
+++ b/robolectric-tests/src/test/java/org/connectbot/mock/BeanAssertions.java
@@ -7,11 +7,17 @@ import junit.framework.TestCase;
import java.lang.reflect.Field;
-public class BeanTestCase extends TestCase {
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+public class BeanAssertions {
private static final String TEST_STRING_VAL1 = "Some Value";
private static final String TEST_STRING_VAL2 = "Some Other Value";
+ private BeanAssertions() {
+ }
+
public static void assertMeetsEqualsContract(Class<?> classUnderTest,
String[] fieldNames) {
Object o1;
diff --git a/tests/src/org/connectbot/mock/NullOutputStream.java b/robolectric-tests/src/test/java/org/connectbot/mock/NullOutputStream.java
index 79b8e72..79b8e72 100644
--- a/tests/src/org/connectbot/mock/NullOutputStream.java
+++ b/robolectric-tests/src/test/java/org/connectbot/mock/NullOutputStream.java
diff --git a/tests/src/org/connectbot/mock/NullTransport.java b/robolectric-tests/src/test/java/org/connectbot/mock/NullTransport.java
index d841e6a..d841e6a 100644
--- a/tests/src/org/connectbot/mock/NullTransport.java
+++ b/robolectric-tests/src/test/java/org/connectbot/mock/NullTransport.java
diff --git a/tests/src/org/connectbot/util/PubkeyUtilsTest.java b/robolectric-tests/src/test/java/org/connectbot/util/PubkeyUtilsTest.java
index 1eb1ee6..0843e74 100644
--- a/tests/src/org/connectbot/util/PubkeyUtilsTest.java
+++ b/robolectric-tests/src/test/java/org/connectbot/util/PubkeyUtilsTest.java
@@ -17,6 +17,11 @@
package org.connectbot.util;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+
import java.math.BigInteger;
import java.security.KeyPair;
import java.security.NoSuchAlgorithmException;
@@ -27,14 +32,18 @@ import java.security.interfaces.ECPublicKey;
import java.security.interfaces.RSAPublicKey;
import java.util.Arrays;
-import android.test.AndroidTestCase;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
/**
* @author Kenny Root
- *
*/
-public class PubkeyUtilsTest extends AndroidTestCase {
- public void testEncodeHex_Null_Failure() throws Exception {
+@Config(manifest = "../app/src/main/AndroidManifest.xml", emulateSdk = 16)
+@RunWith(RobolectricTestRunner.class)
+public class PubkeyUtilsTest {
+ @Test
+ public void encodeHex_Null_Failure() throws Exception {
try {
PubkeyUtils.encodeHex(null);
fail("Should throw null pointer exception when argument is null");
@@ -42,7 +51,9 @@ public class PubkeyUtilsTest extends AndroidTestCase {
// success
}
}
- public void testEncodeHex_Success() throws Exception {
+
+ @Test
+ public void encodeHex_Success() throws Exception {
byte[] input = {(byte) 0xFF, 0x00, (byte) 0xA5, 0x5A, 0x12, 0x23};
String expected = "ff00a55a1223";
@@ -50,7 +61,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
PubkeyUtils.encodeHex(input), expected);
}
- public void testSha256_Empty_Success() throws Exception {
+ @Test
+ public void sha256_Empty_Success() throws Exception {
byte[] empty_hashed = new byte[] {
(byte) 0xe3, (byte) 0xb0, (byte) 0xc4, (byte) 0x42,
(byte) 0x98, (byte) 0xfc, (byte) 0x1c, (byte) 0x14,
@@ -234,19 +246,23 @@ public class PubkeyUtilsTest extends AndroidTestCase {
private static final BigInteger DSA_KEY_priv = new BigInteger("2950e4774fb2fffb5d33c937f0b58ffb0d45c200", 16);
private static final BigInteger DSA_KEY_pub = new BigInteger("0087b82cdf3232db3bec0d00e96c8393bc7f5629551ea1a00888961cf56e80a36f2a7b316bc10b1d367a5ea374235c9361a472a9176f6cf61f708b86a52b4fae814abd1f1bdd16eea94aea9281851032b1bad7567624c615d6899ca1c94ad614f14e767e49d2ba5223cd113a0d02b66183653cd346ae76d85843afe66520904274", 16);
- public void testGetOidFromPkcs8Encoded_Ec_NistP256() throws Exception {
+ @Test
+ public void getOidFromPkcs8Encoded_Ec_NistP256() throws Exception {
assertEquals("1.2.840.10045.2.1", PubkeyUtils.getOidFromPkcs8Encoded(EC_KEY_PKCS8));
}
- public void testGetOidFromPkcs8Encoded_Rsa() throws Exception {
+ @Test
+ public void getOidFromPkcs8Encoded_Rsa() throws Exception {
assertEquals("1.2.840.113549.1.1.1", PubkeyUtils.getOidFromPkcs8Encoded(RSA_KEY_PKCS8));
}
- public void testGetOidFromPkcs8Encoded_Dsa() throws Exception {
+ @Test
+ public void getOidFromPkcs8Encoded_Dsa() throws Exception {
assertEquals("1.2.840.10040.4.1", PubkeyUtils.getOidFromPkcs8Encoded(DSA_KEY_PKCS8));
}
- public void testGetOidFromPkcs8Encoded_Null_Failure() throws Exception {
+ @Test
+ public void getOidFromPkcs8Encoded_Null_Failure() throws Exception {
try {
PubkeyUtils.getOidFromPkcs8Encoded(null);
fail("Should throw NoSuchAlgorithmException");
@@ -254,7 +270,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
}
}
- public void testGetOidFromPkcs8Encoded_NotCorrectDer_Failure() throws Exception {
+ @Test
+ public void getOidFromPkcs8Encoded_NotCorrectDer_Failure() throws Exception {
try {
PubkeyUtils.getOidFromPkcs8Encoded(new byte[] { 0x30, 0x01, 0x00 });
fail("Should throw NoSuchAlgorithmException");
@@ -262,19 +279,22 @@ public class PubkeyUtilsTest extends AndroidTestCase {
}
}
- public void testGetAlgorithmForOid_Ecdsa() throws Exception {
+ @Test
+ public void getAlgorithmForOid_Ecdsa() throws Exception {
assertEquals("EC", PubkeyUtils.getAlgorithmForOid("1.2.840.10045.2.1"));
}
- public void testGetAlgorithmForOid_Rsa() throws Exception {
+ @Test
+ public void getAlgorithmForOid_Rsa() throws Exception {
assertEquals("RSA", PubkeyUtils.getAlgorithmForOid("1.2.840.113549.1.1.1"));
}
- public void testGetAlgorithmForOid_Dsa() throws Exception {
+ public void getAlgorithmForOid_Dsa() throws Exception {
assertEquals("DSA", PubkeyUtils.getAlgorithmForOid("1.2.840.10040.4.1"));
}
- public void testGetAlgorithmForOid_NullInput_Failure() throws Exception {
+ @Test
+ public void getAlgorithmForOid_NullInput_Failure() throws Exception {
try {
PubkeyUtils.getAlgorithmForOid(null);
fail("Should throw NoSuchAlgorithmException");
@@ -282,7 +302,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
}
}
- public void testGetAlgorithmForOid_UnknownOid_Failure() throws Exception {
+ @Test
+ public void getAlgorithmForOid_UnknownOid_Failure() throws Exception {
try {
PubkeyUtils.getAlgorithmForOid("1.3.66666.2000.4000.1");
fail("Should throw NoSuchAlgorithmException");
@@ -290,7 +311,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
}
}
- public void testRecoverKeyPair_Dsa() throws Exception {
+ @Test
+ public void recoverKeyPair_Dsa() throws Exception {
KeyPair kp = PubkeyUtils.recoverKeyPair(DSA_KEY_PKCS8);
DSAPublicKey pubKey = (DSAPublicKey) kp.getPublic();
@@ -303,7 +325,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
assertEquals(params.getQ(), DSA_KEY_Q);
}
- public void testRecoverKeyPair_Rsa() throws Exception {
+ @Test
+ public void recoverKeyPair_Rsa() throws Exception {
KeyPair kp = PubkeyUtils.recoverKeyPair(RSA_KEY_PKCS8);
RSAPublicKey pubKey = (RSAPublicKey) kp.getPublic();
@@ -312,7 +335,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
assertEquals(RSA_KEY_E, pubKey.getPublicExponent());
}
- public void testRecoverKeyPair_Ec() throws Exception {
+ @Test
+ public void recoverKeyPair_Ec() throws Exception {
KeyPair kp = PubkeyUtils.recoverKeyPair(EC_KEY_PKCS8);
ECPublicKey pubKey = (ECPublicKey) kp.getPublic();
@@ -335,7 +359,8 @@ public class PubkeyUtilsTest extends AndroidTestCase {
}
}
- public void testRecoverPublicKey_FakeKey_Failure() throws Exception {
+ @Test
+ public void recoverPublicKey_FakeKey_Failure() throws Exception {
try {
PubkeyUtils.recoverPublicKey(null, new MyPrivateKey());
fail("Should not accept unknown key types");
diff --git a/settings.gradle b/settings.gradle
new file mode 100644
index 0000000..61ac55a
--- /dev/null
+++ b/settings.gradle
@@ -0,0 +1 @@
+include ':app', ':robolectric-tests'
diff --git a/tests/.classpath b/tests/.classpath
deleted file mode 100644
index 1ff00ba..0000000
--- a/tests/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="gen"/>
- <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
- <classpathentry combineaccessrules="false" kind="src" path="/connectbot"/>
- <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
- <classpathentry kind="output" path="bin/classes"/>
-</classpath>
diff --git a/tests/.gitignore b/tests/.gitignore
deleted file mode 100644
index fcead0a..0000000
--- a/tests/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-bin
-coverage
-gen
-libs
diff --git a/tests/.project b/tests/.project
deleted file mode 100644
index 97395ce..0000000
--- a/tests/.project
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>connectbot tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>com.android.ide.eclipse.adt.ApkBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>com.android.ide.eclipse.adt.AndroidNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/tests/.settings/org.eclipse.jdt.core.prefs b/tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index e87c6c7..0000000
--- a/tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,291 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=100
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/tests/.settings/org.eclipse.jdt.ui.prefs b/tests/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index e777683..0000000
--- a/tests/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,113 +0,0 @@
-cleanup.add_default_serial_version_id=true
-cleanup.add_generated_serial_version_id=false
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=false
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_serial_version_id=false
-cleanup.always_use_blocks=false
-cleanup.always_use_parentheses_in_expressions=false
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=false
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=false
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=true
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=true
-cleanup.remove_unused_private_members=false
-cleanup.remove_unused_private_methods=true
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=true
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=true
-cleanup.use_parentheses_in_expressions=false
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_ConnectBot Light Cleanup
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_ConnectBot
-formatter_settings_version=12
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;com;
-org.eclipse.jdt.ui.javadoc=true
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created JavaScript files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for vars" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Jsdoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created function stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated function stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=false
-sp_cleanup.format_source_code_changes_only=true
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml
deleted file mode 100644
index 59a5b6f..0000000
--- a/tests/AndroidManifest.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- package name must be unique so suffix with "tests" so package loader doesn't ignore us -->
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="org.connectbot.tests"
- android:versionCode="1"
- android:versionName="1.0">
- <!-- We add an application tag here just so that we can indicate that
- this package needs to link against the android.test library,
- which is needed when building test cases. -->
- <application>
- <uses-library android:name="android.test.runner" />
- </application>
- <!--
- This declares that this application uses the instrumentation test runner targeting
- the package of org.connectbot. To run the tests use the command:
- "adb shell am instrument -w org.connectbot.tests/android.test.InstrumentationTestRunner"
- -->
- <instrumentation android:name="android.test.InstrumentationTestRunner"
- android:targetPackage="org.connectbot"
- android:label="Tests for ConnectBot" />
-</manifest>
diff --git a/tests/ant.properties b/tests/ant.properties
deleted file mode 100644
index 366f276..0000000
--- a/tests/ant.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is used to override default values used by the Ant build system.
-#
-# This file must be checked in Version Control Systems, as it is
-# integral to the build system of your project.
-
-# This file is only used by the Ant script.
-
-# You can use this to override default values such as
-# 'source.dir' for the location of your java source folder and
-# 'out.dir' for the location of your output folder.
-
-# You can also use it define how the release builds are signed by declaring
-# the following properties:
-# 'key.store' for the location of your keystore and
-# 'key.alias' for the name of the key to use.
-# The password will be asked during the build when you use the 'release' target.
-
-tested.project.dir=..
-source-folder=src
-application-package=org.connectbot
-out-folder=bin
diff --git a/tests/build.xml b/tests/build.xml
deleted file mode 100644
index 234ab54..0000000
--- a/tests/build.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vim: set ts=4 sw=4 et: -->
-<project name="tests" default="help">
-
- <!-- The local.properties file is created and updated by the 'android' tool.
- It contains the path to the SDK. It should *NOT* be checked into
- Version Control Systems. -->
- <loadproperties srcFile="local.properties" />
-
- <!-- The ant.properties file can be created by you. It is only edited by the
- 'android' tool to add properties to it.
- This is the place to change some Ant specific build properties.
- Here are some properties you may want to change/update:
-
- source.dir
- The name of the source directory. Default is 'src'.
- out.dir
- The name of the output directory. Default is 'bin'.
-
- For other overridable properties, look at the beginning of the rules
- files in the SDK, at tools/ant/build.xml
-
- Properties related to the SDK location or the project target should
- be updated using the 'android' tool with the 'update' action.
-
- This file is an integral part of the build system for your
- application and should be checked into Version Control Systems.
-
- -->
- <property file="ant.properties" />
-
- <!-- The project.properties file is created and updated by the 'android'
- tool, as well as ADT.
-
- This contains project specific properties such as project target, and library
- dependencies. Lower level build properties are stored in ant.properties
- (or in .classpath for Eclipse projects).
-
- This file is an integral part of the build system for your
- application and should be checked into Version Control Systems. -->
- <loadproperties srcFile="project.properties" />
-
- <!-- quick check on sdk.dir -->
- <fail
- message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'"
- unless="sdk.dir"
- />
-
-
-<!-- extension targets. Uncomment the ones where you want to do custom work
- in between standard targets -->
-<!--
- <target name="-pre-build">
- </target>
- <target name="-pre-compile">
- </target>
-
- /* This is typically used for code obfuscation.
- Compiled code location: ${out.classes.absolute.dir}
- If this is not done in place, override ${out.dex.input.absolute.dir} */
- <target name="-post-compile">
- </target>
--->
-
- <!-- Import the actual build file.
-
- To customize existing targets, there are two options:
- - Customize only one target:
- - copy/paste the target into this file, *before* the
- <import> task.
- - customize it to your needs.
- - Customize the whole content of build.xml
- - copy/paste the content of the rules files (minus the top node)
- into this file, replacing the <import> task.
- - customize to your needs.
-
- ***********************
- ****** IMPORTANT ******
- ***********************
- In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
- in order to avoid having your file be overridden by tools such as "android update project"
- -->
- <!-- version-tag: custom -->
- <import file="${sdk.dir}/tools/ant/build.xml" />
-
- <target name="coverage-xml" depends="-test-project-check">
-
- <property name="tested.project.absolute.dir" location="${tested.project.dir}" />
-
- <property name="test.runner" value="android.test.InstrumentationTestRunner" />
-
- <!-- Application package of the tested project extracted from its manifest file -->
- <xpath input="${tested.project.absolute.dir}/AndroidManifest.xml"
- expression="/manifest/@package" output="tested.manifest.package" />
-
- <getprojectpaths projectPath="${tested.project.absolute.dir}"
- binOut="tested.project.out.absolute.dir"
- srcOut="tested.project.source.absolute.dir" />
-
- <getlibpath projectPath="${tested.project.absolute.dir}"
- libraryFolderPathOut="tested.project.lib.source.path"
- leaf="@{source.dir}" />
-
- <property name="emma.dump.file"
- value="/data/data/${tested.manifest.package}/coverage.ec" />
-
- <run-tests-helper emma.enabled="true">
- <extra-instrument-args>
- <arg value="-e" />
- <arg value="coverageFile" />
- <arg value="${emma.dump.file}" />
- </extra-instrument-args>
- </run-tests-helper>
- <echo>Downloading coverage file into project directory...</echo>
- <exec executable="${adb}" failonerror="true">
- <arg line="${adb.device.arg}" />
- <arg value="pull" />
- <arg value="${emma.dump.file}" />
- <arg value="${out.absolute.dir}/coverage.ec" />
- </exec>
- <echo>Extracting XML coverage report...</echo>
- <emma>
- <report sourcepath="${tested.project.source.absolute.dir}:${tested.project.lib.source.path.value}"
- verbosity="${verbosity}">
- <!-- TODO: report.dir or something like should be introduced if necessary -->
- <infileset file="${out.absolute.dir}/coverage.ec" />
- <infileset file="${tested.project.out.absolute.dir}/coverage.em" />
- <!-- TODO: reports in other, indicated by user formats -->
- <xml outfile="${out.absolute.dir}/coverage.xml" />
- </report>
- </emma>
- <echo level="info">Cleaning up temporary files...</echo>
- <delete file="${out.absolute.dir}/coverage.ec" />
- <delete file="${out.absolute.dir}/coverage.em" />
- <echo level="info">Saving the report file in ${out.absolute.dir}/coverage.xml</echo>
- </target>
-
-</project>
diff --git a/tests/proguard.cfg b/tests/proguard.cfg
deleted file mode 100644
index b1cdf17..0000000
--- a/tests/proguard.cfg
+++ /dev/null
@@ -1,40 +0,0 @@
--optimizationpasses 5
--dontusemixedcaseclassnames
--dontskipnonpubliclibraryclasses
--dontpreverify
--verbose
--optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-
--keep public class * extends android.app.Activity
--keep public class * extends android.app.Application
--keep public class * extends android.app.Service
--keep public class * extends android.content.BroadcastReceiver
--keep public class * extends android.content.ContentProvider
--keep public class * extends android.app.backup.BackupAgentHelper
--keep public class * extends android.preference.Preference
--keep public class com.android.vending.licensing.ILicensingService
-
--keepclasseswithmembernames class * {
- native <methods>;
-}
-
--keepclasseswithmembers class * {
- public <init>(android.content.Context, android.util.AttributeSet);
-}
-
--keepclasseswithmembers class * {
- public <init>(android.content.Context, android.util.AttributeSet, int);
-}
-
--keepclassmembers class * extends android.app.Activity {
- public void *(android.view.View);
-}
-
--keepclassmembers enum * {
- public static **[] values();
- public static ** valueOf(java.lang.String);
-}
-
--keep class * implements android.os.Parcelable {
- public static final android.os.Parcelable$Creator *;
-}
diff --git a/tests/project.properties b/tests/project.properties
deleted file mode 100644
index d1f88bc..0000000
--- a/tests/project.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system use,
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-
-# Indicates whether an apk should be generated for each density.
-split.density=false
-# Project target.
-target=android-11
diff --git a/tests/src/org/connectbot/HostListActivityTest.java b/tests/src/org/connectbot/HostListActivityTest.java
deleted file mode 100644
index 3962c9a..0000000
--- a/tests/src/org/connectbot/HostListActivityTest.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * ConnectBot: simple, powerful, open-source SSH client for Android
- * Copyright 2007 Kenny Root, Jeffrey Sharkey
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.connectbot;
-
-import android.app.Activity;
-import android.test.ActivityInstrumentationTestCase2;
-
-/**
- * This is a simple framework for a test of an Application. See
- * {@link android.test.ApplicationTestCase ApplicationTestCase} for more
- * information on how to write and extend Application tests.
- * <p/>
- * To run this test, you can type: adb shell am instrument -w \ -e class
- * org.connectbot.HostListActivityTest \
- * org.connectbot.tests/android.test.InstrumentationTestRunner
- */
-public class HostListActivityTest extends ActivityInstrumentationTestCase2<HostListActivity> {
- private Activity mActivity;
-
- public HostListActivityTest() {
- super("org.connectbot", HostListActivity.class);
- }
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
-
- setActivityInitialTouchMode(false);
-
- mActivity = getActivity();
- }
-}
diff --git a/tests/src/org/connectbot/SettingsActivityTest.java b/tests/src/org/connectbot/SettingsActivityTest.java
deleted file mode 100644
index 6b79136..0000000
--- a/tests/src/org/connectbot/SettingsActivityTest.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * ConnectBot: simple, powerful, open-source SSH client for Android
- * Copyright 2007 Kenny Root, Jeffrey Sharkey
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.connectbot;
-
-import android.test.ActivityInstrumentationTestCase2;
-
-/**
- * This is a simple framework for a test of an Application. See
- * {@link android.test.ApplicationTestCase ApplicationTestCase} for more
- * information on how to write and extend Application tests.
- * <p/>
- * To run this test, you can type:
- * adb shell am instrument -w \
- * -e class org.connectbot.HostListActivityTest \
- * org.connectbot.tests/android.test.InstrumentationTestRunner
- */
-public class SettingsActivityTest extends
- ActivityInstrumentationTestCase2<SettingsActivity> {
-
- public SettingsActivityTest() {
- super("org.connectbot", SettingsActivity.class);
- }
-
- public void testOpenMenu() {
- SettingsActivity a = getActivity();
-
- a.openOptionsMenu();
-
- a.closeOptionsMenu();
- }
-
-}
diff --git a/tests/src/org/connectbot/TerminalBridgeTest.java b/tests/src/org/connectbot/TerminalBridgeTest.java
deleted file mode 100644
index bfa5e23..0000000
--- a/tests/src/org/connectbot/TerminalBridgeTest.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * ConnectBot: simple, powerful, open-source SSH client for Android
- * Copyright 2007 Kenny Root, Jeffrey Sharkey
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.connectbot;
-
-import android.test.AndroidTestCase;
-
-/**
- * @author Kenny Root
- *
- */
-public class TerminalBridgeTest extends AndroidTestCase {
- public void testShiftLock() throws SecurityException, NoSuchFieldException,
- IllegalArgumentException, IllegalAccessException {
-// TerminalBridge bridge = new TerminalBridge();
-// AbsTransport nullTransport = new NullTransport();
-//
-// // Make sure onKey will work when we call it
-// Field disconnected = TerminalBridge.class
-// .getDeclaredField("disconnected");
-// Field keymode = TerminalBridge.class.getDeclaredField("keymode");
-// Field transport = TerminalBridge.class.getDeclaredField("transport");
-//
-// disconnected.setAccessible(true);
-// keymode.setAccessible(true);
-// transport.setAccessible(true);
-//
-// disconnected.setBoolean(bridge, false);
-// keymode.set(bridge, PreferenceConstants.KEYMODE_RIGHT);
-// transport.set(bridge, nullTransport);
-//
-// // Begin tests
-// assertTrue("Meta state is " + bridge.getMetaState()
-// + " when it should be 0", bridge.getMetaState() == 0);
-//
-// KeyEvent shiftDown = new KeyEvent(KeyEvent.ACTION_DOWN,
-// KeyEvent.KEYCODE_SHIFT_LEFT);
-// bridge.onKey(null, shiftDown.getKeyCode(), shiftDown);
-//
-// assertTrue("Shift test: after shift press, meta state is "
-// + bridge.getMetaState() + " when it should be "
-// + TerminalBridge.META_SHIFT_ON,
-// bridge.getMetaState() == TerminalBridge.META_SHIFT_ON);
-//
-// KeyEvent shiftUp = KeyEvent.changeAction(shiftDown, KeyEvent.ACTION_UP);
-// bridge.onKey(null, shiftUp.getKeyCode(), shiftUp);
-//
-// assertTrue("Shift test: after shift release, meta state is "
-// + bridge.getMetaState() + " when it should be "
-// + TerminalBridge.META_SHIFT_ON,
-// bridge.getMetaState() == TerminalBridge.META_SHIFT_ON);
-//
-// KeyEvent letterAdown = new KeyEvent(KeyEvent.ACTION_DOWN,
-// KeyEvent.KEYCODE_A);
-// KeyEvent letterAup = KeyEvent.changeAction(letterAdown,
-// KeyEvent.ACTION_UP);
-//
-// bridge.onKey(null, letterAdown.getKeyCode(), letterAdown);
-// bridge.onKey(null, letterAup.getKeyCode(), letterAup);
-//
-// assertTrue("Shift test: after letter press and release, meta state is "
-// + bridge.getMetaState() + " when it should be 0", bridge
-// .getMetaState() == 0);
-//
-// bridge.onKey(null, shiftDown.getKeyCode(), shiftDown);
-// bridge.onKey(null, shiftUp.getKeyCode(), shiftUp);
-// bridge.onKey(null, shiftDown.getKeyCode(), shiftDown);
-// bridge.onKey(null, shiftUp.getKeyCode(), shiftUp);
-//
-// assertTrue("Shift lock test: after two shift presses, meta state is "
-// + bridge.getMetaState() + " when it should be "
-// + TerminalBridge.META_SHIFT_LOCK,
-// bridge.getMetaState() == TerminalBridge.META_SHIFT_LOCK);
-//
-// bridge.onKey(null, letterAdown.getKeyCode(), letterAdown);
-//
-// assertTrue(
-// "Shift lock test: after letter press, meta state is "
-// + bridge.getMetaState() + " when it should be "
-// + TerminalBridge.META_SHIFT_LOCK,
-// bridge.getMetaState() == TerminalBridge.META_SHIFT_LOCK);
-//
-// bridge.onKey(null, letterAup.getKeyCode(), letterAup);
-//
-// assertTrue(
-// "Shift lock test: after letter press and release, meta state is "
-// + bridge.getMetaState() + " when it should be "
-// + TerminalBridge.META_SHIFT_LOCK,
-// bridge.getMetaState() == TerminalBridge.META_SHIFT_LOCK);
- }
-}