X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/f70b85b4ca2b96ebf578d4db790a8ac3f69f766e..b3beb9e0c2ff8cdc77f9a48e3416877e5bad0918:/src/startupsettingspage.cpp diff --git a/src/startupsettingspage.cpp b/src/startupsettingspage.cpp index d056c91a6..532c6e606 100644 --- a/src/startupsettingspage.cpp +++ b/src/startupsettingspage.cpp @@ -29,13 +29,13 @@ #include #include #include +#include #include #include #include #include #include -#include #include #include @@ -60,7 +60,8 @@ StartupSettingsPage::StartupSettingsPage(DolphinMainWindow* mainWin, QWidget* pa homeUrlBox->setSpacing(spacing); new QLabel(i18nc("@label:textbox", "Location:"), homeUrlBox); - m_homeUrl = new QLineEdit(homeUrlBox); + m_homeUrl = new KLineEdit(homeUrlBox); + m_homeUrl->setClearButtonShown(true); QPushButton* selectHomeUrlButton = new QPushButton(KIcon("folder-open"), QString(), homeUrlBox); connect(selectHomeUrlButton, SIGNAL(clicked()), @@ -84,6 +85,9 @@ StartupSettingsPage::StartupSettingsPage(DolphinMainWindow* mainWin, QWidget* pa m_splitView = new QCheckBox(i18nc("@option:check Startup Settings", "Split view mode"), vBox); m_editableUrl = new QCheckBox(i18nc("@option:check Startup Settings", "Editable location bar"), vBox); m_filterBar = new QCheckBox(i18nc("@option:check Startup Settings", "Show filter bar"), vBox); + connect(m_splitView, SIGNAL(toggled(bool)), this, SIGNAL(changed())); + connect(m_editableUrl, SIGNAL(toggled(bool)), this, SIGNAL(changed())); + connect(m_filterBar, SIGNAL(toggled(bool)), this, SIGNAL(changed())); // Add a dummy widget with no restriction regarding // a vertical resizing. This assures that the dialog layout @@ -93,6 +97,10 @@ StartupSettingsPage::StartupSettingsPage(DolphinMainWindow* mainWin, QWidget* pa topLayout->addWidget(vBox); loadSettings(); + + // it's important connecting 'textChanged' after loadSettings(), as loadSettings() + // invokes m_homeUrl->setText() + connect(m_homeUrl, SIGNAL(textChanged(const QString&)), this, SIGNAL(changed())); } StartupSettingsPage::~StartupSettingsPage() @@ -108,7 +116,7 @@ void StartupSettingsPage::applySettings() if (url.isValid() && fileItem.isDir()) { settings->setHomeUrl(url.prettyUrl()); } else { - KMessageBox::error(this, i18n("The location for the home folder is invalid and will not get applied.")); + KMessageBox::error(this, i18nc("@info", "The location for the home folder is invalid and will not be applied.")); } settings->setSplitView(m_splitView->isChecked()); @@ -126,9 +134,10 @@ void StartupSettingsPage::restoreDefaults() void StartupSettingsPage::selectHomeUrl() { const QString homeUrl = m_homeUrl->text(); - KUrl url = KFileDialog::getExistingDirectoryUrl(homeUrl); + KUrl url = KFileDialog::getExistingDirectoryUrl(homeUrl, this); if (!url.isEmpty()) { m_homeUrl->setText(url.prettyUrl()); + emit changed(); } }