Skip to content

Commit

Permalink
perf: Speed Up Opening of Settings Dialog (#4193)
Browse files Browse the repository at this point in the history
fix #1266
  • Loading branch information
Nerixyz authored Nov 27, 2022
1 parent 032f290 commit a16342f
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 6 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
- Bugfix: Fixed the wrong right-click menu showing in the chat input box. (#4177)
- Bugfix: Fixed popup windows not appearing/minimizing correctly on the Windows taskbar. (#4181)
- Bugfix: Fixed white border appearing around maximized window on Windows. (#4190)
- Bugfix: Fixed window scaling being applied too many times on startup, causing windows like Settings to be slow. (#4193)

## 2.4.0-beta

Expand Down
10 changes: 7 additions & 3 deletions src/widgets/BaseWindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ BaseWindow::BaseWindow(FlagsEnum<Flags> _flags, QWidget *parent)
this->updateScale();
});
},
this->connections_);
this->connections_, false);

this->updateScale();

Expand Down Expand Up @@ -786,8 +786,12 @@ bool BaseWindow::handleSHOWWINDOW(MSG *msg)
#ifdef USEWINSDK
if (auto dpi = getWindowDpi(msg->hwnd))
{
this->nativeScale_ = dpi.get() / 96.f;
this->updateScale();
float currentScale = (float)dpi.get() / 96.F;
if (currentScale != this->nativeScale_)
{
this->nativeScale_ = currentScale;
this->updateScale();
}
}

if (!this->shown_ && this->isVisible())
Expand Down
7 changes: 4 additions & 3 deletions src/widgets/dialogs/SettingsDialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ SettingsDialog::SettingsDialog(QWidget *parent)
{
this->setObjectName("SettingsDialog");
this->setWindowTitle("Chatterino Settings");
// Disable the ? button in the titlebar until we decide to use it
this->setWindowFlags(this->windowFlags() &
~Qt::WindowContextHelpButtonHint);

this->resize(915, 600);
this->themeChangedEvent();
this->scaleChangedEvent(this->scale());
Expand All @@ -41,9 +45,6 @@ SettingsDialog::SettingsDialog(QWidget *parent)
this->overrideBackgroundColor_ = QColor("#111111");
this->scaleChangedEvent(this->scale()); // execute twice to width of item

// Disable the ? button in the titlebar until we decide to use it
this->setWindowFlags(this->windowFlags() &
~Qt::WindowContextHelpButtonHint);
this->addShortcuts();
this->signalHolder_.managedConnect(getApp()->hotkeys->onItemsUpdated,
[this]() {
Expand Down

0 comments on commit a16342f

Please sign in to comment.