mirror of
https://invent.kde.org/network/falkon.git
synced 2024-11-11 01:22:10 +01:00
A lot of improvements in Browsing Library
huge optimalization for history sidebar + manager loading with a big profile
This commit is contained in:
parent
47a0dd058e
commit
3c6eee9964
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -60,7 +60,7 @@ AdBlockDialog::AdBlockDialog(QWidget *parent)
|
||||||
connect(adblockCheckBox, SIGNAL(toggled(bool)), m_manager, SLOT(setEnabled(bool)));
|
connect(adblockCheckBox, SIGNAL(toggled(bool)), m_manager, SLOT(setEnabled(bool)));
|
||||||
connect(addButton, SIGNAL(clicked()), this, SLOT(addCustomRule()));
|
connect(addButton, SIGNAL(clicked()), this, SLOT(addCustomRule()));
|
||||||
connect(reloadButton, SIGNAL(clicked()), this, SLOT(updateSubscription()));
|
connect(reloadButton, SIGNAL(clicked()), this, SLOT(updateSubscription()));
|
||||||
connect(search, SIGNAL(textChanged(QString)), treeWidget, SLOT(filterStringWithoutTopItems(QString)));
|
connect(search, SIGNAL(textChanged(QString)), treeWidget, SLOT(filterString(QString)));
|
||||||
connect(m_manager->subscription(), SIGNAL(changed()), this, SLOT(refreshAfterUpdate()));
|
connect(m_manager->subscription(), SIGNAL(changed()), this, SLOT(refreshAfterUpdate()));
|
||||||
connect(treeWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested()));
|
connect(treeWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested()));
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ void AdBlockDialog::deleteRule()
|
||||||
|
|
||||||
int offset = item->whatsThis(0).toInt();
|
int offset = item->whatsThis(0).toInt();
|
||||||
m_manager->subscription()->removeRule(offset);
|
m_manager->subscription()->removeRule(offset);
|
||||||
delete item;
|
treeWidget->deleteItem(item);
|
||||||
refresh();
|
refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -203,12 +203,13 @@ void AdBlockDialog::addCustomRule()
|
||||||
AdBlockSubscription* subscription = m_manager->subscription();
|
AdBlockSubscription* subscription = m_manager->subscription();
|
||||||
int offset = subscription->addRule(AdBlockRule(newRule));
|
int offset = subscription->addRule(AdBlockRule(newRule));
|
||||||
m_itemChangingBlock = true;
|
m_itemChangingBlock = true;
|
||||||
QTreeWidgetItem* item = new QTreeWidgetItem(m_customRulesItem);
|
QTreeWidgetItem* item = new QTreeWidgetItem();
|
||||||
item->setText(0, newRule);
|
item->setText(0, newRule);
|
||||||
item->setWhatsThis(0, QString::number(offset));
|
item->setWhatsThis(0, QString::number(offset));
|
||||||
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
||||||
item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
|
item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
|
||||||
item->setCheckState(0, Qt::Checked);
|
item->setCheckState(0, Qt::Checked);
|
||||||
|
treeWidget->appendToParentItem(m_customRulesItem, item);
|
||||||
m_itemChangingBlock = false;
|
m_itemChangingBlock = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -240,7 +240,7 @@ QupZilla* MainApplication::getWindow()
|
||||||
void MainApplication::setStateChanged()
|
void MainApplication::setStateChanged()
|
||||||
{
|
{
|
||||||
m_isStateChanged = true;
|
m_isStateChanged = true;
|
||||||
sendMessages(StateChanged, true);
|
sendMessages(HistoryStateChanged, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MainApplication::isStateChanged()
|
bool MainApplication::isStateChanged()
|
||||||
|
@ -365,7 +365,7 @@ void MainApplication::quitApplication()
|
||||||
AdBlockManager::instance()->save();
|
AdBlockManager::instance()->save();
|
||||||
QFile::remove(getActiveProfil() + "WebpageIcons.db");
|
QFile::remove(getActiveProfil() + "WebpageIcons.db");
|
||||||
|
|
||||||
qDebug() << "Quitting application...";
|
// qDebug() << "Quitting application...";
|
||||||
quit();
|
quit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -470,9 +470,6 @@ bool MainApplication::saveStateSlot()
|
||||||
{
|
{
|
||||||
if (m_websettings->testAttribute(QWebSettings::PrivateBrowsingEnabled) || m_isRestoring)
|
if (m_websettings->testAttribute(QWebSettings::PrivateBrowsingEnabled) || m_isRestoring)
|
||||||
return false;
|
return false;
|
||||||
#ifndef QT_NO_DEBUG
|
|
||||||
qDebug() << "Saving state";
|
|
||||||
#endif
|
|
||||||
|
|
||||||
QSettings settings(m_activeProfil+"settings.ini", QSettings::IniFormat);
|
QSettings settings(m_activeProfil+"settings.ini", QSettings::IniFormat);
|
||||||
settings.beginGroup("SessionRestore");
|
settings.beginGroup("SessionRestore");
|
||||||
|
|
|
@ -54,7 +54,7 @@ public:
|
||||||
QString DATADIR;
|
QString DATADIR;
|
||||||
explicit MainApplication(const QList<CommandLineOptions::ActionPair> &cmdActions, int &argc, char **argv);
|
explicit MainApplication(const QList<CommandLineOptions::ActionPair> &cmdActions, int &argc, char **argv);
|
||||||
|
|
||||||
enum MessageType{ SetAdBlockIconEnabled, CheckPrivateBrowsing, ReloadSettings, StateChanged };
|
enum MessageType{ SetAdBlockIconEnabled, CheckPrivateBrowsing, ReloadSettings, HistoryStateChanged, BookmarksChanged };
|
||||||
|
|
||||||
void loadSettings();
|
void loadSettings();
|
||||||
void reloadSettings() { loadSettings(); emit message(ReloadSettings, true); }
|
void reloadSettings() { loadSettings(); emit message(ReloadSettings, true); }
|
||||||
|
|
|
@ -67,6 +67,7 @@ QupZilla::QupZilla(bool tryRestore, QUrl startUrl) :
|
||||||
QMainWindow(0)
|
QMainWindow(0)
|
||||||
,m_tryRestore(tryRestore)
|
,m_tryRestore(tryRestore)
|
||||||
,m_historyMenuChanged(true)
|
,m_historyMenuChanged(true)
|
||||||
|
,m_bookmarksMenuChanged(true)
|
||||||
,m_startingUrl(startUrl)
|
,m_startingUrl(startUrl)
|
||||||
,m_actionPrivateBrowsing(0)
|
,m_actionPrivateBrowsing(0)
|
||||||
,m_webInspectorDock(0)
|
,m_webInspectorDock(0)
|
||||||
|
@ -505,10 +506,14 @@ void QupZilla::receiveMessage(MainApplication::MessageType mes, bool state)
|
||||||
LocationBarSettings::instance()->loadSettings();
|
LocationBarSettings::instance()->loadSettings();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MainApplication::StateChanged:
|
case MainApplication::HistoryStateChanged:
|
||||||
m_historyMenuChanged = true;
|
m_historyMenuChanged = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case MainApplication::BookmarksChanged:
|
||||||
|
m_bookmarksMenuChanged = true;
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
qWarning("Unresolved message sent! This could never happen!");
|
qWarning("Unresolved message sent! This could never happen!");
|
||||||
break;
|
break;
|
||||||
|
@ -591,6 +596,10 @@ void QupZilla::aboutToShowHistoryNextMenu()
|
||||||
|
|
||||||
void QupZilla::aboutToShowBookmarksMenu()
|
void QupZilla::aboutToShowBookmarksMenu()
|
||||||
{
|
{
|
||||||
|
if (!m_bookmarksMenuChanged)
|
||||||
|
return;
|
||||||
|
m_bookmarksMenuChanged = false;
|
||||||
|
|
||||||
m_menuBookmarks->clear();
|
m_menuBookmarks->clear();
|
||||||
m_menuBookmarks->addAction(tr("Bookmark &This Page"), this, SLOT(bookmarkPage()))->setShortcut(QKeySequence("Ctrl+D"));
|
m_menuBookmarks->addAction(tr("Bookmark &This Page"), this, SLOT(bookmarkPage()))->setShortcut(QKeySequence("Ctrl+D"));
|
||||||
m_menuBookmarks->addAction(tr("Bookmark &All Tabs"), this, SLOT(bookmarkAllTabs()));
|
m_menuBookmarks->addAction(tr("Bookmark &All Tabs"), this, SLOT(bookmarkAllTabs()));
|
||||||
|
@ -599,29 +608,31 @@ void QupZilla::aboutToShowBookmarksMenu()
|
||||||
if (m_tabWidget->count() == 1)
|
if (m_tabWidget->count() == 1)
|
||||||
m_menuBookmarks->actions().at(1)->setEnabled(false);
|
m_menuBookmarks->actions().at(1)->setEnabled(false);
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.exec("SELECT title, url FROM bookmarks WHERE folder='bookmarksMenu'");
|
query.exec("SELECT title, url, icon FROM bookmarks WHERE folder='bookmarksMenu'");
|
||||||
while(query.next()) {
|
while(query.next()) {
|
||||||
QUrl url = query.value(1).toUrl();
|
|
||||||
QString title = query.value(0).toString();
|
QString title = query.value(0).toString();
|
||||||
|
QUrl url = query.value(1).toUrl();
|
||||||
|
QIcon icon = IconProvider::iconFromBase64(query.value(2).toByteArray());
|
||||||
if (title.length()>40) {
|
if (title.length()>40) {
|
||||||
title.truncate(40);
|
title.truncate(40);
|
||||||
title+="..";
|
title+="..";
|
||||||
}
|
}
|
||||||
m_menuBookmarks->addAction(_iconForUrl(url), title, this, SLOT(loadActionUrl()))->setData(url);
|
m_menuBookmarks->addAction(icon, title, this, SLOT(loadActionUrl()))->setData(url);
|
||||||
}
|
}
|
||||||
|
|
||||||
QMenu* folderBookmarks = new QMenu(tr("Bookmarks In ToolBar"), m_menuBookmarks);
|
QMenu* folderBookmarks = new QMenu(tr("Bookmarks In ToolBar"), m_menuBookmarks);
|
||||||
folderBookmarks->setIcon(QIcon(style()->standardIcon(QStyle::SP_DirOpenIcon)));
|
folderBookmarks->setIcon(QIcon(style()->standardIcon(QStyle::SP_DirOpenIcon)));
|
||||||
|
|
||||||
query.exec("SELECT title, url FROM bookmarks WHERE folder='bookmarksToolbar'");
|
query.exec("SELECT title, url, icon FROM bookmarks WHERE folder='bookmarksToolbar'");
|
||||||
while(query.next()) {
|
while(query.next()) {
|
||||||
QUrl url = query.value(1).toUrl();
|
|
||||||
QString title = query.value(0).toString();
|
QString title = query.value(0).toString();
|
||||||
|
QUrl url = query.value(1).toUrl();
|
||||||
|
QIcon icon = IconProvider::iconFromBase64(query.value(2).toByteArray());
|
||||||
if (title.length()>40) {
|
if (title.length()>40) {
|
||||||
title.truncate(40);
|
title.truncate(40);
|
||||||
title+="..";
|
title+="..";
|
||||||
}
|
}
|
||||||
folderBookmarks->addAction(_iconForUrl(url), title, this, SLOT(loadActionUrl()))->setData(url);
|
folderBookmarks->addAction(icon, title, this, SLOT(loadActionUrl()))->setData(url);
|
||||||
}
|
}
|
||||||
if (folderBookmarks->isEmpty())
|
if (folderBookmarks->isEmpty())
|
||||||
folderBookmarks->addAction(tr("Empty"));
|
folderBookmarks->addAction(tr("Empty"));
|
||||||
|
@ -633,15 +644,16 @@ void QupZilla::aboutToShowBookmarksMenu()
|
||||||
tempFolder->setIcon(QIcon(style()->standardIcon(QStyle::SP_DirOpenIcon)));
|
tempFolder->setIcon(QIcon(style()->standardIcon(QStyle::SP_DirOpenIcon)));
|
||||||
|
|
||||||
QSqlQuery query2;
|
QSqlQuery query2;
|
||||||
query2.exec("SELECT title, url FROM bookmarks WHERE folder='"+query.value(0).toString()+"'");
|
query2.exec("SELECT title, url, icon FROM bookmarks WHERE folder='"+query.value(0).toString()+"'");
|
||||||
while(query2.next()) {
|
while(query2.next()) {
|
||||||
QUrl url = query2.value(1).toUrl();
|
QString title = query.value(0).toString();
|
||||||
QString title = query2.value(0).toString();
|
QUrl url = query.value(1).toUrl();
|
||||||
|
QIcon icon = IconProvider::iconFromBase64(query.value(2).toByteArray());
|
||||||
if (title.length()>40) {
|
if (title.length()>40) {
|
||||||
title.truncate(40);
|
title.truncate(40);
|
||||||
title+="..";
|
title+="..";
|
||||||
}
|
}
|
||||||
tempFolder->addAction(_iconForUrl(url), title, this, SLOT(loadActionUrl()))->setData(url);
|
tempFolder->addAction(icon, title, this, SLOT(loadActionUrl()))->setData(url);
|
||||||
}
|
}
|
||||||
if (tempFolder->isEmpty())
|
if (tempFolder->isEmpty())
|
||||||
tempFolder->addAction(tr("Empty"));
|
tempFolder->addAction(tr("Empty"));
|
||||||
|
@ -848,9 +860,9 @@ void QupZilla::bookmarkPage()
|
||||||
mApp->browsingLibrary()->bookmarksManager()->addBookmark(weView());
|
mApp->browsingLibrary()->bookmarksManager()->addBookmark(weView());
|
||||||
}
|
}
|
||||||
|
|
||||||
void QupZilla::addBookmark(const QUrl &url, const QString &title)
|
void QupZilla::addBookmark(const QUrl &url, const QString &title, const QIcon &icon)
|
||||||
{
|
{
|
||||||
mApp->browsingLibrary()->bookmarksManager()->insertBookmark(url, title);
|
mApp->browsingLibrary()->bookmarksManager()->insertBookmark(url, title, icon);
|
||||||
}
|
}
|
||||||
|
|
||||||
void QupZilla::bookmarkAllTabs()
|
void QupZilla::bookmarkAllTabs()
|
||||||
|
|
|
@ -89,7 +89,7 @@ public:
|
||||||
~QupZilla();
|
~QupZilla();
|
||||||
|
|
||||||
void refreshAddressBar();
|
void refreshAddressBar();
|
||||||
void addBookmark(const QUrl &url, const QString &title);
|
void addBookmark(const QUrl &url, const QString &title, const QIcon &icon);
|
||||||
void installTranslator();
|
void installTranslator();
|
||||||
void loadSettings();
|
void loadSettings();
|
||||||
void showInspector();
|
void showInspector();
|
||||||
|
@ -199,6 +199,7 @@ private:
|
||||||
|
|
||||||
bool m_tryRestore;
|
bool m_tryRestore;
|
||||||
bool m_historyMenuChanged;
|
bool m_historyMenuChanged;
|
||||||
|
bool m_bookmarksMenuChanged;
|
||||||
QUrl m_startingUrl;
|
QUrl m_startingUrl;
|
||||||
QUrl m_newtab;
|
QUrl m_newtab;
|
||||||
QUrl m_homepage;
|
QUrl m_homepage;
|
||||||
|
|
|
@ -23,8 +23,8 @@
|
||||||
#include "bookmarkstoolbar.h"
|
#include "bookmarkstoolbar.h"
|
||||||
#include "tabwidget.h"
|
#include "tabwidget.h"
|
||||||
#include "bookmarksmodel.h"
|
#include "bookmarksmodel.h"
|
||||||
#include "qtwin.h"
|
|
||||||
#include "iconprovider.h"
|
#include "iconprovider.h"
|
||||||
|
#include "browsinglibrary.h"
|
||||||
|
|
||||||
BookmarksManager::BookmarksManager(QupZilla* mainClass, QWidget* parent) :
|
BookmarksManager::BookmarksManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
QWidget(parent)
|
QWidget(parent)
|
||||||
|
@ -39,13 +39,6 @@ BookmarksManager::BookmarksManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
const QRect &size = QWidget::geometry();
|
const QRect &size = QWidget::geometry();
|
||||||
QWidget::move( (screen.width()-size.width())/2, (screen.height()-size.height())/2 );
|
QWidget::move( (screen.width()-size.width())/2, (screen.height()-size.height())/2 );
|
||||||
|
|
||||||
#ifdef Q_WS_WIN
|
|
||||||
if (QtWin::isCompositionEnabled()) {
|
|
||||||
QtWin::extendFrameIntoClientArea(this);
|
|
||||||
ui->gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
connect(ui->deleteB, SIGNAL(clicked()), this, SLOT(deleteItem()));
|
connect(ui->deleteB, SIGNAL(clicked()), this, SLOT(deleteItem()));
|
||||||
connect(ui->bookmarksTree, SIGNAL(itemChanged(QTreeWidgetItem*,int)), this, SLOT(itemChanged(QTreeWidgetItem*)));
|
connect(ui->bookmarksTree, SIGNAL(itemChanged(QTreeWidgetItem*,int)), this, SLOT(itemChanged(QTreeWidgetItem*)));
|
||||||
connect(ui->addFolder, SIGNAL(clicked()), this, SLOT(addFolder()));
|
connect(ui->addFolder, SIGNAL(clicked()), this, SLOT(addFolder()));
|
||||||
|
@ -58,9 +51,18 @@ BookmarksManager::BookmarksManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
connect(m_bookmarksModel, SIGNAL(folderDeleted(QString)), this, SLOT(removeFolder(QString)));
|
connect(m_bookmarksModel, SIGNAL(folderDeleted(QString)), this, SLOT(removeFolder(QString)));
|
||||||
connect(m_bookmarksModel, SIGNAL(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)), this, SLOT(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)));
|
connect(m_bookmarksModel, SIGNAL(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)), this, SLOT(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)));
|
||||||
|
|
||||||
|
connect(ui->optimizeDb, SIGNAL(clicked(QPoint)), this, SLOT(optimizeDb()));
|
||||||
|
|
||||||
|
ui->bookmarksTree->setDefaultItemShowMode(TreeWidget::ItemsExpanded);
|
||||||
|
|
||||||
//QTimer::singleShot(0, this, SLOT(refreshTable()));
|
//QTimer::singleShot(0, this, SLOT(refreshTable()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BookmarksManager::search(const QString &string)
|
||||||
|
{
|
||||||
|
ui->bookmarksTree->filterString(string);
|
||||||
|
}
|
||||||
|
|
||||||
QupZilla* BookmarksManager::getQupZilla()
|
QupZilla* BookmarksManager::getQupZilla()
|
||||||
{
|
{
|
||||||
if (!p_QupZilla)
|
if (!p_QupZilla)
|
||||||
|
@ -92,7 +94,7 @@ void BookmarksManager::itemChanged(QTreeWidgetItem* item)
|
||||||
QUrl url = QUrl(item->text(1));
|
QUrl url = QUrl(item->text(1));
|
||||||
int id = item->whatsThis(1).toInt();
|
int id = item->whatsThis(1).toInt();
|
||||||
|
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
m_bookmarksModel->editBookmark(id, name, url, "");
|
m_bookmarksModel->editBookmark(id, name, url, "");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -127,7 +129,7 @@ void BookmarksManager::deleteItem()
|
||||||
|
|
||||||
void BookmarksManager::addBookmark(WebView* view)
|
void BookmarksManager::addBookmark(WebView* view)
|
||||||
{
|
{
|
||||||
insertBookmark(view->url(), view->title());
|
insertBookmark(view->url(), view->title(), view->siteIcon());
|
||||||
}
|
}
|
||||||
|
|
||||||
void BookmarksManager::moveBookmark()
|
void BookmarksManager::moveBookmark()
|
||||||
|
@ -198,12 +200,13 @@ void BookmarksManager::refreshTable()
|
||||||
ui->bookmarksTree->addTopLevelItem(newItem);
|
ui->bookmarksTree->addTopLevelItem(newItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
query.exec("SELECT title, url, id, folder FROM bookmarks");
|
query.exec("SELECT title, url, id, folder, icon FROM bookmarks");
|
||||||
while(query.next()) {
|
while(query.next()) {
|
||||||
QString title = query.value(0).toString();
|
QString title = query.value(0).toString();
|
||||||
QUrl url = query.value(1).toUrl();
|
QUrl url = query.value(1).toUrl();
|
||||||
int id = query.value(2).toInt();
|
int id = query.value(2).toInt();
|
||||||
QString folder = query.value(3).toString();
|
QString folder = query.value(3).toString();
|
||||||
|
QIcon icon = IconProvider::iconFromBase64(query.value(4).toByteArray());
|
||||||
QTreeWidgetItem* item;
|
QTreeWidgetItem* item;
|
||||||
if (folder == "bookmarksMenu")
|
if (folder == "bookmarksMenu")
|
||||||
folder = tr("Bookmarks In Menu");
|
folder = tr("Bookmarks In Menu");
|
||||||
|
@ -230,7 +233,7 @@ void BookmarksManager::refreshTable()
|
||||||
item->setToolTip(1, url.toEncoded());
|
item->setToolTip(1, url.toEncoded());
|
||||||
|
|
||||||
item->setWhatsThis(1, QString::number(id));
|
item->setWhatsThis(1, QString::number(id));
|
||||||
item->setIcon(0, _iconForUrl(url));
|
item->setIcon(0, icon);
|
||||||
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
||||||
ui->bookmarksTree->addTopLevelItem(item);
|
ui->bookmarksTree->addTopLevelItem(item);
|
||||||
}
|
}
|
||||||
|
@ -248,13 +251,13 @@ void BookmarksManager::addBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
item->setText(0, bookmark.title);
|
item->setText(0, bookmark.title);
|
||||||
item->setText(1, bookmark.url.toEncoded());
|
item->setText(1, bookmark.url.toEncoded());
|
||||||
item->setWhatsThis(1, QString::number(bookmark.id));
|
item->setWhatsThis(1, QString::number(bookmark.id));
|
||||||
item->setIcon(0, _iconForUrl(bookmark.url));
|
item->setIcon(0, bookmark.icon);
|
||||||
item->setToolTip(0, bookmark.title);
|
item->setToolTip(0, bookmark.title);
|
||||||
item->setToolTip(1, bookmark.url.toEncoded());
|
item->setToolTip(1, bookmark.url.toEncoded());
|
||||||
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
||||||
|
|
||||||
if (bookmark.folder != "unsorted")
|
if (bookmark.folder != "unsorted")
|
||||||
ui->bookmarksTree->addToParentItem(translatedFolder, item);
|
ui->bookmarksTree->appendToParentItem(translatedFolder, item);
|
||||||
else
|
else
|
||||||
ui->bookmarksTree->addTopLevelItem(item);
|
ui->bookmarksTree->addTopLevelItem(item);
|
||||||
m_isRefreshing = false;
|
m_isRefreshing = false;
|
||||||
|
@ -269,7 +272,7 @@ void BookmarksManager::removeBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
return;
|
return;
|
||||||
QTreeWidgetItem* item = list.at(0);
|
QTreeWidgetItem* item = list.at(0);
|
||||||
if (item && item->whatsThis(1) == QString::number(bookmark.id))
|
if (item && item->whatsThis(1) == QString::number(bookmark.id))
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
} else {
|
} else {
|
||||||
QList<QTreeWidgetItem*> list = ui->bookmarksTree->findItems(BookmarksModel::toTranslatedFolder(bookmark.folder), Qt::MatchExactly);
|
QList<QTreeWidgetItem*> list = ui->bookmarksTree->findItems(BookmarksModel::toTranslatedFolder(bookmark.folder), Qt::MatchExactly);
|
||||||
if (list.count() == 0)
|
if (list.count() == 0)
|
||||||
|
@ -282,7 +285,7 @@ void BookmarksManager::removeBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
if (!item)
|
if (!item)
|
||||||
continue;
|
continue;
|
||||||
if (item->text(0) == bookmark.title && item->whatsThis(1) == QString::number(bookmark.id)) {
|
if (item->text(0) == bookmark.title && item->whatsThis(1) == QString::number(bookmark.id)) {
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -309,10 +312,10 @@ void BookmarksManager::removeFolder(const QString &name)
|
||||||
{
|
{
|
||||||
QTreeWidgetItem* item = ui->bookmarksTree->findItems(name, Qt::MatchExactly).at(0);
|
QTreeWidgetItem* item = ui->bookmarksTree->findItems(name, Qt::MatchExactly).at(0);
|
||||||
if (item)
|
if (item)
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BookmarksManager::insertBookmark(const QUrl &url, const QString &title)
|
void BookmarksManager::insertBookmark(const QUrl &url, const QString &title, const QIcon &icon)
|
||||||
{
|
{
|
||||||
if (url.isEmpty() || title.isEmpty())
|
if (url.isEmpty() || title.isEmpty())
|
||||||
return;
|
return;
|
||||||
|
@ -356,7 +359,7 @@ void BookmarksManager::insertBookmark(const QUrl &url, const QString &title)
|
||||||
if (edit->text().isEmpty())
|
if (edit->text().isEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
m_bookmarksModel->saveBookmark(url, edit->text(), BookmarksModel::fromTranslatedFolder(combo->currentText()));
|
m_bookmarksModel->saveBookmark(url, edit->text(), icon, BookmarksModel::fromTranslatedFolder(combo->currentText()));
|
||||||
delete dialog;
|
delete dialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -399,12 +402,21 @@ void BookmarksManager::insertAllTabs()
|
||||||
if (view->url().isEmpty())
|
if (view->url().isEmpty())
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
m_bookmarksModel->saveBookmark(view->url(), view->title(), BookmarksModel::fromTranslatedFolder(combo->currentText()));
|
m_bookmarksModel->saveBookmark(view->url(), view->title(), view->siteIcon(),BookmarksModel::fromTranslatedFolder(combo->currentText()));
|
||||||
}
|
}
|
||||||
|
|
||||||
delete dialog;
|
delete dialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BookmarksManager::optimizeDb()
|
||||||
|
{
|
||||||
|
BrowsingLibrary* b = (BrowsingLibrary*) parentWidget();
|
||||||
|
if (!b)
|
||||||
|
return;
|
||||||
|
b->optimizeDatabase();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
BookmarksManager::~BookmarksManager()
|
BookmarksManager::~BookmarksManager()
|
||||||
{
|
{
|
||||||
delete ui;
|
delete ui;
|
||||||
|
|
|
@ -41,14 +41,17 @@ public:
|
||||||
explicit BookmarksManager(QupZilla* mainClass, QWidget* parent = 0);
|
explicit BookmarksManager(QupZilla* mainClass, QWidget* parent = 0);
|
||||||
~BookmarksManager();
|
~BookmarksManager();
|
||||||
void addBookmark(WebView* view);
|
void addBookmark(WebView* view);
|
||||||
void insertBookmark(const QUrl &url, const QString &title);
|
void insertBookmark(const QUrl &url, const QString &title, const QIcon &icon);
|
||||||
void setMainWindow(QupZilla* window);
|
void setMainWindow(QupZilla* window);
|
||||||
|
|
||||||
|
void search(const QString &string);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void refreshTable();
|
void refreshTable();
|
||||||
void insertAllTabs();
|
void insertAllTabs();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
void optimizeDb();
|
||||||
void deleteItem();
|
void deleteItem();
|
||||||
void itemChanged(QTreeWidgetItem* item);
|
void itemChanged(QTreeWidgetItem* item);
|
||||||
void addFolder();
|
void addFolder();
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<normaloff>:/icons/qupzilla.png</normaloff>:/icons/qupzilla.png</iconset>
|
<normaloff>:/icons/qupzilla.png</normaloff>:/icons/qupzilla.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<item row="0" column="0" colspan="5">
|
<item row="0" column="0" colspan="6">
|
||||||
<widget class="TreeWidget" name="bookmarksTree">
|
<widget class="TreeWidget" name="bookmarksTree">
|
||||||
<property name="contextMenuPolicy">
|
<property name="contextMenuPolicy">
|
||||||
<enum>Qt::CustomContextMenu</enum>
|
<enum>Qt::CustomContextMenu</enum>
|
||||||
|
@ -71,6 +71,20 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="1" column="5">
|
||||||
|
<widget class="ClickableLabel" name="optimizeDb">
|
||||||
|
<property name="cursor">
|
||||||
|
<cursorShape>PointingHandCursor</cursorShape>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">color: blue;
|
||||||
|
text-decoration: underline;</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Optimize Database</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<customwidgets>
|
<customwidgets>
|
||||||
|
@ -79,6 +93,11 @@
|
||||||
<extends>QTreeWidget</extends>
|
<extends>QTreeWidget</extends>
|
||||||
<header>treewidget.h</header>
|
<header>treewidget.h</header>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
|
<customwidget>
|
||||||
|
<class>ClickableLabel</class>
|
||||||
|
<extends>QLabel</extends>
|
||||||
|
<header>clickablelabel.h</header>
|
||||||
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="../data/icons.qrc"/>
|
<include location="../data/icons.qrc"/>
|
||||||
|
|
|
@ -18,6 +18,7 @@
|
||||||
#include "bookmarksmodel.h"
|
#include "bookmarksmodel.h"
|
||||||
#include "mainapplication.h"
|
#include "mainapplication.h"
|
||||||
#include "webview.h"
|
#include "webview.h"
|
||||||
|
#include "iconprovider.h"
|
||||||
|
|
||||||
// SQLite DB -> table bookmarks + folders
|
// SQLite DB -> table bookmarks + folders
|
||||||
// Unique in bookmarks table is id
|
// Unique in bookmarks table is id
|
||||||
|
@ -100,7 +101,7 @@ BookmarksModel::Bookmark BookmarksModel::getBookmark(int id)
|
||||||
{
|
{
|
||||||
Bookmark bookmark;
|
Bookmark bookmark;
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.prepare("SELECT url, title, folder FROM bookmarks WHERE id=?");
|
query.prepare("SELECT url, title, folder, icon FROM bookmarks WHERE id=?");
|
||||||
query.bindValue(0, id);
|
query.bindValue(0, id);
|
||||||
query.exec();
|
query.exec();
|
||||||
if (query.next()) {
|
if (query.next()) {
|
||||||
|
@ -108,20 +109,22 @@ BookmarksModel::Bookmark BookmarksModel::getBookmark(int id)
|
||||||
bookmark.url = query.value(0).toUrl();
|
bookmark.url = query.value(0).toUrl();
|
||||||
bookmark.title = query.value(1).toString();
|
bookmark.title = query.value(1).toString();
|
||||||
bookmark.folder = query.value(2).toString();
|
bookmark.folder = query.value(2).toString();
|
||||||
|
bookmark.icon = IconProvider::iconFromBase64(query.value(3).toByteArray());
|
||||||
}
|
}
|
||||||
return bookmark;
|
return bookmark;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool BookmarksModel::saveBookmark(const QUrl &url, const QString &title, const QString &folder)
|
bool BookmarksModel::saveBookmark(const QUrl &url, const QString &title, const QIcon &icon, const QString &folder)
|
||||||
{
|
{
|
||||||
if (url.isEmpty() || title.isEmpty() || folder.isEmpty())
|
if (url.isEmpty() || title.isEmpty() || folder.isEmpty())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.prepare("INSERT INTO bookmarks (url, title, folder) VALUES (?,?,?)");
|
query.prepare("INSERT INTO bookmarks (url, title, folder, icon) VALUES (?,?,?,?)");
|
||||||
query.bindValue(0, url.toString());
|
query.bindValue(0, url.toString());
|
||||||
query.bindValue(1, title);
|
query.bindValue(1, title);
|
||||||
query.bindValue(2, folder);
|
query.bindValue(2, folder);
|
||||||
|
query.bindValue(3, IconProvider::iconToBase64(icon));
|
||||||
|
|
||||||
if (!query.exec())
|
if (!query.exec())
|
||||||
return false;
|
return false;
|
||||||
|
@ -131,13 +134,15 @@ bool BookmarksModel::saveBookmark(const QUrl &url, const QString &title, const Q
|
||||||
bookmark.url = url;
|
bookmark.url = url;
|
||||||
bookmark.title = title;
|
bookmark.title = title;
|
||||||
bookmark.folder = folder;
|
bookmark.folder = folder;
|
||||||
|
bookmark.icon = icon;
|
||||||
emit bookmarkAdded(bookmark);
|
emit bookmarkAdded(bookmark);
|
||||||
|
mApp->sendMessages(MainApplication::BookmarksChanged, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool BookmarksModel::saveBookmark(WebView *view, const QString &folder)
|
bool BookmarksModel::saveBookmark(WebView *view, const QString &folder)
|
||||||
{
|
{
|
||||||
return saveBookmark(view->url(), view->title(), folder);
|
return saveBookmark(view->url(), view->title(), view->siteIcon(), folder);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool BookmarksModel::removeBookmark(int id)
|
bool BookmarksModel::removeBookmark(int id)
|
||||||
|
@ -154,11 +159,13 @@ bool BookmarksModel::removeBookmark(int id)
|
||||||
bookmark.url = query.value(0).toUrl();
|
bookmark.url = query.value(0).toUrl();
|
||||||
bookmark.title = query.value(1).toString();
|
bookmark.title = query.value(1).toString();
|
||||||
bookmark.folder = query.value(2).toString();
|
bookmark.folder = query.value(2).toString();
|
||||||
|
bookmark.icon = IconProvider::iconFromBase64(query.value(3).toByteArray());
|
||||||
|
|
||||||
if (!query.exec("DELETE FROM bookmarks WHERE id = " + QString::number(id)))
|
if (!query.exec("DELETE FROM bookmarks WHERE id = " + QString::number(id)))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
emit bookmarkDeleted(bookmark);
|
emit bookmarkDeleted(bookmark);
|
||||||
|
mApp->sendMessages(MainApplication::BookmarksChanged, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -197,7 +204,7 @@ bool BookmarksModel::editBookmark(int id, const QString &title, const QUrl &url,
|
||||||
if (title.isEmpty() && url.isEmpty() && folder.isEmpty())
|
if (title.isEmpty() && url.isEmpty() && folder.isEmpty())
|
||||||
return false;
|
return false;
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
if (!query.exec("SELECT title, url, folder FROM bookmarks WHERE id = "+QString::number(id)))
|
if (!query.exec("SELECT title, url, folder, icon FROM bookmarks WHERE id = "+QString::number(id)))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
query.next();
|
query.next();
|
||||||
|
@ -207,12 +214,14 @@ bool BookmarksModel::editBookmark(int id, const QString &title, const QUrl &url,
|
||||||
before.title = query.value(0).toString();
|
before.title = query.value(0).toString();
|
||||||
before.url = query.value(1).toUrl();
|
before.url = query.value(1).toUrl();
|
||||||
before.folder = query.value(2).toString();
|
before.folder = query.value(2).toString();
|
||||||
|
before.icon = IconProvider::iconFromBase64(query.value(3).toByteArray());
|
||||||
|
|
||||||
Bookmark after;
|
Bookmark after;
|
||||||
after.id = id;
|
after.id = id;
|
||||||
after.title = title.isEmpty() ? before.title : title;
|
after.title = title.isEmpty() ? before.title : title;
|
||||||
after.url = url.isEmpty() ? before.url : url;
|
after.url = url.isEmpty() ? before.url : url;
|
||||||
after.folder = folder.isEmpty() ? before.folder : folder;
|
after.folder = folder.isEmpty() ? before.folder : folder;
|
||||||
|
after.icon = before.icon;
|
||||||
|
|
||||||
query.prepare("UPDATE bookmarks SET title=?, url=?, folder=? WHERE id = ?");
|
query.prepare("UPDATE bookmarks SET title=?, url=?, folder=? WHERE id = ?");
|
||||||
query.bindValue(0, after.title);
|
query.bindValue(0, after.title);
|
||||||
|
@ -224,6 +233,7 @@ bool BookmarksModel::editBookmark(int id, const QString &title, const QUrl &url,
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
emit bookmarkEdited(before, after);
|
emit bookmarkEdited(before, after);
|
||||||
|
mApp->sendMessages(MainApplication::BookmarksChanged, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -236,6 +246,7 @@ bool BookmarksModel::createFolder(const QString &name)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
emit folderAdded(name);
|
emit folderAdded(name);
|
||||||
|
mApp->sendMessages(MainApplication::BookmarksChanged, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -263,6 +274,7 @@ bool BookmarksModel::removeFolder(const QString &name)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
emit folderDeleted(name);
|
emit folderDeleted(name);
|
||||||
|
mApp->sendMessages(MainApplication::BookmarksChanged, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
#include <QUrl>
|
#include <QUrl>
|
||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
#include <QSqlQuery>
|
#include <QSqlQuery>
|
||||||
|
#include <QIcon>
|
||||||
|
|
||||||
class WebView;
|
class WebView;
|
||||||
class BookmarksModel : public QObject
|
class BookmarksModel : public QObject
|
||||||
|
@ -35,6 +36,7 @@ public:
|
||||||
QString title;
|
QString title;
|
||||||
QString folder;
|
QString folder;
|
||||||
QUrl url;
|
QUrl url;
|
||||||
|
QIcon icon;
|
||||||
};
|
};
|
||||||
|
|
||||||
void loadSettings();
|
void loadSettings();
|
||||||
|
@ -46,7 +48,7 @@ public:
|
||||||
int bookmarkId(const QUrl &url, const QString &title, const QString &folder);
|
int bookmarkId(const QUrl &url, const QString &title, const QString &folder);
|
||||||
Bookmark getBookmark(int id);
|
Bookmark getBookmark(int id);
|
||||||
|
|
||||||
bool saveBookmark(const QUrl &url, const QString &title, const QString &folder = "unsorted");
|
bool saveBookmark(const QUrl &url, const QString &title, const QIcon &icon, const QString &folder = "unsorted");
|
||||||
bool saveBookmark(WebView* view, const QString &folder = "unsorted");
|
bool saveBookmark(WebView* view, const QString &folder = "unsorted");
|
||||||
|
|
||||||
bool removeBookmark(int id);
|
bool removeBookmark(int id);
|
||||||
|
|
|
@ -98,7 +98,7 @@ void BookmarksToolbar::addBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
|
|
||||||
action->setText(title);
|
action->setText(title);
|
||||||
action->setData(bookmark.url);
|
action->setData(bookmark.url);
|
||||||
action->setIcon(_iconForUrl(bookmark.url));
|
action->setIcon(bookmark.icon);
|
||||||
QToolButton* button = new QToolButton(this);
|
QToolButton* button = new QToolButton(this);
|
||||||
button->setDefaultAction(action);
|
button->setDefaultAction(action);
|
||||||
button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
|
@ -153,7 +153,7 @@ void BookmarksToolbar::bookmarkEdited(const BookmarksModel::Bookmark &before, co
|
||||||
|
|
||||||
action->setText(title);
|
action->setText(title);
|
||||||
action->setData(after.url);
|
action->setData(after.url);
|
||||||
action->setIcon(_iconForUrl(after.url));
|
action->setIcon(after.icon);
|
||||||
button->setToolTip(after.url.toEncoded());
|
button->setToolTip(after.url.toEncoded());
|
||||||
button->setWhatsThis(after.title);
|
button->setWhatsThis(after.title);
|
||||||
}
|
}
|
||||||
|
@ -165,10 +165,11 @@ void BookmarksToolbar::refreshBookmarks()
|
||||||
{
|
{
|
||||||
clear();
|
clear();
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.exec("SELECT title, url FROM bookmarks WHERE folder='bookmarksToolbar'");
|
query.exec("SELECT title, url, icon FROM bookmarks WHERE folder='bookmarksToolbar'");
|
||||||
while(query.next()) {
|
while(query.next()) {
|
||||||
QUrl url = query.value(1).toUrl();
|
|
||||||
QString title = query.value(0).toString();
|
QString title = query.value(0).toString();
|
||||||
|
QUrl url = query.value(1).toUrl();
|
||||||
|
QIcon icon = IconProvider::iconFromBase64(query.value(2).toByteArray());
|
||||||
QString title_ = title;
|
QString title_ = title;
|
||||||
QAction* action = new QAction(this);
|
QAction* action = new QAction(this);
|
||||||
if (title.length()>15) {
|
if (title.length()>15) {
|
||||||
|
@ -178,7 +179,7 @@ void BookmarksToolbar::refreshBookmarks()
|
||||||
|
|
||||||
action->setText(title);
|
action->setText(title);
|
||||||
action->setData(url);
|
action->setData(url);
|
||||||
action->setIcon(_iconForUrl(url));
|
action->setIcon(icon);
|
||||||
QToolButton* button = new QToolButton(this);
|
QToolButton* button = new QToolButton(this);
|
||||||
button->setDefaultAction(action);
|
button->setDefaultAction(action);
|
||||||
button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
|
@ -219,16 +220,4 @@ void BookmarksToolbar::refreshMostVisited()
|
||||||
}
|
}
|
||||||
m_menuMostVisited->addAction(_iconForUrl(entry.url), entry.title, p_QupZilla, SLOT(loadActionUrl()))->setData(entry.url);
|
m_menuMostVisited->addAction(_iconForUrl(entry.url), entry.title, p_QupZilla, SLOT(loadActionUrl()))->setData(entry.url);
|
||||||
}
|
}
|
||||||
|
|
||||||
// QSqlQuery query;
|
|
||||||
// query.exec("SELECT title, url FROM history ORDER BY count DESC LIMIT 10");
|
|
||||||
// while(query.next()) {
|
|
||||||
// QUrl url = query.value(1).toUrl();
|
|
||||||
// QString title = query.value(0).toString();
|
|
||||||
// if (title.length()>40) {
|
|
||||||
// title.truncate(40);
|
|
||||||
// title+="..";
|
|
||||||
// }
|
|
||||||
// m_menuMostVisited->addAction(_iconForUrl(url), title, p_QupZilla, SLOT(loadActionUrl()))->setData(url);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,9 +38,11 @@ CookieManager::CookieManager(QWidget* parent) :
|
||||||
connect(ui->removeCookie, SIGNAL(clicked()), this, SLOT(removeCookie()));
|
connect(ui->removeCookie, SIGNAL(clicked()), this, SLOT(removeCookie()));
|
||||||
connect(ui->close, SIGNAL(clicked(QAbstractButton*)), this, SLOT(hide()));
|
connect(ui->close, SIGNAL(clicked(QAbstractButton*)), this, SLOT(hide()));
|
||||||
connect(ui->search, SIGNAL(returnPressed()), this, SLOT(search()));
|
connect(ui->search, SIGNAL(returnPressed()), this, SLOT(search()));
|
||||||
connect(ui->search, SIGNAL(cursorPositionChanged(int, int)), this, SLOT(search()));
|
// connect(ui->search, SIGNAL(cursorPositionChanged(int, int)), this, SLOT(search()));
|
||||||
|
connect(ui->search, SIGNAL(textChanged(QString)), ui->cookieTree, SLOT(filterString(QString)));
|
||||||
|
|
||||||
ui->search->setInactiveText(tr("Search"));
|
ui->search->setInactiveText(tr("Search"));
|
||||||
|
ui->cookieTree->setDefaultItemShowMode(TreeWidget::ItemsCollapsed);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CookieManager::removeAll()
|
void CookieManager::removeAll()
|
||||||
|
@ -68,7 +70,7 @@ void CookieManager::removeCookie()
|
||||||
m_cookies.removeOne(cok);
|
m_cookies.removeOne(cok);
|
||||||
}
|
}
|
||||||
|
|
||||||
delete current;
|
ui->cookieTree->deleteItem(current);
|
||||||
mApp->cookieJar()->setAllCookies(m_cookies);
|
mApp->cookieJar()->setAllCookies(m_cookies);
|
||||||
refreshTable(false);
|
refreshTable(false);
|
||||||
return;
|
return;
|
||||||
|
@ -183,6 +185,5 @@ void CookieManager::search()
|
||||||
|
|
||||||
CookieManager::~CookieManager()
|
CookieManager::~CookieManager()
|
||||||
{
|
{
|
||||||
qDebug() << __FUNCTION__ << "called";
|
|
||||||
delete ui;
|
delete ui;
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="0" colspan="2">
|
<item row="2" column="0" colspan="2">
|
||||||
<widget class="QTreeWidget" name="cookieTree">
|
<widget class="TreeWidget" name="cookieTree">
|
||||||
<property name="sortingEnabled">
|
<property name="sortingEnabled">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
</property>
|
</property>
|
||||||
|
@ -242,6 +242,11 @@
|
||||||
<extends>QLabel</extends>
|
<extends>QLabel</extends>
|
||||||
<header>squeezelabelv2.h</header>
|
<header>squeezelabelv2.h</header>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
|
<customwidget>
|
||||||
|
<class>TreeWidget</class>
|
||||||
|
<extends>QTreeWidget</extends>
|
||||||
|
<header>treewidget.h</header>
|
||||||
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="../data/icons.qrc"/>
|
<include location="../data/icons.qrc"/>
|
||||||
|
|
|
@ -18,9 +18,9 @@
|
||||||
#include "historymanager.h"
|
#include "historymanager.h"
|
||||||
#include "ui_historymanager.h"
|
#include "ui_historymanager.h"
|
||||||
#include "qupzilla.h"
|
#include "qupzilla.h"
|
||||||
#include "qtwin.h"
|
|
||||||
#include "historymodel.h"
|
#include "historymodel.h"
|
||||||
#include "iconprovider.h"
|
#include "iconprovider.h"
|
||||||
|
#include "browsinglibrary.h"
|
||||||
|
|
||||||
HistoryManager::HistoryManager(QupZilla* mainClass, QWidget* parent) :
|
HistoryManager::HistoryManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
QWidget(parent)
|
QWidget(parent)
|
||||||
|
@ -29,29 +29,24 @@ HistoryManager::HistoryManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
,m_historyModel(mApp->history())
|
,m_historyModel(mApp->history())
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
ui->historyTree->setDefaultItemShowMode(TreeWidget::ItemsCollapsed);
|
||||||
|
ui->historyTree->setSelectionMode(QAbstractItemView::ExtendedSelection);
|
||||||
//CENTER on scren
|
//CENTER on scren
|
||||||
const QRect screen = QApplication::desktop()->screenGeometry();
|
const QRect screen = QApplication::desktop()->screenGeometry();
|
||||||
const QRect &size = QWidget::geometry();
|
const QRect &size = QWidget::geometry();
|
||||||
QWidget::move( (screen.width()-size.width())/2, (screen.height()-size.height())/2 );
|
QWidget::move( (screen.width()-size.width())/2, (screen.height()-size.height())/2 );
|
||||||
|
|
||||||
#ifdef Q_WS_WIN
|
|
||||||
if (QtWin::isCompositionEnabled()) {
|
|
||||||
QtWin::extendFrameIntoClientArea(this);
|
|
||||||
ui->gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
connect(ui->historyTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this, SLOT(itemDoubleClicked(QTreeWidgetItem*)));
|
connect(ui->historyTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this, SLOT(itemDoubleClicked(QTreeWidgetItem*)));
|
||||||
connect(ui->deleteB, SIGNAL(clicked()), this, SLOT(deleteItem()));
|
connect(ui->deleteB, SIGNAL(clicked()), this, SLOT(deleteItem()));
|
||||||
connect(ui->clearAll, SIGNAL(clicked()), this, SLOT(clearHistory()));
|
connect(ui->clearAll, SIGNAL(clicked()), this, SLOT(clearHistory()));
|
||||||
// connect(ui->search, SIGNAL(textChanged(QString)), ui->historyTree, SLOT(filterStringWithoutTopItems(QString)));
|
|
||||||
connect(ui->historyTree, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &)));
|
connect(ui->historyTree, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &)));
|
||||||
connect(ui->historyTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*)));
|
|
||||||
|
|
||||||
connect(m_historyModel, SIGNAL(historyEntryAdded(HistoryModel::HistoryEntry)), this, SLOT(historyEntryAdded(HistoryModel::HistoryEntry)));
|
connect(m_historyModel, SIGNAL(historyEntryAdded(HistoryModel::HistoryEntry)), this, SLOT(historyEntryAdded(HistoryModel::HistoryEntry)));
|
||||||
connect(m_historyModel, SIGNAL(historyEntryDeleted(HistoryModel::HistoryEntry)), this, SLOT(historyEntryDeleted(HistoryModel::HistoryEntry)));
|
connect(m_historyModel, SIGNAL(historyEntryDeleted(HistoryModel::HistoryEntry)), this, SLOT(historyEntryDeleted(HistoryModel::HistoryEntry)));
|
||||||
connect(m_historyModel, SIGNAL(historyClear()), ui->historyTree, SLOT(clear()));
|
connect(m_historyModel, SIGNAL(historyClear()), ui->historyTree, SLOT(clear()));
|
||||||
|
|
||||||
|
connect(ui->optimizeDb, SIGNAL(clicked(QPoint)), this, SLOT(optimizeDb()));
|
||||||
|
|
||||||
//QTimer::singleShot(0, this, SLOT(refreshTable()));
|
//QTimer::singleShot(0, this, SLOT(refreshTable()));
|
||||||
|
|
||||||
ui->historyTree->setFocus();
|
ui->historyTree->setFocus();
|
||||||
|
@ -71,13 +66,6 @@ void HistoryManager::setMainWindow(QupZilla* window)
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistoryManager::itemDoubleClicked(QTreeWidgetItem* item)
|
void HistoryManager::itemDoubleClicked(QTreeWidgetItem* item)
|
||||||
{
|
|
||||||
if (!item || item->text(1).isEmpty())
|
|
||||||
return;
|
|
||||||
getQupZilla()->loadAddress(QUrl(item->text(1)));
|
|
||||||
}
|
|
||||||
|
|
||||||
void HistoryManager::itemControlClicked(QTreeWidgetItem* item)
|
|
||||||
{
|
{
|
||||||
if (!item || item->text(1).isEmpty())
|
if (!item || item->text(1).isEmpty())
|
||||||
return;
|
return;
|
||||||
|
@ -114,32 +102,53 @@ void HistoryManager::contextMenuRequested(const QPoint &position)
|
||||||
|
|
||||||
void HistoryManager::deleteItem()
|
void HistoryManager::deleteItem()
|
||||||
{
|
{
|
||||||
QTreeWidgetItem* item = ui->historyTree->currentItem();
|
QApplication::setOverrideCursor(Qt::WaitCursor);
|
||||||
if (!item || item->text(1).isEmpty())
|
foreach (QTreeWidgetItem* item, ui->historyTree->selectedItems()) {
|
||||||
return;
|
if (!item)
|
||||||
|
return;
|
||||||
|
|
||||||
int id = item->whatsThis(1).toInt();
|
if (!item->parent()) {
|
||||||
m_historyModel->deleteHistoryEntry(id);
|
for (int i = 0; i < item->childCount(); i++) {
|
||||||
|
QTreeWidgetItem* children = item->child(i);
|
||||||
|
int id = children->whatsThis(1).toInt();
|
||||||
|
m_historyModel->deleteHistoryEntry(id);
|
||||||
|
}
|
||||||
|
ui->historyTree->deleteItem(item);
|
||||||
|
} else {
|
||||||
|
int id = item->whatsThis(1).toInt();
|
||||||
|
m_historyModel->deleteHistoryEntry(id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
QApplication::restoreOverrideCursor();
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistoryManager::historyEntryAdded(const HistoryModel::HistoryEntry &entry)
|
void HistoryManager::historyEntryAdded(const HistoryModel::HistoryEntry &entry)
|
||||||
{
|
{
|
||||||
QLocale locale(getQupZilla()->activeLanguage().remove(".qm"));
|
QDate todayDate = QDate::currentDate();
|
||||||
|
QDate startOfWeekDate = todayDate.addDays(1 - todayDate.dayOfWeek());
|
||||||
|
|
||||||
QString localDate; //date.toString("dddd d. MMMM yyyy");
|
QDate date = entry.date.date();
|
||||||
QString month = locale.monthName(entry.date.toString("M").toInt());
|
QString localDate;
|
||||||
localDate = entry.date.toString(" d. ") + month + entry.date.toString(" yyyy");
|
|
||||||
|
|
||||||
QTreeWidgetItem* item;
|
if (date == todayDate)
|
||||||
|
localDate = tr("Today");
|
||||||
|
else if (date >= startOfWeekDate)
|
||||||
|
localDate = tr("This Week");
|
||||||
|
else if (date.month() == todayDate.month())
|
||||||
|
localDate = tr("This Month");
|
||||||
|
else
|
||||||
|
localDate = QString("%1 %2").arg(HistoryModel::titleCaseLocalizedMonth(date.month()), QString::number(date.year()));
|
||||||
|
|
||||||
|
QTreeWidgetItem* item = new QTreeWidgetItem();
|
||||||
|
QTreeWidgetItem* parentItem;
|
||||||
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
||||||
if (findParent.count() == 1) {
|
if (findParent.count() == 1) {
|
||||||
item = new QTreeWidgetItem(findParent.at(0));
|
parentItem = findParent.at(0);
|
||||||
} else {
|
} else {
|
||||||
QTreeWidgetItem* newParent = new QTreeWidgetItem(ui->historyTree);
|
parentItem = new QTreeWidgetItem();
|
||||||
newParent->setText(0, localDate);
|
parentItem->setText(0, localDate);
|
||||||
newParent->setIcon(0, QIcon(":/icons/menu/history_entry.png"));
|
parentItem->setIcon(0, QIcon(":/icons/menu/history_entry.png"));
|
||||||
ui->historyTree->addTopLevelItem(newParent);
|
ui->historyTree->addTopLevelItem(parentItem);
|
||||||
item = new QTreeWidgetItem(newParent);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
item->setText(0, entry.title);
|
item->setText(0, entry.title);
|
||||||
|
@ -149,7 +158,7 @@ void HistoryManager::historyEntryAdded(const HistoryModel::HistoryEntry &entry)
|
||||||
|
|
||||||
item->setWhatsThis(1, QString::number(entry.id));
|
item->setWhatsThis(1, QString::number(entry.id));
|
||||||
item->setIcon(0, _iconForUrl(entry.url));
|
item->setIcon(0, _iconForUrl(entry.url));
|
||||||
ui->historyTree->addTopLevelItem(item);
|
ui->historyTree->prependToParentItem(parentItem, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistoryManager::historyEntryDeleted(const HistoryModel::HistoryEntry &entry)
|
void HistoryManager::historyEntryDeleted(const HistoryModel::HistoryEntry &entry)
|
||||||
|
@ -160,7 +169,7 @@ void HistoryManager::historyEntryDeleted(const HistoryModel::HistoryEntry &entry
|
||||||
continue;
|
continue;
|
||||||
if (item->whatsThis(1).toInt() != entry.id)
|
if (item->whatsThis(1).toInt() != entry.id)
|
||||||
continue;
|
continue;
|
||||||
delete item;
|
ui->historyTree->deleteItem(item);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -181,8 +190,8 @@ void HistoryManager::refreshTable()
|
||||||
ui->historyTree->setUpdatesEnabled(false);
|
ui->historyTree->setUpdatesEnabled(false);
|
||||||
ui->historyTree->clear();
|
ui->historyTree->clear();
|
||||||
|
|
||||||
QLocale locale(getQupZilla()->activeLanguage().remove(".qm"));
|
QDate todayDate = QDate::currentDate();
|
||||||
|
QDate startOfWeekDate = todayDate.addDays(1 - todayDate.dayOfWeek());
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.exec("SELECT title, url, id, date FROM history ORDER BY date DESC");
|
query.exec("SELECT title, url, id, date FROM history ORDER BY date DESC");
|
||||||
|
|
||||||
|
@ -190,15 +199,19 @@ void HistoryManager::refreshTable()
|
||||||
QString title = query.value(0).toString();
|
QString title = query.value(0).toString();
|
||||||
QUrl url = query.value(1).toUrl();
|
QUrl url = query.value(1).toUrl();
|
||||||
int id = query.value(2).toInt();
|
int id = query.value(2).toInt();
|
||||||
qint64 unixDate = query.value(3).toLongLong();
|
QDate date = QDateTime::fromMSecsSinceEpoch(query.value(3).toLongLong()).date();
|
||||||
QDateTime date = QDateTime();
|
QString localDate;
|
||||||
date = date.fromMSecsSinceEpoch(unixDate);
|
|
||||||
|
|
||||||
QString localDate; //date.toString("dddd d. MMMM yyyy");
|
if (date == todayDate)
|
||||||
QString month = locale.monthName(date.toString("M").toInt());
|
localDate = tr("Today");
|
||||||
localDate = date.toString(" d. ") + month + date.toString(" yyyy");
|
else if (date >= startOfWeekDate)
|
||||||
|
localDate = tr("This Week");
|
||||||
|
else if (date.month() == todayDate.month())
|
||||||
|
localDate = tr("This Month");
|
||||||
|
else
|
||||||
|
localDate = QString("%1 %2").arg(HistoryModel::titleCaseLocalizedMonth(date.month()), QString::number(date.year()));
|
||||||
|
|
||||||
QTreeWidgetItem* item;
|
QTreeWidgetItem* item = new QTreeWidgetItem();
|
||||||
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
||||||
if (findParent.count() == 1) {
|
if (findParent.count() == 1) {
|
||||||
item = new QTreeWidgetItem(findParent.at(0));
|
item = new QTreeWidgetItem(findParent.at(0));
|
||||||
|
@ -225,6 +238,8 @@ void HistoryManager::refreshTable()
|
||||||
|
|
||||||
void HistoryManager::search(const QString &searchText)
|
void HistoryManager::search(const QString &searchText)
|
||||||
{
|
{
|
||||||
|
ui->historyTree->filterString(searchText);
|
||||||
|
return;
|
||||||
if (searchText.isEmpty()) {
|
if (searchText.isEmpty()) {
|
||||||
refreshTable();
|
refreshTable();
|
||||||
return;
|
return;
|
||||||
|
@ -251,6 +266,15 @@ void HistoryManager::search(const QString &searchText)
|
||||||
ui->historyTree->setUpdatesEnabled(true);
|
ui->historyTree->setUpdatesEnabled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HistoryManager::optimizeDb()
|
||||||
|
{
|
||||||
|
BrowsingLibrary* b = (BrowsingLibrary*) parentWidget();
|
||||||
|
if (!b)
|
||||||
|
return;
|
||||||
|
b->optimizeDatabase();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
HistoryManager::~HistoryManager()
|
HistoryManager::~HistoryManager()
|
||||||
{
|
{
|
||||||
delete ui;
|
delete ui;
|
||||||
|
|
|
@ -44,12 +44,12 @@ public slots:
|
||||||
void search(const QString &searchText);
|
void search(const QString &searchText);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
void optimizeDb();
|
||||||
void itemDoubleClicked(QTreeWidgetItem* item);
|
void itemDoubleClicked(QTreeWidgetItem* item);
|
||||||
void deleteItem();
|
void deleteItem();
|
||||||
void clearHistory();
|
void clearHistory();
|
||||||
void contextMenuRequested(const QPoint &position);
|
void contextMenuRequested(const QPoint &position);
|
||||||
void loadInNewTab();
|
void loadInNewTab();
|
||||||
void itemControlClicked(QTreeWidgetItem* item);
|
|
||||||
|
|
||||||
void historyEntryAdded(const HistoryModel::HistoryEntry &entry);
|
void historyEntryAdded(const HistoryModel::HistoryEntry &entry);
|
||||||
void historyEntryDeleted(const HistoryModel::HistoryEntry &entry);
|
void historyEntryDeleted(const HistoryModel::HistoryEntry &entry);
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<normaloff>:/icons/qupzilla.png</normaloff>:/icons/qupzilla.png</iconset>
|
<normaloff>:/icons/qupzilla.png</normaloff>:/icons/qupzilla.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<item row="0" column="0" colspan="3">
|
<item row="0" column="0" colspan="4">
|
||||||
<widget class="TreeWidget" name="historyTree">
|
<widget class="TreeWidget" name="historyTree">
|
||||||
<property name="contextMenuPolicy">
|
<property name="contextMenuPolicy">
|
||||||
<enum>Qt::CustomContextMenu</enum>
|
<enum>Qt::CustomContextMenu</enum>
|
||||||
|
@ -71,6 +71,20 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="1" column="3">
|
||||||
|
<widget class="ClickableLabel" name="optimizeDb">
|
||||||
|
<property name="cursor">
|
||||||
|
<cursorShape>PointingHandCursor</cursorShape>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">color: blue;
|
||||||
|
text-decoration: underline;</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Optimize Database</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<customwidgets>
|
<customwidgets>
|
||||||
|
@ -79,6 +93,11 @@
|
||||||
<extends>QTreeWidget</extends>
|
<extends>QTreeWidget</extends>
|
||||||
<header>treewidget.h</header>
|
<header>treewidget.h</header>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
|
<customwidget>
|
||||||
|
<class>ClickableLabel</class>
|
||||||
|
<extends>QLabel</extends>
|
||||||
|
<header>clickablelabel.h</header>
|
||||||
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="../data/icons.qrc"/>
|
<include location="../data/icons.qrc"/>
|
||||||
|
|
|
@ -18,6 +18,7 @@
|
||||||
#include "historymodel.h"
|
#include "historymodel.h"
|
||||||
#include "webview.h"
|
#include "webview.h"
|
||||||
#include "qupzilla.h"
|
#include "qupzilla.h"
|
||||||
|
#include "iconprovider.h"
|
||||||
|
|
||||||
HistoryModel::HistoryModel(QupZilla* mainClass, QObject* parent)
|
HistoryModel::HistoryModel(QupZilla* mainClass, QObject* parent)
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
|
@ -78,7 +79,7 @@ int HistoryModel::addHistoryEntry(WebView* view)
|
||||||
if (!m_isSaving)
|
if (!m_isSaving)
|
||||||
return -2;
|
return -2;
|
||||||
|
|
||||||
QString url = view->url().toString();
|
QString url = view->url().toEncoded();
|
||||||
QString title = view->title();
|
QString title = view->title();
|
||||||
return addHistoryEntry(url, title);
|
return addHistoryEntry(url, title);
|
||||||
}
|
}
|
||||||
|
@ -163,3 +164,36 @@ bool HistoryModel::isSaving()
|
||||||
{
|
{
|
||||||
return m_isSaving;
|
return m_isSaving;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString HistoryModel::titleCaseLocalizedMonth(int month)
|
||||||
|
{
|
||||||
|
switch (month) {
|
||||||
|
case 1:
|
||||||
|
return tr("January");
|
||||||
|
case 2:
|
||||||
|
return tr("February");
|
||||||
|
case 3:
|
||||||
|
return tr("March");
|
||||||
|
case 4:
|
||||||
|
return tr("April");
|
||||||
|
case 5:
|
||||||
|
return tr("May");
|
||||||
|
case 6:
|
||||||
|
return tr("June");
|
||||||
|
case 7:
|
||||||
|
return tr("July");
|
||||||
|
case 8:
|
||||||
|
return tr("August");
|
||||||
|
case 9:
|
||||||
|
return tr("September");
|
||||||
|
case 10:
|
||||||
|
return tr("October");
|
||||||
|
case 11:
|
||||||
|
return tr("November");
|
||||||
|
case 12:
|
||||||
|
return tr("December");
|
||||||
|
default:
|
||||||
|
qWarning("Month number out of range!");
|
||||||
|
return QString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -22,10 +22,12 @@
|
||||||
#include <QSqlQuery>
|
#include <QSqlQuery>
|
||||||
#include <QDateTime>
|
#include <QDateTime>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
|
#include <QIcon>
|
||||||
#include <QUrl>
|
#include <QUrl>
|
||||||
|
|
||||||
class QupZilla;
|
class QupZilla;
|
||||||
class WebView;
|
class WebView;
|
||||||
|
class QIcon;
|
||||||
class HistoryModel : public QObject
|
class HistoryModel : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -40,6 +42,8 @@ public:
|
||||||
QString title;
|
QString title;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static QString titleCaseLocalizedMonth(int month);
|
||||||
|
|
||||||
int addHistoryEntry(WebView* view);
|
int addHistoryEntry(WebView* view);
|
||||||
int addHistoryEntry(const QString &url, QString &title);
|
int addHistoryEntry(const QString &url, QString &title);
|
||||||
bool deleteHistoryEntry(int index);
|
bool deleteHistoryEntry(int index);
|
||||||
|
|
|
@ -1,9 +1,27 @@
|
||||||
|
/* ============================================================
|
||||||
|
* QupZilla - WebKit based browser
|
||||||
|
* Copyright (C) 2010-2011 nowrep
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
* ============================================================ */
|
||||||
#include "browsinglibrary.h"
|
#include "browsinglibrary.h"
|
||||||
#include "ui_browsinglibrary.h"
|
#include "ui_browsinglibrary.h"
|
||||||
#include "historymanager.h"
|
#include "historymanager.h"
|
||||||
#include "bookmarksmanager.h"
|
#include "bookmarksmanager.h"
|
||||||
#include "rssmanager.h"
|
#include "rssmanager.h"
|
||||||
#include "mainapplication.h"
|
#include "mainapplication.h"
|
||||||
|
#include "downloaditem.h"
|
||||||
|
|
||||||
BrowsingLibrary::BrowsingLibrary(QupZilla* mainClass, QWidget *parent)
|
BrowsingLibrary::BrowsingLibrary(QupZilla* mainClass, QWidget *parent)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
|
@ -16,7 +34,10 @@ BrowsingLibrary::BrowsingLibrary(QupZilla* mainClass, QWidget *parent)
|
||||||
, m_rssLoaded(false)
|
, m_rssLoaded(false)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
ui->searchLine->hide();
|
QSettings settings(mApp->getActiveProfil()+"settings.ini", QSettings::IniFormat);
|
||||||
|
settings.beginGroup("BrowsingLibrary");
|
||||||
|
resize(settings.value("size", QSize(760, 470)).toSize());
|
||||||
|
settings.endGroup();
|
||||||
|
|
||||||
//CENTER on scren
|
//CENTER on scren
|
||||||
const QRect screen = QApplication::desktop()->screenGeometry();
|
const QRect screen = QApplication::desktop()->screenGeometry();
|
||||||
|
@ -29,6 +50,7 @@ BrowsingLibrary::BrowsingLibrary(QupZilla* mainClass, QWidget *parent)
|
||||||
|
|
||||||
ui->tabs->SetMode(FancyTabWidget::Mode_LargeSidebar);
|
ui->tabs->SetMode(FancyTabWidget::Mode_LargeSidebar);
|
||||||
ui->tabs->SetBackgroundPixmap(QPixmap(":icons/other/background.png"));
|
ui->tabs->SetBackgroundPixmap(QPixmap(":icons/other/background.png"));
|
||||||
|
ui->tabs->setFocus();
|
||||||
|
|
||||||
connect(ui->tabs, SIGNAL(CurrentChanged(int)), this, SLOT(currentIndexChanged(int)));
|
connect(ui->tabs, SIGNAL(CurrentChanged(int)), this, SLOT(currentIndexChanged(int)));
|
||||||
connect(ui->searchLine, SIGNAL(cursorPositionChanged(int, int)), this, SLOT(search()));
|
connect(ui->searchLine, SIGNAL(cursorPositionChanged(int, int)), this, SLOT(search()));
|
||||||
|
@ -43,6 +65,7 @@ void BrowsingLibrary::currentIndexChanged(int index)
|
||||||
m_historyLoaded = true;
|
m_historyLoaded = true;
|
||||||
}
|
}
|
||||||
ui->searchLine->show();
|
ui->searchLine->show();
|
||||||
|
search();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 1:
|
case 1:
|
||||||
|
@ -50,7 +73,8 @@ void BrowsingLibrary::currentIndexChanged(int index)
|
||||||
m_bookmarksManager->refreshTable();
|
m_bookmarksManager->refreshTable();
|
||||||
m_bookmarksLoaded = true;
|
m_bookmarksLoaded = true;
|
||||||
}
|
}
|
||||||
ui->searchLine->hide();
|
ui->searchLine->show();
|
||||||
|
search();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
|
@ -68,7 +92,10 @@ void BrowsingLibrary::currentIndexChanged(int index)
|
||||||
|
|
||||||
void BrowsingLibrary::search()
|
void BrowsingLibrary::search()
|
||||||
{
|
{
|
||||||
m_historyManager->search(ui->searchLine->text());
|
if (ui->tabs->current_index() == 0)
|
||||||
|
m_historyManager->search(ui->searchLine->text());
|
||||||
|
else
|
||||||
|
m_bookmarksManager->search(ui->searchLine->text());
|
||||||
}
|
}
|
||||||
|
|
||||||
void BrowsingLibrary::showHistory(QupZilla* mainClass)
|
void BrowsingLibrary::showHistory(QupZilla* mainClass)
|
||||||
|
@ -81,6 +108,7 @@ void BrowsingLibrary::showHistory(QupZilla* mainClass)
|
||||||
m_historyManager->refreshTable();
|
m_historyManager->refreshTable();
|
||||||
m_historyLoaded = true;
|
m_historyLoaded = true;
|
||||||
}
|
}
|
||||||
|
raise();
|
||||||
}
|
}
|
||||||
|
|
||||||
void BrowsingLibrary::showBookmarks(QupZilla* mainClass)
|
void BrowsingLibrary::showBookmarks(QupZilla* mainClass)
|
||||||
|
@ -93,6 +121,7 @@ void BrowsingLibrary::showBookmarks(QupZilla* mainClass)
|
||||||
m_bookmarksManager->refreshTable();
|
m_bookmarksManager->refreshTable();
|
||||||
m_bookmarksLoaded = true;
|
m_bookmarksLoaded = true;
|
||||||
}
|
}
|
||||||
|
raise();
|
||||||
}
|
}
|
||||||
|
|
||||||
void BrowsingLibrary::showRSS(QupZilla* mainClass)
|
void BrowsingLibrary::showRSS(QupZilla* mainClass)
|
||||||
|
@ -102,6 +131,27 @@ void BrowsingLibrary::showRSS(QupZilla* mainClass)
|
||||||
m_rssManager->setMainWindow(mainClass);
|
m_rssManager->setMainWindow(mainClass);
|
||||||
m_rssManager->refreshTable();
|
m_rssManager->refreshTable();
|
||||||
m_rssLoaded = true;
|
m_rssLoaded = true;
|
||||||
|
raise();
|
||||||
|
}
|
||||||
|
|
||||||
|
void BrowsingLibrary::optimizeDatabase()
|
||||||
|
{
|
||||||
|
mApp->setOverrideCursor(Qt::WaitCursor);
|
||||||
|
QString profilePath = mApp->getActiveProfil();
|
||||||
|
QString sizeBefore = DownloadItem::fileSizeToString(QFileInfo(profilePath+"/browsedata.db").size());
|
||||||
|
mApp->history()->optimizeHistory();
|
||||||
|
QString sizeAfter = DownloadItem::fileSizeToString(QFileInfo(profilePath+"/browsedata.db").size());
|
||||||
|
mApp->restoreOverrideCursor();
|
||||||
|
QMessageBox::information(this, tr("Database Optimized"), tr("Database successfuly optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Databse Size After: </b>%2").arg(sizeBefore, sizeAfter));
|
||||||
|
}
|
||||||
|
|
||||||
|
void BrowsingLibrary::closeEvent(QCloseEvent *e)
|
||||||
|
{
|
||||||
|
QSettings settings(mApp->getActiveProfil()+"settings.ini", QSettings::IniFormat);
|
||||||
|
settings.beginGroup("BrowsingLibrary");
|
||||||
|
settings.setValue("size", size());
|
||||||
|
settings.endGroup();
|
||||||
|
e->accept();
|
||||||
}
|
}
|
||||||
|
|
||||||
BrowsingLibrary::~BrowsingLibrary()
|
BrowsingLibrary::~BrowsingLibrary()
|
||||||
|
|
|
@ -1,8 +1,27 @@
|
||||||
|
/* ============================================================
|
||||||
|
* QupZilla - WebKit based browser
|
||||||
|
* Copyright (C) 2010-2011 nowrep
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
* ============================================================ */
|
||||||
#ifndef LIBRARY_H
|
#ifndef LIBRARY_H
|
||||||
#define LIBRARY_H
|
#define LIBRARY_H
|
||||||
|
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
#include <QDesktopWidget>
|
#include <QDesktopWidget>
|
||||||
|
#include <QFileInfo>
|
||||||
|
#include <QCloseEvent>
|
||||||
|
|
||||||
namespace Ui {
|
namespace Ui {
|
||||||
class BrowsingLibrary;
|
class BrowsingLibrary;
|
||||||
|
@ -24,6 +43,8 @@ public:
|
||||||
void showBookmarks(QupZilla* mainClass);
|
void showBookmarks(QupZilla* mainClass);
|
||||||
void showRSS(QupZilla* mainClass);
|
void showRSS(QupZilla* mainClass);
|
||||||
|
|
||||||
|
void optimizeDatabase();
|
||||||
|
|
||||||
HistoryManager* historyManager() { return m_historyManager; }
|
HistoryManager* historyManager() { return m_historyManager; }
|
||||||
BookmarksManager* bookmarksManager() { return m_bookmarksManager; }
|
BookmarksManager* bookmarksManager() { return m_bookmarksManager; }
|
||||||
RSSManager* rssManager() { return m_rssManager; }
|
RSSManager* rssManager() { return m_rssManager; }
|
||||||
|
@ -33,6 +54,7 @@ private slots:
|
||||||
void search();
|
void search();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void closeEvent(QCloseEvent *e);
|
||||||
Ui::BrowsingLibrary *ui;
|
Ui::BrowsingLibrary *ui;
|
||||||
HistoryManager* m_historyManager;
|
HistoryManager* m_historyManager;
|
||||||
BookmarksManager* m_bookmarksManager;
|
BookmarksManager* m_bookmarksManager;
|
||||||
|
|
|
@ -49,6 +49,7 @@ void ClearPrivateData::clearFlash()
|
||||||
|
|
||||||
void ClearPrivateData::dialogAccepted()
|
void ClearPrivateData::dialogAccepted()
|
||||||
{
|
{
|
||||||
|
QApplication::setOverrideCursor(Qt::WaitCursor);
|
||||||
if (ui->history->isChecked()) {
|
if (ui->history->isChecked()) {
|
||||||
QDateTime dateTime = QDateTime::currentDateTime();
|
QDateTime dateTime = QDateTime::currentDateTime();
|
||||||
qint64 nowMS = QDateTime::currentMSecsSinceEpoch();
|
qint64 nowMS = QDateTime::currentMSecsSinceEpoch();
|
||||||
|
@ -86,5 +87,6 @@ void ClearPrivateData::dialogAccepted()
|
||||||
mApp->webSettings()->clearIconDatabase();
|
mApp->webSettings()->clearIconDatabase();
|
||||||
mApp->iconProvider()->clearIconDatabase();
|
mApp->iconProvider()->clearIconDatabase();
|
||||||
}
|
}
|
||||||
|
QApplication::restoreOverrideCursor();
|
||||||
close();
|
close();
|
||||||
}
|
}
|
||||||
|
|
|
@ -102,7 +102,6 @@ void AutoFillManager::removeExcept()
|
||||||
return;
|
return;
|
||||||
QString id = curItem->whatsThis(0);
|
QString id = curItem->whatsThis(0);
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
qDebug() << id;
|
|
||||||
query.exec("DELETE FROM autofill_exceptions WHERE id="+id);
|
query.exec("DELETE FROM autofill_exceptions WHERE id="+id);
|
||||||
loadPasswords();
|
loadPasswords();
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,8 +21,8 @@
|
||||||
#include "tabwidget.h"
|
#include "tabwidget.h"
|
||||||
#include "mainapplication.h"
|
#include "mainapplication.h"
|
||||||
#include "treewidget.h"
|
#include "treewidget.h"
|
||||||
#include "qtwin.h"
|
|
||||||
#include "iconprovider.h"
|
#include "iconprovider.h"
|
||||||
|
#include "browsinglibrary.h"
|
||||||
|
|
||||||
RSSManager::RSSManager(QupZilla* mainClass, QWidget* parent) :
|
RSSManager::RSSManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
QWidget(parent)
|
QWidget(parent)
|
||||||
|
@ -35,18 +35,13 @@ RSSManager::RSSManager(QupZilla* mainClass, QWidget* parent) :
|
||||||
const QRect &size = geometry();
|
const QRect &size = geometry();
|
||||||
QWidget::move( (screen.width()-size.width())/2, (screen.height()-size.height())/2 );
|
QWidget::move( (screen.width()-size.width())/2, (screen.height()-size.height())/2 );
|
||||||
|
|
||||||
#ifdef Q_WS_WIN
|
|
||||||
if (QtWin::isCompositionEnabled()) {
|
|
||||||
QtWin::extendFrameIntoClientArea(this);
|
|
||||||
layout()->setContentsMargins(0, 0, 0, 0);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
ui->tabWidget->setElideMode(Qt::ElideRight);
|
ui->tabWidget->setElideMode(Qt::ElideRight);
|
||||||
m_networkManager = new QNetworkAccessManager();
|
m_networkManager = new QNetworkAccessManager();
|
||||||
connect(ui->reload, SIGNAL(clicked()), this, SLOT(reloadFeed()));
|
connect(ui->reload, SIGNAL(clicked()), this, SLOT(reloadFeed()));
|
||||||
connect(ui->deletebutton, SIGNAL(clicked()), this, SLOT(deleteFeed()));
|
connect(ui->deletebutton, SIGNAL(clicked()), this, SLOT(deleteFeed()));
|
||||||
connect(ui->edit, SIGNAL(clicked()), this, SLOT(editFeed()));
|
connect(ui->edit, SIGNAL(clicked()), this, SLOT(editFeed()));
|
||||||
|
|
||||||
|
connect(ui->optimizeDb, SIGNAL(clicked(QPoint)), this, SLOT(optimizeDb()));
|
||||||
}
|
}
|
||||||
|
|
||||||
QupZilla* RSSManager::getQupZilla()
|
QupZilla* RSSManager::getQupZilla()
|
||||||
|
@ -66,11 +61,12 @@ void RSSManager::refreshTable()
|
||||||
{
|
{
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
ui->tabWidget->clear();
|
ui->tabWidget->clear();
|
||||||
query.exec("SELECT address, title FROM rss");
|
query.exec("SELECT address, title, icon FROM rss");
|
||||||
int i = 0;
|
int i = 0;
|
||||||
while (query.next()) {
|
while (query.next()) {
|
||||||
QUrl address = query.value(0).toUrl();
|
QUrl address = query.value(0).toUrl();
|
||||||
QString title = query.value(1).toString();
|
QString title = query.value(1).toString();
|
||||||
|
QIcon icon = IconProvider::iconFromBase64(query.value(2).toByteArray());
|
||||||
TreeWidget* tree = new TreeWidget();
|
TreeWidget* tree = new TreeWidget();
|
||||||
tree->setHeaderLabel(tr("News"));
|
tree->setHeaderLabel(tr("News"));
|
||||||
tree->setContextMenuPolicy(Qt::CustomContextMenu);
|
tree->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||||
|
@ -84,8 +80,6 @@ void RSSManager::refreshTable()
|
||||||
item->setText(0, tr("Loading..."));
|
item->setText(0, tr("Loading..."));
|
||||||
tree->addTopLevelItem(item);
|
tree->addTopLevelItem(item);
|
||||||
|
|
||||||
QIcon icon = _iconForUrl(address);
|
|
||||||
|
|
||||||
ui->tabWidget->setTabIcon(i, icon );
|
ui->tabWidget->setTabIcon(i, icon );
|
||||||
beginToLoadSlot(address);
|
beginToLoadSlot(address);
|
||||||
i++;
|
i++;
|
||||||
|
@ -308,16 +302,23 @@ void RSSManager::finished(QNetworkReply* reply)
|
||||||
m_networkReplies.append(reply);
|
m_networkReplies.append(reply);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool RSSManager::addRssFeed(const QString &address, const QString &title)
|
bool RSSManager::addRssFeed(const QString &address, const QString &title, const QIcon &icon)
|
||||||
{
|
{
|
||||||
if (address.isEmpty())
|
if (address.isEmpty())
|
||||||
return false;
|
return false;
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.exec("SELECT id FROM rss WHERE address='"+address+"'");
|
query.exec("SELECT id FROM rss WHERE address='"+address+"'");
|
||||||
if (!query.next()) {
|
if (!query.next()) {
|
||||||
query.prepare("INSERT INTO rss (address, title) VALUES(?,?)");
|
QByteArray iconData;
|
||||||
|
if (icon.pixmap(16,16).toImage() == QWebSettings::webGraphic(QWebSettings::DefaultFrameIconGraphic).toImage())
|
||||||
|
iconData = IconProvider::iconToBase64(QIcon(":icons/other/feed.png"));
|
||||||
|
else
|
||||||
|
iconData = IconProvider::iconToBase64(icon);
|
||||||
|
|
||||||
|
query.prepare("INSERT INTO rss (address, title, icon) VALUES(?,?,?)");
|
||||||
query.bindValue(0, address);
|
query.bindValue(0, address);
|
||||||
query.bindValue(1, title);
|
query.bindValue(1, title);
|
||||||
|
query.bindValue(2, iconData);
|
||||||
query.exec();
|
query.exec();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -326,6 +327,14 @@ bool RSSManager::addRssFeed(const QString &address, const QString &title)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RSSManager::optimizeDb()
|
||||||
|
{
|
||||||
|
BrowsingLibrary* b = (BrowsingLibrary*) parentWidget();
|
||||||
|
if (!b)
|
||||||
|
return;
|
||||||
|
b->optimizeDatabase();
|
||||||
|
}
|
||||||
|
|
||||||
RSSManager::~RSSManager()
|
RSSManager::~RSSManager()
|
||||||
{
|
{
|
||||||
delete ui;
|
delete ui;
|
||||||
|
|
|
@ -39,13 +39,14 @@ public:
|
||||||
explicit RSSManager(QupZilla* mainClass, QWidget* parent = 0);
|
explicit RSSManager(QupZilla* mainClass, QWidget* parent = 0);
|
||||||
~RSSManager();
|
~RSSManager();
|
||||||
|
|
||||||
bool addRssFeed(const QString &address, const QString &title);
|
bool addRssFeed(const QString &address, const QString &title, const QIcon &icon);
|
||||||
void setMainWindow(QupZilla* window);
|
void setMainWindow(QupZilla* window);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void refreshTable();
|
void refreshTable();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
void optimizeDb();
|
||||||
void beginToLoadSlot(const QUrl &url);
|
void beginToLoadSlot(const QUrl &url);
|
||||||
void finished(QNetworkReply* reply);
|
void finished(QNetworkReply* reply);
|
||||||
void loadFeed(QTreeWidgetItem* item);
|
void loadFeed(QTreeWidgetItem* item);
|
||||||
|
|
|
@ -98,10 +98,31 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="ClickableLabel" name="optimizeDb">
|
||||||
|
<property name="cursor">
|
||||||
|
<cursorShape>PointingHandCursor</cursorShape>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">color: blue;
|
||||||
|
text-decoration: underline;</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Optimize Database</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
<customwidgets>
|
||||||
|
<customwidget>
|
||||||
|
<class>ClickableLabel</class>
|
||||||
|
<extends>QLabel</extends>
|
||||||
|
<header>clickablelabel.h</header>
|
||||||
|
</customwidget>
|
||||||
|
</customwidgets>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="../data/icons.qrc"/>
|
<include location="../data/icons.qrc"/>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -77,7 +77,7 @@ void RSSWidget::addRss()
|
||||||
else
|
else
|
||||||
title = button->toolTip();
|
title = button->toolTip();
|
||||||
|
|
||||||
if (mApp->rssManager()->addRssFeed(urlString, title)) {
|
if (mApp->rssManager()->addRssFeed(urlString, title, m_view->siteIcon())) {
|
||||||
RSSNotification* notif = new RSSNotification(title, m_view);
|
RSSNotification* notif = new RSSNotification(title, m_view);
|
||||||
m_view->addNotification(notif);
|
m_view->addNotification(notif);
|
||||||
close();
|
close();
|
||||||
|
|
|
@ -34,10 +34,11 @@ BookmarksSideBar::BookmarksSideBar(QupZilla* mainClass, QWidget* parent) :
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
|
||||||
|
ui->bookmarksTree->setDefaultItemShowMode(TreeWidget::ItemsExpanded);
|
||||||
connect(ui->bookmarksTree, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &)));
|
connect(ui->bookmarksTree, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &)));
|
||||||
connect(ui->bookmarksTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*)));
|
connect(ui->bookmarksTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*)));
|
||||||
connect(ui->bookmarksTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(itemDoubleClicked(QTreeWidgetItem*)));
|
connect(ui->bookmarksTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(itemDoubleClicked(QTreeWidgetItem*)));
|
||||||
connect(ui->search, SIGNAL(textChanged(QString)), ui->bookmarksTree, SLOT(filterStringWithoutTopItems(QString)));
|
connect(ui->search, SIGNAL(textChanged(QString)), ui->bookmarksTree, SLOT(filterString(QString)));
|
||||||
|
|
||||||
connect(m_bookmarksModel, SIGNAL(bookmarkAdded(BookmarksModel::Bookmark)), this, SLOT(addBookmark(BookmarksModel::Bookmark)));
|
connect(m_bookmarksModel, SIGNAL(bookmarkAdded(BookmarksModel::Bookmark)), this, SLOT(addBookmark(BookmarksModel::Bookmark)));
|
||||||
connect(m_bookmarksModel, SIGNAL(bookmarkDeleted(BookmarksModel::Bookmark)), this, SLOT(removeBookmark(BookmarksModel::Bookmark)));
|
connect(m_bookmarksModel, SIGNAL(bookmarkDeleted(BookmarksModel::Bookmark)), this, SLOT(removeBookmark(BookmarksModel::Bookmark)));
|
||||||
|
@ -129,7 +130,7 @@ void BookmarksSideBar::addBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
item->setToolTip(0, bookmark.url.toEncoded());
|
item->setToolTip(0, bookmark.url.toEncoded());
|
||||||
|
|
||||||
if (bookmark.folder != "unsorted")
|
if (bookmark.folder != "unsorted")
|
||||||
ui->bookmarksTree->addToParentItem(translatedFolder, item);
|
ui->bookmarksTree->appendToParentItem(translatedFolder, item);
|
||||||
else
|
else
|
||||||
ui->bookmarksTree->addTopLevelItem(item);
|
ui->bookmarksTree->addTopLevelItem(item);
|
||||||
|
|
||||||
|
@ -145,7 +146,7 @@ void BookmarksSideBar::removeBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
return;
|
return;
|
||||||
QTreeWidgetItem* item = list.at(0);
|
QTreeWidgetItem* item = list.at(0);
|
||||||
if (item && item->whatsThis(0) == QString::number(bookmark.id))
|
if (item && item->whatsThis(0) == QString::number(bookmark.id))
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
} else {
|
} else {
|
||||||
QList<QTreeWidgetItem*> list = ui->bookmarksTree->findItems(BookmarksModel::toTranslatedFolder(bookmark.folder), Qt::MatchExactly);
|
QList<QTreeWidgetItem*> list = ui->bookmarksTree->findItems(BookmarksModel::toTranslatedFolder(bookmark.folder), Qt::MatchExactly);
|
||||||
if (list.count() == 0)
|
if (list.count() == 0)
|
||||||
|
@ -158,7 +159,7 @@ void BookmarksSideBar::removeBookmark(const BookmarksModel::Bookmark &bookmark)
|
||||||
if (!item)
|
if (!item)
|
||||||
continue;
|
continue;
|
||||||
if (item->text(0) == bookmark.title && item->whatsThis(0) == QString::number(bookmark.id)) {
|
if (item->text(0) == bookmark.title && item->whatsThis(0) == QString::number(bookmark.id)) {
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -182,7 +183,7 @@ void BookmarksSideBar::removeFolder(const QString &name)
|
||||||
{
|
{
|
||||||
QTreeWidgetItem* item = ui->bookmarksTree->findItems(name, Qt::MatchExactly).at(0);
|
QTreeWidgetItem* item = ui->bookmarksTree->findItems(name, Qt::MatchExactly).at(0);
|
||||||
if (item)
|
if (item)
|
||||||
delete item;
|
ui->bookmarksTree->deleteItem(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BookmarksSideBar::refreshTable()
|
void BookmarksSideBar::refreshTable()
|
||||||
|
|
|
@ -31,7 +31,8 @@ HistorySideBar::HistorySideBar(QupZilla* mainClass, QWidget* parent) :
|
||||||
connect(ui->historyTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this, SLOT(itemDoubleClicked(QTreeWidgetItem*)));
|
connect(ui->historyTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this, SLOT(itemDoubleClicked(QTreeWidgetItem*)));
|
||||||
connect(ui->historyTree, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &)));
|
connect(ui->historyTree, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &)));
|
||||||
connect(ui->historyTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*)));
|
connect(ui->historyTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*)));
|
||||||
connect(ui->search, SIGNAL(textEdited(QString)), this, SLOT(search()));
|
connect(ui->search, SIGNAL(textEdited(QString)), ui->historyTree, SLOT(filterString(QString)));
|
||||||
|
// connect(ui->search, SIGNAL(textEdited(QString)), this, SLOT(search()));
|
||||||
|
|
||||||
connect(m_historyModel, SIGNAL(historyEntryAdded(HistoryModel::HistoryEntry)), this, SLOT(historyEntryAdded(HistoryModel::HistoryEntry)));
|
connect(m_historyModel, SIGNAL(historyEntryAdded(HistoryModel::HistoryEntry)), this, SLOT(historyEntryAdded(HistoryModel::HistoryEntry)));
|
||||||
connect(m_historyModel, SIGNAL(historyEntryDeleted(HistoryModel::HistoryEntry)), this, SLOT(historyEntryDeleted(HistoryModel::HistoryEntry)));
|
connect(m_historyModel, SIGNAL(historyEntryDeleted(HistoryModel::HistoryEntry)), this, SLOT(historyEntryDeleted(HistoryModel::HistoryEntry)));
|
||||||
|
@ -71,8 +72,6 @@ void HistorySideBar::contextMenuRequested(const QPoint &position)
|
||||||
QMenu menu;
|
QMenu menu;
|
||||||
menu.addAction(tr("Open link in actual tab"), p_QupZilla, SLOT(loadActionUrl()))->setData(link);
|
menu.addAction(tr("Open link in actual tab"), p_QupZilla, SLOT(loadActionUrl()))->setData(link);
|
||||||
menu.addAction(tr("Open link in new tab"), this, SLOT(loadInNewTab()))->setData(link);
|
menu.addAction(tr("Open link in new tab"), this, SLOT(loadInNewTab()))->setData(link);
|
||||||
menu.addSeparator();
|
|
||||||
menu.addAction(tr("Remove Entry"), this, SLOT(deleteItem()));
|
|
||||||
|
|
||||||
//Prevent choosing first option with double rightclick
|
//Prevent choosing first option with double rightclick
|
||||||
QPoint pos = QCursor::pos();
|
QPoint pos = QCursor::pos();
|
||||||
|
@ -80,36 +79,33 @@ void HistorySideBar::contextMenuRequested(const QPoint &position)
|
||||||
menu.exec(p);
|
menu.exec(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistorySideBar::deleteItem()
|
|
||||||
{
|
|
||||||
QTreeWidgetItem* item = ui->historyTree->currentItem();
|
|
||||||
if (!item)
|
|
||||||
return;
|
|
||||||
if (item->text(1).isEmpty())
|
|
||||||
return;
|
|
||||||
|
|
||||||
int id = item->whatsThis(1).toInt();
|
|
||||||
m_historyModel->deleteHistoryEntry(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
void HistorySideBar::historyEntryAdded(const HistoryModel::HistoryEntry &entry)
|
void HistorySideBar::historyEntryAdded(const HistoryModel::HistoryEntry &entry)
|
||||||
{
|
{
|
||||||
QLocale locale(p_QupZilla->activeLanguage().remove(".qm"));
|
QDate todayDate = QDate::currentDate();
|
||||||
|
QDate startOfWeekDate = todayDate.addDays(1 - todayDate.dayOfWeek());
|
||||||
|
|
||||||
QString localDate; //date.toString("dddd d. MMMM yyyy");
|
QDate date = entry.date.date();
|
||||||
QString month = locale.monthName(entry.date.toString("M").toInt());
|
QString localDate;
|
||||||
localDate = entry.date.toString(" d. ") + month + entry.date.toString(" yyyy");
|
|
||||||
|
|
||||||
QTreeWidgetItem* item;
|
if (date == todayDate)
|
||||||
|
localDate = tr("Today");
|
||||||
|
else if (date >= startOfWeekDate)
|
||||||
|
localDate = tr("This Week");
|
||||||
|
else if (date.month() == todayDate.month())
|
||||||
|
localDate = tr("This Month");
|
||||||
|
else
|
||||||
|
localDate = QString("%1 %2").arg(HistoryModel::titleCaseLocalizedMonth(date.month()), QString::number(date.year()));
|
||||||
|
|
||||||
|
QTreeWidgetItem* item = new QTreeWidgetItem();
|
||||||
|
QTreeWidgetItem* parentItem;
|
||||||
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
||||||
if (findParent.count() == 1) {
|
if (findParent.count() == 1) {
|
||||||
item = new QTreeWidgetItem(findParent.at(0));
|
parentItem = findParent.at(0);
|
||||||
} else {
|
} else {
|
||||||
QTreeWidgetItem* newParent = new QTreeWidgetItem(ui->historyTree);
|
parentItem = new QTreeWidgetItem();
|
||||||
newParent->setText(0, localDate);
|
parentItem->setText(0, localDate);
|
||||||
newParent->setIcon(0, QIcon(":/icons/menu/history_entry.png"));
|
parentItem->setIcon(0, QIcon(":/icons/menu/history_entry.png"));
|
||||||
ui->historyTree->addTopLevelItem(newParent);
|
ui->historyTree->addTopLevelItem(parentItem);
|
||||||
item = new QTreeWidgetItem(newParent);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
item->setText(0, entry.title);
|
item->setText(0, entry.title);
|
||||||
|
@ -118,7 +114,7 @@ void HistorySideBar::historyEntryAdded(const HistoryModel::HistoryEntry &entry)
|
||||||
|
|
||||||
item->setWhatsThis(1, QString::number(entry.id));
|
item->setWhatsThis(1, QString::number(entry.id));
|
||||||
item->setIcon(0, _iconForUrl(entry.url));
|
item->setIcon(0, _iconForUrl(entry.url));
|
||||||
ui->historyTree->addTopLevelItem(item);
|
ui->historyTree->prependToParentItem(parentItem, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistorySideBar::historyEntryDeleted(const HistoryModel::HistoryEntry &entry)
|
void HistorySideBar::historyEntryDeleted(const HistoryModel::HistoryEntry &entry)
|
||||||
|
@ -129,7 +125,7 @@ void HistorySideBar::historyEntryDeleted(const HistoryModel::HistoryEntry &entry
|
||||||
continue;
|
continue;
|
||||||
if (item->whatsThis(1).toInt() != entry.id)
|
if (item->whatsThis(1).toInt() != entry.id)
|
||||||
continue;
|
continue;
|
||||||
delete item;
|
ui->historyTree->deleteItem(item);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -167,8 +163,8 @@ void HistorySideBar::refreshTable()
|
||||||
ui->historyTree->setUpdatesEnabled(false);
|
ui->historyTree->setUpdatesEnabled(false);
|
||||||
ui->historyTree->clear();
|
ui->historyTree->clear();
|
||||||
|
|
||||||
QLocale locale(p_QupZilla->activeLanguage().remove(".qm"));
|
QDate todayDate = QDate::currentDate();
|
||||||
|
QDate startOfWeekDate = todayDate.addDays(1 - todayDate.dayOfWeek());
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.exec("SELECT title, url, id, date FROM history ORDER BY date DESC");
|
query.exec("SELECT title, url, id, date FROM history ORDER BY date DESC");
|
||||||
|
|
||||||
|
@ -176,15 +172,17 @@ void HistorySideBar::refreshTable()
|
||||||
QString title = query.value(0).toString();
|
QString title = query.value(0).toString();
|
||||||
QUrl url = query.value(1).toUrl();
|
QUrl url = query.value(1).toUrl();
|
||||||
int id = query.value(2).toInt();
|
int id = query.value(2).toInt();
|
||||||
qint64 unixDate = query.value(3).toLongLong();
|
QDate date = QDateTime::fromMSecsSinceEpoch(query.value(3).toLongLong()).date();
|
||||||
QDateTime date = QDateTime();
|
QString localDate;
|
||||||
date = date.fromMSecsSinceEpoch(unixDate);
|
|
||||||
|
|
||||||
QString localDate; //date.toString("dddd d. MMMM yyyy");
|
if (date == todayDate)
|
||||||
//QString day = locale.dayName(date.toString("d").toInt());
|
localDate = tr("Today");
|
||||||
|
else if (date >= startOfWeekDate)
|
||||||
QString month = locale.monthName(date.toString("M").toInt());
|
localDate = tr("This Week");
|
||||||
localDate = date.toString(" d. ") + month + date.toString(" yyyy");
|
else if (date.month() == todayDate.month())
|
||||||
|
localDate = tr("This Month");
|
||||||
|
else
|
||||||
|
localDate = QString("%1 %2").arg(HistoryModel::titleCaseLocalizedMonth(date.month()), QString::number(date.year()));
|
||||||
|
|
||||||
QTreeWidgetItem* item;
|
QTreeWidgetItem* item;
|
||||||
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
QList<QTreeWidgetItem*> findParent = ui->historyTree->findItems(localDate, 0);
|
||||||
|
|
|
@ -44,7 +44,6 @@ public slots:
|
||||||
private slots:
|
private slots:
|
||||||
void search();
|
void search();
|
||||||
void itemDoubleClicked(QTreeWidgetItem* item);
|
void itemDoubleClicked(QTreeWidgetItem* item);
|
||||||
void deleteItem();
|
|
||||||
void contextMenuRequested(const QPoint &position);
|
void contextMenuRequested(const QPoint &position);
|
||||||
void loadInNewTab();
|
void loadInNewTab();
|
||||||
void itemControlClicked(QTreeWidgetItem* item);
|
void itemControlClicked(QTreeWidgetItem* item);
|
||||||
|
|
|
@ -54,39 +54,18 @@ QIcon IconProvider::iconForUrl(const QUrl &url)
|
||||||
}
|
}
|
||||||
|
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.prepare("SELECT icon FROM icons WHERE url = ?");
|
query.prepare("SELECT icon FROM icons WHERE url=?");
|
||||||
query.bindValue(0, url.toEncoded(QUrl::RemoveFragment));
|
query.bindValue(0, url.toEncoded(QUrl::RemoveFragment));
|
||||||
query.exec();
|
query.exec();
|
||||||
if (query.next()) {
|
if (query.next())
|
||||||
QIcon image;
|
return iconFromBase64(query.value(0).toByteArray());
|
||||||
QByteArray bArray = QByteArray::fromBase64(query.value(0).toByteArray());
|
|
||||||
QBuffer buffer(&bArray);
|
|
||||||
buffer.open(QIODevice::ReadOnly);
|
|
||||||
QDataStream in(&buffer);
|
|
||||||
in >> image;
|
|
||||||
buffer.close();
|
|
||||||
|
|
||||||
if (!image.isNull())
|
return QWebSettings::webGraphic(QWebSettings::DefaultFrameIconGraphic);
|
||||||
return image;
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef Q_WS_X11
|
|
||||||
return QIcon::fromTheme("text-plain");
|
|
||||||
#else
|
|
||||||
return QIcon(":icons/locationbar/unknownpage.png");
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void IconProvider::saveIconsToDatabase()
|
void IconProvider::saveIconsToDatabase()
|
||||||
{
|
{
|
||||||
foreach (Icon ic, m_iconBuffer) {
|
foreach (Icon ic, m_iconBuffer) {
|
||||||
QByteArray bArray;
|
|
||||||
QBuffer buffer(&bArray);
|
|
||||||
buffer.open(QIODevice::WriteOnly);
|
|
||||||
QDataStream out(&buffer);
|
|
||||||
out << ic.icon;
|
|
||||||
buffer.close();
|
|
||||||
|
|
||||||
QSqlQuery query;
|
QSqlQuery query;
|
||||||
query.prepare("SELECT id FROM icons WHERE url = ?");
|
query.prepare("SELECT id FROM icons WHERE url = ?");
|
||||||
query.bindValue(0, ic.url.toEncoded(QUrl::RemoveFragment));
|
query.bindValue(0, ic.url.toEncoded(QUrl::RemoveFragment));
|
||||||
|
@ -97,7 +76,7 @@ void IconProvider::saveIconsToDatabase()
|
||||||
else
|
else
|
||||||
query.prepare("INSERT INTO icons (icon, url) VALUES (?,?)");
|
query.prepare("INSERT INTO icons (icon, url) VALUES (?,?)");
|
||||||
|
|
||||||
query.bindValue(0, bArray.toBase64());
|
query.bindValue(0, iconToBase64(ic.icon));
|
||||||
query.bindValue(1, ic.url.toEncoded(QUrl::RemoveFragment));
|
query.bindValue(1, ic.url.toEncoded(QUrl::RemoveFragment));
|
||||||
query.exec();
|
query.exec();
|
||||||
}
|
}
|
||||||
|
@ -113,3 +92,29 @@ void IconProvider::clearIconDatabase()
|
||||||
|
|
||||||
m_iconBuffer.clear();
|
m_iconBuffer.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QIcon IconProvider::iconFromBase64(const QByteArray &data)
|
||||||
|
{
|
||||||
|
QIcon image;
|
||||||
|
QByteArray bArray = QByteArray::fromBase64(data);
|
||||||
|
QBuffer buffer(&bArray);
|
||||||
|
buffer.open(QIODevice::ReadOnly);
|
||||||
|
QDataStream in(&buffer);
|
||||||
|
in >> image;
|
||||||
|
buffer.close();
|
||||||
|
|
||||||
|
if (!image.isNull())
|
||||||
|
return image;
|
||||||
|
return QWebSettings::webGraphic(QWebSettings::DefaultFrameIconGraphic);
|
||||||
|
}
|
||||||
|
|
||||||
|
QByteArray IconProvider::iconToBase64(const QIcon &icon)
|
||||||
|
{
|
||||||
|
QByteArray bArray;
|
||||||
|
QBuffer buffer(&bArray);
|
||||||
|
buffer.open(QIODevice::WriteOnly);
|
||||||
|
QDataStream out(&buffer);
|
||||||
|
out << icon;
|
||||||
|
buffer.close();
|
||||||
|
return bArray.toBase64();
|
||||||
|
}
|
||||||
|
|
|
@ -38,6 +38,9 @@ public:
|
||||||
|
|
||||||
void clearIconDatabase();
|
void clearIconDatabase();
|
||||||
|
|
||||||
|
static QIcon iconFromBase64(const QByteArray &data);
|
||||||
|
static QByteArray iconToBase64(const QIcon &icon);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|
|
@ -19,7 +19,39 @@
|
||||||
|
|
||||||
TreeWidget::TreeWidget(QWidget* parent) :
|
TreeWidget::TreeWidget(QWidget* parent) :
|
||||||
QTreeWidget(parent)
|
QTreeWidget(parent)
|
||||||
|
, m_refreshAllItemsNeeded(true)
|
||||||
|
, m_showMode(ItemsCollapsed)
|
||||||
{
|
{
|
||||||
|
connect(this, SIGNAL(itemChanged(QTreeWidgetItem*,int)), this, SLOT(sheduleRefresh()));
|
||||||
|
}
|
||||||
|
|
||||||
|
void TreeWidget::sheduleRefresh()
|
||||||
|
{
|
||||||
|
m_refreshAllItemsNeeded = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void TreeWidget::addTopLevelItem(QTreeWidgetItem *item)
|
||||||
|
{
|
||||||
|
m_allTreeItems.append(item);
|
||||||
|
QTreeWidget::addTopLevelItem(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
void TreeWidget::addTopLevelItems(const QList<QTreeWidgetItem *> &items)
|
||||||
|
{
|
||||||
|
m_allTreeItems.append(items);
|
||||||
|
QTreeWidget::addTopLevelItems(items);
|
||||||
|
}
|
||||||
|
|
||||||
|
void TreeWidget::insertTopLevelItem(int index, QTreeWidgetItem *item)
|
||||||
|
{
|
||||||
|
m_allTreeItems.append(item);
|
||||||
|
QTreeWidget::insertTopLevelItem(index, item);
|
||||||
|
}
|
||||||
|
|
||||||
|
void TreeWidget::insertTopLevelItems(int index, const QList<QTreeWidgetItem *> &items)
|
||||||
|
{
|
||||||
|
m_allTreeItems.append(items);
|
||||||
|
QTreeWidget::insertTopLevelItems(index, items);
|
||||||
}
|
}
|
||||||
|
|
||||||
void TreeWidget::mousePressEvent(QMouseEvent* event)
|
void TreeWidget::mousePressEvent(QMouseEvent* event)
|
||||||
|
@ -30,67 +62,117 @@ void TreeWidget::mousePressEvent(QMouseEvent* event)
|
||||||
QTreeWidget::mousePressEvent(event);
|
QTreeWidget::mousePressEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<QTreeWidgetItem*> allTreeItems;
|
void TreeWidget::iterateAllItems(QTreeWidgetItem* parent)
|
||||||
void iterateAllItems(QTreeWidgetItem* parent, QTreeWidget* treeWidget, bool includeTopLevelItems = true)
|
|
||||||
{
|
{
|
||||||
int count = parent ? parent->childCount() : treeWidget->topLevelItemCount();
|
int count = parent ? parent->childCount() : topLevelItemCount();
|
||||||
|
|
||||||
for (int i = 0; i < count; i++)
|
for (int i = 0; i < count; i++)
|
||||||
{
|
{
|
||||||
QTreeWidgetItem *item =
|
QTreeWidgetItem *item = parent ? parent->child(i) : topLevelItem(i);
|
||||||
parent ? parent->child(i) : treeWidget->topLevelItem(i);
|
|
||||||
|
|
||||||
if (includeTopLevelItems)
|
if (item->childCount() == 0)
|
||||||
allTreeItems.append(item);
|
m_allTreeItems.append(item);
|
||||||
else if (item->childCount() == 0)
|
|
||||||
allTreeItems.append(item);
|
|
||||||
|
|
||||||
iterateAllItems(item, treeWidget, includeTopLevelItems);
|
iterateAllItems(item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<QTreeWidgetItem*> TreeWidget::allItems(bool includeTopLevelItems)
|
QList<QTreeWidgetItem*> TreeWidget::allItems()
|
||||||
{
|
{
|
||||||
allTreeItems.clear();
|
if (m_refreshAllItemsNeeded) {
|
||||||
iterateAllItems(0, this, includeTopLevelItems);
|
m_allTreeItems.clear();
|
||||||
return allTreeItems;
|
iterateAllItems(0);
|
||||||
}
|
m_refreshAllItemsNeeded = false;
|
||||||
|
|
||||||
void TreeWidget::filterStringWithoutTopItems(QString string)
|
|
||||||
{
|
|
||||||
QList<QTreeWidgetItem*> _allItems = allItems(false);
|
|
||||||
|
|
||||||
if (string.isEmpty()) {
|
|
||||||
foreach (QTreeWidgetItem* item, _allItems)
|
|
||||||
item->setHidden(false);
|
|
||||||
} else {
|
|
||||||
foreach (QTreeWidgetItem* item, _allItems)
|
|
||||||
item->setHidden(!item->text(0).contains(string, Qt::CaseInsensitive));
|
|
||||||
}
|
}
|
||||||
|
return m_allTreeItems;
|
||||||
}
|
}
|
||||||
|
void TreeWidget::filterString(QString string)
|
||||||
void TreeWidget::filterStringWithTopItems(QString string)
|
|
||||||
{
|
{
|
||||||
|
expandAll();
|
||||||
QList<QTreeWidgetItem*> _allItems = allItems();
|
QList<QTreeWidgetItem*> _allItems = allItems();
|
||||||
|
|
||||||
if (string.isEmpty()) {
|
if (string.isEmpty()) {
|
||||||
foreach (QTreeWidgetItem* item, _allItems)
|
foreach (QTreeWidgetItem* item, _allItems)
|
||||||
item->setHidden(false);
|
item->setHidden(false);
|
||||||
|
for (int i = 0; i < topLevelItemCount(); i++)
|
||||||
|
topLevelItem(i)->setHidden(false);
|
||||||
|
if (m_showMode == ItemsCollapsed)
|
||||||
|
collapseAll();
|
||||||
} else {
|
} else {
|
||||||
foreach (QTreeWidgetItem* item, _allItems)
|
foreach (QTreeWidgetItem* item, _allItems) {
|
||||||
item->setHidden(!item->text(0).contains(string, Qt::CaseInsensitive));
|
item->setHidden(!item->text(0).contains(string, Qt::CaseInsensitive));
|
||||||
|
item->setExpanded(true);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < topLevelItemCount(); i++)
|
||||||
|
topLevelItem(i)->setHidden(false);
|
||||||
|
|
||||||
|
QTreeWidgetItem* firstItem = topLevelItem(0);
|
||||||
|
QTreeWidgetItem* belowItem = itemBelow(firstItem);
|
||||||
|
while (firstItem) {
|
||||||
|
if (!firstItem->parent() && !belowItem)
|
||||||
|
firstItem->setHidden(true);
|
||||||
|
else if (!belowItem)
|
||||||
|
break;
|
||||||
|
else if (!firstItem->parent() && !belowItem->parent())
|
||||||
|
firstItem->setHidden(true);
|
||||||
|
firstItem = belowItem;
|
||||||
|
belowItem = itemBelow(firstItem);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TreeWidget::addToParentItem(const QString &text, QTreeWidgetItem* item)
|
bool TreeWidget::appendToParentItem(const QString &parentText, QTreeWidgetItem* item)
|
||||||
{
|
{
|
||||||
QList<QTreeWidgetItem*> list = findItems(text, Qt::MatchExactly);
|
QList<QTreeWidgetItem*> list = findItems(parentText, Qt::MatchExactly);
|
||||||
if (list.count() == 0)
|
if (list.count() == 0)
|
||||||
return false;
|
return false;
|
||||||
QTreeWidgetItem* parentItem = list.at(0);
|
QTreeWidgetItem* parentItem = list.at(0);
|
||||||
if (!parentItem)
|
if (!parentItem)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
m_allTreeItems.append(item);
|
||||||
parentItem->addChild(item);
|
parentItem->addChild(item);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool TreeWidget::appendToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item)
|
||||||
|
{
|
||||||
|
if (!parent || parent->treeWidget() != this)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
m_allTreeItems.append(item);
|
||||||
|
parent->addChild(item);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TreeWidget::prependToParentItem(const QString &parentText, QTreeWidgetItem* item)
|
||||||
|
{
|
||||||
|
QList<QTreeWidgetItem*> list = findItems(parentText, Qt::MatchExactly);
|
||||||
|
if (list.count() == 0)
|
||||||
|
return false;
|
||||||
|
QTreeWidgetItem* parentItem = list.at(0);
|
||||||
|
if (!parentItem)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
m_allTreeItems.append(item);
|
||||||
|
parentItem->insertChild(0, item);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TreeWidget::prependToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item)
|
||||||
|
{
|
||||||
|
if (!parent || parent->treeWidget() != this)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
m_allTreeItems.append(item);
|
||||||
|
parent->insertChild(0, item);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void TreeWidget::deleteItem(QTreeWidgetItem *item)
|
||||||
|
{
|
||||||
|
if (m_allTreeItems.contains(item))
|
||||||
|
m_allTreeItems.removeOne(item);
|
||||||
|
|
||||||
|
delete item;
|
||||||
|
}
|
||||||
|
|
|
@ -27,18 +27,37 @@ class TreeWidget : public QTreeWidget
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit TreeWidget(QWidget* parent = 0);
|
explicit TreeWidget(QWidget* parent = 0);
|
||||||
QList<QTreeWidgetItem*> allItems(bool includeTopLevelItems = true);
|
enum ItemShowMode { ItemsCollapsed = 0, ItemsExpanded = 1 };
|
||||||
bool addToParentItem(const QString &text, QTreeWidgetItem* item);
|
void setDefaultItemShowMode(ItemShowMode mode) { m_showMode = mode; }
|
||||||
|
QList<QTreeWidgetItem*> allItems();
|
||||||
|
bool appendToParentItem(const QString &parentText, QTreeWidgetItem* item);
|
||||||
|
bool appendToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item);
|
||||||
|
bool prependToParentItem(const QString &parentText, QTreeWidgetItem* item);
|
||||||
|
bool prependToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item);
|
||||||
|
|
||||||
|
void addTopLevelItem(QTreeWidgetItem *item);
|
||||||
|
void addTopLevelItems(const QList<QTreeWidgetItem *> &items);
|
||||||
|
void insertTopLevelItem(int index, QTreeWidgetItem *item);
|
||||||
|
void insertTopLevelItems(int index, const QList<QTreeWidgetItem *> &items);
|
||||||
|
|
||||||
|
void deleteItem(QTreeWidgetItem* item);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void itemControlClicked(QTreeWidgetItem* item);
|
void itemControlClicked(QTreeWidgetItem* item);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void filterStringWithTopItems(QString string);
|
void filterString(QString string);
|
||||||
void filterStringWithoutTopItems(QString string);
|
|
||||||
|
private slots:
|
||||||
|
void sheduleRefresh();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void mousePressEvent(QMouseEvent* event);
|
void mousePressEvent(QMouseEvent* event);
|
||||||
|
void iterateAllItems(QTreeWidgetItem* parent);
|
||||||
|
|
||||||
|
bool m_refreshAllItemsNeeded;
|
||||||
|
QList<QTreeWidgetItem*> m_allTreeItems;
|
||||||
|
ItemShowMode m_showMode;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -194,7 +194,7 @@ void TabBar::closeCurrentTab()
|
||||||
|
|
||||||
void TabBar::bookmarkTab()
|
void TabBar::bookmarkTab()
|
||||||
{
|
{
|
||||||
p_QupZilla->addBookmark(p_QupZilla->weView(m_clickedTab)->url(), p_QupZilla->weView(m_clickedTab)->title());
|
p_QupZilla->addBookmark(p_QupZilla->weView(m_clickedTab)->url(), p_QupZilla->weView(m_clickedTab)->title(), p_QupZilla->weView(m_clickedTab)->siteIcon());
|
||||||
}
|
}
|
||||||
|
|
||||||
void TabBar::pinTab()
|
void TabBar::pinTab()
|
||||||
|
|
|
@ -678,7 +678,7 @@ void WebView::bookmarkLink()
|
||||||
if (action->data().isNull())
|
if (action->data().isNull())
|
||||||
p_QupZilla->bookmarkPage();
|
p_QupZilla->bookmarkPage();
|
||||||
else
|
else
|
||||||
p_QupZilla->addBookmark(action->data().toUrl(), action->data().toString());
|
p_QupZilla->addBookmark(action->data().toUrl(), action->data().toString(), siteIcon());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -311,87 +311,92 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Přidat složku</translation>
|
<translation>Přidat složku</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="79"/>
|
<location filename="../src/bookmarks/bookmarksmanager.ui" line="84"/>
|
||||||
|
<source>Optimize Database</source>
|
||||||
|
<translation>Optimalizovat databázi</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="89"/>
|
||||||
<source>Add new folder</source>
|
<source>Add new folder</source>
|
||||||
<translation>Přidat složku</translation>
|
<translation>Přidat složku</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="79"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="89"/>
|
||||||
<source>Choose name for new bookmark folder: </source>
|
<source>Choose name for new bookmark folder: </source>
|
||||||
<translation>Zvolte jméno pro novou složku:</translation>
|
<translation>Zvolte jméno pro novou složku:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="109"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="119"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="159"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="169"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="184"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="194"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="209"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="220"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="337"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="348"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="379"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="390"/>
|
||||||
<source>Bookmarks In Menu</source>
|
<source>Bookmarks In Menu</source>
|
||||||
<translation>Záložky v menu</translation>
|
<translation>Záložky v menu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="160"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="170"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="189"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="199"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="211"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="222"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="338"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="349"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="380"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="391"/>
|
||||||
<source>Bookmarks In ToolBar</source>
|
<source>Bookmarks In ToolBar</source>
|
||||||
<translation>Panel záložek</translation>
|
<translation>Panel záložek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="152"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="162"/>
|
||||||
<source>Open link in actual &tab</source>
|
<source>Open link in actual &tab</source>
|
||||||
<translation>Otevřít odkaz v &aktuálním panelu</translation>
|
<translation>Otevřít odkaz v &aktuálním panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="153"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="163"/>
|
||||||
<source>Open link in &new tab</source>
|
<source>Open link in &new tab</source>
|
||||||
<translation>Otevřít odkaz v novém &panelu</translation>
|
<translation>Otevřít odkaz v novém &panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="157"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="167"/>
|
||||||
<source>Move bookmark to &folder</source>
|
<source>Move bookmark to &folder</source>
|
||||||
<translation>Přesunout záložku do &složky</translation>
|
<translation>Přesunout záložku do &složky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="168"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="178"/>
|
||||||
<source>&Close</source>
|
<source>&Close</source>
|
||||||
<translation>&Zavřít</translation>
|
<translation>&Zavřít</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="158"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="168"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="336"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="347"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="378"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="389"/>
|
||||||
<source>Unsorted Bookmarks</source>
|
<source>Unsorted Bookmarks</source>
|
||||||
<translation>Nesetříděné záložky</translation>
|
<translation>Nesetříděné záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="333"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="344"/>
|
||||||
<source><b>Warning: </b>You already have this page bookmarked!</source>
|
<source><b>Warning: </b>You already have this page bookmarked!</source>
|
||||||
<translation><b>Upozornění: </b>Tuto stránku již máte v záložkách!</translation>
|
<translation><b>Upozornění: </b>Tuto stránku již máte v záložkách!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="344"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="355"/>
|
||||||
<source>Choose name and location of bookmark.</source>
|
<source>Choose name and location of bookmark.</source>
|
||||||
<translation>Zvolte jméno a umístění záložky.</translation>
|
<translation>Zvolte jméno a umístění záložky.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="348"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="359"/>
|
||||||
<source>Add New Bookmark</source>
|
<source>Add New Bookmark</source>
|
||||||
<translation>Přidat záložku</translation>
|
<translation>Přidat záložku</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="386"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="397"/>
|
||||||
<source>Choose folder for bookmarks:</source>
|
<source>Choose folder for bookmarks:</source>
|
||||||
<translation>Zvolte složku pro záložky:</translation>
|
<translation>Zvolte složku pro záložky:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="388"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="399"/>
|
||||||
<source>Bookmark All Tabs</source>
|
<source>Bookmark All Tabs</source>
|
||||||
<translation>Přidat všechny panely do záložek</translation>
|
<translation>Přidat všechny panely do záložek</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -399,22 +404,22 @@ p, li { white-space: pre-wrap; }
|
||||||
<context>
|
<context>
|
||||||
<name>BookmarksModel</name>
|
<name>BookmarksModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="244"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="251"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="286"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="293"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="299"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="306"/>
|
||||||
<source>Bookmarks In Menu</source>
|
<source>Bookmarks In Menu</source>
|
||||||
<translation>Záložky v menu</translation>
|
<translation>Záložky v menu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="244"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="251"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="288"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="295"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="301"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="308"/>
|
||||||
<source>Bookmarks In ToolBar</source>
|
<source>Bookmarks In ToolBar</source>
|
||||||
<translation>Panel záložek</translation>
|
<translation>Panel záložek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="290"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="297"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="303"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="310"/>
|
||||||
<source>Unsorted Bookmarks</source>
|
<source>Unsorted Bookmarks</source>
|
||||||
<translation>Nesetříděné záložky</translation>
|
<translation>Nesetříděné záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -427,46 +432,46 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Hledat...</translation>
|
<translation>Hledat...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="68"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="69"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="100"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="101"/>
|
||||||
<source>Open link in actual &tab</source>
|
<source>Open link in actual &tab</source>
|
||||||
<translation>Otevřít odkaz v &aktuálním panelu</translation>
|
<translation>Otevřít odkaz v &aktuálním panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="101"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="102"/>
|
||||||
<source>Open link in &new tab</source>
|
<source>Open link in &new tab</source>
|
||||||
<translation>Otevřít odkaz v novém &panelu</translation>
|
<translation>Otevřít odkaz v novém &panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="105"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="106"/>
|
||||||
<source>Move bookmark to &folder</source>
|
<source>Move bookmark to &folder</source>
|
||||||
<translation>Přesunout záložku do &složky</translation>
|
<translation>Přesunout záložku do &složky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="106"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="107"/>
|
||||||
<source>Unsorted Bookmarks</source>
|
<source>Unsorted Bookmarks</source>
|
||||||
<translation>Nesetříděné záložky</translation>
|
<translation>Nesetříděné záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="107"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="108"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="196"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="197"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="221"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="222"/>
|
||||||
<source>Bookmarks In Menu</source>
|
<source>Bookmarks In Menu</source>
|
||||||
<translation>Záložky v menu</translation>
|
<translation>Záložky v menu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="108"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="109"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="201"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="202"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="223"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="224"/>
|
||||||
<source>Bookmarks In ToolBar</source>
|
<source>Bookmarks In ToolBar</source>
|
||||||
<translation>Panel záložek</translation>
|
<translation>Panel záložek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="114"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="115"/>
|
||||||
<source>&Delete</source>
|
<source>&Delete</source>
|
||||||
<translation>&Odstranit</translation>
|
<translation>&Odstranit</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -585,20 +590,30 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Hledat...</translation>
|
<translation>Hledat...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.cpp" line="26"/>
|
<location filename="../src/other/browsinglibrary.cpp" line="47"/>
|
||||||
<source>History</source>
|
<source>History</source>
|
||||||
<translation>Historie</translation>
|
<translation>Historie</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.cpp" line="27"/>
|
<location filename="../src/other/browsinglibrary.cpp" line="48"/>
|
||||||
<source>Bookmarks</source>
|
<source>Bookmarks</source>
|
||||||
<translation>Záložky</translation>
|
<translation>Záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.cpp" line="28"/>
|
<location filename="../src/other/browsinglibrary.cpp" line="49"/>
|
||||||
<source>RSS</source>
|
<source>RSS</source>
|
||||||
<translation>RSS</translation>
|
<translation>RSS</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/other/browsinglibrary.cpp" line="141"/>
|
||||||
|
<source>Database Optimized</source>
|
||||||
|
<translation>Databáze optimalizována</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/other/browsinglibrary.cpp" line="141"/>
|
||||||
|
<source>Database successfuly optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Databse Size After: </b>%2</source>
|
||||||
|
<translation>Databáze byla úspěšně optimalizována.<br/><br/><b>Velikost databáze před: </b>%1<br/><b>Velikost databáze poté: </b>%2</translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>ClearPrivateData</name>
|
<name>ClearPrivateData</name>
|
||||||
|
@ -779,12 +794,12 @@ p, li { white-space: pre-wrap; }
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="163"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="163"/>
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="170"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="170"/>
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="177"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="177"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="95"/>
|
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="96"/>
|
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="97"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="97"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="98"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="98"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="99"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="99"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="100"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="100"/>
|
||||||
|
<location filename="../src/cookies/cookiemanager.cpp" line="101"/>
|
||||||
|
<location filename="../src/cookies/cookiemanager.cpp" line="102"/>
|
||||||
<source><cookie not selected></source>
|
<source><cookie not selected></source>
|
||||||
<translation><nebylo zvoleno cookie></translation>
|
<translation><nebylo zvoleno cookie></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -795,7 +810,7 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="209"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="209"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="104"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="106"/>
|
||||||
<source>Remove cookie</source>
|
<source>Remove cookie</source>
|
||||||
<translation>Odebrat cookie</translation>
|
<translation>Odebrat cookie</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -805,69 +820,41 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Del</translation>
|
<translation>Del</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="43"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="44"/>
|
||||||
<source>Search</source>
|
<source>Search</source>
|
||||||
<translation>Vyhledávání</translation>
|
<translation>Vyhledávání</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="48"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="50"/>
|
||||||
<source>Confirmation</source>
|
<source>Confirmation</source>
|
||||||
<translation>Potvrzení</translation>
|
<translation>Potvrzení</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="49"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="51"/>
|
||||||
<source>Are you sure to delete all cookies on your computer?</source>
|
<source>Are you sure to delete all cookies on your computer?</source>
|
||||||
<translation>Opravdu chcete vymazat všechny cookies z počítače?</translation>
|
<translation>Opravdu chcete vymazat všechny cookies z počítače?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="101"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="103"/>
|
||||||
<source>Remove cookies</source>
|
<source>Remove cookies</source>
|
||||||
<translation>Odebrat cookies</translation>
|
<translation>Odebrat cookies</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="113"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="115"/>
|
||||||
<source>Secure only</source>
|
<source>Secure only</source>
|
||||||
<translation>Zabezpečené připojení</translation>
|
<translation>Zabezpečené připojení</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="113"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="115"/>
|
||||||
<source>All connections</source>
|
<source>All connections</source>
|
||||||
<translation>Libovolný typ připojení</translation>
|
<translation>Libovolný typ připojení</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="114"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="116"/>
|
||||||
<source>Session cookie</source>
|
<source>Session cookie</source>
|
||||||
<translation>konce relace</translation>
|
<translation>konce relace</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
|
||||||
<name>Core::Internal::FancyTabWidget</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="646"/>
|
|
||||||
<source>Large sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="647"/>
|
|
||||||
<source>Small sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="648"/>
|
|
||||||
<source>Plain sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="649"/>
|
|
||||||
<source>Tabs on top</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="650"/>
|
|
||||||
<source>Icons on top</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
<context>
|
||||||
<name>DownloadItem</name>
|
<name>DownloadItem</name>
|
||||||
<message>
|
<message>
|
||||||
|
@ -1143,32 +1130,55 @@ nebyl nalezen!</translation>
|
||||||
<translation>Vymazat celou historii</translation>
|
<translation>Vymazat celou historii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="90"/>
|
<location filename="../src/history/historymanager.ui" line="84"/>
|
||||||
|
<source>Optimize Database</source>
|
||||||
|
<translation>Optimalizovat databázi</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="93"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="102"/>
|
<location filename="../src/history/historymanager.cpp" line="105"/>
|
||||||
<source>Open link in actual tab</source>
|
<source>Open link in actual tab</source>
|
||||||
<translation>Otevřít odkaz v aktuálním panelu</translation>
|
<translation>Otevřít odkaz v aktuálním panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="103"/>
|
<location filename="../src/history/historymanager.cpp" line="106"/>
|
||||||
<source>Open link in new tab</source>
|
<source>Open link in new tab</source>
|
||||||
<translation>Otevřít odkaz v novém panelu</translation>
|
<translation>Otevřít odkaz v novém panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="107"/>
|
<location filename="../src/history/historymanager.cpp" line="110"/>
|
||||||
<source>Close</source>
|
<source>Close</source>
|
||||||
<translation>Zavřít</translation>
|
<translation>Zavřít</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="170"/>
|
<location filename="../src/history/historymanager.cpp" line="137"/>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="209"/>
|
||||||
|
<source>Today</source>
|
||||||
|
<translation>Dnes</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="139"/>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="211"/>
|
||||||
|
<source>This Week</source>
|
||||||
|
<translation>Tento týden</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="141"/>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="213"/>
|
||||||
|
<source>This Month</source>
|
||||||
|
<translation>Tento měsíc</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="182"/>
|
||||||
<source>Confirmation</source>
|
<source>Confirmation</source>
|
||||||
<translation>Potvrzení</translation>
|
<translation>Potvrzení</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="171"/>
|
<location filename="../src/history/historymanager.cpp" line="183"/>
|
||||||
<source>Are you sure to delete all history?</source>
|
<source>Are you sure to delete all history?</source>
|
||||||
<translation>Opravdu chcete vymazat celou historii?</translation>
|
<translation>Opravdu chcete vymazat celou historii?</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1176,15 +1186,75 @@ nebyl nalezen!</translation>
|
||||||
<context>
|
<context>
|
||||||
<name>HistoryModel</name>
|
<name>HistoryModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymodel.cpp" line="42"/>
|
<location filename="../src/history/historymodel.cpp" line="43"/>
|
||||||
<source>Failed loading page</source>
|
<source>Failed loading page</source>
|
||||||
<translation>Chyba při načítání stránky</translation>
|
<translation>Chyba při načítání stránky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymodel.cpp" line="45"/>
|
<location filename="../src/history/historymodel.cpp" line="46"/>
|
||||||
<source>No Named Page</source>
|
<source>No Named Page</source>
|
||||||
<translation>Bezejmenná stránka</translation>
|
<translation>Bezejmenná stránka</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="177"/>
|
||||||
|
<source>January</source>
|
||||||
|
<translation>Leden</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="179"/>
|
||||||
|
<source>February</source>
|
||||||
|
<translation>Únor</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="181"/>
|
||||||
|
<source>March</source>
|
||||||
|
<translation>Březen</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="183"/>
|
||||||
|
<source>April</source>
|
||||||
|
<translation>Duben</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="185"/>
|
||||||
|
<source>May</source>
|
||||||
|
<translation>Květen</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="187"/>
|
||||||
|
<source>June</source>
|
||||||
|
<translation>Červen</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="189"/>
|
||||||
|
<source>July</source>
|
||||||
|
<translation>Červenec</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="191"/>
|
||||||
|
<source>August</source>
|
||||||
|
<translation>Srpen</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="193"/>
|
||||||
|
<source>September</source>
|
||||||
|
<translation>Září</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="195"/>
|
||||||
|
<source>October</source>
|
||||||
|
<translation>Říjen</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="197"/>
|
||||||
|
<source>November</source>
|
||||||
|
<translation>Listopad</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="199"/>
|
||||||
|
<source>December</source>
|
||||||
|
<translation>Prosinec</translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>HistorySideBar</name>
|
<name>HistorySideBar</name>
|
||||||
|
@ -1199,25 +1269,43 @@ nebyl nalezen!</translation>
|
||||||
<translation>Titulek</translation>
|
<translation>Titulek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="60"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="61"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="72"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="73"/>
|
||||||
<source>Open link in actual tab</source>
|
<source>Open link in actual tab</source>
|
||||||
<translation>Otevřít odkaz v aktuálním panelu</translation>
|
<translation>Otevřít odkaz v aktuálním panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="73"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="74"/>
|
||||||
<source>Open link in new tab</source>
|
<source>Open link in new tab</source>
|
||||||
<translation>Otevřít odkaz v novém panelu</translation>
|
<translation>Otevřít odkaz v novém panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="75"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="76"/>
|
||||||
<source>Remove Entry</source>
|
<source>Remove Entry</source>
|
||||||
<translation>Odstranit položku</translation>
|
<translation>Odstranit položku</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="105"/>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="193"/>
|
||||||
|
<source>Today</source>
|
||||||
|
<translation>Dnes</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="107"/>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="195"/>
|
||||||
|
<source>This Week</source>
|
||||||
|
<translation>Tento týden</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="109"/>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="197"/>
|
||||||
|
<source>This Month</source>
|
||||||
|
<translation>Tento měsíc</translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>LocationBar</name>
|
<name>LocationBar</name>
|
||||||
|
@ -1257,12 +1345,12 @@ nebyl nalezen!</translation>
|
||||||
<context>
|
<context>
|
||||||
<name>MainApplication</name>
|
<name>MainApplication</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/app/mainapplication.cpp" line="517"/>
|
<location filename="../src/app/mainapplication.cpp" line="514"/>
|
||||||
<source>Last session crashed</source>
|
<source>Last session crashed</source>
|
||||||
<translation>Poslední relace spadla</translation>
|
<translation>Poslední relace spadla</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/app/mainapplication.cpp" line="518"/>
|
<location filename="../src/app/mainapplication.cpp" line="515"/>
|
||||||
<source><b>QupZilla crashed :-(</b><br/>Oops, last session of QupZilla ends with its crash. We are very sorry. Would you try to restore saved state?</source>
|
<source><b>QupZilla crashed :-(</b><br/>Oops, last session of QupZilla ends with its crash. We are very sorry. Would you try to restore saved state?</source>
|
||||||
<translation><b>QupZilla spadla :-(</b><br/>Oops, poslední relace QupZilly skončila jejím pádem. Velice se omlouváme. Přejete si obnovit uložený stav?</translation>
|
<translation><b>QupZilla spadla :-(</b><br/>Oops, poslední relace QupZilly skončila jejím pádem. Velice se omlouváme. Přejete si obnovit uložený stav?</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -2591,95 +2679,101 @@ nebyl nalezen!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="40"/>
|
<location filename="../src/rss/rssmanager.ui" line="40"/>
|
||||||
|
<location filename="../src/rss/rssmanager.cpp" line="115"/>
|
||||||
<source>Empty</source>
|
<source>Empty</source>
|
||||||
<translation>Prázdný</translation>
|
<translation>Prázdný</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="83"/>
|
<location filename="../src/rss/rssmanager.cpp" line="113"/>
|
||||||
<source>You don't have any RSS Feeds.<br/>
|
<source>You don't have any RSS Feeds.<br/>
|
||||||
Please add some with RSS icon in navigation bar on site which offers feeds.</source>
|
Please add some with RSS icon in navigation bar on site which offers feeds.</source>
|
||||||
<translation>Nemáte žádný RSS kanál.<br/>
|
<translation>Nemáte žádný RSS kanál.<br/>
|
||||||
Prosím přidejte si nějaký kliknutím na RSS ikonku v navigačním řádku.</translation>
|
Prosím přidejte si nějaký kliknutím na RSS ikonku v navigačním řádku.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="106"/>
|
<location filename="../src/rss/rssmanager.ui" line="64"/>
|
||||||
<source>Reload</source>
|
<source>Reload</source>
|
||||||
<translation>Obnovit</translation>
|
<translation>Obnovit</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="116"/>
|
<location filename="../src/rss/rssmanager.ui" line="74"/>
|
||||||
<source>Edit feed</source>
|
<source>Edit feed</source>
|
||||||
<translation>Upravit kanál</translation>
|
<translation>Upravit kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="126"/>
|
<location filename="../src/rss/rssmanager.ui" line="84"/>
|
||||||
<source>Delete feed</source>
|
<source>Delete feed</source>
|
||||||
<translation>Smazat kanál</translation>
|
<translation>Smazat kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="81"/>
|
<location filename="../src/rss/rssmanager.ui" line="111"/>
|
||||||
|
<source>Optimize Database</source>
|
||||||
|
<translation>Optimalizovat databázi</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/rss/rssmanager.cpp" line="79"/>
|
||||||
<source>News</source>
|
<source>News</source>
|
||||||
<translation>Novinky</translation>
|
<translation>Novinky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="90"/>
|
<location filename="../src/rss/rssmanager.cpp" line="88"/>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="113"/>
|
<location filename="../src/rss/rssmanager.cpp" line="126"/>
|
||||||
<source>Loading...</source>
|
<source>Loading...</source>
|
||||||
<translation>Načítám...</translation>
|
<translation>Načítám...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="153"/>
|
<location filename="../src/rss/rssmanager.cpp" line="162"/>
|
||||||
<source>Fill title and URL of a feed: </source>
|
<source>Fill title and URL of a feed: </source>
|
||||||
<translation>Vyplňte titulek a adresu kanálu: </translation>
|
<translation>Vyplňte titulek a adresu kanálu: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="155"/>
|
<location filename="../src/rss/rssmanager.cpp" line="164"/>
|
||||||
<source>Feed title: </source>
|
<source>Feed title: </source>
|
||||||
<translation>Titulek kanálu: </translation>
|
<translation>Titulek kanálu: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="156"/>
|
<location filename="../src/rss/rssmanager.cpp" line="165"/>
|
||||||
<source>Feed URL: </source>
|
<source>Feed URL: </source>
|
||||||
<translation>Adresa kanálu: </translation>
|
<translation>Adresa kanálu: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="162"/>
|
<location filename="../src/rss/rssmanager.cpp" line="171"/>
|
||||||
<source>Edit RSS Feed</source>
|
<source>Edit RSS Feed</source>
|
||||||
<translation>Upravit kanál</translation>
|
<translation>Upravit kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="199"/>
|
<location filename="../src/rss/rssmanager.cpp" line="208"/>
|
||||||
<source>Open link in actual tab</source>
|
<source>Open link in actual tab</source>
|
||||||
<translation>Otevřít odkaz v aktuálním panelu</translation>
|
<translation>Otevřít odkaz v aktuálním panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="200"/>
|
<location filename="../src/rss/rssmanager.cpp" line="209"/>
|
||||||
<source>Open link in new tab</source>
|
<source>Open link in new tab</source>
|
||||||
<translation>Otevřít odkaz v novém panelu</translation>
|
<translation>Otevřít odkaz v novém panelu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="202"/>
|
<location filename="../src/rss/rssmanager.cpp" line="211"/>
|
||||||
<source>Close</source>
|
<source>Close</source>
|
||||||
<translation>Zavřít</translation>
|
<translation>Zavřít</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="225"/>
|
<location filename="../src/rss/rssmanager.cpp" line="234"/>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="231"/>
|
<location filename="../src/rss/rssmanager.cpp" line="240"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="297"/>
|
<location filename="../src/rss/rssmanager.cpp" line="306"/>
|
||||||
<source>Error in fetching feed</source>
|
<source>Error in fetching feed</source>
|
||||||
<translation>Chyba při stahování kanálu</translation>
|
<translation>Chyba při stahování kanálu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="318"/>
|
<location filename="../src/rss/rssmanager.cpp" line="334"/>
|
||||||
<source>RSS feed duplicated</source>
|
<source>RSS feed duplicated</source>
|
||||||
<translation>Duplikovaný kanál</translation>
|
<translation>Duplikovaný kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="318"/>
|
<location filename="../src/rss/rssmanager.cpp" line="334"/>
|
||||||
<source>You already have this feed.</source>
|
<source>You already have this feed.</source>
|
||||||
<translation>Tento kanál již odebíráte.</translation>
|
<translation>Tento kanál již odebíráte.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -315,87 +315,92 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Pridať zložku</translation>
|
<translation>Pridať zložku</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="79"/>
|
<location filename="../src/bookmarks/bookmarksmanager.ui" line="84"/>
|
||||||
|
<source>Optimize Database</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="89"/>
|
||||||
<source>Add new folder</source>
|
<source>Add new folder</source>
|
||||||
<translation>Pridať novú zložku</translation>
|
<translation>Pridať novú zložku</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="79"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="89"/>
|
||||||
<source>Choose name for new bookmark folder: </source>
|
<source>Choose name for new bookmark folder: </source>
|
||||||
<translation>Zvoľte meno pre novú zložku:</translation>
|
<translation>Zvoľte meno pre novú zložku:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="109"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="119"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="159"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="169"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="184"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="194"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="209"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="220"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="337"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="348"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="379"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="390"/>
|
||||||
<source>Bookmarks In Menu</source>
|
<source>Bookmarks In Menu</source>
|
||||||
<translation>Záložky v menu</translation>
|
<translation>Záložky v menu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="160"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="170"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="189"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="199"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="211"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="222"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="338"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="349"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="380"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="391"/>
|
||||||
<source>Bookmarks In ToolBar</source>
|
<source>Bookmarks In ToolBar</source>
|
||||||
<translation>Panel záložiek</translation>
|
<translation>Panel záložiek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="152"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="162"/>
|
||||||
<source>Open link in actual &tab</source>
|
<source>Open link in actual &tab</source>
|
||||||
<translation>Otvoriť odkaz v &aktuálnom panely</translation>
|
<translation>Otvoriť odkaz v &aktuálnom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="153"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="163"/>
|
||||||
<source>Open link in &new tab</source>
|
<source>Open link in &new tab</source>
|
||||||
<translation>Otvoriť odkaz na &novom panely</translation>
|
<translation>Otvoriť odkaz na &novom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="157"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="167"/>
|
||||||
<source>Move bookmark to &folder</source>
|
<source>Move bookmark to &folder</source>
|
||||||
<translation>Presunúť záložku do &zložky</translation>
|
<translation>Presunúť záložku do &zložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="168"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="178"/>
|
||||||
<source>&Close</source>
|
<source>&Close</source>
|
||||||
<translation>&Zavrieť</translation>
|
<translation>&Zavrieť</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="158"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="168"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="336"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="347"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="378"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="389"/>
|
||||||
<source>Unsorted Bookmarks</source>
|
<source>Unsorted Bookmarks</source>
|
||||||
<translation>Nezotriedené záložky</translation>
|
<translation>Nezotriedené záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="333"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="344"/>
|
||||||
<source><b>Warning: </b>You already have this page bookmarked!</source>
|
<source><b>Warning: </b>You already have this page bookmarked!</source>
|
||||||
<translation><b>Upozornenie: </b>Túto stránku máte už v záložkách!</translation>
|
<translation><b>Upozornenie: </b>Túto stránku máte už v záložkách!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="344"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="355"/>
|
||||||
<source>Choose name and location of bookmark.</source>
|
<source>Choose name and location of bookmark.</source>
|
||||||
<translation>Zvoľte meno a umiestnenie záložky.</translation>
|
<translation>Zvoľte meno a umiestnenie záložky.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="348"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="359"/>
|
||||||
<source>Add New Bookmark</source>
|
<source>Add New Bookmark</source>
|
||||||
<translation>Pridať záložku</translation>
|
<translation>Pridať záložku</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="386"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="397"/>
|
||||||
<source>Choose folder for bookmarks:</source>
|
<source>Choose folder for bookmarks:</source>
|
||||||
<translation>Zvoľte zložku pre záložku:</translation>
|
<translation>Zvoľte zložku pre záložku:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="388"/>
|
<location filename="../src/bookmarks/bookmarksmanager.cpp" line="399"/>
|
||||||
<source>Bookmark All Tabs</source>
|
<source>Bookmark All Tabs</source>
|
||||||
<translation>Pridať všetky panely do záložiek</translation>
|
<translation>Pridať všetky panely do záložiek</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -403,22 +408,22 @@ p, li { white-space: pre-wrap; }
|
||||||
<context>
|
<context>
|
||||||
<name>BookmarksModel</name>
|
<name>BookmarksModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="244"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="251"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="286"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="293"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="299"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="306"/>
|
||||||
<source>Bookmarks In Menu</source>
|
<source>Bookmarks In Menu</source>
|
||||||
<translation>Záložky v menu</translation>
|
<translation>Záložky v menu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="244"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="251"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="288"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="295"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="301"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="308"/>
|
||||||
<source>Bookmarks In ToolBar</source>
|
<source>Bookmarks In ToolBar</source>
|
||||||
<translation>Panel záložiek</translation>
|
<translation>Panel záložiek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="290"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="297"/>
|
||||||
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="303"/>
|
<location filename="../src/bookmarks/bookmarksmodel.cpp" line="310"/>
|
||||||
<source>Unsorted Bookmarks</source>
|
<source>Unsorted Bookmarks</source>
|
||||||
<translation>Nezotriedené záložky</translation>
|
<translation>Nezotriedené záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -431,46 +436,46 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Hľadať...</translation>
|
<translation>Hľadať...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="68"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="69"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="100"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="101"/>
|
||||||
<source>Open link in actual &tab</source>
|
<source>Open link in actual &tab</source>
|
||||||
<translation>Otvoriť odkaz v &aktuálnom panely</translation>
|
<translation>Otvoriť odkaz v &aktuálnom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="101"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="102"/>
|
||||||
<source>Open link in &new tab</source>
|
<source>Open link in &new tab</source>
|
||||||
<translation>Otvoriť odkaz na &novom panely</translation>
|
<translation>Otvoriť odkaz na &novom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="105"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="106"/>
|
||||||
<source>Move bookmark to &folder</source>
|
<source>Move bookmark to &folder</source>
|
||||||
<translation>Presunúť záložku do &zložky</translation>
|
<translation>Presunúť záložku do &zložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="106"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="107"/>
|
||||||
<source>Unsorted Bookmarks</source>
|
<source>Unsorted Bookmarks</source>
|
||||||
<translation>Nezotriedené záložky</translation>
|
<translation>Nezotriedené záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="107"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="108"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="196"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="197"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="221"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="222"/>
|
||||||
<source>Bookmarks In Menu</source>
|
<source>Bookmarks In Menu</source>
|
||||||
<translation>Záložky v menu</translation>
|
<translation>Záložky v menu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="108"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="109"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="201"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="202"/>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="223"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="224"/>
|
||||||
<source>Bookmarks In ToolBar</source>
|
<source>Bookmarks In ToolBar</source>
|
||||||
<translation>Panel záložiek</translation>
|
<translation>Panel záložiek</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="114"/>
|
<location filename="../src/sidebar/bookmarkssidebar.cpp" line="115"/>
|
||||||
<source>&Delete</source>
|
<source>&Delete</source>
|
||||||
<translation>&Odstrániť</translation>
|
<translation>&Odstrániť</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -586,21 +591,31 @@ p, li { white-space: pre-wrap; }
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.ui" line="95"/>
|
<location filename="../src/other/browsinglibrary.ui" line="95"/>
|
||||||
<source>Search...</source>
|
<source>Search...</source>
|
||||||
<translation type="unfinished">Hľadať...</translation>
|
<translation>Hľadať...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.cpp" line="26"/>
|
<location filename="../src/other/browsinglibrary.cpp" line="47"/>
|
||||||
<source>History</source>
|
<source>History</source>
|
||||||
<translation type="unfinished">História</translation>
|
<translation>História</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.cpp" line="27"/>
|
<location filename="../src/other/browsinglibrary.cpp" line="48"/>
|
||||||
<source>Bookmarks</source>
|
<source>Bookmarks</source>
|
||||||
<translation type="unfinished">Záložky</translation>
|
<translation>Záložky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/other/browsinglibrary.cpp" line="28"/>
|
<location filename="../src/other/browsinglibrary.cpp" line="49"/>
|
||||||
<source>RSS</source>
|
<source>RSS</source>
|
||||||
|
<translation>RSS</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/other/browsinglibrary.cpp" line="141"/>
|
||||||
|
<source>Database Optimized</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/other/browsinglibrary.cpp" line="141"/>
|
||||||
|
<source>Database successfuly optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Databse Size After: </b>%2</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
@ -782,12 +797,12 @@ p, li { white-space: pre-wrap; }
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="163"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="163"/>
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="170"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="170"/>
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="177"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="177"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="95"/>
|
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="96"/>
|
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="97"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="97"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="98"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="98"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="99"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="99"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="100"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="100"/>
|
||||||
|
<location filename="../src/cookies/cookiemanager.cpp" line="101"/>
|
||||||
|
<location filename="../src/cookies/cookiemanager.cpp" line="102"/>
|
||||||
<source><cookie not selected></source>
|
<source><cookie not selected></source>
|
||||||
<translation><nebolo zvolene cookie></translation>
|
<translation><nebolo zvolene cookie></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -798,7 +813,7 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.ui" line="209"/>
|
<location filename="../src/cookies/cookiemanager.ui" line="209"/>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="104"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="106"/>
|
||||||
<source>Remove cookie</source>
|
<source>Remove cookie</source>
|
||||||
<translation>Odstrániť cookie</translation>
|
<translation>Odstrániť cookie</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -808,69 +823,41 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Del</translation>
|
<translation>Del</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="43"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="44"/>
|
||||||
<source>Search</source>
|
<source>Search</source>
|
||||||
<translation>Hľadať</translation>
|
<translation>Hľadať</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="48"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="50"/>
|
||||||
<source>Confirmation</source>
|
<source>Confirmation</source>
|
||||||
<translation>Potvrdenie</translation>
|
<translation>Potvrdenie</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="49"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="51"/>
|
||||||
<source>Are you sure to delete all cookies on your computer?</source>
|
<source>Are you sure to delete all cookies on your computer?</source>
|
||||||
<translation>Skutočne chcete vymazať všetky cookies z počítača?</translation>
|
<translation>Skutočne chcete vymazať všetky cookies z počítača?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="101"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="103"/>
|
||||||
<source>Remove cookies</source>
|
<source>Remove cookies</source>
|
||||||
<translation>Odstrániť cookies</translation>
|
<translation>Odstrániť cookies</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="113"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="115"/>
|
||||||
<source>Secure only</source>
|
<source>Secure only</source>
|
||||||
<translation>Zabezpečené pripojenie</translation>
|
<translation>Zabezpečené pripojenie</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="113"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="115"/>
|
||||||
<source>All connections</source>
|
<source>All connections</source>
|
||||||
<translation>Všetky pripojenia</translation>
|
<translation>Všetky pripojenia</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cookies/cookiemanager.cpp" line="114"/>
|
<location filename="../src/cookies/cookiemanager.cpp" line="116"/>
|
||||||
<source>Session cookie</source>
|
<source>Session cookie</source>
|
||||||
<translation>Konca relácie</translation>
|
<translation>Konca relácie</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
|
||||||
<name>Core::Internal::FancyTabWidget</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="646"/>
|
|
||||||
<source>Large sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="647"/>
|
|
||||||
<source>Small sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="648"/>
|
|
||||||
<source>Plain sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="649"/>
|
|
||||||
<source>Tabs on top</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/3rdparty/fancytabwidget.cpp" line="650"/>
|
|
||||||
<source>Icons on top</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
<context>
|
||||||
<name>DownloadItem</name>
|
<name>DownloadItem</name>
|
||||||
<message>
|
<message>
|
||||||
|
@ -1146,32 +1133,55 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Vymazať celú históriu</translation>
|
<translation>Vymazať celú históriu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="90"/>
|
<location filename="../src/history/historymanager.ui" line="84"/>
|
||||||
|
<source>Optimize Database</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="93"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="102"/>
|
<location filename="../src/history/historymanager.cpp" line="105"/>
|
||||||
<source>Open link in actual tab</source>
|
<source>Open link in actual tab</source>
|
||||||
<translation>Otvoriť odkaz v aktuálnom panely</translation>
|
<translation>Otvoriť odkaz v aktuálnom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="103"/>
|
<location filename="../src/history/historymanager.cpp" line="106"/>
|
||||||
<source>Open link in new tab</source>
|
<source>Open link in new tab</source>
|
||||||
<translation>Otvoriť odkaz na novom panely</translation>
|
<translation>Otvoriť odkaz na novom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="107"/>
|
<location filename="../src/history/historymanager.cpp" line="110"/>
|
||||||
<source>Close</source>
|
<source>Close</source>
|
||||||
<translation>Zavrieť</translation>
|
<translation>Zavrieť</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="170"/>
|
<location filename="../src/history/historymanager.cpp" line="137"/>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="209"/>
|
||||||
|
<source>Today</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="139"/>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="211"/>
|
||||||
|
<source>This Week</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="141"/>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="213"/>
|
||||||
|
<source>This Month</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymanager.cpp" line="182"/>
|
||||||
<source>Confirmation</source>
|
<source>Confirmation</source>
|
||||||
<translation>Potvrdenie</translation>
|
<translation>Potvrdenie</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymanager.cpp" line="171"/>
|
<location filename="../src/history/historymanager.cpp" line="183"/>
|
||||||
<source>Are you sure to delete all history?</source>
|
<source>Are you sure to delete all history?</source>
|
||||||
<translation>Skutočne chcete vymazať celú históriu?</translation>
|
<translation>Skutočne chcete vymazať celú históriu?</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1179,15 +1189,75 @@ p, li { white-space: pre-wrap; }
|
||||||
<context>
|
<context>
|
||||||
<name>HistoryModel</name>
|
<name>HistoryModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymodel.cpp" line="42"/>
|
<location filename="../src/history/historymodel.cpp" line="43"/>
|
||||||
<source>Failed loading page</source>
|
<source>Failed loading page</source>
|
||||||
<translation>Chyba pri načítaní stránky</translation>
|
<translation>Chyba pri načítaní stránky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/history/historymodel.cpp" line="45"/>
|
<location filename="../src/history/historymodel.cpp" line="46"/>
|
||||||
<source>No Named Page</source>
|
<source>No Named Page</source>
|
||||||
<translation>Stránka bez mena</translation>
|
<translation>Stránka bez mena</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="177"/>
|
||||||
|
<source>January</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="179"/>
|
||||||
|
<source>February</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="181"/>
|
||||||
|
<source>March</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="183"/>
|
||||||
|
<source>April</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="185"/>
|
||||||
|
<source>May</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="187"/>
|
||||||
|
<source>June</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="189"/>
|
||||||
|
<source>July</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="191"/>
|
||||||
|
<source>August</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="193"/>
|
||||||
|
<source>September</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="195"/>
|
||||||
|
<source>October</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="197"/>
|
||||||
|
<source>November</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/history/historymodel.cpp" line="199"/>
|
||||||
|
<source>December</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>HistorySideBar</name>
|
<name>HistorySideBar</name>
|
||||||
|
@ -1202,25 +1272,43 @@ p, li { white-space: pre-wrap; }
|
||||||
<translation>Názov</translation>
|
<translation>Názov</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="60"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="61"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="72"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="73"/>
|
||||||
<source>Open link in actual tab</source>
|
<source>Open link in actual tab</source>
|
||||||
<translation>Otvoriť odkaz v aktuálnom panely</translation>
|
<translation>Otvoriť odkaz v aktuálnom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="73"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="74"/>
|
||||||
<source>Open link in new tab</source>
|
<source>Open link in new tab</source>
|
||||||
<translation>Otvoriť odkaz na novom panely</translation>
|
<translation>Otvoriť odkaz na novom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/sidebar/historysidebar.cpp" line="75"/>
|
<location filename="../src/sidebar/historysidebar.cpp" line="76"/>
|
||||||
<source>Remove Entry</source>
|
<source>Remove Entry</source>
|
||||||
<translation>Odstrániť položku</translation>
|
<translation>Odstrániť položku</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="105"/>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="193"/>
|
||||||
|
<source>Today</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="107"/>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="195"/>
|
||||||
|
<source>This Week</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="109"/>
|
||||||
|
<location filename="../src/sidebar/historysidebar.cpp" line="197"/>
|
||||||
|
<source>This Month</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>LocationBar</name>
|
<name>LocationBar</name>
|
||||||
|
@ -1259,12 +1347,12 @@ p, li { white-space: pre-wrap; }
|
||||||
<context>
|
<context>
|
||||||
<name>MainApplication</name>
|
<name>MainApplication</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/app/mainapplication.cpp" line="517"/>
|
<location filename="../src/app/mainapplication.cpp" line="514"/>
|
||||||
<source>Last session crashed</source>
|
<source>Last session crashed</source>
|
||||||
<translation>Posledná relácia spadla</translation>
|
<translation>Posledná relácia spadla</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/app/mainapplication.cpp" line="518"/>
|
<location filename="../src/app/mainapplication.cpp" line="515"/>
|
||||||
<source><b>QupZilla crashed :-(</b><br/>Oops, last session of QupZilla ends with its crash. We are very sorry. Would you try to restore saved state?</source>
|
<source><b>QupZilla crashed :-(</b><br/>Oops, last session of QupZilla ends with its crash. We are very sorry. Would you try to restore saved state?</source>
|
||||||
<translation><b>QupZilla spadla :-(</b><br/>Oops, posledná relácia QupZilly skončila chybou. Prepáčte. Chcete obnoviť uložený stav?</translation>
|
<translation><b>QupZilla spadla :-(</b><br/>Oops, posledná relácia QupZilly skončila chybou. Prepáčte. Chcete obnoviť uložený stav?</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -2592,95 +2680,101 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="40"/>
|
<location filename="../src/rss/rssmanager.ui" line="40"/>
|
||||||
|
<location filename="../src/rss/rssmanager.cpp" line="115"/>
|
||||||
<source>Empty</source>
|
<source>Empty</source>
|
||||||
<translation>Prázdny</translation>
|
<translation>Prázdny</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="83"/>
|
<location filename="../src/rss/rssmanager.cpp" line="113"/>
|
||||||
<source>You don't have any RSS Feeds.<br/>
|
<source>You don't have any RSS Feeds.<br/>
|
||||||
Please add some with RSS icon in navigation bar on site which offers feeds.</source>
|
Please add some with RSS icon in navigation bar on site which offers feeds.</source>
|
||||||
<translation>Nemáte žiadny RSS kanál.<br/>
|
<translation>Nemáte žiadny RSS kanál.<br/>
|
||||||
Prosím pridajte si nejaký kliknutím na RSS ikonku v navigačnom riadku.</translation>
|
Prosím pridajte si nejaký kliknutím na RSS ikonku v navigačnom riadku.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="106"/>
|
<location filename="../src/rss/rssmanager.ui" line="64"/>
|
||||||
<source>Reload</source>
|
<source>Reload</source>
|
||||||
<translation>Obnoviť</translation>
|
<translation>Obnoviť</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="116"/>
|
<location filename="../src/rss/rssmanager.ui" line="74"/>
|
||||||
<source>Edit feed</source>
|
<source>Edit feed</source>
|
||||||
<translation>Upraviť kanál</translation>
|
<translation>Upraviť kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.ui" line="126"/>
|
<location filename="../src/rss/rssmanager.ui" line="84"/>
|
||||||
<source>Delete feed</source>
|
<source>Delete feed</source>
|
||||||
<translation>Zmazať kanál</translation>
|
<translation>Zmazať kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="81"/>
|
<location filename="../src/rss/rssmanager.ui" line="111"/>
|
||||||
|
<source>Optimize Database</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/rss/rssmanager.cpp" line="79"/>
|
||||||
<source>News</source>
|
<source>News</source>
|
||||||
<translation>Novinky</translation>
|
<translation>Novinky</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="90"/>
|
<location filename="../src/rss/rssmanager.cpp" line="88"/>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="113"/>
|
<location filename="../src/rss/rssmanager.cpp" line="126"/>
|
||||||
<source>Loading...</source>
|
<source>Loading...</source>
|
||||||
<translation>Nahrávam...</translation>
|
<translation>Nahrávam...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="153"/>
|
<location filename="../src/rss/rssmanager.cpp" line="162"/>
|
||||||
<source>Fill title and URL of a feed: </source>
|
<source>Fill title and URL of a feed: </source>
|
||||||
<translation>Vyplnte názov a adresu kanálu: </translation>
|
<translation>Vyplnte názov a adresu kanálu: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="155"/>
|
<location filename="../src/rss/rssmanager.cpp" line="164"/>
|
||||||
<source>Feed title: </source>
|
<source>Feed title: </source>
|
||||||
<translation>Názov kanálu: </translation>
|
<translation>Názov kanálu: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="156"/>
|
<location filename="../src/rss/rssmanager.cpp" line="165"/>
|
||||||
<source>Feed URL: </source>
|
<source>Feed URL: </source>
|
||||||
<translation>Adresa kanálu: </translation>
|
<translation>Adresa kanálu: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="162"/>
|
<location filename="../src/rss/rssmanager.cpp" line="171"/>
|
||||||
<source>Edit RSS Feed</source>
|
<source>Edit RSS Feed</source>
|
||||||
<translation>Upraviť RSS</translation>
|
<translation>Upraviť RSS</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="199"/>
|
<location filename="../src/rss/rssmanager.cpp" line="208"/>
|
||||||
<source>Open link in actual tab</source>
|
<source>Open link in actual tab</source>
|
||||||
<translation>Otvoriť odkaz v aktuálnom panely</translation>
|
<translation>Otvoriť odkaz v aktuálnom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="200"/>
|
<location filename="../src/rss/rssmanager.cpp" line="209"/>
|
||||||
<source>Open link in new tab</source>
|
<source>Open link in new tab</source>
|
||||||
<translation>Otvoriť odkaz na novom panely</translation>
|
<translation>Otvoriť odkaz na novom panely</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="202"/>
|
<location filename="../src/rss/rssmanager.cpp" line="211"/>
|
||||||
<source>Close</source>
|
<source>Close</source>
|
||||||
<translation>Zavrieť</translation>
|
<translation>Zavrieť</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="225"/>
|
<location filename="../src/rss/rssmanager.cpp" line="234"/>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="231"/>
|
<location filename="../src/rss/rssmanager.cpp" line="240"/>
|
||||||
<source>New Tab</source>
|
<source>New Tab</source>
|
||||||
<translation>Nový panel</translation>
|
<translation>Nový panel</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="297"/>
|
<location filename="../src/rss/rssmanager.cpp" line="306"/>
|
||||||
<source>Error in fetching feed</source>
|
<source>Error in fetching feed</source>
|
||||||
<translation>Chyba pri sťahovaní kanálu</translation>
|
<translation>Chyba pri sťahovaní kanálu</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="318"/>
|
<location filename="../src/rss/rssmanager.cpp" line="334"/>
|
||||||
<source>RSS feed duplicated</source>
|
<source>RSS feed duplicated</source>
|
||||||
<translation>Duplikovaný kanál</translation>
|
<translation>Duplikovaný kanál</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/rss/rssmanager.cpp" line="318"/>
|
<location filename="../src/rss/rssmanager.cpp" line="334"/>
|
||||||
<source>You already have this feed.</source>
|
<source>You already have this feed.</source>
|
||||||
<translation>Tento kanál už odoberáte.</translation>
|
<translation>Tento kanál už odoberáte.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user