added previews next

This commit is contained in:
Jeena 2015-02-03 19:50:05 +01:00
parent ee6ba89ab4
commit 218f556a98
6 changed files with 40 additions and 15 deletions

View file

@ -16,8 +16,10 @@ ScrollView {
property Post post: content.post property Post post: content.post
function setPost() { function setPost() {
if(post) {
experimental.evaluateJavaScript("setArticle(" + post.jsonString + ")") experimental.evaluateJavaScript("setArticle(" + post.jsonString + ")")
} }
}
// Enable communication between QML and WebKit // Enable communication between QML and WebKit
experimental.preferences.navigatorQtObjectEnabled: true; experimental.preferences.navigatorQtObjectEnabled: true;
@ -31,12 +33,7 @@ ScrollView {
} }
} }
onLoadingChanged: { onLoadingChanged: setPost()
setPost() onPostChanged: setPost()
}
onPostChanged: {
setPost();
}
} }
} }

View file

@ -9,9 +9,22 @@ ScrollView {
property Server server property Server server
property Content content property Content content
function next() {
if(listView.count > listView.currentIndex) {
listView.currentIndex++;
}
}
function previous() {
if(listView.currentIndex > 0) {
listView.currentIndex--;
}
}
Layout.minimumWidth: 400 Layout.minimumWidth: 400
ListView { ListView {
id: listView
focus: true focus: true
anchors.fill: parent anchors.fill: parent

View file

@ -5,16 +5,18 @@ MenuBar {
property bool loggedIn: false property bool loggedIn: false
property Server server property Server server
property Sidebar sidebar
Menu { Menu {
title: qsTr("File") title: qsTr("File")
MenuItem { MenuItem {
text: qsTr("Close") text: qsTr("Close")
shortcut: "Ctrl+W" shortcut: "Ctrl+W"
enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Log Out") text: qsTr("Log Out")
enabled: loggedIn enabled: false
} }
MenuSeparator { } MenuSeparator { }
MenuItem { MenuItem {
@ -29,37 +31,39 @@ MenuBar {
MenuItem { MenuItem {
text: qsTr("Reload") text: qsTr("Reload")
shortcut: "R" shortcut: "R"
enabled: loggedIn enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Show &Starred") text: qsTr("Show &Starred")
shortcut: "Ctrl+S" shortcut: "Ctrl+S"
enabled: loggedIn enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Set &Starred") text: qsTr("Set &Starred")
shortcut: "S" shortcut: "S"
enabled: loggedIn enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Set &Unread") text: qsTr("Set &Unread")
shortcut: "U" shortcut: "U"
enabled: loggedIn enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Next") text: qsTr("Next")
shortcut: "J" shortcut: "J"
enabled: loggedIn enabled: loggedIn
onTriggered: sidebar.next()
} }
MenuItem { MenuItem {
text: qsTr("Previous") text: qsTr("Previous")
shortcut: "K" shortcut: "K"
enabled: loggedIn enabled: loggedIn
onTriggered: sidebar.previous()
} }
MenuItem { MenuItem {
text: qsTr("Open in Browser") text: qsTr("Open in Browser")
shortcut: "N" shortcut: "N"
enabled: loggedIn enabled: false
} }
} }
@ -68,14 +72,17 @@ MenuBar {
MenuItem { MenuItem {
text: qsTr("Zoom In") text: qsTr("Zoom In")
shortcut: "Ctrl++" shortcut: "Ctrl++"
enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Zoom Out") text: qsTr("Zoom Out")
shortcut: "Ctrl+-" shortcut: "Ctrl+-"
enabled: false
} }
MenuItem { MenuItem {
text: qsTr("Reset") text: qsTr("Reset")
shortcut: "Ctrl+0" shortcut: "Ctrl+0"
enabled: false
} }
} }
@ -84,6 +91,7 @@ MenuBar {
MenuItem { MenuItem {
text: qsTr("Reset to default") text: qsTr("Reset to default")
shortcut: "Ctrl+D" shortcut: "Ctrl+D"
enabled: false
} }
} }

View file

@ -35,5 +35,10 @@ function setArticle(article) {
if(article.author && article.author.length > 0) if(article.author && article.author.length > 0)
$("author").innerHTML = "– " + article.author $("author").innerHTML = "– " + article.author
$("article").innerHTML = article.content; $("article").innerHTML = article.content;
var as = $("article").getElementsByTagName("a");
for(var i = 0; i <= as.length; i++) {
as[i].target = "";
}
} }
} }

View file

@ -12,6 +12,7 @@ ApplicationWindow {
menuBar: TheMenuBar { menuBar: TheMenuBar {
id: menu id: menu
server: server server: server
sidebar: sidebar
} }
function loggedIn() { function loggedIn() {
@ -25,6 +26,7 @@ ApplicationWindow {
orientation: Qt.Horizontal orientation: Qt.Horizontal
Sidebar { Sidebar {
id: sidebar
server: server server: server
content: content content: content
} }

View file

@ -20,7 +20,7 @@ Post::Post(QJsonObject post, QObject *parent) : QObject(parent)
timestamp.setTime_t(post.value("updated").toInt()); timestamp.setTime_t(post.value("updated").toInt());
mDate = timestamp; mDate = timestamp;
mContent = post.value("content").toString().trimmed(); mContent = post.value("content").toString().trimmed();
mExcerpt = post.value("excerpt").toString().trimmed(); mExcerpt = post.value("excerpt").toString().remove(QRegExp("<[^>]*>")).replace("&hellip;", " ...").trimmed().replace("(\\s+)", " ").replace("\n", "");
mStarred = post.value("marked").toBool(); mStarred = post.value("marked").toBool();
mRead = !post.value("unread").toBool(); mRead = !post.value("unread").toBool();