mirror of
https://framagit.org/tom79/fedilab-tube
synced 2025-02-17 12:30:49 +01:00
some changes
This commit is contained in:
parent
51860ff399
commit
c30e2d6a40
@ -15,7 +15,9 @@ android {
|
|||||||
multiDexEnabled true
|
multiDexEnabled true
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
}
|
}
|
||||||
|
dexOptions {
|
||||||
|
javaMaxHeapSize "4g"
|
||||||
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
minifyEnabled false
|
minifyEnabled false
|
||||||
@ -53,6 +55,7 @@ dependencies {
|
|||||||
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
|
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
|
||||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
|
||||||
|
|
||||||
|
implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
|
||||||
implementation 'com.github.GrenderG:Toasty:1.4.2'
|
implementation 'com.github.GrenderG:Toasty:1.4.2'
|
||||||
implementation 'com.google.android.exoplayer:exoplayer:2.10.6'
|
implementation 'com.google.android.exoplayer:exoplayer:2.10.6'
|
||||||
implementation "com.github.mabbas007:TagsEditText:1.0.5"
|
implementation "com.github.mabbas007:TagsEditText:1.0.5"
|
||||||
|
@ -28,6 +28,25 @@
|
|||||||
<category android:name="android.intent.category.LAUNCHER" />
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<activity
|
||||||
|
android:name=".PeertubeActivity"
|
||||||
|
android:configChanges="keyboardHidden|orientation|screenSize"
|
||||||
|
android:label="@string/app_name" />
|
||||||
|
<activity
|
||||||
|
android:name=".PeertubeEditUploadActivity"
|
||||||
|
android:configChanges="orientation|screenSize"
|
||||||
|
android:label="@string/app_name"
|
||||||
|
android:windowSoftInputMode="stateAlwaysHidden" />
|
||||||
|
<receiver
|
||||||
|
android:name="app.fedilab.android.services.PeertubeUploadReceiver"
|
||||||
|
android:exported="false">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="app.fedilab.android.uploadservice.broadcast.status" />
|
||||||
|
</intent-filter>
|
||||||
|
</receiver>
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
@ -9,6 +9,9 @@ public class FedilabTupe extends MultiDexApplication {
|
|||||||
@Override
|
@Override
|
||||||
protected void attachBaseContext(Context base) {
|
protected void attachBaseContext(Context base) {
|
||||||
super.attachBaseContext(base);
|
super.attachBaseContext(base);
|
||||||
MultiDex.install(this);
|
|
||||||
|
MultiDex.install(FedilabTupe.this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
File diff suppressed because it is too large
Load Diff
@ -1975,7 +1975,7 @@ public class PeertubeAPI {
|
|||||||
|
|
||||||
|
|
||||||
private String getAbsoluteUrl(String action) {
|
private String getAbsoluteUrl(String action) {
|
||||||
return Helper.instanceWithProtocol(this.instance) + "/api/v1" + action;
|
return Helper.instanceWithProtocol(context) + "/api/v1" + action;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package app.fedilab.fedilabtube.helper;
|
package app.fedilab.fedilabtube.helper;
|
||||||
|
|
||||||
|
import android.annotation.SuppressLint;
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.DownloadManager;
|
import android.app.DownloadManager;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@ -159,14 +160,14 @@ public class Helper {
|
|||||||
public static final String SET_EMBEDDED_BROWSER = "set_embedded_browser";
|
public static final String SET_EMBEDDED_BROWSER = "set_embedded_browser";
|
||||||
public static final String SET_CUSTOM_TABS = "set_custom_tabs";
|
public static final String SET_CUSTOM_TABS = "set_custom_tabs";
|
||||||
public static final String SET_DISPLAY_CONFIRM = "set_display_confirm";
|
public static final String SET_DISPLAY_CONFIRM = "set_display_confirm";
|
||||||
|
public static final String INTENT_ADD_UPLOADED_MEDIA = "intent_add_uploaded_media";
|
||||||
/**
|
/**
|
||||||
* Returns the peertube URL depending of the academic domain name
|
* Returns the peertube URL depending of the academic domain name
|
||||||
* @param acad String academic domain name
|
* @param acad String academic domain name
|
||||||
* @return String the peertube URL
|
* @return String the peertube URL
|
||||||
*/
|
*/
|
||||||
public static String getPeertubeUrl(String acad) {
|
private static String getPeertubeUrl(String acad) {
|
||||||
return "https://tube-"+acad.replace("ac\\-|\\.fr","")+".beta.education.fr/";
|
return "tube-"+acad.replaceAll("ac-|\\.fr","")+".beta.education.fr";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -178,19 +179,13 @@ public class Helper {
|
|||||||
*/
|
*/
|
||||||
public static String getLiveInstance(Context context) {
|
public static String getLiveInstance(Context context) {
|
||||||
final SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
final SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
||||||
return sharedpreferences.getString(Helper.PREF_INSTANCE, null);
|
String acad = sharedpreferences.getString(Helper.PREF_INSTANCE, "ac-lyon.fr");
|
||||||
|
return getPeertubeUrl(acad);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String instanceWithProtocol(Context context) {
|
||||||
public static String getLiveInstanceWithProtocol(Context context) {
|
return "https://"+getLiveInstance(context);
|
||||||
return instanceWithProtocol(getLiveInstance(context));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static String instanceWithProtocol(String instance) {
|
|
||||||
if (instance == null)
|
|
||||||
return null;
|
|
||||||
return "https://" + instance;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -349,15 +344,11 @@ public class Helper {
|
|||||||
|
|
||||||
|
|
||||||
public static void loadGiF(final Context context, Account account, final ImageView imageView) {
|
public static void loadGiF(final Context context, Account account, final ImageView imageView) {
|
||||||
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
|
||||||
|
|
||||||
String url = account.getAvatar();
|
String url = account.getAvatar();
|
||||||
if (url != null && url.startsWith("/")) {
|
if (url != null && url.startsWith("/")) {
|
||||||
url = Helper.getLiveInstanceWithProtocol(context) + url;
|
url = Helper.getLiveInstance(context) + url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Glide.with(imageView.getContext())
|
Glide.with(imageView.getContext())
|
||||||
.asDrawable()
|
.asDrawable()
|
||||||
@ -426,6 +417,7 @@ public class Helper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@SuppressLint("SetJavaScriptEnabled")
|
||||||
public static CustomWebview initializeWebview(Activity activity, int webviewId, View rootView) {
|
public static CustomWebview initializeWebview(Activity activity, int webviewId, View rootView) {
|
||||||
|
|
||||||
CustomWebview webView;
|
CustomWebview webView;
|
||||||
|
@ -0,0 +1,63 @@
|
|||||||
|
package app.fedilab.fedilabtube.services;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.content.SharedPreferences;
|
||||||
|
|
||||||
|
|
||||||
|
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
|
||||||
|
|
||||||
|
import net.gotev.uploadservice.ServerResponse;
|
||||||
|
import net.gotev.uploadservice.UploadInfo;
|
||||||
|
import net.gotev.uploadservice.UploadServiceBroadcastReceiver;
|
||||||
|
|
||||||
|
import org.json.JSONException;
|
||||||
|
import org.json.JSONObject;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
import app.fedilab.fedilabtube.helper.Helper;
|
||||||
|
|
||||||
|
|
||||||
|
public class PeertubeUploadReceiver extends UploadServiceBroadcastReceiver {
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onProgress(Context context, UploadInfo uploadInfo) {
|
||||||
|
// your code here
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Context context, UploadInfo uploadInfo, ServerResponse serverResponse,
|
||||||
|
Exception exception) {
|
||||||
|
// your code here
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCompleted(Context context, UploadInfo uploadInfo, ServerResponse serverResponse) {
|
||||||
|
try {
|
||||||
|
JSONObject response = new JSONObject(serverResponse.getBodyAsString());
|
||||||
|
|
||||||
|
if (!response.has("video")) { //IT's not from Peertube
|
||||||
|
ArrayList<String> file = uploadInfo.getSuccessfullyUploadedFiles();
|
||||||
|
Intent addMedia = new Intent(Helper.INTENT_ADD_UPLOADED_MEDIA);
|
||||||
|
addMedia.putExtra("response", serverResponse.getBodyAsString());
|
||||||
|
addMedia.putStringArrayListExtra("uploadInfo", file);
|
||||||
|
LocalBroadcastManager.getInstance(context).sendBroadcast(addMedia);
|
||||||
|
} else {
|
||||||
|
String videoID = response.getJSONObject("video").get("id").toString();
|
||||||
|
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
||||||
|
SharedPreferences.Editor editor = sharedpreferences.edit();
|
||||||
|
editor.putString(Helper.VIDEO_ID, videoID);
|
||||||
|
editor.commit();
|
||||||
|
}
|
||||||
|
} catch (JSONException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCancelled(Context context, UploadInfo uploadInfo) {
|
||||||
|
// your code here
|
||||||
|
}
|
||||||
|
}
|
@ -18,7 +18,7 @@
|
|||||||
app:layout_constraintRight_toRightOf="parent"
|
app:layout_constraintRight_toRightOf="parent"
|
||||||
app:menu="@menu/bottom_nav_menu" />
|
app:menu="@menu/bottom_nav_menu" />
|
||||||
|
|
||||||
<androidx.fragment.app.FragmentContainerView
|
<fragment
|
||||||
android:id="@+id/nav_host_fragment"
|
android:id="@+id/nav_host_fragment"
|
||||||
android:name="androidx.navigation.fragment.NavHostFragment"
|
android:name="androidx.navigation.fragment.NavHostFragment"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
tools:layout="@layout/fragment_video" >
|
tools:layout="@layout/fragment_video" >
|
||||||
<argument
|
<argument
|
||||||
android:name="type"
|
android:name="type"
|
||||||
app:argType="app.fedilab.fedilabtube.asynctasks.RetrieveFeedsAsyncTask.Type"
|
app:argType=".asynctasks.RetrieveFeedsAsyncTask$Type"
|
||||||
android:defaultValue="PLOCAL"/>
|
android:defaultValue="PLOCAL"/>
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
@ -23,7 +23,7 @@
|
|||||||
tools:layout="@layout/fragment_video">
|
tools:layout="@layout/fragment_video">
|
||||||
<argument
|
<argument
|
||||||
android:name="type"
|
android:name="type"
|
||||||
app:argType="app.fedilab.fedilabtube.asynctasks.RetrieveFeedsAsyncTask.Type"
|
app:argType=".asynctasks.RetrieveFeedsAsyncTask$Type"
|
||||||
android:defaultValue="PRECENTLYADDED"/>
|
android:defaultValue="PRECENTLYADDED"/>
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
@ -34,7 +34,7 @@
|
|||||||
tools:layout="@layout/fragment_video">
|
tools:layout="@layout/fragment_video">
|
||||||
<argument
|
<argument
|
||||||
android:name="type"
|
android:name="type"
|
||||||
app:argType="app.fedilab.fedilabtube.asynctasks.RetrieveFeedsAsyncTask.Type"
|
app:argType=".asynctasks.RetrieveFeedsAsyncTask$Type"
|
||||||
android:defaultValue="PMOSTLIKED"/>
|
android:defaultValue="PMOSTLIKED"/>
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
@ -45,7 +45,7 @@
|
|||||||
tools:layout="@layout/fragment_video">
|
tools:layout="@layout/fragment_video">
|
||||||
<argument
|
<argument
|
||||||
android:name="type"
|
android:name="type"
|
||||||
app:argType="app.fedilab.fedilabtube.asynctasks.RetrieveFeedsAsyncTask.Type"
|
app:argType=".asynctasks.RetrieveFeedsAsyncTask$Type"
|
||||||
android:defaultValue="PTRENDING"/>
|
android:defaultValue="PTRENDING"/>
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
@ -56,7 +56,7 @@
|
|||||||
tools:layout="@layout/fragment_video">
|
tools:layout="@layout/fragment_video">
|
||||||
<argument
|
<argument
|
||||||
android:name="type"
|
android:name="type"
|
||||||
app:argType="app.fedilab.fedilabtube.asynctasks.RetrieveFeedsAsyncTask.Type"
|
app:argType=".asynctasks.RetrieveFeedsAsyncTask$Type"
|
||||||
android:defaultValue="PPUBLIC"/>
|
android:defaultValue="PPUBLIC"/>
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user