diff --git a/app/lint.xml b/app/lint.xml
index 5cc6467a..032a641d 100644
--- a/app/lint.xml
+++ b/app/lint.xml
@@ -68,4 +68,12 @@
+
+
+
+
+
+
+
+
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 54aedc12..87c5ba7a 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -133,6 +133,7 @@
android:value=".activities.MainActivity" />
= Build.VERSION_CODES.LOLLIPOP) {
+ toolbar.setTouchscreenBlocksFocus(false);
+ }
+ syncthingActivity.setSupportActionBar(toolbar);
+ syncthingActivity.getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+ } catch (Exception e) {
+ /**
+ * The above code has been verified working but due to known bugs in the
+ * support library on different Android versions better be safe in case
+ * it breaks.
+ */
+ Log.e(TAG, "onPreferenceTreeClick", e);
+ }
+ }
+ return false;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ if (item.getItemId() == android.R.id.home) {
+ if (mCurrentPrefScreenDialog == null) {
+ // User is on the top preferences screen.
+ getActivity().onBackPressed();
+ } else {
+ // User is on a sub-preferences screen.
+ mCurrentPrefScreenDialog.dismiss();
+ mCurrentPrefScreenDialog = null;
+ }
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
public void setService(SyncthingService syncthingService) {
mSyncthingService = syncthingService;
}
diff --git a/app/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java
index 83e19503..98e5b713 100644
--- a/app/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java
+++ b/app/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java
@@ -4,6 +4,7 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
+import android.os.Build;
import android.os.Bundle;
import android.os.IBinder;
import android.support.v7.app.AppCompatActivity;
@@ -43,6 +44,9 @@ public abstract class SyncthingActivity extends AppCompatActivity implements Ser
return;
}
toolbar.setNavigationContentDescription(R.string.main_menu);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+ toolbar.setTouchscreenBlocksFocus(false);
+ }
setSupportActionBar(toolbar);
//noinspection ConstantConditions
diff --git a/app/src/main/java/com/nutomic/syncthingandroid/util/Util.java b/app/src/main/java/com/nutomic/syncthingandroid/util/Util.java
index 06cda012..0fba09bb 100644
--- a/app/src/main/java/com/nutomic/syncthingandroid/util/Util.java
+++ b/app/src/main/java/com/nutomic/syncthingandroid/util/Util.java
@@ -2,11 +2,13 @@ package com.nutomic.syncthingandroid.util;
import android.app.Activity;
import android.app.Dialog;
+import android.app.UiModeManager;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.res.Configuration;
import android.os.Build;
import android.preference.PreferenceManager;
import android.text.TextUtils;
@@ -329,4 +331,9 @@ public class Util {
}
return false;
}
+
+ public static Boolean isRunningOnTV(Context context) {
+ UiModeManager uiModeManager = (UiModeManager) context.getSystemService(Context.UI_MODE_SERVICE);
+ return uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION;
+ }
}
diff --git a/app/src/main/res/color/btn_welcome_slide_color.xml b/app/src/main/res/color/btn_welcome_slide_color.xml
new file mode 100644
index 00000000..87c83457
--- /dev/null
+++ b/app/src/main/res/color/btn_welcome_slide_color.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable-hdpi/ic_device_add_black_24.png b/app/src/main/res/drawable-hdpi/ic_device_add_black_24.png
new file mode 100644
index 00000000..134e02e8
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_device_add_black_24.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_device_add_white_24.png b/app/src/main/res/drawable-hdpi/ic_device_add_white_24.png
new file mode 100644
index 00000000..8ebee509
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_device_add_white_24.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_file_edit_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_file_edit_black_24dp.png
index 3bfaa9e2..9ea077f9 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_file_edit_black_24dp.png and b/app/src/main/res/drawable-hdpi/ic_file_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_folder_edit_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_folder_edit_black_24dp.png
index 0cd74ce0..4a899480 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_folder_edit_black_24dp.png and b/app/src/main/res/drawable-hdpi/ic_folder_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_phonelink_white_24.png b/app/src/main/res/drawable-hdpi/ic_phonelink_white_24.png
new file mode 100644
index 00000000..7a715866
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_phonelink_white_24.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_syncthing_logo_black.png b/app/src/main/res/drawable-hdpi/ic_syncthing_logo_black.png
new file mode 100644
index 00000000..18e6cf0f
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_syncthing_logo_black.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_device_add_black_24.png b/app/src/main/res/drawable-ldpi/ic_device_add_black_24.png
new file mode 100644
index 00000000..c8207e65
Binary files /dev/null and b/app/src/main/res/drawable-ldpi/ic_device_add_black_24.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_device_add_white_24.png b/app/src/main/res/drawable-ldpi/ic_device_add_white_24.png
new file mode 100644
index 00000000..a372e9f1
Binary files /dev/null and b/app/src/main/res/drawable-ldpi/ic_device_add_white_24.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_file_edit_black_24dp.png b/app/src/main/res/drawable-ldpi/ic_file_edit_black_24dp.png
index c1b706e7..30f0a4b1 100644
Binary files a/app/src/main/res/drawable-ldpi/ic_file_edit_black_24dp.png and b/app/src/main/res/drawable-ldpi/ic_file_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_folder_edit_black_24dp.png b/app/src/main/res/drawable-ldpi/ic_folder_edit_black_24dp.png
index abea0c4a..cf63a9b3 100644
Binary files a/app/src/main/res/drawable-ldpi/ic_folder_edit_black_24dp.png and b/app/src/main/res/drawable-ldpi/ic_folder_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_syncthing_logo_black.png b/app/src/main/res/drawable-ldpi/ic_syncthing_logo_black.png
new file mode 100644
index 00000000..26284147
Binary files /dev/null and b/app/src/main/res/drawable-ldpi/ic_syncthing_logo_black.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_device_add_black_24.png b/app/src/main/res/drawable-mdpi/ic_device_add_black_24.png
new file mode 100644
index 00000000..2aec1c25
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_device_add_black_24.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_device_add_white_24.png b/app/src/main/res/drawable-mdpi/ic_device_add_white_24.png
new file mode 100644
index 00000000..b4f4ddc6
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_device_add_white_24.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_file_edit_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_file_edit_black_24dp.png
index 663e19a6..c575d931 100644
Binary files a/app/src/main/res/drawable-mdpi/ic_file_edit_black_24dp.png and b/app/src/main/res/drawable-mdpi/ic_file_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_folder_edit_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_folder_edit_black_24dp.png
index 14f1e65f..b9f57124 100644
Binary files a/app/src/main/res/drawable-mdpi/ic_folder_edit_black_24dp.png and b/app/src/main/res/drawable-mdpi/ic_folder_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_phonelink_white_24.png b/app/src/main/res/drawable-mdpi/ic_phonelink_white_24.png
new file mode 100644
index 00000000..13cb912a
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_phonelink_white_24.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_syncthing_logo_black.png b/app/src/main/res/drawable-mdpi/ic_syncthing_logo_black.png
new file mode 100644
index 00000000..166c45e9
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_syncthing_logo_black.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_device_add_black_24.png b/app/src/main/res/drawable-xhdpi/ic_device_add_black_24.png
new file mode 100644
index 00000000..99961b05
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_device_add_black_24.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_device_add_white_24.png b/app/src/main/res/drawable-xhdpi/ic_device_add_white_24.png
new file mode 100644
index 00000000..9619de49
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_device_add_white_24.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_file_edit_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_file_edit_black_24dp.png
index 95a30c0f..9b3b5a19 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_file_edit_black_24dp.png and b/app/src/main/res/drawable-xhdpi/ic_file_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_folder_edit_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_folder_edit_black_24dp.png
index b6fa419e..edcb9b43 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_folder_edit_black_24dp.png and b/app/src/main/res/drawable-xhdpi/ic_folder_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_phonelink_white_24.png b/app/src/main/res/drawable-xhdpi/ic_phonelink_white_24.png
new file mode 100644
index 00000000..aaec447d
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_phonelink_white_24.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_syncthing_logo_black.png b/app/src/main/res/drawable-xhdpi/ic_syncthing_logo_black.png
new file mode 100644
index 00000000..eb55a2aa
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_syncthing_logo_black.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_device_add_black_24.png b/app/src/main/res/drawable-xxhdpi/ic_device_add_black_24.png
new file mode 100644
index 00000000..dfece8f7
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_device_add_black_24.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_device_add_white_24.png b/app/src/main/res/drawable-xxhdpi/ic_device_add_white_24.png
new file mode 100644
index 00000000..32b7ff74
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_device_add_white_24.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_file_edit_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_file_edit_black_24dp.png
index 3bd5cc77..2aa4e30b 100644
Binary files a/app/src/main/res/drawable-xxhdpi/ic_file_edit_black_24dp.png and b/app/src/main/res/drawable-xxhdpi/ic_file_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_folder_edit_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_folder_edit_black_24dp.png
index 1bd5b004..5ec4bb08 100644
Binary files a/app/src/main/res/drawable-xxhdpi/ic_folder_edit_black_24dp.png and b/app/src/main/res/drawable-xxhdpi/ic_folder_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_phonelink_white_24.png b/app/src/main/res/drawable-xxhdpi/ic_phonelink_white_24.png
new file mode 100644
index 00000000..4babdc29
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_phonelink_white_24.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_syncthing_logo_black.png b/app/src/main/res/drawable-xxhdpi/ic_syncthing_logo_black.png
new file mode 100644
index 00000000..d19545a2
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_syncthing_logo_black.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_device_add_black_24.png b/app/src/main/res/drawable-xxxhdpi/ic_device_add_black_24.png
new file mode 100644
index 00000000..2726ccff
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_device_add_black_24.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_device_add_white_24.png b/app/src/main/res/drawable-xxxhdpi/ic_device_add_white_24.png
new file mode 100644
index 00000000..a2d3d3e6
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_device_add_white_24.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_file_edit_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_file_edit_black_24dp.png
index 32bca46e..86be9a3f 100644
Binary files a/app/src/main/res/drawable-xxxhdpi/ic_file_edit_black_24dp.png and b/app/src/main/res/drawable-xxxhdpi/ic_file_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_folder_edit_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_folder_edit_black_24dp.png
index 2c85a310..89298604 100644
Binary files a/app/src/main/res/drawable-xxxhdpi/ic_folder_edit_black_24dp.png and b/app/src/main/res/drawable-xxxhdpi/ic_folder_edit_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_phonelink_white_24.png b/app/src/main/res/drawable-xxxhdpi/ic_phonelink_white_24.png
new file mode 100644
index 00000000..ad46ead8
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_phonelink_white_24.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_syncthing_logo_black.png b/app/src/main/res/drawable-xxxhdpi/ic_syncthing_logo_black.png
new file mode 100644
index 00000000..958fcc44
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_syncthing_logo_black.png differ
diff --git a/app/src/main/res/drawable/btn_add_device.xml b/app/src/main/res/drawable/btn_add_device.xml
new file mode 100644
index 00000000..bfcbc681
--- /dev/null
+++ b/app/src/main/res/drawable/btn_add_device.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/btn_add_folder.xml b/app/src/main/res/drawable/btn_add_folder.xml
new file mode 100644
index 00000000..9ba19ba8
--- /dev/null
+++ b/app/src/main/res/drawable/btn_add_folder.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/btn_syncthing_logo.xml b/app/src/main/res/drawable/btn_syncthing_logo.xml
new file mode 100644
index 00000000..cf0563cf
--- /dev/null
+++ b/app/src/main/res/drawable/btn_syncthing_logo.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/activity_first_start.xml b/app/src/main/res/layout/activity_first_start.xml
index 40f00fe3..9b416962 100644
--- a/app/src/main/res/layout/activity_first_start.xml
+++ b/app/src/main/res/layout/activity_first_start.xml
@@ -39,20 +39,22 @@
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
- android:background="@null"
android:text="@string/back"
- android:textColor="@android:color/white"
- android:visibility="gone" />
+ android:visibility="gone"
+ style="@style/Theme.Syncthing.GreyButton" />
+ style="@style/Theme.Syncthing.GreyButton" >
+
+
diff --git a/app/src/main/res/layout/activity_firststart_ignore_doze_permission.xml b/app/src/main/res/layout/activity_firststart_ignore_doze_permission.xml
index ab5114db..f2074242 100644
--- a/app/src/main/res/layout/activity_firststart_ignore_doze_permission.xml
+++ b/app/src/main/res/layout/activity_firststart_ignore_doze_permission.xml
@@ -33,7 +33,7 @@
android:text="@string/ignore_doze_permission_title"
android:textColor="@android:color/white"
android:textSize="@dimen/slide_title"
- android:textStyle="bold"/>
+ android:textStyle="bold" />
+ android:textSize="12sp"
+ style="@style/Theme.Syncthing.GreyButton" />
+ android:textSize="12sp"
+ style="@style/Theme.Syncthing.GreyButton" />
diff --git a/app/src/main/res/layout/activity_firststart_storage_permission.xml b/app/src/main/res/layout/activity_firststart_storage_permission.xml
index b4dc320a..d18e584a 100644
--- a/app/src/main/res/layout/activity_firststart_storage_permission.xml
+++ b/app/src/main/res/layout/activity_firststart_storage_permission.xml
@@ -54,7 +54,8 @@
android:paddingEnd="@dimen/grant_button_padding"
android:paddingRight="@dimen/grant_button_padding"
android:text="@string/grant_permission"
- android:textSize="12sp" />
+ android:textSize="12sp"
+ style="@style/Theme.Syncthing.GreyButton" />
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/widget_toolbar.xml b/app/src/main/res/layout/widget_toolbar.xml
index 451b7df4..fd6deb28 100644
--- a/app/src/main/res/layout/widget_toolbar.xml
+++ b/app/src/main/res/layout/widget_toolbar.xml
@@ -21,6 +21,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
+ android:focusable="false"
android:visibility="gone"
app:buttonTint="#76ff03"/>
@@ -29,6 +30,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
+ android:focusable="false"
android:visibility="gone"
app:buttonTint="#fff103"/>
@@ -37,9 +39,10 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
+ android:focusable="false"
android:visibility="gone"
app:buttonTint="#ffae03"/>
-
\ No newline at end of file
+
diff --git a/app/src/main/res/menu/device_list.xml b/app/src/main/res/menu/device_list.xml
index fa1d81ab..56cff8f4 100644
--- a/app/src/main/res/menu/device_list.xml
+++ b/app/src/main/res/menu/device_list.xml
@@ -5,7 +5,7 @@
diff --git a/app/src/main/res/menu/folder_list.xml b/app/src/main/res/menu/folder_list.xml
index b03d348d..dc0c5233 100644
--- a/app/src/main/res/menu/folder_list.xml
+++ b/app/src/main/res/menu/folder_list.xml
@@ -5,7 +5,7 @@
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index cef3211d..8afc7d4f 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -33,6 +33,11 @@
- @android:style/Animation
+
+
+