Commit 5b60ea7a authored by Rafael Kellermann Streit's avatar Rafael Kellermann Streit Committed by GitHub

Merge pull request #504 from RocketChat/fix/issue-59d07b3abe077a4dcc8dd244

Multiple minor issues fixes
parents 8d985b42 5f3d17ff
...@@ -174,7 +174,7 @@ public class DDPClientImpl { ...@@ -174,7 +174,7 @@ public class DDPClientImpl {
disposables.clear(); disposables.clear();
} }
}, },
err -> task.setError(new DDPClientCallback.Ping.Timeout(client)) err -> task.trySetError(new DDPClientCallback.Ping.Timeout(client))
) )
); );
...@@ -213,7 +213,7 @@ public class DDPClientImpl { ...@@ -213,7 +213,7 @@ public class DDPClientImpl {
"error")) { "error")) {
String _id = response.optString("id"); String _id = response.optString("id");
if (id.equals(_id)) { if (id.equals(_id)) {
task.setError(new DDPSubscription.NoSub.Error(client, id, task.trySetError(new DDPSubscription.NoSub.Error(client, id,
response.optJSONObject("error"))); response.optJSONObject("error")));
disposables.clear(); disposables.clear();
} }
...@@ -284,7 +284,7 @@ public class DDPClientImpl { ...@@ -284,7 +284,7 @@ public class DDPClientImpl {
String _id = response.optString("id"); String _id = response.optString("id");
if (id.equals(_id)) { if (id.equals(_id)) {
if (!response.isNull("error")) { if (!response.isNull("error")) {
task.setError(new DDPClientCallback.RPC.Error(client, id, task.trySetError(new DDPClientCallback.RPC.Error(client, id,
response.optJSONObject("error"))); response.optJSONObject("error")));
} else { } else {
String result = response.optString("result"); String result = response.optString("result");
...@@ -296,7 +296,7 @@ public class DDPClientImpl { ...@@ -296,7 +296,7 @@ public class DDPClientImpl {
}, },
err -> { err -> {
if (err instanceof TimeoutException) { if (err instanceof TimeoutException) {
task.setError(new DDPClientCallback.RPC.Timeout(client)); task.trySetError(new DDPClientCallback.RPC.Timeout(client));
} }
} }
) )
...@@ -427,7 +427,7 @@ public class DDPClientImpl { ...@@ -427,7 +427,7 @@ public class DDPClientImpl {
} }
}, },
err -> { err -> {
task.trySetError(new Exception(err)); setTaskError(task, new Exception(err));
disposables.clear(); disposables.clear();
} }
) )
...@@ -442,7 +442,10 @@ public class DDPClientImpl { ...@@ -442,7 +442,10 @@ public class DDPClientImpl {
} }
} }
private void setTaskError(TaskCompletionSource<? extends RxWebSocketCallback.Base> task, Throwable throwable) { private void setTaskError(TaskCompletionSource task, Throwable throwable) {
if (task.getTask().isCompleted()) {
return;
}
if (throwable instanceof Exception) { if (throwable instanceof Exception) {
task.setError((Exception) throwable); task.setError((Exception) throwable);
} else { } else {
......
...@@ -121,14 +121,14 @@ public class MainActivity extends AbstractAuthedActivity implements MainContract ...@@ -121,14 +121,14 @@ public class MainActivity extends AbstractAuthedActivity implements MainContract
} }
} }
}); });
}
if (toolbar != null) { if (toolbar != null) {
toolbar.setNavigationOnClickListener(view -> { toolbar.setNavigationOnClickListener(view -> {
if (pane.isSlideable() && !pane.isOpen()) { if (pane.isSlideable() && !pane.isOpen()) {
pane.openPane(); pane.openPane();
} }
}); });
}
} }
} }
......
...@@ -34,6 +34,7 @@ import chat.rocket.android.fragment.sidebar.SidebarMainFragment; ...@@ -34,6 +34,7 @@ import chat.rocket.android.fragment.sidebar.SidebarMainFragment;
import chat.rocket.android.helper.AbsoluteUrlHelper; import chat.rocket.android.helper.AbsoluteUrlHelper;
import chat.rocket.android.helper.FileUploadHelper; import chat.rocket.android.helper.FileUploadHelper;
import chat.rocket.android.helper.LoadMoreScrollListener; import chat.rocket.android.helper.LoadMoreScrollListener;
import chat.rocket.android.helper.Logger;
import chat.rocket.android.helper.OnBackPressListener; import chat.rocket.android.helper.OnBackPressListener;
import chat.rocket.android.helper.RecyclerViewAutoScrollManager; import chat.rocket.android.helper.RecyclerViewAutoScrollManager;
import chat.rocket.android.helper.RecyclerViewScrolledToBottomListener; import chat.rocket.android.helper.RecyclerViewScrolledToBottomListener;
...@@ -49,6 +50,7 @@ import chat.rocket.android.layouthelper.extra_action.upload.AbstractUploadAction ...@@ -49,6 +50,7 @@ import chat.rocket.android.layouthelper.extra_action.upload.AbstractUploadAction
import chat.rocket.android.layouthelper.extra_action.upload.AudioUploadActionItem; import chat.rocket.android.layouthelper.extra_action.upload.AudioUploadActionItem;
import chat.rocket.android.layouthelper.extra_action.upload.ImageUploadActionItem; import chat.rocket.android.layouthelper.extra_action.upload.ImageUploadActionItem;
import chat.rocket.android.layouthelper.extra_action.upload.VideoUploadActionItem; import chat.rocket.android.layouthelper.extra_action.upload.VideoUploadActionItem;
import chat.rocket.android.log.RCLog;
import chat.rocket.android.renderer.RocketChatUserStatusProvider; import chat.rocket.android.renderer.RocketChatUserStatusProvider;
import chat.rocket.android.service.ConnectivityManager; import chat.rocket.android.service.ConnectivityManager;
import chat.rocket.android.service.temp.DeafultTempSpotlightRoomCaller; import chat.rocket.android.service.temp.DeafultTempSpotlightRoomCaller;
...@@ -340,28 +342,30 @@ public class RoomFragment extends AbstractChatRoomFragment implements ...@@ -340,28 +342,30 @@ public class RoomFragment extends AbstractChatRoomFragment implements
SlidingPaneLayout subPane = getActivity().findViewById(R.id.sub_sliding_pane); SlidingPaneLayout subPane = getActivity().findViewById(R.id.sub_sliding_pane);
sidebarFragment = (SidebarMainFragment) getActivity().getSupportFragmentManager().findFragmentById(R.id.sidebar_fragment_container); sidebarFragment = (SidebarMainFragment) getActivity().getSupportFragmentManager().findFragmentById(R.id.sidebar_fragment_container);
pane.setPanelSlideListener(new SlidingPaneLayout.PanelSlideListener() { if (pane != null) {
@Override pane.setPanelSlideListener(new SlidingPaneLayout.PanelSlideListener() {
public void onPanelSlide(View view, float v) { @Override
messageFormManager.enableComposingText(false); public void onPanelSlide(View view, float v) {
sidebarFragment.clearSearchViewFocus(); messageFormManager.enableComposingText(false);
//Ref: ActionBarDrawerToggle#setProgress sidebarFragment.clearSearchViewFocus();
toolbar.setNavigationIconProgress(v); //Ref: ActionBarDrawerToggle#setProgress
} toolbar.setNavigationIconProgress(v);
}
@Override @Override
public void onPanelOpened(View view) { public void onPanelOpened(View view) {
toolbar.setNavigationIconVerticalMirror(true); toolbar.setNavigationIconVerticalMirror(true);
} }
@Override @Override
public void onPanelClosed(View view) { public void onPanelClosed(View view) {
messageFormManager.enableComposingText(true); messageFormManager.enableComposingText(true);
toolbar.setNavigationIconVerticalMirror(false); toolbar.setNavigationIconVerticalMirror(false);
subPane.closePane(); subPane.closePane();
closeUserActionContainer(); closeUserActionContainer();
} }
}); });
}
} }
public void closeUserActionContainer() { public void closeUserActionContainer() {
...@@ -537,6 +541,8 @@ public class RoomFragment extends AbstractChatRoomFragment implements ...@@ -537,6 +541,8 @@ public class RoomFragment extends AbstractChatRoomFragment implements
try { try {
inputContentInfo.releasePermission(); inputContentInfo.releasePermission();
} catch (Exception e) { } catch (Exception e) {
RCLog.e(e);
Logger.report(e);
} }
return true; return true;
...@@ -552,9 +558,11 @@ public class RoomFragment extends AbstractChatRoomFragment implements ...@@ -552,9 +558,11 @@ public class RoomFragment extends AbstractChatRoomFragment implements
@Override @Override
public void setupWith(RocketChatAbsoluteUrl rocketChatAbsoluteUrl) { public void setupWith(RocketChatAbsoluteUrl rocketChatAbsoluteUrl) {
token = rocketChatAbsoluteUrl.getToken(); if (rocketChatAbsoluteUrl != null) {
userId = rocketChatAbsoluteUrl.getUserId(); token = rocketChatAbsoluteUrl.getToken();
messageListAdapter.setAbsoluteUrl(rocketChatAbsoluteUrl); userId = rocketChatAbsoluteUrl.getUserId();
messageListAdapter.setAbsoluteUrl(rocketChatAbsoluteUrl);
}
} }
@Override @Override
...@@ -657,12 +665,16 @@ public class RoomFragment extends AbstractChatRoomFragment implements ...@@ -657,12 +665,16 @@ public class RoomFragment extends AbstractChatRoomFragment implements
} }
private void showRoomListFragment(int actionId) { private void showRoomListFragment(int actionId) {
Intent intent = new Intent(getActivity(), RoomActivity.class).putExtra("actionId", actionId) //TODO: oddly sometimes getActivity() yields null. Investigate the situations this might happen
.putExtra("roomId", roomId) //and fix it, removing this null-check
.putExtra("roomType", roomType) if (getActivity() != null) {
.putExtra("hostname", hostname) Intent intent = new Intent(getActivity(), RoomActivity.class).putExtra("actionId", actionId)
.putExtra("token", token) .putExtra("roomId", roomId)
.putExtra("userId", userId); .putExtra("roomType", roomType)
startActivity(intent); .putExtra("hostname", hostname)
.putExtra("token", token)
.putExtra("userId", userId);
startActivity(intent);
}
} }
} }
\ No newline at end of file
...@@ -19,6 +19,7 @@ import com.jakewharton.rxbinding2.support.v7.widget.RxSearchView; ...@@ -19,6 +19,7 @@ import com.jakewharton.rxbinding2.support.v7.widget.RxSearchView;
import com.jakewharton.rxbinding2.widget.RxCompoundButton; import com.jakewharton.rxbinding2.widget.RxCompoundButton;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.List; import java.util.List;
import bolts.Task; import bolts.Task;
...@@ -58,7 +59,7 @@ public class SidebarMainFragment extends AbstractFragment implements SidebarMain ...@@ -58,7 +59,7 @@ public class SidebarMainFragment extends AbstractFragment implements SidebarMain
private RoomListAdapter adapter; private RoomListAdapter adapter;
private SearchView searchView; private SearchView searchView;
private TextView loadMoreResultsText; private TextView loadMoreResultsText;
private List<RoomSidebar> roomSidebarList; private List<RoomSidebar> roomSidebarList = Collections.emptyList();
private Disposable spotlightDisposable; private Disposable spotlightDisposable;
private String hostname; private String hostname;
private static final String HOSTNAME = "hostname"; private static final String HOSTNAME = "hostname";
......
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