Commit 4e3bdc2d authored by Tiago Cunha's avatar Tiago Cunha Committed by GitHub

Merge pull request #260 from congnt24/fix_losttext

fix lost text when turn off then turn on screen
parents 07345af1 aba90e91
......@@ -36,6 +36,9 @@ abstract class AbstractAuthedActivity extends AbstractFragmentActivity {
if (savedInstanceState == null) {
handleIntent(getIntent());
}
updateHostnameIfNeeded(rocketChatCache.getSelectedServerHostname());
updateRoomIdIfNeeded(rocketChatCache.getSelectedRoomId());
}
@Override
......@@ -148,12 +151,10 @@ abstract class AbstractAuthedActivity extends AbstractFragmentActivity {
@Override
protected void onResume() {
super.onResume();
ConnectivityManager.getInstance(getApplicationContext()).keepAliveServer();
updateHostnameIfNeeded(rocketChatCache.getSelectedServerHostname());
updateRoomIdIfNeeded(rocketChatCache.getSelectedRoomId());
subscribeToConfigChanges();
ConnectivityManager.getInstance(getApplicationContext()).keepAliveServer();
}
@Override
......
......@@ -15,6 +15,7 @@ import chat.rocket.android.api.MethodCallHelper;
import chat.rocket.android.fragment.chatroom.HomeFragment;
import chat.rocket.android.fragment.chatroom.RoomFragment;
import chat.rocket.android.fragment.sidebar.SidebarMainFragment;
import chat.rocket.android.helper.KeyboardHelper;
import chat.rocket.core.interactors.CanCreateRoomInteractor;
import chat.rocket.core.interactors.RoomInteractor;
import chat.rocket.core.interactors.SessionInteractor;
......@@ -48,6 +49,14 @@ public class MainActivity extends AbstractAuthedActivity implements MainContract
setupSidebar();
}
@Override
protected void onResume() {
super.onResume();
if (presenter != null && presenter instanceof MainPresenter) {
((MainPresenter)presenter).bindViewOnly(this);
}
}
@Override
protected void onPause() {
if (presenter != null) {
......@@ -172,6 +181,7 @@ public class MainActivity extends AbstractAuthedActivity implements MainContract
public void showRoom(String hostname, String roomId) {
showFragment(RoomFragment.create(hostname, roomId));
closeSidebarIfNeeded();
KeyboardHelper.hideSoftKeyboard(this);
}
@Override
......
......@@ -44,6 +44,13 @@ public class MainPresenter extends BasePresenter<MainContract.View>
this.rocketChatCache = rocketChatCache;
}
public void bindViewOnly(@NonNull MainContract.View view) {
super.bindView(view);
subscribeToUnreadCount();
subscribeToSession();
setUserOnline();
}
@Override
public void bindView(@NonNull MainContract.View view) {
super.bindView(view);
......
package chat.rocket.android.helper;
import android.app.Activity;
import android.content.Context;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
public class KeyboardHelper {
public static void hideSoftKeyboard(Activity activity) {
if (activity.getCurrentFocus() != null) {
InputMethodManager inputMethodManager = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), 0);
}
}
public static void showSoftKeyboard(View view) {
InputMethodManager inputMethodManager = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
view.requestFocus();
inputMethodManager.showSoftInput(view, 0);
}
public static void toggleKeyBoard(Context context) {
InputMethodManager inputMethodManager = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment