summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2016-04-11 23:11:49 +0200
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2016-04-11 23:58:02 +0200
commit9983a29eca6829d0b2dd73403da53c22a7238176 (patch)
tree34a1c0c51286ee84cc59873bfb75db1bcdb8f7fa
parent9e4120e54d07576e4715174ba8a05d7352cd29d1 (diff)
simplify theme handling & switch to AppCompatActivity
Since ActionBarActivity is now deprecated → use AppCompatActivity theme handling simplified by using inheritance and appcompat features. Change-Id: I71ae03ca7162c4975edc36a2a6178ea9713108ee
-rw-r--r--android/sdremote/mobile/src/main/AndroidManifest.xml9
-rw-r--r--android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerConnectionActivity.java4
-rw-r--r--android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerCreationActivity.java11
-rw-r--r--android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputersActivity.java11
-rw-r--r--android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/RequirementsActivity.java15
-rw-r--r--android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/SlideShowActivity.java4
-rw-r--r--android/sdremote/mobile/src/main/res/values/themes.xml36
7 files changed, 25 insertions, 65 deletions
diff --git a/android/sdremote/mobile/src/main/AndroidManifest.xml b/android/sdremote/mobile/src/main/AndroidManifest.xml
index cc75dc7..7e2aea7 100644
--- a/android/sdremote/mobile/src/main/AndroidManifest.xml
+++ b/android/sdremote/mobile/src/main/AndroidManifest.xml
@@ -39,8 +39,7 @@
android:theme="@style/Theme.ImpressRemote">
<activity
- android:name=".activity.ComputersActivity"
- android:theme="@style/Theme.ImpressRemote.Computers">
+ android:name=".activity.ComputersActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
@@ -51,8 +50,7 @@
<activity
android:name=".activity.ComputerCreationActivity"
- android:label="@string/title_creation"
- android:theme="@style/Theme.ImpressRemote.ComputerCreation">
+ android:label="@string/title_creation">
</activity>
<activity
@@ -67,8 +65,7 @@
<activity
android:name=".activity.SettingsActivity"
- android:label="@string/title_settings"
- android:theme="@style/Theme.ImpressRemote.Settings">
+ android:label="@string/title_settings">
</activity>
<activity
diff --git a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerConnectionActivity.java b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerConnectionActivity.java
index d2f50a4..5c35ce0 100644
--- a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerConnectionActivity.java
+++ b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerConnectionActivity.java
@@ -10,7 +10,7 @@ package org.libreoffice.impressremote.activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
-import android.support.v7.app.ActionBarActivity;
+import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import org.libreoffice.impressremote.fragment.ComputerConnectionFragment;
@@ -18,7 +18,7 @@ import org.libreoffice.impressremote.util.Fragments;
import org.libreoffice.impressremote.util.Intents;
import org.libreoffice.impressremote.communication.Server;
-public class ComputerConnectionActivity extends ActionBarActivity {
+public class ComputerConnectionActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle aSavedInstanceState) {
super.onCreate(aSavedInstanceState);
diff --git a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerCreationActivity.java b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerCreationActivity.java
index ac01bd5..7696305 100644
--- a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerCreationActivity.java
+++ b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputerCreationActivity.java
@@ -11,7 +11,8 @@ package org.libreoffice.impressremote.activity;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
-import android.support.v7.app.ActionBarActivity;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Patterns;
import android.view.KeyEvent;
@@ -23,14 +24,16 @@ import android.widget.TextView;
import org.libreoffice.impressremote.R;
import org.libreoffice.impressremote.util.Intents;
-public class ComputerCreationActivity extends ActionBarActivity implements View.OnClickListener, TextView.OnEditorActionListener {
+public class ComputerCreationActivity extends AppCompatActivity implements View.OnClickListener, TextView.OnEditorActionListener {
@Override
protected void onCreate(Bundle aSavedInstanceState) {
super.onCreate(aSavedInstanceState);
setContentView(R.layout.activity_computer_creation);
// action bar setup and listeners
- getSupportActionBar().setCustomView(R.layout.action_bar_computer_creation);
- View aActionBarView = getSupportActionBar().getCustomView();
+ ActionBar aActionBar = getSupportActionBar();
+ aActionBar.setCustomView(R.layout.action_bar_computer_creation);
+ aActionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+ View aActionBarView = aActionBar.getCustomView();
aActionBarView.findViewById(R.id.button_cancel).setOnClickListener(this);
aActionBarView.findViewById(R.id.button_save).setOnClickListener(this);
// input field
diff --git a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputersActivity.java b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputersActivity.java
index 103b4a7..ea33c3d 100644
--- a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputersActivity.java
+++ b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/ComputersActivity.java
@@ -18,7 +18,7 @@ import android.support.v4.view.MenuItemCompat;
import android.support.v4.view.ViewPager;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBar.Tab;
-import android.support.v7.app.ActionBarActivity;
+import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
@@ -27,7 +27,7 @@ import org.libreoffice.impressremote.fragment.ComputersFragment.Type;
import org.libreoffice.impressremote.util.Intents;
import org.libreoffice.impressremote.R;
-public class ComputersActivity extends ActionBarActivity implements ActionBar.TabListener, ViewPager.OnPageChangeListener {
+public class ComputersActivity extends AppCompatActivity implements ActionBar.TabListener, ViewPager.OnPageChangeListener {
private static final int REQUEST_ENABLE_BT = 0;
private static final String SELECT_BLUETOOTH = "SELECT_BLUETOOTH";
private static final BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter();
@@ -43,14 +43,13 @@ public class ComputersActivity extends ActionBarActivity implements ActionBar.Ta
isInitializing = true;
setContentView(R.layout.activity_computers);
+
+ ActionBar aActionBar = getSupportActionBar();
// Looks hacky but it seems to be the best way to set activity’s title
// different to application’s label. The other way is setting title
// to intents filter but it shows wrong label for recent apps screen then.
-
- ActionBar aActionBar = getSupportActionBar();
-
aActionBar.setTitle(R.string.title_computers);
- aActionBar.setDisplayShowTitleEnabled(true);
+ aActionBar.setDisplayHomeAsUpEnabled(false);
btTab = aActionBar.newTab().setTabListener(this)
.setText(R.string.title_bluetooth);
diff --git a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/RequirementsActivity.java b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/RequirementsActivity.java
index f098060..10eb898 100644
--- a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/RequirementsActivity.java
+++ b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/RequirementsActivity.java
@@ -9,29 +9,23 @@
package org.libreoffice.impressremote.activity;
import android.os.Bundle;
-import android.support.v7.app.ActionBarActivity;
+import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import org.libreoffice.impressremote.R;
-public class RequirementsActivity extends ActionBarActivity {
+public class RequirementsActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle aSavedInstanceState) {
super.onCreate(aSavedInstanceState);
setContentView(R.layout.activity_requirements);
-
- setUpHomeButton();
- }
-
- private void setUpHomeButton() {
- getSupportActionBar().setHomeButtonEnabled(true);
}
@Override
public boolean onOptionsItemSelected(MenuItem aMenuItem) {
switch (aMenuItem.getItemId()) {
case android.R.id.home:
- navigateUp();
+ finish();
return true;
default:
@@ -39,9 +33,6 @@ public class RequirementsActivity extends ActionBarActivity {
}
}
- private void navigateUp() {
- finish();
- }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/SlideShowActivity.java b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/SlideShowActivity.java
index ed66719..0a753f4 100644
--- a/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/SlideShowActivity.java
+++ b/android/sdremote/mobile/src/main/java/org/libreoffice/impressremote/activity/SlideShowActivity.java
@@ -21,7 +21,7 @@ import android.support.v4.app.DialogFragment;
import android.support.v4.app.Fragment;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.app.ActionBar;
-import android.support.v7.app.ActionBarActivity;
+import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.KeyEvent;
import android.view.Menu;
@@ -43,7 +43,7 @@ import org.libreoffice.impressremote.util.Intents;
import org.libreoffice.impressremote.util.Preferences;
import org.libreoffice.impressremote.util.SavedStates;
-public class SlideShowActivity extends ActionBarActivity implements ServiceConnection {
+public class SlideShowActivity extends AppCompatActivity implements ServiceConnection {
public enum Mode {
PAGER, GRID, EMPTY, STARTPOINTER, STOPPOINTER
}
diff --git a/android/sdremote/mobile/src/main/res/values/themes.xml b/android/sdremote/mobile/src/main/res/values/themes.xml
index ed1e3da..7eaabd3 100644
--- a/android/sdremote/mobile/src/main/res/values/themes.xml
+++ b/android/sdremote/mobile/src/main/res/values/themes.xml
@@ -20,48 +20,18 @@
xmlns:tools="http://schemas.android.com/tools">
<style name="Theme.ImpressRemote" parent="Theme.AppCompat.Light.DarkActionBar">
- <item name="android:actionBarStyle" tools:targetApi="11">@style/Theme.ImpressRemote.ActionBar</item>
<item name="actionBarStyle">@style/Theme.ImpressRemote.ActionBar</item>
-
- <item name="android:actionBarTabStyle" tools:targetApi="11">@style/Theme.ImpressRemote.ActionBar.Tab</item>
<item name="actionBarTabStyle">@style/Theme.ImpressRemote.ActionBar.Tab</item>
+ <item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
</style>
<style name="Theme.ImpressRemote.ActionBar" parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
- <item name="android:background">@drawable/bg_action_bar</item>
-
- <item name="android:displayOptions" tools:targetApi="11">showTitle|showHome|homeAsUp|useLogo</item>
- <item name="displayOptions">showTitle|showHome|homeAsUp|useLogo</item>
+ <item name="background">@drawable/bg_action_bar</item>
+ <item name="displayOptions">showTitle|homeAsUp|useLogo</item>
</style>
<style name="Theme.ImpressRemote.ActionBar.Tab" parent="Widget.AppCompat.Light.ActionBar.TabView.Inverse">
<item name="android:background">@drawable/bg_action_bar_tab</item>
</style>
- <style name="Theme.ImpressRemote.Computers" parent="Theme.ImpressRemote">
- <item name="android:actionBarStyle" tools:targetApi="11">@style/Theme.ImpressRemote.Computers.ActionBar</item>
- <item name="actionBarStyle">@style/Theme.ImpressRemote.Computers.ActionBar</item>
- </style>
-
- <style name="Theme.ImpressRemote.Computers.ActionBar" parent="Theme.ImpressRemote.ActionBar">
- <item name="android:navigationMode" tools:targetApi="11">tabMode</item>
- <item name="navigationMode">tabMode</item>
-
- <item name="android:displayOptions" tools:targetApi="11">showHome|useLogo</item>
- <item name="displayOptions">showHome|useLogo</item>
- </style>
-
- <style name="Theme.ImpressRemote.ComputerCreation" parent="Theme.ImpressRemote">
- <item name="android:actionBarStyle" tools:targetApi="11">@style/Theme.ImpressRemote.ComputerCreation.ActionBar</item>
- <item name="actionBarStyle">@style/Theme.ImpressRemote.ComputerCreation.ActionBar</item>
- </style>
-
- <style name="Theme.ImpressRemote.ComputerCreation.ActionBar" parent="Theme.ImpressRemote.ActionBar">
- <item name="android:displayOptions" tools:targetApi="11">showCustom</item>
- <item name="displayOptions">showCustom</item>
- </style>
-
- <style name="Theme.ImpressRemote.Settings" parent="Theme.ImpressRemote">
- <item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
- </style>
</resources> \ No newline at end of file