Skip to content

Commit 2489c6c

Browse files
author
=
committed
Some smaller UI changes and else:
- added play video button for better lefthand support - wrote codepart to darkon5s listitem improvements - set minimum api level to 15 (Android 4.0.3 support) - updated to sdk level 23 including the new support libs
1 parent 30dcd3e commit 2489c6c

20 files changed

Lines changed: 374 additions & 279 deletions

app/app.iml

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,13 @@
3636
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
3737
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" />
3838
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
39-
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/generated/debug" type="java-resource" />
39+
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" />
4040
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/debug" isTestSource="true" generated="true" />
4141
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/debug" isTestSource="true" generated="true" />
4242
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
4343
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/debug" isTestSource="true" generated="true" />
4444
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" />
45-
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/generated/androidTest/debug" type="java-test-resource" />
45+
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" />
4646
<sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
4747
<sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
4848
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
@@ -71,8 +71,9 @@
7171
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
7272
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
7373
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex-cache" />
74-
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/22.2.1/jars" />
75-
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/22.2.1/jars" />
74+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.1/jars" />
75+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/design/23.0.1/jars" />
76+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/23.0.1/jars" />
7677
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
7778
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jacoco" />
7879
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaResources" />
@@ -88,12 +89,13 @@
8889
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
8990
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
9091
</content>
91-
<orderEntry type="jdk" jdkName="Android API 22 Platform" jdkType="Android SDK" />
92+
<orderEntry type="jdk" jdkName="Android API 23 Platform" jdkType="Android SDK" />
9293
<orderEntry type="sourceFolder" forTests="false" />
9394
<orderEntry type="library" exported="" name="jsoup-1.8.3" level="project" />
94-
<orderEntry type="library" exported="" name="support-v4-22.2.1" level="project" />
95-
<orderEntry type="library" exported="" name="support-annotations-22.2.1" level="project" />
95+
<orderEntry type="library" exported="" name="support-v4-23.0.1" level="project" />
9696
<orderEntry type="library" exported="" name="rhino-1.7.7" level="project" />
97-
<orderEntry type="library" exported="" name="appcompat-v7-22.2.1" level="project" />
97+
<orderEntry type="library" exported="" name="design-23.0.1" level="project" />
98+
<orderEntry type="library" exported="" name="appcompat-v7-23.0.1" level="project" />
99+
<orderEntry type="library" exported="" name="support-annotations-23.0.1" level="project" />
98100
</component>
99101
</module>

app/build.gradle

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
apply plugin: 'com.android.application'
22

