{
#ifdef HAVE_KDE
//This is done to make the KTextEdit look like a lineedit
+#if QT_VERSION >= 0x040500
+ document()->setDocumentMargin(0);
+#endif
setMaximumHeight(document()->size().toSize().height());
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
void InputLine::setCustomFont(const QFont &font) {
setFont(font);
#ifdef HAVE_KDE
- setMaximumHeight(document()->size().toSize().height());
+ setMaximumHeight(document()->size().toSize().height() + 2*frameWidth());
#endif
}
#ifdef HAVE_KDE
//Since this is a ktextedit, we don't have this signal "natively"
case Qt::Key_Return:
+ case Qt::Key_Enter:
event->accept();
emit returnPressed();
break;
}
void InputLine::on_returnPressed() {
- addToHistory(text());
- emit sendText(text());
- resetLine();
+ if(!text().isEmpty()) {
+ addToHistory(text());
+ emit sendText(text());
+ resetLine();
+ }
}
void InputLine::on_textChanged(QString newText) {
clear();
if(lines.count() >= 4) {
- QString msg = tr("Do you really want to paste %1 lines?").arg(lines.count());
+ QString msg = tr("Do you really want to paste %n lines?", "", lines.count());
msg += "<p>";
for(int i = 0; i < 3; i++) {
msg += lines[i].left(40);
}
foreach(QString line, lines) {
- clear();
- insert(line);
- emit returnPressed();
+ if(!line.isEmpty()) {
+ clear();
+ insert(line);
+ emit returnPressed();
+ }
}
// if(newText.contains(lineSep)) {
// clear();
void InputLine::showHistoryEntry() {
// if the user changed the history, display the changed line
tempHistory.contains(idx) ? setText(tempHistory[idx]) : setText(history[idx]);
+#ifdef HAVE_KDE
+ QTextCursor cursor = textCursor();
+ cursor.movePosition(QTextCursor::End);
+ setTextCursor(cursor);
+#endif
}