android:excludeFromRecents="true"
android:launchMode="singleTask"
android:theme="@style/AppTheme.Incognito.Dark"/>
+ <activity
+ android:name=".activity.NavigationBarButtonsActivity"
+ android:theme="@style/AppTheme.Dialog"/>
+ <activity
+ android:name=".activity.dark.NavigationBarButtonsActivityDark"
+ android:theme="@style/AppTheme.Dialog.Dark"/>
<service android:name=".service.TaskbarService"/>
<service android:name=".service.StartMenuService"/>
--- /dev/null
+/* Copyright 2017 Braden Farmer
+ *
+ * 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 com.farmerbb.taskbar.activity;
+
+import android.os.Bundle;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+
+import com.farmerbb.taskbar.R;
+
+public class NavigationBarButtonsActivity extends PreferenceActivity implements Preference.OnPreferenceClickListener {
+
+ @SuppressWarnings("deprecation")
+ @Override
+ protected void onPostCreate(Bundle savedInstanceState) {
+ super.onPostCreate(savedInstanceState);
+ setTitle(R.string.navigation_bar_buttons);
+
+ if(savedInstanceState == null) {
+ addPreferencesFromResource(R.xml.pref_navigation_bar_buttons);
+
+ findPreference("button_back").setOnPreferenceClickListener(this);
+ findPreference("button_home").setOnPreferenceClickListener(this);
+ findPreference("button_recents").setOnPreferenceClickListener(this);
+ }
+ }
+
+ @Override
+ public boolean onPreferenceClick(Preference preference) {
+ setResult(RESULT_OK);
+ return true;
+ }
+}
\ No newline at end of file
--- /dev/null
+/* Copyright 2017 Braden Farmer
+ *
+ * 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 com.farmerbb.taskbar.activity.dark;
+
+import com.farmerbb.taskbar.activity.NavigationBarButtonsActivity;
+
+public class NavigationBarButtonsActivityDark extends NavigationBarButtonsActivity {}
package com.farmerbb.taskbar.fragment;
import android.annotation.SuppressLint;
+import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import com.farmerbb.taskbar.R;
import com.farmerbb.taskbar.activity.ClearDataActivity;
+import com.farmerbb.taskbar.activity.NavigationBarButtonsActivity;
import com.farmerbb.taskbar.activity.dark.ClearDataActivityDark;
import com.farmerbb.taskbar.activity.HomeActivity;
import com.farmerbb.taskbar.activity.KeyboardShortcutActivity;
+import com.farmerbb.taskbar.activity.dark.NavigationBarButtonsActivityDark;
import com.farmerbb.taskbar.util.U;
public class AdvancedFragment extends SettingsFragment implements Preference.OnPreferenceClickListener {
findPreference("launcher").setOnPreferenceClickListener(this);
findPreference("keyboard_shortcut").setOnPreferenceClickListener(this);
findPreference("dashboard_grid_size").setOnPreferenceClickListener(this);
+ findPreference("navigation_bar_buttons").setOnPreferenceClickListener(this);
bindPreferenceSummaryToValue(findPreference("dashboard"));
});
break;
+ case "navigation_bar_buttons":
+ Intent intent = null;
+
+ switch(pref.getString("theme", "light")) {
+ case "light":
+ intent = new Intent(getActivity(), NavigationBarButtonsActivity.class);
+ break;
+ case "dark":
+ intent = new Intent(getActivity(), NavigationBarButtonsActivityDark.class);
+ break;
+ }
+
+ startActivityForResult(intent, 123);
+ break;
}
return true;
if(restartTaskbar) restartTaskbar();
}
+
+ @Override
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if(requestCode == 123 && resultCode == Activity.RESULT_OK) {
+ restartTaskbar();
+ }
+ }
}
package com.farmerbb.taskbar.fragment;
+import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
return true;
}
+
+ @Override
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if(requestCode == 123 && resultCode == Activity.RESULT_OK) {
+ U.refreshPinnedIcons(getActivity());
+ restartTaskbar();
+ }
+ }
}
package com.farmerbb.taskbar.fragment;
-import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Build;
}
@Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- if(requestCode == 123 && resultCode == Activity.RESULT_OK) {
- U.refreshPinnedIcons(getActivity());
- restartTaskbar();
- }
- }
-
- @Override
public void onResume() {
super.onResume();
if(dashboardEnabled && navbarButtonsEnabled) {
LinearLayout.LayoutParams params2 = (LinearLayout.LayoutParams) dashboardButton.getLayoutParams();
params2.setMargins(0, 0, 0, 0);
- dashboardButton.setLayoutParams(params);
+ dashboardButton.setLayoutParams(params2);
}
layout.setBackgroundColor(backgroundTint);
<string name="window_sizes_not_available">Window sizes currently don\'t work on Android O</string>
+ <string name="navigation_bar_buttons">Navigation bar buttons</string>
+ <string name="navigation_bar_buttons_description">Add additional buttons to the Taskbar that perform navigation bar actions</string>
+ <string name="button_back">Back</string>
+ <string name="button_home">Home</string>
+ <string name="button_recents">Recents</string>
+
</resources>
<string name="window_sizes_not_available">Window sizes currently don\'t work on Android O</string>
+ <string name="navigation_bar_buttons">Navigation bar buttons</string>
+ <string name="navigation_bar_buttons_description">Add additional buttons to the Taskbar that perform navigation bar actions</string>
+ <string name="button_back">Back</string>
+ <string name="button_home">Home</string>
+ <string name="button_recents">Recents</string>
+
</resources>
<string name="window_sizes_not_available">Window sizes currently don\'t work on Android O</string>
+ <string name="navigation_bar_buttons">Navigation bar buttons</string>
+ <string name="navigation_bar_buttons_description">Add additional buttons to the Taskbar that perform navigation bar actions</string>
+ <string name="button_back">Back</string>
+ <string name="button_home">Home</string>
+ <string name="button_recents">Recents</string>
+
</resources>
<string name="pref_header_appearance">Appearance</string>
<string name="dashboard">Enable widget support</string>
- <string name="dashboard_description">Adds a button to the Taskbar that displays a grid of widgets</string>
+ <string name="dashboard_description">Adds a button to the Taskbar that displays widgets when pressed</string>
<string name="dashboard_grid_size">Widget dashboard grid size</string>
<string name="click_to_add_widget">Click to add widget</string>
<string name="window_sizes_not_available">Window sizes currently don\'t work on Android O</string>
+ <string name="navigation_bar_buttons">Navigation bar buttons</string>
+ <string name="navigation_bar_buttons_description">Add additional buttons to the Taskbar that perform navigation bar actions</string>
+ <string name="button_back">Back</string>
+ <string name="button_home">Home</string>
+ <string name="button_recents">Recents</string>
+
</resources>
android:title="@string/dashboard_grid_size" />
<Preference
+ android:key="navigation_bar_buttons"
+ android:title="@string/navigation_bar_buttons"
+ android:summary="@string/navigation_bar_buttons_description" />
+
+ <Preference
android:key="clear_pinned_apps"
android:title="@string/clear_pinned_apps"/>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2017 Braden Farmer
+
+ 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">
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="button_back"
+ android:title="@string/button_back" />
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="button_home"
+ android:title="@string/button_home" />
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="button_recents"
+ android:title="@string/button_recents" />
+
+</PreferenceScreen>