Merge commit '563a5431e35831cb0a8c418835c54d0264d92c78' into Kingdread/windows-drive-cwd
This commit is contained in:
commit
6939f81de7
@ -184,8 +184,6 @@ class MainWindow(QWidget):
|
||||
|
||||
self._keyhint = keyhintwidget.KeyHintView(self.win_id, self)
|
||||
self._add_overlay(self._keyhint, self._keyhint.update_geometry)
|
||||
self._messageview = messageview.MessageView(parent=self)
|
||||
self._add_overlay(self._messageview, self._messageview.update_geometry)
|
||||
|
||||
self._prompt_container = prompt.PromptContainer(self.win_id, self)
|
||||
self._add_overlay(self._prompt_container,
|
||||
@ -195,6 +193,9 @@ class MainWindow(QWidget):
|
||||
scope='window', window=self.win_id)
|
||||
self._prompt_container.hide()
|
||||
|
||||
self._messageview = messageview.MessageView(parent=self)
|
||||
self._add_overlay(self._messageview, self._messageview.update_geometry)
|
||||
|
||||
if geometry is not None:
|
||||
self._load_geometry(geometry)
|
||||
elif self.win_id == 0:
|
||||
|
@ -25,10 +25,9 @@ import collections
|
||||
|
||||
import sip
|
||||
from PyQt5.QtCore import (pyqtSlot, pyqtSignal, Qt, QTimer, QDir, QModelIndex,
|
||||
QItemSelectionModel, QObject, QEventLoop, QPoint)
|
||||
QItemSelectionModel, QObject, QEventLoop)
|
||||
from PyQt5.QtWidgets import (QWidget, QGridLayout, QVBoxLayout, QLineEdit,
|
||||
QLabel, QFileSystemModel, QTreeView, QSizePolicy,
|
||||
QToolTip)
|
||||
QLabel, QFileSystemModel, QTreeView, QSizePolicy)
|
||||
|
||||
from qutebrowser.browser import downloads
|
||||
from qutebrowser.config import style, config
|
||||
@ -643,15 +642,11 @@ class FilenamePrompt(_BasePrompt):
|
||||
self._file_model.directoryLoaded.connect(
|
||||
lambda: self._file_model.sort(0))
|
||||
|
||||
def _show_error(self, msg):
|
||||
log.prompt.error(msg)
|
||||
QToolTip.showText(self._lineedit.mapToGlobal(QPoint(0, 0)), msg)
|
||||
|
||||
def accept(self, value=None):
|
||||
text = value if value is not None else self._lineedit.text()
|
||||
text = downloads.transform_path(text)
|
||||
if text is None:
|
||||
self._show_error("Invalid filename")
|
||||
message.error("Invalid filename")
|
||||
return False
|
||||
self.question.answer = text
|
||||
return True
|
||||
@ -703,13 +698,11 @@ class DownloadFilenamePrompt(FilenamePrompt):
|
||||
self._file_model.setFilter(QDir.AllDirs | QDir.Drives | QDir.NoDot)
|
||||
|
||||
def accept(self, value=None):
|
||||
text = value if value is not None else self._lineedit.text()
|
||||
text = downloads.transform_path(text)
|
||||
if text is None:
|
||||
self._show_error("Invalid filename")
|
||||
return False
|
||||
self.question.answer = downloads.FileDownloadTarget(text)
|
||||
return True
|
||||
done = super().accept(value)
|
||||
answer = self.question.answer
|
||||
if answer is not None:
|
||||
self.question.answer = downloads.FileDownloadTarget(answer)
|
||||
return done
|
||||
|
||||
def download_open(self, cmdline):
|
||||
self.question.answer = downloads.OpenFileDownloadTarget(cmdline)
|
||||
|
@ -133,7 +133,7 @@ Feature: Downloading things from a website.
|
||||
And I wait for "Asking question <qutebrowser.utils.usertypes.Question default='*' mode=<PromptMode.download: 5> text='Please enter a location for <b>http://localhost:*/data/downloads/download.bin</b>' title='Save file to:'>, *" in the log
|
||||
And I run :prompt-accept COM1
|
||||
And I run :leave-mode
|
||||
Then "Invalid filename" should be logged
|
||||
Then the error "Invalid filename" should be shown
|
||||
|
||||
@windows
|
||||
Scenario: Downloading a file to a drive-relative working directory
|
||||
@ -142,7 +142,7 @@ Feature: Downloading things from a website.
|
||||
And I wait for "Asking question <qutebrowser.utils.usertypes.Question default='*' mode=<PromptMode.download: 5> text='Please enter a location for <b>http://localhost:*/data/downloads/download.bin</b>' title='Save file to:'>, *" in the log
|
||||
And I run :prompt-accept C:foobar
|
||||
And I run :leave-mode
|
||||
Then "Invalid filename" should be logged
|
||||
Then the error "Invalid filename" should be shown
|
||||
|
||||
@windows
|
||||
Scenario: Downloading a file to a reserved path with :download
|
||||
|
Loading…
Reference in New Issue
Block a user