diff --git a/Content.qml b/Content.qml
new file mode 100644
index 0000000..b26a350
--- /dev/null
+++ b/Content.qml
@@ -0,0 +1,14 @@
+import QtWebKit 3.0
+
+WebView {
+ id: webview
+ url: "content.html"
+ onNavigationRequested: {
+ if (request.navigationType != WebView.LinkClickedNavigation) {
+ request.action = WebView.AcceptRequest;
+ } else {
+ request.action = WebView.IgnoreRequest;
+ Qt.openUrlExternally(request.url);
+ }
+ }
+}
diff --git a/FeedMonkey2.pro b/FeedMonkey2.pro
new file mode 100644
index 0000000..d71c6f4
--- /dev/null
+++ b/FeedMonkey2.pro
@@ -0,0 +1,22 @@
+TEMPLATE = app
+
+QT += qml quick
+
+SOURCES += main.cpp
+
+RESOURCES += qml.qrc \
+ html.qrc
+
+# Needed for bringing browser from background to foreground using QDesktopServices: http://bugreports.qt-project.org/browse/QTBUG-8336
+TARGET.CAPABILITY += SwEvent
+
+# Additional import path used to resolve QML modules in Qt Creator's code model
+QML_IMPORT_PATH =
+
+# Default rules for deployment.
+include(deployment.pri)
+
+OTHER_FILES += \
+ content.html \
+ content.css \
+ content.js
diff --git a/FeedMonkey2.pro.user b/FeedMonkey2.pro.user
new file mode 100644
index 0000000..9267b6f
--- /dev/null
+++ b/FeedMonkey2.pro.user
@@ -0,0 +1,267 @@
+
+
+
+
+
+ EnvironmentId
+ {95de59b0-92ad-4eae-b9f7-c51eac02755b}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.3 clang 64bit
+ Desktop Qt 5.3 clang 64bit
+ qt.53.clang_64_kit
+ 0
+ 0
+ 0
+
+ /Users/jeena/Desktop/build-FeedMonkey2-Desktop_Qt_5_3_clang_64bit-Debug
+
+
+ true
+ qmake
+
+ QtProjectManager.QMakeBuildStep
+ false
+ true
+
+ false
+
+
+ true
+ Make
+
+ Qt4ProjectManager.MakeStep
+
+ -w
+ -r
+
+ false
+
+
+
+ 2
+ Build
+
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Make
+
+ Qt4ProjectManager.MakeStep
+
+ -w
+ -r
+
+ true
+ clean
+
+
+ 1
+ Clean
+
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+ true
+
+
+ /Users/jeena/Desktop/build-FeedMonkey2-Desktop_Qt_5_3_clang_64bit-Release
+
+
+ true
+ qmake
+
+ QtProjectManager.QMakeBuildStep
+ false
+ true
+
+ false
+
+
+ true
+ Make
+
+ Qt4ProjectManager.MakeStep
+
+ -w
+ -r
+
+ false
+
+
+
+ 2
+ Build
+
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Make
+
+ Qt4ProjectManager.MakeStep
+
+ -w
+ -r
+
+ true
+ clean
+
+
+ 1
+ Clean
+
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+ true
+
+ 2
+
+
+ 0
+ Deploy
+
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ Deploy locally
+
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ FeedMonkey2
+ FeedMonkey22
+ Qt4ProjectManager.Qt4RunConfiguration:/Users/jeena/Projects/FeedMonkey2/FeedMonkey2.pro
+
+ FeedMonkey2.pro
+ false
+ false
+
+ 3768
+ false
+ true
+ false
+ false
+ true
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 1
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 16
+
+
+ Version
+ 16
+
+
diff --git a/TheMenuBar.qml b/TheMenuBar.qml
new file mode 100644
index 0000000..d2bca2f
--- /dev/null
+++ b/TheMenuBar.qml
@@ -0,0 +1,86 @@
+import QtQuick.Controls 1.2
+
+MenuBar {
+
+ Menu {
+ title: "File"
+ MenuItem {
+ text: "Close"
+ shortcut: "Ctrl+W"
+ }
+ MenuItem {
+ text: "Log Out"
+ }
+ MenuSeparator { }
+ MenuItem {
+ text: "Exit"
+ shortcut: "Ctrl+Q"
+ onTriggered: Qt.quit()
+ }
+ }
+
+ Menu {
+ title: "Action"
+ MenuItem {
+ text: "Reload"
+ shortcut: "R"
+ }
+ MenuItem {
+ text: "Show &Starred"
+ shortcut: "Ctrl+S"
+ }
+ MenuItem {
+ text: "Set &Starred"
+ shortcut: "S"
+ }
+ MenuItem {
+ text: "Set &Unread"
+ shortcut: "U"
+ }
+ MenuItem {
+ text: "Next"
+ shortcut: "J"
+ }
+ MenuItem {
+ text: "Previous"
+ shortcut: "K"
+ }
+ MenuItem {
+ text: "Open in Browser"
+ shortcut: "N"
+ }
+ }
+
+ Menu {
+ title: "View"
+ MenuItem {
+ text: "Zoom In"
+ shortcut: "Ctrl++"
+ }
+ MenuItem {
+ text: "Zoom Out"
+ shortcut: "Ctrl+-"
+ }
+ MenuItem {
+ text: "Reset"
+ shortcut: "Ctrl+0"
+ }
+ }
+
+ Menu {
+ title: "Window"
+ MenuItem {
+ text: "Reset to default"
+ shortcut: "Ctrl+D"
+ }
+ }
+
+ Menu {
+ title: "Help"
+ MenuItem {
+ text: "About"
+ onTriggered: Qt.openUrlExternally("http://jabs.nu/feedthemonkey");
+ }
+ }
+
+}
diff --git a/content.css b/content.css
new file mode 100644
index 0000000..4c9a560
--- /dev/null
+++ b/content.css
@@ -0,0 +1,37 @@
+body {
+ font-family: "Ubuntu", "Lucida Grande", "Tahoma", sans-serif;
+ padding: 1em 2em 1em 2em;
+ background: red;
+}
+body.darwin {
+ font-family: "LucidaGrande", sans-serif;
+}
+h1 {
+ font-weight: normal;
+ margin: 0;
+ padding: 0;
+}
+header {
+ margin-bottom: 1em;
+ border-bottom: 1px solid #aaa;
+ padding-bottom: 1em;
+}
+.starred:after {
+ content: "*";
+}
+header p {
+ color: #aaa;
+ margin: 0;
+ padding: 0
+}
+a {
+ color: #772953;
+ text-decoration: none;
+}
+img {
+ max-width: 100%;
+ height: auto;
+}
+article {
+ line-height: 1.6;
+}
diff --git a/content.html b/content.html
new file mode 100644
index 0000000..f28fec8
--- /dev/null
+++ b/content.html
@@ -0,0 +1,17 @@
+
+
+
+
+ TTRSS
+
+
+
+
+
+
+
+
diff --git a/content.js b/content.js
new file mode 100644
index 0000000..8055858
--- /dev/null
+++ b/content.js
@@ -0,0 +1,39 @@
+function $(id) {
+ return document.getElementById(id);
+}
+
+function setArticle(article) {
+ window.scrollTo(0, 0);
+
+ $("date").innerHTML = "";
+ $("title").innerHTML = "";
+ $("title").href = "";
+ $("title").title = "";
+ $("feed_title").innerHTML = "";
+ $("author").innerHTML = "";
+ $("article").innerHTML = "";
+
+ if(article === "empty") {
+
+ $("article").innerHTML = "No unread articles to display.";
+
+ } else if(article === "loading") {
+
+ $("article").innerHTML = "Loading ";
+
+ } else if (article === "logout") {
+
+ } else if(article) {
+
+ $("date").innerHTML = (new Date(parseInt(article.updated, 10) * 1000));
+ $("title").innerHTML = article.title;
+ $("title").href = article.link;
+ $("title").title = article.link;
+ $("feed_title").innerHTML = article.feed_title;
+ $("title").className = article.marked ? "starred" : "";
+ $("author").innerHTML = "";
+ if(article.author && article.author.length > 0)
+ $("author").innerHTML = "– " + article.author
+ $("article").innerHTML = article.content;
+ }
+}
diff --git a/deployment.pri b/deployment.pri
new file mode 100644
index 0000000..5441b63
--- /dev/null
+++ b/deployment.pri
@@ -0,0 +1,27 @@
+android-no-sdk {
+ target.path = /data/user/qt
+ export(target.path)
+ INSTALLS += target
+} else:android {
+ x86 {
+ target.path = /libs/x86
+ } else: armeabi-v7a {
+ target.path = /libs/armeabi-v7a
+ } else {
+ target.path = /libs/armeabi
+ }
+ export(target.path)
+ INSTALLS += target
+} else:unix {
+ isEmpty(target.path) {
+ qnx {
+ target.path = /tmp/$${TARGET}/bin
+ } else {
+ target.path = /opt/$${TARGET}/bin
+ }
+ export(target.path)
+ }
+ INSTALLS += target
+}
+
+export(INSTALLS)
diff --git a/html.qrc b/html.qrc
new file mode 100644
index 0000000..8f02629
--- /dev/null
+++ b/html.qrc
@@ -0,0 +1,7 @@
+
+
+ content.css
+ content.html
+ content.js
+
+
diff --git a/main.cpp b/main.cpp
new file mode 100644
index 0000000..68bab45
--- /dev/null
+++ b/main.cpp
@@ -0,0 +1,13 @@
+#include
+#include
+#include
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication app(argc, argv);
+
+ QQmlApplicationEngine engine;
+ engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
+
+ return app.exec();
+}
diff --git a/main.qml b/main.qml
new file mode 100644
index 0000000..7b4488a
--- /dev/null
+++ b/main.qml
@@ -0,0 +1,15 @@
+import QtQuick 2.3
+import QtQuick.Controls 1.2
+
+ApplicationWindow {
+ id: window
+ visible: true
+ width: 360
+ height: 360
+
+ menuBar: TheMenuBar {}
+
+ Content {
+ anchors.fill: parent
+ }
+}
diff --git a/qml.qrc b/qml.qrc
new file mode 100644
index 0000000..2b1e823
--- /dev/null
+++ b/qml.qrc
@@ -0,0 +1,7 @@
+
+
+ main.qml
+ TheMenuBar.qml
+ Content.qml
+
+