1
0
Fork 0
mirror of https://github.com/KokaKiwi/BarInsta synced 2026-03-05 20:11:36 +00:00

Open post from dm thread and handle ig links properly from within the app

This commit is contained in:
Ammar Githam 2020-09-07 22:44:56 +09:00
parent 0d7b5199ea
commit ccfaa1c397
3 changed files with 34 additions and 4 deletions

View file

@ -157,6 +157,12 @@ public class MainActivity extends BaseLanguageActivity {
return false;
}
@Override
protected void onNewIntent(final Intent intent) {
super.onNewIntent(intent);
handleIntent(intent);
}
private void setupSuggestions() {
suggestionsFetchHandler = new Handler();
suggestionAdapter = new SuggestionsAdapter(this, (type, query) -> {

View file

@ -29,6 +29,7 @@ import androidx.fragment.app.Fragment;
import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;
import androidx.lifecycle.ViewModelProvider;
import androidx.navigation.NavController;
import androidx.navigation.NavDirections;
import androidx.navigation.fragment.NavHostFragment;
import androidx.recyclerview.widget.LinearLayoutManager;
@ -223,11 +224,18 @@ public class DirectMessageThreadFragment extends Fragment {
case CLIP:
final long postId = directItemModel.getMediaModel().getPk();
final boolean isId = true;
// startActivity(new Intent(requireContext(), PostViewer.class)
// .putExtra(Constants.EXTRAS_POST, new PostModel(postId, false)));
final NavController navController = NavHostFragment.findNavController(this);
final NavDirections action = DirectMessageThreadFragmentDirections
.actionGlobalPostViewFragment(
0,
new String[]{String.valueOf(postId)},
isId
);
navController.navigate(action);
break;
case LINK:
Intent linkIntent = new Intent(Intent.ACTION_VIEW);
linkIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_SINGLE_TOP);
linkIntent.setData(Uri.parse(directItemModel.getLinkModel().getLinkContext().getLinkUrl()));
startActivity(linkIntent);
break;
@ -545,8 +553,8 @@ public class DirectMessageThreadFragment extends Fragment {
wr.close();
urlConnection.connect();
if (urlConnection.getResponseCode() == HttpURLConnection.HTTP_OK) {
if (action == "delete") hasDeletedSomething = true;
else if (action == "seen") DirectMessageInboxFragment.refreshPlease = true;
if (action.equals("delete")) hasDeletedSomething = true;
else if (action.equals("seen")) DirectMessageInboxFragment.refreshPlease = true;
}
urlConnection.disconnect();
} catch (Throwable ex) {