Move window selection logic into WebPage

This commit is contained in:
Matthew Horan 2012-03-28 15:20:32 -04:00
parent aaba4d1245
commit 33bc195fe1
3 changed files with 9 additions and 4 deletions

View File

@ -267,3 +267,10 @@ QString WebPage::getWindowName() {
else
return "";
}
bool WebPage::matchesWindowSelector(QString selector) {
return (selector == getWindowName() ||
selector == mainFrame()->title() ||
selector == mainFrame()->url().toString() ||
selector == uuid());
}

View File

@ -25,6 +25,7 @@ class WebPage : public QWebPage {
QWebPage *createWindow(WebWindowType type);
QString uuid();
QString getWindowName();
bool matchesWindowSelector(QString);
public slots:
bool shouldInterruptJavaScript();

View File

@ -26,10 +26,7 @@ void WindowFocus::focusWindow(QString selector) {
while (pageIterator.hasNext()) {
WebPage *page = pageIterator.next();
if (selector == page->getWindowName() ||
selector == page->mainFrame()->title() ||
selector == page->mainFrame()->url().toString() ||
selector == page->uuid()) {
if (page->matchesWindowSelector(selector)) {
success(page);
return;
}