* qt: Add missing -font-family overridden check
* qt: Add missing `QFont::ExtraBold`
* qt: Remove settings depencency from GUIUtil::loadFonts and load earlier
* qt: Modify supportedWeightToIndex
Return -1 in case of failure
* qt: Add GUIUtil::isSupportedWeight
* qt: Make sure there are always supported weights in the settings
* qt: Add "supported defaults" + store weights based on font family
* qt: Use supported defaults in update weight sliders
* qt: Use supported defaults when updating weight sliders
* qt: Fix tests
* qt: Apply themes globally
And do this early
* qt: Fix unexpected prompt icon in dash themes
This has been introduced by removing the `GUIUtil::loadStyleSheet(node,
autoCompleter->popup());` call which triggered a `QEvent::StyleChange`
to propery load the widgets before.
* qt: Move custom css timer out of loadStyleSheet
Co-authored-by: xdustinface <xdustinfacex@gmail.com>
* qt: Make sure font size in MasternodeList gets scaled as expected
* qt: Make sure font size in ShutdownWindow gets scaled as expected
* qt: Drop obsolete application font updates
* qt: Scale QMenu and QMessageBox globally
To make sure non-custom context menus + QMessageBox instances createy by
static calls like QMessageBox::critical are scaled also.
* qt: Avoid redundant scaling for tooltips and menus
* qt: Only update widget's font if required
* qt: Merge GUIUtil::mapFontSizeUpdates into GUIUtil::mapNormalFontUpdates
* qt: Remove obsolete setFixedPitchFont call
* qt: Use setFixedPitchFont in SendCoinsEntry
* qt: Scale font size in increments of 0.25
* qt: Properly scale network traffic stats depending on font metrics
* qt: Update min/max width of OptionsDialog depending on buttons width
* qt: Emit a signal whenever any attribute of AppearanceWidget changed
* qt: Update OptionsDialog width if the appearance changed
* qt: Calculate the initial wide right after the window showed up
Make sure the visibility state of the widgets is correct before width calculations.
* qt: Call parent class showEvent + override it explicit
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
* qt: Let OptionsDialog emit a signal if appearance gets changed
* qt: Resize main toolbar depending on visible buttons / font attributes
* qt: Reset max width after it has been set to still allow window resizing
* qt: Properly update the weight of widgets with default font attributes
* qt: Handle updates to the font attributes
* qt: Use resize() instead of setMaximumWidth()
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
* qt: Call GUIUtil::updateFonts in ModalOverlay constructor
* qt: Make sure default fonts are stored properly for the related widget
* qt: Ignore some low level classes in GUIUtil::updateFont
* rpc: Remove obsolete `.arg()` call
* qt: Drop fixedPitchFont
* qt: Avoid redundant font updates. Let GUIUtil::updateFont handle them
* qt: Scale recent transactions on OverviewPage
They were scaled by font inheritance before
* qt: Ignore QListView in GUIUtil::updateFonts
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
This reverses force logic of `GUIUtil::loadTheme` to not force by default and instead forces it explicit in appearance widgets call.
Due to `fForce` beeing default the ui debug timer wasn't started properly because there was no call of `GUIUtil::loadStylesheet` without `fForce=true` which is a requirement to start the debug timer.
* qt: Add "Appearance Tab" to OptionsDialog and move "Theme" into it
* qt: Add "Font scale" settings to Appearance Tab of OptionsDialog
Allows to scale the font in the same way like with -font-scale.
* qt: Add font weight settings to Appearance tab of OptionsDialog
Allows to set the weight for normal and bold text
* qt: Add font family setting to Appearance tab of OptionsDialog
Allows to choose between system default font or montserrat
* qt: GUIUtil - Maintain a map with supported weights for all fonts.
* qt: Introduce AppearanceWidget
A widget which just wraps all appearance related settings.
Also replaces Appearance settings in OptionsDialog with the introduced widget.
* qt: Introduce initial appearance setup dialog
This will pop up the first time the user starts the DashCore version with the new UI changes.
* qt: Load font related settings in GUIUtil::loadFonts
* qt: Make osDefaultFont global in GUIUtil to fix getFont()
Before getFont(FontFamily, ...) wasn't always able to return the correct font without the requested font family beeing set as application font upfront.
* qt: Improve supported weight helpers
Add conversion helpers. and let all of them depend on the currently selected font.
* qt: Default weights based on supported if not all weights are supported
For SystemDefault only because Montserrat has all supported weights.
* qt/test: Fix GUI tests
* Store normal/bold font GUI settings as "pure" (not "supported") values
* Rename supportedWeighti(To/From)Arg to supportedWeight(To/From)Index to better match the logic and avoid confusion with weight(To/From)Arg functions
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>