diff --git a/Client/TeamTalkAndroid/src/main/java/dk/bearware/gui/MainActivity.java b/Client/TeamTalkAndroid/src/main/java/dk/bearware/gui/MainActivity.java index 740d9673eb..418923c29f 100644 --- a/Client/TeamTalkAndroid/src/main/java/dk/bearware/gui/MainActivity.java +++ b/Client/TeamTalkAndroid/src/main/java/dk/bearware/gui/MainActivity.java @@ -36,6 +36,7 @@ import dk.bearware.ClientErrorMsg; import dk.bearware.ClientFlag; import dk.bearware.ClientStatistics; +import dk.bearware.Codec; import dk.bearware.DesktopInput; import dk.bearware.FileTransfer; import dk.bearware.MediaFileInfo; @@ -49,6 +50,7 @@ import dk.bearware.UserAccount; import dk.bearware.UserRight; import dk.bearware.UserState; +import dk.bearware.VideoCodec; import dk.bearware.data.Permissions; import dk.bearware.events.ClientListener; import dk.bearware.events.CommandListener; @@ -156,7 +158,8 @@ public class MainActivity public final int REQUEST_EDITCHANNEL = 1, REQUEST_NEWCHANNEL = 2, REQUEST_EDITUSER = 3, - REQUEST_SELECT_FILE = 4; + REQUEST_SELECT_FILE = 4, + REQUEST_STREAM_MEDIA = 5; // The channel currently being displayed Channel curchannel; @@ -271,6 +274,7 @@ public boolean onPrepareOptionsMenu(Menu menu) { menu.findItem(R.id.action_edit).setEnabled(isEditable).setVisible(isEditable); menu.findItem(R.id.action_join).setEnabled(isJoinable).setVisible(isJoinable); menu.findItem(R.id.action_upload).setEnabled(isMyChannel).setVisible(isMyChannel); + menu.findItem(R.id.action_stream).setEnabled(isMyChannel).setVisible(isMyChannel); return super.onPrepareOptionsMenu(menu); } @@ -288,6 +292,12 @@ public boolean onOptionsItemSelected(MenuItem item) { } } break; + case R.id.action_stream : { + if (Permissions.setupPermission(getBaseContext(), this, Permissions.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE)) { + startActivityForResult(new Intent(this, FilePickerActivity.class), REQUEST_STREAM_MEDIA); + } + } + break; case R.id.action_edit : { if (curchannel != null) editChannelProperties(curchannel); @@ -511,6 +521,11 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { else { Toast.makeText(this, R.string.upload_started, Toast.LENGTH_SHORT).show(); } + } else if ((requestCode == REQUEST_STREAM_MEDIA) && (resultCode == RESULT_OK)) { + String path = data.getStringExtra(FilePickerActivity.SELECTED_FILE); + VideoCodec videocodec = new VideoCodec(); + videocodec.nCodec = Codec.NO_CODEC; + ttclient.startStreamingMediaFileToChannel(path, videocodec); } } diff --git a/Client/TeamTalkAndroid/src/main/res/menu/main.xml b/Client/TeamTalkAndroid/src/main/res/menu/main.xml index 189fe6b5e3..5ef1715db2 100644 --- a/Client/TeamTalkAndroid/src/main/res/menu/main.xml +++ b/Client/TeamTalkAndroid/src/main/res/menu/main.xml @@ -14,6 +14,10 @@ android:id="@+id/action_upload" android:showAsAction="ifRoom|withText" android:title="@string/action_upload"/> + Move Here Select For Move Upload File + Stream a media file Msg Send