]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Improves 79ccd0202d106a9c16b79a20cd79831a60dc5393 by allowing "/" in file names.
authorMatthias Fuchs <mat69@gmx.net>
Tue, 31 May 2011 21:42:46 +0000 (23:42 +0200)
committerMatthias Fuchs <mat69@gmx.net>
Tue, 31 May 2011 21:45:31 +0000 (23:45 +0200)
Though here "/" is not the ascii char '/' but the "unicode fraction slash" one, thus it is not taken as directory command.
CCBUG:211751
REVIEW:101454

src/views/renamedialog.cpp

index a14ba77b7c4dca1b83bd1c0abf827506ad4e17fd..c0c6ad58c1153daed7c15b3f7be661fb39bffb4d 100644 (file)
@@ -136,7 +136,7 @@ void RenameDialog::slotButtonClicked(int button)
             Q_ASSERT(m_items.count() == 1);
             const KUrl oldUrl = m_items.first().url();
             KUrl newUrl = oldUrl;
-            newUrl.setFileName(m_newName);
+            newUrl.setFileName(KIO::encodeFileName(m_newName));
             KonqOperations::rename(this, oldUrl, newUrl);
         } else {
             renameItems();
@@ -148,7 +148,7 @@ void RenameDialog::slotButtonClicked(int button)
 
 void RenameDialog::slotTextChanged(const QString& newName)
 {
-    bool enable = !newName.isEmpty() && (newName != QLatin1String("..")) && (newName != QLatin1String(".")) && !newName.contains('/');
+    bool enable = !newName.isEmpty() && (newName != QLatin1String("..")) && (newName != QLatin1String("."));
     if (enable) {
         if (m_renameOneItem) {
             enable = enable && (newName != m_newName);
@@ -185,7 +185,7 @@ void RenameDialog::renameItems()
         const KUrl oldUrl = item.url();
         if (oldUrl.fileName() != newName) {
             KUrl newUrl = oldUrl;
-            newUrl.setFileName(newName);
+            newUrl.setFileName(KIO::encodeFileName(newName));
             KonqOperations::rename(this, oldUrl, newUrl);
         }
     }