summaryrefslogtreecommitdiff
path: root/src/webtab/webtab.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/webtab/webtab.cpp')
-rw-r--r--src/webtab/webtab.cpp49
1 files changed, 35 insertions, 14 deletions
diff --git a/src/webtab/webtab.cpp b/src/webtab/webtab.cpp
index 74fe720f..2060ddab 100644
--- a/src/webtab/webtab.cpp
+++ b/src/webtab/webtab.cpp
@@ -102,20 +102,24 @@ WebTab::WebTab(QWidget *parent, bool isPrivateBrowsing)
this, SLOT(createWalletBar(QString,QUrl)));
}
+ // Connect webview signals with related webtab ones
+ connect(view(), SIGNAL(loadFinished(bool)), this, SIGNAL(loadFinished(bool)));
+ connect(view(), SIGNAL(loadProgress(int)), this, SIGNAL(loadProgress (int)));
+ connect(view(), SIGNAL(loadStarted()), this, SIGNAL(loadStarted()));
+ connect(view(), SIGNAL(urlChanged(QUrl)), this, SIGNAL(urlChanged(QUrl)));
+ connect(view(), SIGNAL(titleChanged(QString)), this, SIGNAL(titleChanged(QString)));
+ connect(view(), SIGNAL(iconChanged()), this, SIGNAL(iconChanged()));
+
+ if (!parent)
+ {
+ connect(this, SIGNAL(titleChanged(QString)), this, SLOT(webAppTitleChanged(QString)));
+ connect(this, SIGNAL(iconChanged()), this, SLOT(webAppIconChanged()));
+ }
+
connect(view(), SIGNAL(loadProgress(int)), this, SLOT(updateProgress(int)));
connect(view(), SIGNAL(loadStarted()), this, SLOT(resetProgress()));
connect(view(), SIGNAL(loadFinished(bool)), this, SLOT(loadFinished()));
- if (parent)
- {
- connect(view(), SIGNAL(titleChanged(QString)), this, SIGNAL(titleChanged(QString)));
- }
- else
- {
- connect(view(), SIGNAL(titleChanged(QString)), this, SLOT(webAppTitleChanged(QString)));
- connect(view(), SIGNAL(iconChanged()), this, SLOT(webAppIconChanged()));
- }
-
// Session Manager
connect(view(), SIGNAL(loadFinished(bool)), SessionManager::self(), SLOT(saveSession()));
}
@@ -172,6 +176,22 @@ KUrl WebTab::url()
}
+QString WebTab::title()
+{
+ if (page() && page()->isOnRekonqPage())
+ {
+ return url().url();
+ }
+
+ if (view())
+ return view()->title();
+
+ kDebug() << "OOPS... NO web classes survived! Returning an empty title...";
+ return QString();
+
+}
+
+
void WebTab::updateProgress(int p)
{
m_progress = p;
@@ -258,10 +278,10 @@ void WebTab::createPreviewSelectorBar(int index)
m_previewSelectorBar.data()->animatedHide();
}
- connect(page(), SIGNAL(loadStarted()), m_previewSelectorBar.data(), SLOT(loadProgress()), Qt::UniqueConnection);
- connect(page(), SIGNAL(loadProgress(int)), m_previewSelectorBar.data(), SLOT(loadProgress()), Qt::UniqueConnection);
- connect(page(), SIGNAL(loadFinished(bool)), m_previewSelectorBar.data(), SLOT(loadFinished()), Qt::UniqueConnection);
- connect(page()->mainFrame(), SIGNAL(urlChanged(QUrl)), m_previewSelectorBar.data(), SLOT(verifyUrl()), Qt::UniqueConnection);
+ connect(this, SIGNAL(loadStarted()), m_previewSelectorBar.data(), SLOT(loadProgress()), Qt::UniqueConnection);
+ connect(this, SIGNAL(loadProgress(int)), m_previewSelectorBar.data(), SLOT(loadProgress()), Qt::UniqueConnection);
+ connect(this, SIGNAL(loadFinished(bool)), m_previewSelectorBar.data(), SLOT(loadFinished()), Qt::UniqueConnection);
+ connect(this, SIGNAL(urlChanged(QUrl)), m_previewSelectorBar.data(), SLOT(verifyUrl()), Qt::UniqueConnection);
}
@@ -288,6 +308,7 @@ void WebTab::setPart(KParts::ReadOnlyPart *p, const KUrl &u)
view()->hide();
m_splitter->hide();
emit titleChanged(u.url());
+ emit urlChanged(u.url());
return;
}