1
0
mirror of https://github.com/moparisthebest/Yaaic synced 2024-11-30 21:02:17 -05:00

ConversationFragment: Move indicator from layout to toolbar (replacing toolbar title).

This commit is contained in:
Sebastian Kaspari 2015-04-04 21:37:18 +02:00
parent 3e4f8f57bd
commit 0de229c130
4 changed files with 31 additions and 9 deletions

View File

@ -185,6 +185,11 @@ public class MainActivity extends ActionBarActivity implements YaaicActivity, Se
return binder; return binder;
} }
@Override
public Toolbar getToolbar() {
return toolbar;
}
@Override @Override
public void setToolbarTitle(String title) { public void setToolbarTitle(String title) {
toolbar.setTitle(title); toolbar.setTitle(title);

View File

@ -20,6 +20,8 @@ along with Yaaic. If not, see <http://www.gnu.org/licenses/>.
*/ */
package org.yaaic.activity; package org.yaaic.activity;
import android.support.v7.widget.Toolbar;
import org.yaaic.irc.IRCBinder; import org.yaaic.irc.IRCBinder;
import org.yaaic.model.Server; import org.yaaic.model.Server;
@ -29,6 +31,8 @@ import org.yaaic.model.Server;
public interface YaaicActivity { public interface YaaicActivity {
IRCBinder getBinder(); IRCBinder getBinder();
Toolbar getToolbar();
void setToolbarTitle(String title); void setToolbarTitle(String title);
void onServerSelected(Server server); void onServerSelected(Server server);

View File

@ -21,6 +21,7 @@ along with Yaaic. If not, see <http://www.gnu.org/licenses/>.
*/ */
package org.yaaic.fragment; package org.yaaic.fragment;
import android.app.ActionBar;
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Fragment; import android.app.Fragment;
@ -36,8 +37,13 @@ import android.os.Handler;
import android.os.IBinder; import android.os.IBinder;
import android.speech.RecognizerIntent; import android.speech.RecognizerIntent;
import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.Toolbar;
import android.text.InputType; import android.text.InputType;
import android.text.method.TextKeyListener; import android.text.method.TextKeyListener;
import android.util.Log;
import android.util.TypedValue;
import android.view.Gravity;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.Menu; import android.view.Menu;
@ -185,8 +191,6 @@ public class ConversationFragment extends Fragment implements ServerListener, Co
serverId = getArguments().getInt("serverId"); serverId = getArguments().getInt("serverId");
server = Yaaic.getInstance().getServerById(serverId); server = Yaaic.getInstance().getServerById(serverId);
activity.setToolbarTitle(server.getTitle());
scrollback = new Scrollback(); scrollback = new Scrollback();
} }
@ -206,11 +210,19 @@ public class ConversationFragment extends Fragment implements ServerListener, Co
pagerAdapter = new ConversationPagerAdapter(getActivity(), server); pagerAdapter = new ConversationPagerAdapter(getActivity(), server);
pager.setAdapter(pagerAdapter); pager.setAdapter(pagerAdapter);
tabLayout = (ConversationTabLayout) view.findViewById(R.id.indicator); tabLayout = new ConversationTabLayout(container.getContext());
tabLayout.setViewPager(pager); tabLayout.setViewPager(pager);
tabLayout.setSelectedIndicatorColors(getResources().getColor(R.color.accent)); tabLayout.setSelectedIndicatorColors(getResources().getColor(R.color.accent));
tabLayout.setDividerColors(getResources().getColor(R.color.divider)); tabLayout.setDividerColors(getResources().getColor(R.color.divider));
Toolbar.LayoutParams params = new Toolbar.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
);
params.gravity = Gravity.BOTTOM;
activity.getToolbar().addView(tabLayout, params);
if (server.getStatus() == Status.PRE_CONNECTING) { if (server.getStatus() == Status.PRE_CONNECTING) {
server.clearConversations(); server.clearConversations();
pagerAdapter.clearConversations(); pagerAdapter.clearConversations();
@ -270,6 +282,13 @@ public class ConversationFragment extends Fragment implements ServerListener, Co
return view; return view;
} }
@Override
public void onDestroyView() {
super.onDestroyView();
activity.getToolbar().removeView(tabLayout);
}
/** /**
* On resume * On resume
*/ */

View File

@ -25,12 +25,6 @@ along with Yaaic. If not, see <http://www.gnu.org/licenses/>.
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical"> android:orientation="vertical">
<org.yaaic.view.ConversationTabLayout
android:id="@+id/indicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary" />
<android.support.v7.widget.CardView <android.support.v7.widget.CardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"