]> cloud.milkyroute.net Git - dolphin.git/commitdiff
If the URL navigator is editable and has the focus, Ctrl+A should select the URL...
authorPeter Penz <peter.penz19@gmail.com>
Sun, 16 Dec 2007 19:25:59 +0000 (19:25 +0000)
committerPeter Penz <peter.penz19@gmail.com>
Sun, 16 Dec 2007 19:25:59 +0000 (19:25 +0000)
BUG: 153697

svn path=/trunk/KDE/kdebase/apps/; revision=749188

src/dolphinmainwindow.cpp

index 46a80629b6bc1a416dffee7a3e1a33b7f9f8d2f9..ea240ba83ce7d1da13e98589440d7839311aac8f 100644 (file)
 #include <kstatusbar.h>
 #include <kstandardaction.h>
 #include <kurl.h>
+#include <kurlcombobox.h>
 
-#include <QtGui/QKeyEvent>
-#include <QtGui/QClipboard>
-#include <QtGui/QSplitter>
-#include <QtGui/QDockWidget>
+#include <QKeyEvent>
+#include <QClipboard>
+#include <QLineEdit>
+#include <QSplitter>
+#include <QDockWidget>
 
 DolphinMainWindow::DolphinMainWindow(int id) :
     KXmlGuiWindow(0),
@@ -559,7 +561,19 @@ void DolphinMainWindow::updatePasteAction()
 void DolphinMainWindow::selectAll()
 {
     clearStatusBar();
-    m_activeViewContainer->view()->selectAll();
+
+    // if the URL navigator is editable and focused, select the whole
+    // URL instead of all items of the view
+
+    KUrlNavigator* urlNavigator = m_activeViewContainer->urlNavigator();
+    QLineEdit* lineEdit = urlNavigator->editor()->lineEdit();
+    const bool selectUrl = urlNavigator->isUrlEditable() &&
+                           lineEdit->hasFocus();
+    if (selectUrl) {
+        lineEdit->selectAll();
+    } else {
+        m_activeViewContainer->view()->selectAll();
+    }
 }
 
 void DolphinMainWindow::invertSelection()