summaryrefslogtreecommitdiff
path: root/res/layout
diff options
context:
space:
mode:
Diffstat (limited to 'res/layout')
-rw-r--r--res/layout/addfeed.xml64
-rw-r--r--res/layout/authentication_dialog.xml62
-rw-r--r--res/layout/gpodnet_main.xml19
-rw-r--r--res/layout/gpodnet_podcast_list.xml34
-rw-r--r--res/layout/gpodnet_podcast_listitem.xml44
-rw-r--r--res/layout/gpodnet_search.xml12
-rw-r--r--res/layout/gpodnet_tag_activity.xml12
-rw-r--r--res/layout/gpodnetauth_activity.xml10
-rw-r--r--res/layout/gpodnetauth_credentials.xml85
-rw-r--r--res/layout/gpodnetauth_device.xml104
-rw-r--r--res/layout/gpodnetauth_finish.xml44
-rw-r--r--res/layout/itemdescription_listitem.xml27
-rw-r--r--res/layout/onlinefeedview_header.xml66
13 files changed, 563 insertions, 20 deletions
diff --git a/res/layout/addfeed.xml b/res/layout/addfeed.xml
index 39552976b..bb72a2be1 100644
--- a/res/layout/addfeed.xml
+++ b/res/layout/addfeed.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical" >
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:orientation="vertical">
<LinearLayout
android:id="@+id/footer"
@@ -10,21 +10,21 @@
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
- android:orientation="horizontal" >
+ android:orientation="horizontal">
<Button
android:id="@+id/butConfirm"
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
- android:text="@string/confirm_label" />
+ android:text="@string/confirm_label"/>
<Button
android:id="@+id/butCancel"
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
- android:text="@string/cancel_label" />
+ android:text="@string/cancel_label"/>
</LinearLayout>
<ScrollView
@@ -32,21 +32,22 @@
android:layout_height="0dp"
android:layout_above="@id/footer"
android:layout_alignParentTop="true"
- android:scrollbars="vertical" >
+ android:scrollbars="vertical">
<RelativeLayout
android:layout_width="match_parent"
- android:layout_height="wrap_content" >
+ android:layout_height="wrap_content">
<TextView
android:id="@+id/txtvFeedurl"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
- android:layout_margin="8dp"
- android:focusable="true"
- android:focusableInTouchMode="true"
- android:text="@string/txtvfeedurl_label" />
+ android:layout_margin="16dp"
+ android:textSize="@dimen/text_size_large"
+ android:textColor="@color/bright_blue"
+ android:textStyle="italic"
+ android:text="@string/txtvfeedurl_label"/>
<EditText
android:id="@+id/etxtFeedurl"
@@ -55,23 +56,35 @@
android:layout_below="@id/txtvFeedurl"
android:layout_margin="8dp"
android:hint="@string/feedurl_label"
- android:inputType="textUri" />
+ android:inputType="textUri"/>
<TextView
- android:id="@+id/txtvBrowseMiroguide"
+ android:id="@+id/txtvPodcastDirectories"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/etxtFeedurl"
android:layout_margin="8dp"
- android:text="@string/txtv_browse_miroguide_label" />
+ android:textSize="@dimen/text_size_large"
+ android:textColor="@color/bright_blue"
+ android:textStyle="italic"
+ android:text="@string/podcastdirectories_label"/>
+
+ <Button
+ android:id="@+id/butBrowseGpoddernet"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/txtvPodcastDirectories"
+ android:layout_margin="8dp"
+ android:text="@string/gpodnet_main_label"/>
<Button
android:id="@+id/butBrowseMiroguide"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_below="@id/txtvBrowseMiroguide"
+ android:layout_below="@id/butBrowseGpoddernet"
android:layout_margin="8dp"
- android:text="@string/browse_miroguide_label" />
+ android:text="@string/miro_guide_label"/>
+
<TextView
android:id="@+id/txtvOpmlImport"
@@ -79,17 +92,28 @@
android:layout_height="wrap_content"
android:layout_below="@id/butBrowseMiroguide"
android:layout_margin="8dp"
- android:text="@string/opml_import_txtv_button_lable" />
+ android:textSize="@dimen/text_size_large"
+ android:textColor="@color/bright_blue"
+ android:textStyle="italic"
+ android:text="@string/opml_import_label"/>
+
+ <TextView
+ android:id="@+id/txtvOpmlImportExpl"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/txtvOpmlImport"
+ android:layout_margin="8dp"
+ android:text="@string/opml_import_txtv_button_lable"/>
<Button
android:id="@+id/butOpmlImport"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_below="@id/txtvOpmlImport"
+ android:layout_below="@id/txtvOpmlImportExpl"
android:layout_marginBottom="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
- android:text="@string/opml_import_label" />
+ android:text="@string/opml_import_label"/>
</RelativeLayout>
</ScrollView>
diff --git a/res/layout/authentication_dialog.xml b/res/layout/authentication_dialog.xml
new file mode 100644
index 000000000..82260eb43
--- /dev/null
+++ b/res/layout/authentication_dialog.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical">
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical">
+
+ <EditText
+ android:id="@+id/etxtUsername"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:layout_margin="16dp"
+ android:hint="@string/username_label"/>
+
+ <EditText
+ android:id="@+id/etxtPassword"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:layout_margin="16dp"
+ android:inputType="textPassword"
+ android:hint="@string/password_label"/>
+
+ <CheckBox
+ android:id="@+id/chkSaveUsernamePassword"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_margin="16dp"
+ android:text="@string/save_username_password_label"/>
+
+
+ </LinearLayout>
+
+ <LinearLayout
+ style="@android:style/ButtonBar"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
+
+ <Button
+ android:id="@+id/butConfirm"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_marginRight="8dp"
+ android:text="@string/confirm_label"
+ android:layout_weight="1"/>
+
+ <Button
+ android:id="@+id/butCancel"
+ android:text="@string/cancel_label"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"/>
+ </LinearLayout>
+
+</LinearLayout> \ No newline at end of file
diff --git a/res/layout/gpodnet_main.xml b/res/layout/gpodnet_main.xml
new file mode 100644
index 000000000..1017a6a65
--- /dev/null
+++ b/res/layout/gpodnet_main.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/main_view"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical" >
+
+ <android.support.v4.view.ViewPager
+ android:id="@+id/viewpager"
+ android:layout_width="match_parent"
+ android:layout_height="0px"
+ android:layout_weight="1">
+ <android.support.v4.view.PagerTabStrip
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="top" />
+ </android.support.v4.view.ViewPager>
+
+</LinearLayout>
diff --git a/res/layout/gpodnet_podcast_list.xml b/res/layout/gpodnet_podcast_list.xml
new file mode 100644
index 000000000..e69c2dbee
--- /dev/null
+++ b/res/layout/gpodnet_podcast_list.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <GridView
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:id="@+id/gridView"
+ android:stretchMode="columnWidth"
+ android:numColumns="auto_fit"
+ android:verticalSpacing="4dp"
+ android:horizontalSpacing="4dp"
+ android:gravity="center"
+ android:columnWidth="200dp"
+ tools:listitem="@layout/gpodnet_podcast_listitem"/>
+
+ <ProgressBar
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/progressBar"
+ android:layout_gravity="center"
+ android:indeterminateOnly="true"/>
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/txtvError"
+ android:layout_gravity="center"
+ android:visibility="gone"
+ android:textSize="@dimen/text_size_small"/>
+</FrameLayout> \ No newline at end of file
diff --git a/res/layout/gpodnet_podcast_listitem.xml b/res/layout/gpodnet_podcast_listitem.xml
new file mode 100644
index 000000000..f6ddb3bd8
--- /dev/null
+++ b/res/layout/gpodnet_podcast_listitem.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+ <ImageView
+ android:id="@+id/imgvCover"
+ android:layout_width="@dimen/thumbnail_length_itemlist"
+ android:layout_height="@dimen/thumbnail_length_itemlist"
+ android:layout_alignParentLeft="true"
+ android:layout_centerVertical="true"
+ android:layout_marginRight="4dip"
+ android:adjustViewBounds="true"
+ android:cropToPadding="true"
+ android:scaleType="fitXY" />
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/thumbnail_length_itemlist"
+ android:layout_centerVertical="true"
+ android:layout_toRightOf="@id/imgvCover"
+ android:layout_marginRight="8dp"
+ android:orientation="vertical" >
+
+ <TextView
+ android:id="@+id/txtvTitle"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:ellipsize="end"
+ android:maxLines="1"
+ android:textColor="?android:attr/textColorPrimary"
+ android:textSize="@dimen/text_size_small" />
+
+ <TextView
+ android:id="@+id/txtvDescription"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:maxLines="2"
+ android:ellipsize="end"
+ android:textColor="?android:attr/textColorTertiary"
+ android:textSize="@dimen/text_size_micro" />
+
+ </LinearLayout>
+</RelativeLayout> \ No newline at end of file
diff --git a/res/layout/gpodnet_search.xml b/res/layout/gpodnet_search.xml
new file mode 100644
index 000000000..deb9cffd6
--- /dev/null
+++ b/res/layout/gpodnet_search.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical" >
+
+ <FrameLayout
+ android:id="@+id/searchListFragment"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" />
+
+</LinearLayout> \ No newline at end of file
diff --git a/res/layout/gpodnet_tag_activity.xml b/res/layout/gpodnet_tag_activity.xml
new file mode 100644
index 000000000..01feb216f
--- /dev/null
+++ b/res/layout/gpodnet_tag_activity.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical" >
+
+ <FrameLayout
+ android:id="@+id/taglistFragment"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" />
+
+</LinearLayout> \ No newline at end of file
diff --git a/res/layout/gpodnetauth_activity.xml b/res/layout/gpodnetauth_activity.xml
new file mode 100644
index 000000000..cd428fbdf
--- /dev/null
+++ b/res/layout/gpodnetauth_activity.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+<ViewFlipper
+ android:id="@+id/viewflipper"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"/>
+</ScrollView> \ No newline at end of file
diff --git a/res/layout/gpodnetauth_credentials.xml b/res/layout/gpodnetauth_credentials.xml
new file mode 100644
index 000000000..b66fc9414
--- /dev/null
+++ b/res/layout/gpodnetauth_credentials.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <TextView
+ android:id="@id/txtvTitle"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_login_title"
+ android:layout_alignParentTop="true"
+ android:textSize="@dimen/text_size_large"
+ android:layout_margin="16dp"
+ android:textColor="@color/bright_blue"
+ android:textStyle="italic"/>
+
+ <TextView
+ android:id="@id/txtvDescription"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_login_descr"
+ android:layout_below="@id/txtvTitle"
+ android:textSize="@dimen/text_size_medium"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_margin="16dp"/>
+
+ <EditText
+ android:id="@+id/etxtUsername"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:hint="@string/username_label"
+ android:layout_below="@id/txtvDescription"
+ android:layout_margin="8dp"/>
+
+ <EditText
+ android:id="@+id/etxtPassword"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:hint="@string/password_label"
+ android:layout_below="@id/etxtUsername"
+ android:inputType="textPassword"
+ android:layout_margin="8dp"/>
+
+ <Button
+ android:id="@+id/butLogin"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/etxtPassword"
+ android:layout_alignParentRight="true"
+ android:text="@string/gpodnetauth_login_butLabel"
+ android:layout_margin="8dp"/>
+
+ <TextView
+ android:id="@+id/txtvError"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/etxtPassword"
+ android:layout_alignParentLeft="true"
+ android:layout_toLeftOf="@id/butLogin"
+ android:textColor="@color/download_failed_red"
+ android:textSize="@dimen/text_size_small"
+ android:maxLines="2"
+ android:ellipsize="end"
+ android:gravity="center"
+ android:layout_margin="16dp"/>
+
+ <ProgressBar
+ android:id="@+id/progBarLogin"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:visibility="gone"
+ android:layout_alignTop="@+id/butLogin"
+ android:layout_toLeftOf="@+id/butLogin"/>
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textSize="@dimen/text_size_medium"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_margin="16dp"
+ android:text="@string/gpodnetauth_login_register"
+ android:autoLink="web"
+ android:layout_below="@id/butLogin"/>
+</RelativeLayout> \ No newline at end of file
diff --git a/res/layout/gpodnetauth_device.xml b/res/layout/gpodnetauth_device.xml
new file mode 100644
index 000000000..ac08cb5ad
--- /dev/null
+++ b/res/layout/gpodnetauth_device.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <TextView
+ android:id="@+id/txtvTitle"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_device_title"
+ android:layout_alignParentTop="true"
+ android:textSize="@dimen/text_size_large"
+ android:layout_margin="16dp"
+ android:textColor="@color/bright_blue"
+ android:textStyle="italic"/>
+
+ <TextView
+ android:id="@+id/txtvDescription"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_device_descr"
+ android:layout_below="@id/txtvTitle"
+ android:textSize="@dimen/text_size_medium"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_margin="16dp"/>
+
+ <EditText
+ android:id="@+id/etxtCaption"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:hint="@string/gpodnetauth_device_caption"
+ android:layout_below="@id/txtvDescription"
+ android:layout_margin="8dp"/>
+
+ <EditText
+ android:id="@+id/etxtDeviceID"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:hint="@string/gpodnetauth_device_deviceID"
+ android:layout_below="@id/etxtCaption"
+ android:layout_margin="8dp"/>
+
+ <Button
+ android:id="@+id/butCreateNewDevice"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="8dp"
+ android:layout_alignParentRight="true"
+ android:layout_below="@id/etxtDeviceID"
+ android:text="@string/gpodnetauth_device_butCreateNewDevice"/>
+
+ <TextView
+ android:id="@+id/txtvError"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentLeft="true"
+ android:layout_below="@id/etxtCaption"
+ android:layout_alignBottom="@id/butCreateNewDevice"
+ android:textColor="@color/download_failed_red"
+ android:layout_margin="16dp"
+ android:textSize="@dimen/text_size_medium"
+ />
+
+ <ProgressBar
+ android:id="@+id/progbarCreateDevice"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignTop="@id/butCreateNewDevice"
+ android:layout_toLeftOf="@id/butCreateNewDevice"
+ android:textColor="@color/download_failed_red"
+ android:textSize="@dimen/text_size_medium"
+ android:visibility="gone"
+ />
+
+ <TextView
+ android:id="@+id/txtvChooseExistingDevice"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_device_chooseExistingDevice"
+ android:layout_below="@id/butCreateNewDevice"
+ android:textSize="@dimen/text_size_medium"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_margin="16dp"/>
+
+ <Button
+ android:id="@+id/butChooseExistingDevice"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_device_butChoose"
+ android:layout_below="@+id/spinnerChooseDevice"
+ android:layout_alignLeft="@+id/butCreateNewDevice"
+ android:layout_alignRight="@+id/butCreateNewDevice"/>
+
+ <Spinner
+ android:id="@+id/spinnerChooseDevice"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/txtvChooseExistingDevice"
+ android:layout_alignParentLeft="true"
+ android:layout_margin="8dp"
+ android:layout_alignParentRight="true"/>
+
+</RelativeLayout> \ No newline at end of file
diff --git a/res/layout/gpodnetauth_finish.xml b/res/layout/gpodnetauth_finish.xml
new file mode 100644
index 000000000..3b0b10d04
--- /dev/null
+++ b/res/layout/gpodnetauth_finish.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <TextView
+ android:id="@+id/txtvTitle"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_finish_title"
+ android:layout_alignParentTop="true"
+ android:textSize="@dimen/text_size_large"
+ android:layout_margin="16dp"
+ android:textColor="@color/bright_blue"
+ android:textStyle="italic"/>
+
+ <TextView
+ android:id="@+id/txtvDescription"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/gpodnetauth_finish_descr"
+ android:layout_below="@id/txtvTitle"
+ android:textSize="@dimen/text_size_medium"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_margin="16dp"/>
+
+ <Button
+ android:id="@+id/butSyncNow"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/txtvDescription"
+ android:layout_margin="16dp"
+ android:text="@string/gpodnetauth_finish_butsyncnow"/>
+
+ <Button
+ android:id="@+id/butGoMainscreen"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/butSyncNow"
+ android:layout_margin="16dp"
+ android:text="@string/gpodnetauth_finish_butgomainscreen"/>
+
+</RelativeLayout> \ No newline at end of file
diff --git a/res/layout/itemdescription_listitem.xml b/res/layout/itemdescription_listitem.xml
new file mode 100644
index 000000000..d6a3f6a16
--- /dev/null
+++ b/res/layout/itemdescription_listitem.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <TextView
+ android:id="@+id/txtvTitle"
+ android:layout_margin="8dp"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:lines="1"
+ android:ellipsize="end"
+ android:textColor="?android:attr/textColorPrimary"
+ android:textSize="@dimen/text_size_small"/>
+
+ <TextView
+ android:id="@+id/txtvDescription"
+ android:layout_margin="8dp"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:lines="3"
+ android:ellipsize="end"
+ android:textColor="?android:attr/textColorTertiary"
+ android:textSize="@dimen/text_size_micro"/>
+</LinearLayout> \ No newline at end of file
diff --git a/res/layout/onlinefeedview_header.xml b/res/layout/onlinefeedview_header.xml
new file mode 100644
index 000000000..6bbecde1e
--- /dev/null
+++ b/res/layout/onlinefeedview_header.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <ImageView
+ android:id="@+id/imgvCover"
+ android:layout_width="@dimen/thumbnail_length_onlinefeedview"
+ android:layout_height="@dimen/thumbnail_length_onlinefeedview"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentTop="true"
+ android:layout_margin="4dp"/>
+
+ <TextView
+ android:id="@+id/txtvTitle"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:ellipsize="end"
+ android:gravity="center_vertical"
+ android:layout_alignTop="@id/imgvCover"
+ android:layout_toRightOf="@id/imgvCover"
+ android:layout_alignParentRight="true"
+ android:lines="1"
+ android:textColor="?android:attr/textColorPrimary"
+ android:textSize="@dimen/text_size_medium"
+ android:layout_margin="4dp"/>
+
+ <TextView
+ android:id="@+id/txtvAuthor"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="4dp"
+ android:layout_below="@id/txtvTitle"
+ android:layout_toRightOf="@id/imgvCover"
+ android:lines="1"
+ android:ellipsize="end"
+ android:textColor="?android:attr/textColorSecondary"
+ android:textSize="@dimen/text_size_small"/>
+
+ <Button
+ android:id="@+id/butSubscribe"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="4dp"
+ android:text="@string/subscribe_label"
+ android:layout_below="@id/txtvAuthor"
+ android:layout_alignParentRight="true"
+ />
+
+
+ <TextView
+ android:id="@+id/txtvDescription"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/butSubscribe"
+ android:maxLines="3"
+ android:ellipsize="end"
+ android:textColor="?android:attr/textColorTertiary"
+ android:textSize="@dimen/text_size_micro"
+ android:paddingTop="16dp"
+ android:paddingBottom="16dp"
+ android:paddingLeft="8dp"
+ android:paddingRight="8dp"
+ android:layout_margin="4dp"/>
+</RelativeLayout> \ No newline at end of file