diff options
Diffstat (limited to 'src/urlbar')
| -rw-r--r-- | src/urlbar/completionwidget.cpp | 37 | 
1 files changed, 32 insertions, 5 deletions
| diff --git a/src/urlbar/completionwidget.cpp b/src/urlbar/completionwidget.cpp index be189001..f8bf6ee2 100644 --- a/src/urlbar/completionwidget.cpp +++ b/src/urlbar/completionwidget.cpp @@ -273,12 +273,39 @@ bool CompletionWidget::eventFilter(QObject *obj, QEvent *ev)              case Qt::Key_Enter:              case Qt::Key_Return: -                 -                // let urlbar handle Return + Modifiers -                if(!(kev->modifiers() & Qt::NoModifier)) -                    return false; -                                  w = qobject_cast<UrlBar *>(parent()); + +                if (!w->text().startsWith(QL1S("http://"), Qt::CaseInsensitive)) +                { +                    QString append; +                    if (kev->modifiers() == Qt::ControlModifier) +                    { +                        append = QL1S(".com"); +                    } +                    else if (kev->modifiers() == (Qt::ControlModifier | Qt::ShiftModifier)) +                    { +                        append = QL1S(".org"); +                    } +                    else if (kev->modifiers() == Qt::ShiftModifier) +                    { +                        append = QL1S(".net"); +                    } + +                    if (!append.isEmpty()) +                    { +                        QUrl url(QL1S("http://www.") + w->text()); +                        QString host = url.host(); +                        if (!host.endsWith(append, Qt::CaseInsensitive)) +                        { +                            host += append; +                            url.setHost(host); +                        } +                         +                        emit chosenUrl(url, Rekonq::CurrentTab); +                    } +                } + +                                  if( _currentIndex == -1)                      _currentIndex = 0;                  child = findChild<ListItem *>(QString::number(_currentIndex)); | 