33
android {
4-
compileSdkVersion 22
5-
buildToolsVersion "22.0.1"
4+
compileSdkVersion 23
5+
buildToolsVersion "23.0.1"
66

77
defaultConfig {
88
applicationId "org.schabi.newpipe"
9-
minSdkVersion 16
10-
targetSdkVersion 22
9+
minSdkVersion 15
10+
targetSdkVersion 23
1111
versionCode 2
1212
versionName "0.3.5"
1313
}
@@ -21,8 +21,9 @@ android {
2121

2222
dependencies {
2323
compile fileTree(include: ['*.jar'], dir: 'libs')
24-
compile 'com.android.support:appcompat-v7:22.2.1'
25-
compile 'com.android.support:support-v4:22.2.1'
24+
compile 'com.android.support:appcompat-v7:23.0.1'
25+
compile 'com.android.support:support-v4:23.0.1'
2626
compile 'org.jsoup:jsoup:1.8.3'
2727
compile 'org.mozilla:rhino:1.7.7'
28+
compile 'com.android.support:design:23.0.1'
2829
}

app/src/main/java/org/schabi/newpipe/VideoInfoItem.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,5 @@ public class VideoInfoItem {
3030
public String thumbnail_url = "";
3131
public Bitmap thumbnail = null;
3232
public String webpage_url = "";
33+
public String upload_date = "";
3334
}

app/src/main/java/org/schabi/newpipe/VideoItemDetailFragment.java

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
import android.media.Image;
77
import android.os.Bundle;
88
import android.os.Handler;
9+
import android.preference.PreferenceManager;
10+
import android.support.design.widget.FloatingActionButton;
911
import android.support.v4.app.Fragment;
1012
import android.support.v7.app.ActionBar;
1113
import android.text.Html;
@@ -14,9 +16,11 @@
1416
import android.view.LayoutInflater;
1517
import android.view.View;
1618
import android.view.ViewGroup;
19+
import android.widget.GridLayout;
1720
import android.widget.ImageView;
1821
import android.widget.ListView;
1922
import android.widget.ProgressBar;
23+
import android.widget.RelativeLayout;
2024
import android.widget.TextView;
2125

2226

@@ -159,6 +163,7 @@ public void updateInfo(VideoInfo info) {
159163
ImageView thumbsDownPic = (ImageView) a.findViewById(R.id.detailThumbsDownImgView);
160164
View textSeperationLine = a.findViewById(R.id.textSeperationLine);
161165

166+
162167
if(textSeperationLine != null) {
163168
textSeperationLine.setVisibility(View.VISIBLE);
164169
}
@@ -202,7 +207,7 @@ public void updateInfo(VideoInfo info) {
202207
}
203208
ActionBarHandler.getHandler().setStreams(streamList);
204209
}
205-
break;
210+
break;
206211
case VideoInfo.VIDEO_UNAVAILABLE_GEMA:
207212
thumbnailView.setImageBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.gruese_die_gema_unangebracht));
208213
break;
@@ -257,7 +262,31 @@ public void onCreate(Bundle savedInstanceState) {
257262
public View onCreateView(LayoutInflater inflater, ViewGroup container,
258263
Bundle savedInstanceState) {
259264
View rootView = inflater.inflate(R.layout.fragment_videoitem_detail, container, false);
260-
261265
return rootView;
262266
}
263-
}
267+
268+
@Override
269+
public void onActivityCreated(Bundle savedInstanceBundle) {
270+
super.onActivityCreated(savedInstanceBundle);
271+
FloatingActionButton playVideoButton = (FloatingActionButton) getActivity().findViewById(R.id.playVideoButton);
272+
273+
if(PreferenceManager.getDefaultSharedPreferences(getActivity())
274+
.getBoolean(getString(R.string.leftHandLayout), false)) {
275+
RelativeLayout.LayoutParams oldLayout = (RelativeLayout.LayoutParams) playVideoButton.getLayoutParams();
276+
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
277+
RelativeLayout.LayoutParams.WRAP_CONTENT,
278+
RelativeLayout.LayoutParams.WRAP_CONTENT);
279+
layoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
280+
layoutParams.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
281+
layoutParams.setMargins(oldLayout.leftMargin, oldLayout.topMargin, oldLayout.rightMargin, oldLayout.rightMargin);
282+
playVideoButton.setLayoutParams(layoutParams);
283+
}
284+
285+
playVideoButton.setOnClickListener(new View.OnClickListener() {
286+
@Override
287+
public void onClick(View v) {
288+
ActionBarHandler.getHandler().playVideo();
289+
}
290+
});
291+
}
292+
}

app/src/main/java/org/schabi/newpipe/VideoListAdapter.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
104104
holder.itemVideoTitleView = (TextView) convertView.findViewById(R.id.itemVideoTitleView);
105105
holder.itemUploaderView = (TextView) convertView.findViewById(R.id.itemUploaderView);
106106
holder.itemDurationView = (TextView) convertView.findViewById(R.id.itemDurationView);
107+
holder.itemUploadDateView = (TextView) convertView.findViewById(R.id.itemUploadDateView);
107108
convertView.setTag(holder);
108109
} else {
109110
holder = (ViewHolder) convertView.getTag();
@@ -118,6 +119,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
118119
holder.itemVideoTitleView.setText(videoList.get(position).title);
119120
holder.itemUploaderView.setText(videoList.get(position).uploader);
120121
holder.itemDurationView.setText(videoList.get(position).duration);
122+
holder.itemUploadDateView.setText(videoList.get(position).upload_date);
121123

122124
if(listView.isItemChecked(position)) {
123125
convertView.setBackgroundColor(context.getResources().getColor(R.color.primaryColorYoutube));
@@ -130,6 +132,6 @@ public View getView(int position, View convertView, ViewGroup parent) {
130132

131133
private class ViewHolder {
132134
public ImageView itemThumbnailView;
133-
public TextView itemVideoTitleView, itemUploaderView, itemDurationView;
135+
public TextView itemVideoTitleView, itemUploaderView, itemDurationView, itemUploadDateView;
134136
}
135-
}
137+
}

app/src/main/java/org/schabi/newpipe/youtube/YoutubeSearchEngine.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,9 @@ public Result search(String query, int page) {
9797
resultItem.uploader = item.select("div[class=\"yt-lockup-byline\"]").first()
9898
.select("a").first()
9999
.text();
100+
resultItem.upload_date = item.select("div[class=\"yt-lockup-meta\"]").first()
101+
.select("li").first()
102+
.text();
100103
Element te = item.select("div[class=\"yt-thumb video-thumb\"]").first()
101104
.select("img").first();
102105
resultItem.thumbnail_url = te.attr("abs:src");

0 commit comments

Comments
 (0)