diff --git a/app/src/main/java/org/yaaic/activity/MainActivity.java b/app/src/main/java/org/yaaic/activity/MainActivity.java
index 6ed5230..3213b37 100644
--- a/app/src/main/java/org/yaaic/activity/MainActivity.java
+++ b/app/src/main/java/org/yaaic/activity/MainActivity.java
@@ -20,6 +20,8 @@ along with Yaaic. If not, see .
*/
package org.yaaic.activity;
+import android.app.Fragment;
+import android.app.FragmentTransaction;
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
@@ -29,8 +31,6 @@ import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.widget.Toolbar;
-import android.util.Log;
-import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
@@ -39,14 +39,13 @@ import android.widget.TextView;
import org.yaaic.R;
import org.yaaic.Yaaic;
import org.yaaic.fragment.OverviewFragment;
+import org.yaaic.fragment.SettingsFragment;
import org.yaaic.irc.IRCBinder;
import org.yaaic.irc.IRCService;
import org.yaaic.model.Extra;
import org.yaaic.model.Server;
import org.yaaic.model.Status;
-import java.util.List;
-
/**
* The main activity of Yaaic. We'll add, remove and replace fragments here.
*/
@@ -64,6 +63,10 @@ public class MainActivity extends ActionBarActivity implements OverviewFragment.
initializeToolbar();
initializeDrawer();
+
+ if (savedInstanceState == null) {
+ onOverview(null);
+ }
}
public void initializeToolbar() {
@@ -80,7 +83,7 @@ public class MainActivity extends ActionBarActivity implements OverviewFragment.
LinearLayout drawerContent = (LinearLayout) findViewById(R.id.drawer_content);
for (final Server server : Yaaic.getInstance().getServersAsArrayList()) {
- TextView serverView = (TextView) getLayoutInflater().inflate(R.layout.item_navigation, drawer, false);
+ TextView serverView = (TextView) getLayoutInflater().inflate(R.layout.item_drawer_server, drawer, false);
serverView.setText(server.getTitle());
serverView.setOnClickListener(new View.OnClickListener() {
@@ -148,10 +151,20 @@ public class MainActivity extends ActionBarActivity implements OverviewFragment.
}
+ public void onOverview(View view) {
+ switchToFragment(new OverviewFragment(), OverviewFragment.TRANSACTION_TAG);
+ }
+
public void onSettings(View view) {
+ switchToFragment(new SettingsFragment(), SettingsFragment.TRANSACTION_TAG);
+ }
+
+ private void switchToFragment(Fragment fragment, String tag) {
drawer.closeDrawers();
- startActivity(new Intent(this, SettingsActivity.class));
+ FragmentTransaction transaction = getFragmentManager().beginTransaction();
+ transaction.replace(R.id.container, fragment, tag);
+ transaction.commit();
}
public void onAbout(View view) {
diff --git a/app/src/main/java/org/yaaic/fragment/OverviewFragment.java b/app/src/main/java/org/yaaic/fragment/OverviewFragment.java
index a9e4e57..cbf8b19 100644
--- a/app/src/main/java/org/yaaic/fragment/OverviewFragment.java
+++ b/app/src/main/java/org/yaaic/fragment/OverviewFragment.java
@@ -55,6 +55,8 @@ import org.yaaic.receiver.ServerReceiver;
* Fragment showing a list of configured servers.
*/
public class OverviewFragment extends Fragment implements ServerListener, ServersAdapter.ClickListener, View.OnClickListener {
+ public static final String TRANSACTION_TAG = "fragment_overview";
+
/**
* Callback interface to be implemented by Activities using this fragment.
*/
diff --git a/app/src/main/java/org/yaaic/fragment/SettingsFragment.java b/app/src/main/java/org/yaaic/fragment/SettingsFragment.java
new file mode 100644
index 0000000..0d27958
--- /dev/null
+++ b/app/src/main/java/org/yaaic/fragment/SettingsFragment.java
@@ -0,0 +1,20 @@
+package org.yaaic.fragment;
+
+import android.os.Bundle;
+import android.preference.PreferenceFragment;
+
+import org.yaaic.R;
+
+/**
+ * Fragment displaying all settings.
+ */
+public class SettingsFragment extends PreferenceFragment {
+ public static final String TRANSACTION_TAG = "fragment_settings";
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ addPreferencesFromResource(R.xml.preferences);
+ }
+}
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 54f66e9..9c2ff6c 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -36,13 +36,7 @@ along with Yaaic. If not, see .
-
-
-
+ android:layout_height="match_parent" />