diff options
Diffstat (limited to 'app')
21 files changed, 425 insertions, 34 deletions
diff --git a/app/src/main/java/org/connectbot/util/SwitchCompatPreference.java b/app/src/main/java/org/connectbot/util/SwitchCompatPreference.java new file mode 100644 index 0000000..0e551b5 --- /dev/null +++ b/app/src/main/java/org/connectbot/util/SwitchCompatPreference.java @@ -0,0 +1,53 @@ +/* + * ConnectBot: simple, powerful, open-source SSH client for Android + * Copyright 2015 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.util; + +import org.connectbot.R; + +import android.annotation.TargetApi; +import android.content.Context; +import android.os.Build; +import android.preference.CheckBoxPreference; +import android.util.AttributeSet; + +public class SwitchCompatPreference extends CheckBoxPreference { + + public SwitchCompatPreference(Context context, AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + init(); + } + + @TargetApi(Build.VERSION_CODES.LOLLIPOP) + public SwitchCompatPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { + super(context, attrs, defStyleAttr, defStyleRes); + init(); + } + + public SwitchCompatPreference(Context context, AttributeSet attrs) { + super(context, attrs); + init(); + } + + public SwitchCompatPreference(Context context) { + super(context); + init(); + } + + private void init() { + setWidgetLayoutResource(R.layout.switch_compat_preference_layout); + } +} diff --git a/app/src/main/res/drawable-hdpi/ic_lock.png b/app/src/main/res/drawable-hdpi/ic_lock.png Binary files differnew file mode 100644 index 0000000..47bd641 --- /dev/null +++ b/app/src/main/res/drawable-hdpi/ic_lock.png diff --git a/app/src/main/res/drawable-hdpi/ic_lock_open.png b/app/src/main/res/drawable-hdpi/ic_lock_open.png Binary files differnew file mode 100644 index 0000000..1baf726 --- /dev/null +++ b/app/src/main/res/drawable-hdpi/ic_lock_open.png diff --git a/app/src/main/res/drawable-mdpi/ic_lock.png b/app/src/main/res/drawable-mdpi/ic_lock.png Binary files differnew file mode 100644 index 0000000..cd4f04a --- /dev/null +++ b/app/src/main/res/drawable-mdpi/ic_lock.png diff --git a/app/src/main/res/drawable-mdpi/ic_lock_open.png b/app/src/main/res/drawable-mdpi/ic_lock_open.png Binary files differnew file mode 100644 index 0000000..6bae68f --- /dev/null +++ b/app/src/main/res/drawable-mdpi/ic_lock_open.png diff --git a/app/src/main/res/drawable-xhdpi/ic_lock.png b/app/src/main/res/drawable-xhdpi/ic_lock.png Binary files differnew file mode 100644 index 0000000..0e52c7c --- /dev/null +++ b/app/src/main/res/drawable-xhdpi/ic_lock.png diff --git a/app/src/main/res/drawable-xhdpi/ic_lock_open.png b/app/src/main/res/drawable-xhdpi/ic_lock_open.png Binary files differnew file mode 100644 index 0000000..1d1b0f4 --- /dev/null +++ b/app/src/main/res/drawable-xhdpi/ic_lock_open.png diff --git a/app/src/main/res/drawable-xxhdpi/ic_lock.png b/app/src/main/res/drawable-xxhdpi/ic_lock.png Binary files differnew file mode 100644 index 0000000..1fd686e --- /dev/null +++ b/app/src/main/res/drawable-xxhdpi/ic_lock.png diff --git a/app/src/main/res/drawable-xxhdpi/ic_lock_open.png b/app/src/main/res/drawable-xxhdpi/ic_lock_open.png Binary files differnew file mode 100644 index 0000000..d3eb778 --- /dev/null +++ b/app/src/main/res/drawable-xxhdpi/ic_lock_open.png diff --git a/app/src/main/res/drawable-xxxhdpi/ic_lock.png b/app/src/main/res/drawable-xxxhdpi/ic_lock.png Binary files differnew file mode 100644 index 0000000..2fa0302 --- /dev/null +++ b/app/src/main/res/drawable-xxxhdpi/ic_lock.png diff --git a/app/src/main/res/drawable-xxxhdpi/ic_lock_open.png b/app/src/main/res/drawable-xxxhdpi/ic_lock_open.png Binary files differnew file mode 100644 index 0000000..57d6a6f --- /dev/null +++ b/app/src/main/res/drawable-xxxhdpi/ic_lock_open.png diff --git a/app/src/main/res/drawable/pubkey.xml b/app/src/main/res/drawable/pubkey.xml index 0dbdba9..8c40a98 100644 --- a/app/src/main/res/drawable/pubkey.xml +++ b/app/src/main/res/drawable/pubkey.xml @@ -21,10 +21,10 @@ xmlns:android="http://schemas.android.com/apk/res/android"> <item - android:drawable="@drawable/pubkey_unlocked" + android:drawable="@drawable/ic_lock_open" android:state_checked="true"/> <item - android:drawable="@drawable/pubkey_locked"/> + android:drawable="@drawable/ic_lock"/> -</selector>
\ No newline at end of file +</selector> diff --git a/app/src/main/res/drawable/pubkey_locked.png b/app/src/main/res/drawable/pubkey_locked.png Binary files differdeleted file mode 100644 index 7df56b5..0000000 --- a/app/src/main/res/drawable/pubkey_locked.png +++ /dev/null diff --git a/app/src/main/res/drawable/pubkey_unlocked.png b/app/src/main/res/drawable/pubkey_unlocked.png Binary files differdeleted file mode 100644 index eec4558..0000000 --- a/app/src/main/res/drawable/pubkey_unlocked.png +++ /dev/null diff --git a/app/src/main/res/layout/item_pubkey.xml b/app/src/main/res/layout/item_pubkey.xml index ed0c7d2..2dce26b 100644 --- a/app/src/main/res/layout/item_pubkey.xml +++ b/app/src/main/res/layout/item_pubkey.xml @@ -28,11 +28,10 @@ <ImageView android:id="@android:id/icon1" android:layout_width="wrap_content" - android:layout_height="wrap_content" + android:layout_height="fill_parent" android:layout_alignParentEnd="true" android:layout_alignParentRight="true" - android:layout_alignParentTop="true" - android:layout_marginLeft="10dip" + android:layout_centerVertical="true" android:contentDescription="@string/image_description_key_is_locked" android:src="@drawable/pubkey"/> diff --git a/app/src/main/res/layout/switch_compat_preference_layout.xml b/app/src/main/res/layout/switch_compat_preference_layout.xml new file mode 100644 index 0000000..89deeb0 --- /dev/null +++ b/app/src/main/res/layout/switch_compat_preference_layout.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ ConnectBot: simple, powerful, open-source SSH client for Android + ~ Copyright 2015 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. + --> + +<android.support.v7.widget.SwitchCompat + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@android:id/checkbox" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:background="@null" + android:clickable="false" + android:focusable="false" + android:theme="@style/SwitchCompatTheme" + app:showText="false" + />
\ No newline at end of file diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 0e6a546..322f5e1 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -72,4 +72,8 @@ <!-- This value is overridden for v11 and higher, but left empty here. --> <style name="SelectableItem"></style> + + <style name="SwitchCompatTheme" parent="Theme.AppCompat"> + <item name="colorAccent">@color/accent</item> + </style> </resources> diff --git a/app/src/main/res/xml-v14/host_prefs.xml b/app/src/main/res/xml-v14/host_prefs.xml new file mode 100644 index 0000000..e0cd4f2 --- /dev/null +++ b/app/src/main/res/xml-v14/host_prefs.xml @@ -0,0 +1,124 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* + * 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. + */ +--> + +<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> + + <EditTextPreference + android:key="nickname" + android:title="@string/hostpref_nickname_title" + android:singleLine="true" + /> + + <ListPreference + android:key="color" + android:title="@string/hostpref_color_title" + android:entries="@array/list_colors" + android:entryValues="@array/list_color_values" + /> + + <EditTextPreference + android:key="fontsize" + android:title="@string/hostpref_fontsize_title" + android:inputType="number" + android:singleLine="true" + /> + + <ListPreference + android:key="pubkeyid" + android:title="@string/hostpref_pubkeyid_title" + android:entries="@array/list_pubkeyids" + android:entryValues="@array/list_pubkeyids_value" + /> + + <ListPreference + android:key="useauthagent" + android:title="@string/hostpref_authagent_title" + android:entries="@array/list_authagent" + android:entryValues="@array/list_authagent_values" + /> + + <EditTextPreference + android:key="postlogin" + android:title="@string/hostpref_postlogin_title" + android:summary="@string/hostpref_postlogin_summary" + /> + + <SwitchPreference + android:key="compression" + android:title="@string/hostpref_compression_title" + android:summary="@string/hostpref_compression_summary" + /> + + <SwitchPreference + android:key="wantsession" + android:title="@string/hostpref_wantsession_title" + android:summary="@string/hostpref_wantsession_summary" + /> + + <SwitchPreference + android:key="stayconnected" + android:title="@string/hostpref_stayconnected_title" + android:summary="@string/hostpref_stayconnected_summary" + /> + + <SwitchPreference + android:key="quickdisconnect" + android:title="@string/hostpref_quickdisconnect_title" + android:summary="@string/hostpref_quickdisconnect_summary" + /> + + <ListPreference + android:key="delkey" + android:title="@string/hostpref_delkey_title" + android:summary="@string/hostpref_delkey_summary" + android:entries="@array/list_delkey" + android:entryValues="@array/list_delkey_values" + /> + + <ListPreference + android:key="encoding" + android:title="@string/hostpref_encoding_title" + android:summary="@string/hostpref_encoding_summary" + /> + + <PreferenceCategory + android:title="@string/hostpref_connection_category"> + + <EditTextPreference + android:key="username" + android:title="@string/hostpref_username_title" + android:singleLine="true" + /> + + <EditTextPreference + android:key="hostname" + android:title="@string/hostpref_hostname_title" + android:singleLine="true" + /> + + <EditTextPreference + android:key="port" + android:title="@string/hostpref_port_title" + android:numeric="integer" + /> + + </PreferenceCategory> + +</PreferenceScreen> diff --git a/app/src/main/res/xml-v14/preferences.xml b/app/src/main/res/xml-v14/preferences.xml new file mode 100644 index 0000000..d04119f --- /dev/null +++ b/app/src/main/res/xml-v14/preferences.xml @@ -0,0 +1,188 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* + * 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. + */ +--> + +<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> + + <SwitchPreference + android:key="memkeys" + android:title="@string/pref_memkeys_title" + android:summary="@string/pref_memkeys_summary" + android:defaultValue="true" + /> + + <SwitchPreference + android:key="connPersist" + android:title="@string/pref_conn_persist_title" + android:summary="@string/pref_conn_persist_summary" + android:defaultValue="true" + /> + + <SwitchPreference + android:key="wifilock" + android:title="@string/pref_wifilock_title" + android:summary="@string/pref_wifilock_summary" + android:defaultValue="true" + /> + + <PreferenceCategory + android:title="@string/pref_emulation_category"> + + <ListPreference + android:key="emulation" + android:title="@string/pref_emulation_title" + android:summary="@string/pref_emulation_summary" + android:entries="@array/list_emulation_modes" + android:entryValues="@array/list_emulation_modes" + android:defaultValue="screen" + /> + + <EditTextPreference + android:key="scrollback" + android:title="@string/pref_scrollback_title" + android:summary="@string/pref_scrollback_summary" + android:defaultValue="140" + android:numeric="integer" + /> + + </PreferenceCategory> + + <PreferenceCategory + android:title="@string/pref_ui_category"> + + <ListPreference + android:key="rotation" + android:title="@string/pref_rotation_title" + android:summary="@string/pref_rotation_summary" + android:entries="@array/list_rotation" + android:entryValues="@array/list_rotation_values" + android:defaultValue="Default" + /> + + <SwitchPreference + android:key="titlebarhide" + android:title="@string/pref_titlebarhide_title" + android:summary="@string/pref_titlebarhide_summary" + android:defaultValue="false" + /> + + <SwitchPreference + android:key="fullscreen" + android:title="@string/pref_fullscreen_title" + android:summary="@string/pref_fullscreen_summary" + android:defaultValue="false" + /> + + <SwitchPreference + android:key="volumefont" + android:title="@string/pref_volumefont_title" + android:summary="@string/pref_volumefont_summary" + android:defaultValue="true" + /> + + <SwitchPreference + android:key="keepalive" + android:title="@string/pref_keepalive_title" + android:summary="@string/pref_keepalive_summary" + android:defaultValue="true" + /> + </PreferenceCategory> + + <PreferenceCategory + android:title="@string/pref_keyboard_category"> + + <SwitchPreference + android:key="shiftfkeys" + android:title="@string/pref_shiftfkeys_title" + android:summary="@string/pref_shiftfkeys_summary" + android:defaultValue="false" + /> + + <SwitchPreference + android:key="ctrlfkeys" + android:title="@string/pref_ctrlfkeys_title" + android:summary="@string/pref_ctrlfkeys_summary" + android:defaultValue="false" + /> + + <ListPreference + android:key="stickymodifiers" + android:title="@string/pref_stickymodifiers_title" + android:summary="@string/pref_stickymodifiers_summary" + android:entries="@array/list_stickymodifiers" + android:entryValues="@array/list_stickymodifiers_values" + android:defaultValue="no" + /> + + <ListPreference + android:key="keymode" + android:title="@string/pref_keymode_title" + android:summary="@string/pref_keymode_summary" + android:entries="@array/list_keymode" + android:entryValues="@array/list_keymode_values" + android:defaultValue="none" + /> + + <ListPreference + android:key="camera" + android:title="@string/pref_camera_title" + android:summary="@string/pref_camera_summary" + android:entries="@array/list_camera" + android:entryValues="@array/list_camera_values" + android:defaultValue="Ctrl+A then Space" + /> + + <SwitchPreference + android:key="bumpyarrows" + android:title="@string/pref_bumpyarrows_title" + android:summary="@string/pref_bumpyarrows_summary" + android:defaultValue="true" + /> + </PreferenceCategory> + + <PreferenceCategory + android:title="@string/pref_bell_category"> + + <SwitchPreference + android:key="bell" + android:title="@string/pref_bell_title" + android:defaultValue="true" + /> + + <org.connectbot.util.VolumePreference + android:key="bellVolume" + android:title="@string/pref_bell_volume_title" + /> + + <SwitchPreference + android:key="bellVibrate" + android:title="@string/pref_bell_vibrate_title" + android:defaultValue="true" + /> + + <SwitchPreference + android:key="bellNotification" + android:title="@string/pref_bell_notification_title" + android:summary="@string/pref_bell_notification_summary" + android:defaultValue="false" + /> + + </PreferenceCategory> + +</PreferenceScreen> diff --git a/app/src/main/res/xml/host_prefs.xml b/app/src/main/res/xml/host_prefs.xml index a2fc1a4..c6e5b4b 100644 --- a/app/src/main/res/xml/host_prefs.xml +++ b/app/src/main/res/xml/host_prefs.xml @@ -40,13 +40,6 @@ android:singleLine="true" /> -<!-- - <CheckBoxPreference - android:key="usekeys" - android:title="Use SSH keys" - /> ---> - <ListPreference android:key="pubkeyid" android:title="@string/hostpref_pubkeyid_title" @@ -66,26 +59,26 @@ android:title="@string/hostpref_postlogin_title" android:summary="@string/hostpref_postlogin_summary" /> - - <CheckBoxPreference + + <org.connectbot.util.SwitchCompatPreference android:key="compression" android:title="@string/hostpref_compression_title" android:summary="@string/hostpref_compression_summary" /> - - <CheckBoxPreference + + <org.connectbot.util.SwitchCompatPreference android:key="wantsession" android:title="@string/hostpref_wantsession_title" android:summary="@string/hostpref_wantsession_summary" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="stayconnected" android:title="@string/hostpref_stayconnected_title" android:summary="@string/hostpref_stayconnected_summary" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="quickdisconnect" android:title="@string/hostpref_quickdisconnect_title" android:summary="@string/hostpref_quickdisconnect_summary" @@ -104,10 +97,10 @@ android:title="@string/hostpref_encoding_title" android:summary="@string/hostpref_encoding_summary" /> - + <PreferenceCategory android:title="@string/hostpref_connection_category"> - + <EditTextPreference android:key="username" android:title="@string/hostpref_username_title" diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 70bdb5b..d1801c5 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -20,21 +20,21 @@ <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="memkeys" android:title="@string/pref_memkeys_title" android:summary="@string/pref_memkeys_summary" android:defaultValue="true" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="connPersist" android:title="@string/pref_conn_persist_title" android:summary="@string/pref_conn_persist_summary" android:defaultValue="true" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="wifilock" android:title="@string/pref_wifilock_title" android:summary="@string/pref_wifilock_summary" @@ -75,28 +75,28 @@ android:defaultValue="Default" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="titlebarhide" android:title="@string/pref_titlebarhide_title" android:summary="@string/pref_titlebarhide_summary" android:defaultValue="false" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="fullscreen" android:title="@string/pref_fullscreen_title" android:summary="@string/pref_fullscreen_summary" android:defaultValue="false" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="volumefont" android:title="@string/pref_volumefont_title" android:summary="@string/pref_volumefont_summary" android:defaultValue="true" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="keepalive" android:title="@string/pref_keepalive_title" android:summary="@string/pref_keepalive_summary" @@ -107,14 +107,14 @@ <PreferenceCategory android:title="@string/pref_keyboard_category"> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="shiftfkeys" android:title="@string/pref_shiftfkeys_title" android:summary="@string/pref_shiftfkeys_summary" android:defaultValue="false" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="ctrlfkeys" android:title="@string/pref_ctrlfkeys_title" android:summary="@string/pref_ctrlfkeys_summary" @@ -148,7 +148,7 @@ android:defaultValue="Ctrl+A then Space" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="bumpyarrows" android:title="@string/pref_bumpyarrows_title" android:summary="@string/pref_bumpyarrows_summary" @@ -159,7 +159,7 @@ <PreferenceCategory android:title="@string/pref_bell_category"> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="bell" android:title="@string/pref_bell_title" android:defaultValue="true" @@ -170,13 +170,13 @@ android:title="@string/pref_bell_volume_title" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="bellVibrate" android:title="@string/pref_bell_vibrate_title" android:defaultValue="true" /> - <CheckBoxPreference + <org.connectbot.util.SwitchCompatPreference android:key="bellNotification" android:title="@string/pref_bell_notification_title" android:summary="@string/pref_bell_notification_summary" |