android improvements
This commit is contained in:
parent
e630541b23
commit
ae939b97f4
|
@ -70,6 +70,7 @@ private slots:
|
|||
void fileBrowserItemSelectionChanged();
|
||||
void upActionTriggered(bool checked);
|
||||
void homeActionTriggered(bool checked);
|
||||
void triggerContextMenu();
|
||||
signals:
|
||||
void openFile(QString);
|
||||
void fileCreated(QString);
|
||||
|
|
|
@ -33,6 +33,7 @@ private:
|
|||
QAction * action;
|
||||
QPropertyAnimation *animationIn;
|
||||
bool animationInProgress;
|
||||
int minWidth;
|
||||
private slots:
|
||||
void onItemClicked(QListWidgetItem * item);
|
||||
void animationInFinished();
|
||||
|
|
|
@ -52,7 +52,7 @@ FileBrowser::FileBrowser(QTreeWidget * widget, QLineEdit * line):
|
|||
|
||||
mousePressTimer.setInterval(1000);
|
||||
mousePressTimer.setSingleShot(true);
|
||||
connect(&mousePressTimer, SIGNAL(timeout()), this, SLOT(contextMenu()));
|
||||
connect(&mousePressTimer, SIGNAL(timeout()), this, SLOT(triggerContextMenu()));
|
||||
|
||||
treeWidget->setSelectionMode(QAbstractItemView::SingleSelection);
|
||||
treeWidget->setMouseTracking(true);
|
||||
|
@ -245,10 +245,11 @@ void FileBrowser::homeActionTriggered(bool)
|
|||
}
|
||||
}
|
||||
|
||||
void FileBrowser::fileBrowserContextMenuRequested(QPoint /*p*/)
|
||||
void FileBrowser::fileBrowserContextMenuRequested(QPoint p)
|
||||
{
|
||||
//QTreeWidgetItem * item = treeWidget->itemAt(p);
|
||||
QTreeWidgetItem * item = treeWidget->currentItem();
|
||||
//QTreeWidgetItem * item = treeWidget->currentItem();
|
||||
QTreeWidgetItem * item = treeWidget->itemAt(p);
|
||||
if (item != nullptr && item != treeWidget->currentItem()) treeWidget->setCurrentItem(item);
|
||||
fileBrowserContextMenuRequested(item);
|
||||
}
|
||||
|
||||
|
@ -855,3 +856,10 @@ void FileBrowser::contextMenu()
|
|||
QTreeWidgetItem * item = treeWidget->currentItem();
|
||||
fileBrowserContextMenuRequested(item);
|
||||
}
|
||||
|
||||
void FileBrowser::triggerContextMenu()
|
||||
{
|
||||
QPoint p = treeWidget->mapFromGlobal(QCursor::pos());
|
||||
if (p.isNull()) return;
|
||||
fileBrowserContextMenuRequested(p);
|
||||
}
|
||||
|
|
|
@ -29,6 +29,7 @@ MenuDialog::MenuDialog(QMenuBar * menuBar, QWidget *parent) :
|
|||
Scroller::enableGestures(ui->listWidget);
|
||||
}
|
||||
|
||||
minWidth = 0;
|
||||
action = nullptr;
|
||||
animationInProgress = false;
|
||||
QEasingCurve easingIn(QEasingCurve::OutCubic);
|
||||
|
@ -260,6 +261,8 @@ void MenuDialog::updateGeometry()
|
|||
width += ui->listWidget->frameWidth() * 2;
|
||||
if (ui->listWidget->verticalScrollBar()->isVisible()) width += ui->listWidget->verticalScrollBar()->width();
|
||||
width += MENU_WIDTH_EXTRA_SPACE;
|
||||
if (width < minWidth) width = minWidth;
|
||||
else minWidth = width;
|
||||
QScreen * screen = QGuiApplication::primaryScreen();
|
||||
if (width > screen->availableGeometry().width()) width = screen->availableGeometry().width();
|
||||
int height = screen->availableGeometry().height();
|
||||
|
|
Loading…
Reference in New Issue