Changeset View
Changeset View
Standalone View
Standalone View
plugins/kdecorations/aurorae/src/lib/themeconfig.cpp
Show All 13 Lines | |||||
14 | You should have received a copy of the GNU General Public License | 14 | You should have received a copy of the GNU General Public License | ||
15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
16 | *********************************************************************/ | 16 | *********************************************************************/ | ||
17 | #include "themeconfig.h" | 17 | #include "themeconfig.h" | ||
18 | 18 | | |||
19 | #include <KConfig> | 19 | #include <KConfig> | ||
20 | #include <KConfigGroup> | 20 | #include <KConfigGroup> | ||
21 | 21 | | |||
22 | #include <QGuiApplication> | ||||
23 | #include <QScreen> | ||||
24 | | ||||
22 | namespace Aurorae | 25 | namespace Aurorae | ||
23 | { | 26 | { | ||
24 | 27 | | |||
25 | ThemeConfig::ThemeConfig() | 28 | ThemeConfig::ThemeConfig() | ||
26 | : m_activeTextColor(defaultActiveTextColor()) | 29 | : m_activeTextColor(defaultActiveTextColor()) | ||
27 | , m_activeFocusedTextColor(defaultActiveFocusedTextColor()) | 30 | , m_activeFocusedTextColor(defaultActiveFocusedTextColor()) | ||
28 | , m_activeUnfocusedTextColor(defaultActiveUnfocusedTextColor()) | 31 | , m_activeUnfocusedTextColor(defaultActiveUnfocusedTextColor()) | ||
29 | , m_inactiveTextColor(defaultInactiveTextColor()) | 32 | , m_inactiveTextColor(defaultInactiveTextColor()) | ||
▲ Show 20 Lines • Show All 87 Lines • ▼ Show 20 Line(s) | 89 | { | |||
117 | } | 120 | } | ||
118 | else { | 121 | else { | ||
119 | m_verticalAlignment = Qt::AlignBottom; | 122 | m_verticalAlignment = Qt::AlignBottom; | ||
120 | } | 123 | } | ||
121 | m_animationTime = general.readEntry("Animation", defaultAnimationTime()); | 124 | m_animationTime = general.readEntry("Animation", defaultAnimationTime()); | ||
122 | m_shadow = general.readEntry("Shadow", defaultShadow()); | 125 | m_shadow = general.readEntry("Shadow", defaultShadow()); | ||
123 | m_decorationPosition = general.readEntry("DecorationPosition", defaultDecorationPosition()); | 126 | m_decorationPosition = general.readEntry("DecorationPosition", defaultDecorationPosition()); | ||
124 | 127 | | |||
128 | int scaleFactor = 1; | ||||
129 | QScreen *primary = QGuiApplication::primaryScreen(); | ||||
130 | if (primary) { | ||||
131 | const qreal dpi = primary->logicalDotsPerInchX(); | ||||
132 | scaleFactor = (qreal)dpi / (qreal)96; | ||||
133 | } | ||||
134 | | ||||
125 | KConfigGroup border(&conf, QStringLiteral("Layout")); | 135 | KConfigGroup border(&conf, QStringLiteral("Layout")); | ||
126 | // default values taken from KCommonDecoration::layoutMetric() in kcommondecoration.cpp | 136 | // default values taken from KCommonDecoration::layoutMetric() in kcommondecoration.cpp | ||
127 | m_borderLeft = border.readEntry("BorderLeft", defaultBorderLeft()); | 137 | m_borderLeft = scaleFactor * border.readEntry("BorderLeft", defaultBorderLeft()); | ||
128 | m_borderRight = border.readEntry("BorderRight", defaultBorderRight()); | 138 | m_borderRight = scaleFactor * border.readEntry("BorderRight", defaultBorderRight()); | ||
129 | m_borderBottom = border.readEntry("BorderBottom", defaultBorderBottom()); | 139 | m_borderBottom = scaleFactor * border.readEntry("BorderBottom", defaultBorderBottom()); | ||
130 | m_borderTop = border.readEntry("BorderTop", defaultBorderTop()); | 140 | m_borderTop = scaleFactor * border.readEntry("BorderTop", defaultBorderTop()); | ||
131 | 141 | | |||
132 | m_titleEdgeTop = border.readEntry("TitleEdgeTop", defaultTitleEdgeTop()); | 142 | m_titleEdgeTop = scaleFactor * border.readEntry("TitleEdgeTop", defaultTitleEdgeTop()); | ||
133 | m_titleEdgeBottom = border.readEntry("TitleEdgeBottom", defaultTitleEdgeBottom()); | 143 | m_titleEdgeBottom = scaleFactor * border.readEntry("TitleEdgeBottom", defaultTitleEdgeBottom()); | ||
134 | m_titleEdgeLeft = border.readEntry("TitleEdgeLeft", defaultTitleEdgeLeft()); | 144 | m_titleEdgeLeft = scaleFactor * border.readEntry("TitleEdgeLeft", defaultTitleEdgeLeft()); | ||
135 | m_titleEdgeRight = border.readEntry("TitleEdgeRight", defaultTitleEdgeRight()); | 145 | m_titleEdgeRight = scaleFactor * border.readEntry("TitleEdgeRight", defaultTitleEdgeRight()); | ||
136 | m_titleEdgeTopMaximized = border.readEntry("TitleEdgeTopMaximized", defaultTitleEdgeTopMaximized()); | 146 | m_titleEdgeTopMaximized = scaleFactor * border.readEntry("TitleEdgeTopMaximized", defaultTitleEdgeTopMaximized()); | ||
137 | m_titleEdgeBottomMaximized = border.readEntry("TitleEdgeBottomMaximized", defaultTitleEdgeBottomMaximized()); | 147 | m_titleEdgeBottomMaximized = scaleFactor * border.readEntry("TitleEdgeBottomMaximized", defaultTitleEdgeBottomMaximized()); | ||
138 | m_titleEdgeLeftMaximized = border.readEntry("TitleEdgeLeftMaximized", defaultTitleEdgeLeftMaximized()); | 148 | m_titleEdgeLeftMaximized = scaleFactor * border.readEntry("TitleEdgeLeftMaximized", defaultTitleEdgeLeftMaximized()); | ||
139 | m_titleEdgeRightMaximized = border.readEntry("TitleEdgeRightMaximized", defaultTitleEdgeRightMaximized()); | 149 | m_titleEdgeRightMaximized = scaleFactor * border.readEntry("TitleEdgeRightMaximized", defaultTitleEdgeRightMaximized()); | ||
140 | m_titleBorderLeft = border.readEntry("TitleBorderLeft", defaultTitleBorderLeft()); | 150 | m_titleBorderLeft = scaleFactor * border.readEntry("TitleBorderLeft", defaultTitleBorderLeft()); | ||
141 | m_titleBorderRight = border.readEntry("TitleBorderRight", defaultTitleBorderRight()); | 151 | m_titleBorderRight = scaleFactor * border.readEntry("TitleBorderRight", defaultTitleBorderRight()); | ||
142 | m_titleHeight = border.readEntry("TitleHeight", defaultTitleHeight()); | 152 | m_titleHeight = scaleFactor * border.readEntry("TitleHeight", defaultTitleHeight()); | ||
143 | 153 | | |||
144 | m_buttonWidth = border.readEntry("ButtonWidth", defaultButtonWidth()); | 154 | m_buttonWidth = border.readEntry("ButtonWidth", defaultButtonWidth()); | ||
145 | m_buttonWidthMinimize = border.readEntry("ButtonWidthMinimize", m_buttonWidth); | 155 | m_buttonWidthMinimize = scaleFactor * border.readEntry("ButtonWidthMinimize", m_buttonWidth); | ||
146 | m_buttonWidthMaximizeRestore = border.readEntry("ButtonWidthMaximizeRestore", m_buttonWidth); | 156 | m_buttonWidthMaximizeRestore = scaleFactor * border.readEntry("ButtonWidthMaximizeRestore", m_buttonWidth); | ||
147 | m_buttonWidthClose = border.readEntry("ButtonWidthClose", m_buttonWidth); | 157 | m_buttonWidthClose = scaleFactor * border.readEntry("ButtonWidthClose", m_buttonWidth); | ||
148 | m_buttonWidthAllDesktops = border.readEntry("ButtonWidthAlldesktops", m_buttonWidth); | 158 | m_buttonWidthAllDesktops = scaleFactor * border.readEntry("ButtonWidthAlldesktops", m_buttonWidth); | ||
149 | m_buttonWidthKeepAbove = border.readEntry("ButtonWidthKeepabove", m_buttonWidth); | 159 | m_buttonWidthKeepAbove = scaleFactor * border.readEntry("ButtonWidthKeepabove", m_buttonWidth); | ||
150 | m_buttonWidthKeepBelow = border.readEntry("ButtonWidthKeepbelow", m_buttonWidth); | 160 | m_buttonWidthKeepBelow = scaleFactor * border.readEntry("ButtonWidthKeepbelow", m_buttonWidth); | ||
151 | m_buttonWidthShade = border.readEntry("ButtonWidthShade", m_buttonWidth); | 161 | m_buttonWidthShade = scaleFactor * border.readEntry("ButtonWidthShade", m_buttonWidth); | ||
152 | m_buttonWidthHelp = border.readEntry("ButtonWidthHelp", m_buttonWidth); | 162 | m_buttonWidthHelp = scaleFactor * border.readEntry("ButtonWidthHelp", m_buttonWidth); | ||
153 | m_buttonWidthMenu = border.readEntry("ButtonWidthMenu", m_buttonWidth); | 163 | m_buttonWidthMenu = scaleFactor * border.readEntry("ButtonWidthMenu", m_buttonWidth); | ||
154 | m_buttonWidthAppMenu = border.readEntry("ButtonWidthAppMenu", m_buttonWidthMenu); | 164 | m_buttonWidthAppMenu = scaleFactor * border.readEntry("ButtonWidthAppMenu", m_buttonWidthMenu); | ||
155 | m_buttonHeight = border.readEntry("ButtonHeight", defaultButtonHeight()); | 165 | m_buttonWidth *= scaleFactor; | ||
156 | m_buttonSpacing = border.readEntry("ButtonSpacing", defaultButtonSpacing()); | 166 | m_buttonHeight = scaleFactor * border.readEntry("ButtonHeight", defaultButtonHeight()); | ||
157 | m_buttonMarginTop = border.readEntry("ButtonMarginTop", defaultButtonMarginTop()); | 167 | m_buttonSpacing = scaleFactor * border.readEntry("ButtonSpacing", defaultButtonSpacing()); | ||
158 | m_explicitButtonSpacer = border.readEntry("ExplicitButtonSpacer", defaultExplicitButtonSpacer()); | 168 | m_buttonMarginTop = scaleFactor * border.readEntry("ButtonMarginTop", defaultButtonMarginTop()); | ||
159 | 169 | m_explicitButtonSpacer = scaleFactor * border.readEntry("ExplicitButtonSpacer", defaultExplicitButtonSpacer()); | |||
160 | m_paddingLeft = border.readEntry("PaddingLeft", defaultPaddingLeft()); | 170 | | ||
161 | m_paddingRight = border.readEntry("PaddingRight", defaultPaddingRight()); | 171 | m_paddingLeft = scaleFactor * border.readEntry("PaddingLeft", defaultPaddingLeft()); | ||
162 | m_paddingTop = border.readEntry("PaddingTop", defaultPaddingTop()); | 172 | m_paddingRight = scaleFactor * border.readEntry("PaddingRight", defaultPaddingRight()); | ||
163 | m_paddingBottom = border.readEntry("PaddingBottom", defaultPaddingBottom()); | 173 | m_paddingTop = scaleFactor * border.readEntry("PaddingTop", defaultPaddingTop()); | ||
174 | m_paddingBottom = scaleFactor * border.readEntry("PaddingBottom", defaultPaddingBottom()); | ||||
164 | } | 175 | } | ||
165 | 176 | | |||
166 | QColor ThemeConfig::activeTextColor(bool useTabs, bool focused) const | 177 | QColor ThemeConfig::activeTextColor(bool useTabs, bool focused) const | ||
167 | { | 178 | { | ||
168 | if (!useTabs) { | 179 | if (!useTabs) { | ||
169 | return m_activeTextColor; | 180 | return m_activeTextColor; | ||
170 | } | 181 | } | ||
171 | if (focused) { | 182 | if (focused) { | ||
Show All 19 Lines |