aboutsummaryrefslogtreecommitdiff
path: root/README
blob: b8f1a8a24dfc28f3ee3d67632da891fec607703a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Basic Instructions
Run these commands to grab dependent libraries:
git submodule init
git submodule update

Go to DragSortListView/library, and ServerProxy and build project files with:
android update project --path ./

Replace the file DragSortListView/library/libs/android-support-v4.jar with the one from main projects libs/


Roadmap of major planned features in rough order that I plan to work on them in (little features get sprinkled in wherever):

Album Art Grid View
	-Display albums in a grid
	-Display artists if supported (yes for tags, no for folders currently)
RemoteControl
	-DLNA/UpNP Client
	-DLNA/UpNP Renderer
New Tabs
	-Admin functions
		-Change your password
		-Create/delete users if admin
	-Internet Radio tab
HLS Video
	-Display video where album art is currently (double tap to fullscreen)
	-Videos can play inline with songs
	

I haven't felt like forking dragsortlistview properly, so local bugfixes:
In DragSortListView.java line 741 above v.addView(child).  Fixes NPE:
if(child.getParent() != null) {
	((ViewGroup) child.getParent()).removeView(child);
}

In DragSortListView.java line 722, inside of child != oldChild statement. Fixes checkables mixed with non-checkables not being converted:
if(child instanceof Checkable && !(v instanceof Checkable)) {
	v = new DragSortItemViewCheckable(getContext());
	v.setLayoutParams(new AbsListView.LayoutParams(
		ViewGroup.LayoutParams.FILL_PARENT,
		ViewGroup.LayoutParams.WRAP_CONTENT));
} else if(!(child instanceof Checkable) && v instanceof Checkable) {
	v = new DragSortItemView(getContext());
	v.setLayoutParams(new AbsListView.LayoutParams(
			ViewGroup.LayoutParams.FILL_PARENT,
			ViewGroup.LayoutParams.WRAP_CONTENT));
} else {
	// shouldn't get here if user is reusing convertViews
	// properly
	if (oldChild != null) {
		v.removeViewAt(0);
	}
}
v.addView(child);