UI: Reduce settings dialog height if greater than the desktop
Co-authored-by: Warchamp7 <warchamp2003@hotmail.com> Co-authored-by: derrod <dennis@obsproject.com> Co-authored-by: Ryan Foster <ryan@obsproject.com>
This commit is contained in:
parent
dcd1bd9a80
commit
d88e788f7f
2 changed files with 15 additions and 0 deletions
|
|
@ -4279,6 +4279,20 @@ void OBSBasicSettings::closeEvent(QCloseEvent *event)
|
|||
event->ignore();
|
||||
}
|
||||
|
||||
void OBSBasicSettings::showEvent(QShowEvent *event)
|
||||
{
|
||||
QDialog::showEvent(event);
|
||||
|
||||
/* Reduce the height of the widget area if too tall compared to the screen
|
||||
* size (e.g., 720p) with potential window decoration (e.g., titlebar). */
|
||||
const int titleBarHeight =
|
||||
QApplication::style()->pixelMetric(QStyle::PM_TitleBarHeight);
|
||||
const int maxHeight =
|
||||
round(screen()->availableGeometry().height() - titleBarHeight);
|
||||
if (size().height() >= maxHeight)
|
||||
resize(size().width(), maxHeight);
|
||||
}
|
||||
|
||||
void OBSBasicSettings::reject()
|
||||
{
|
||||
if (AskIfCanCloseSettings())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue