diff --git a/doc/kcontrol/colors/index.docbook b/doc/kcontrol/colors/index.docbook
index ebf0a2cb3..10fb8968f 100644
--- a/doc/kcontrol/colors/index.docbook
+++ b/doc/kcontrol/colors/index.docbook
@@ -1,366 +1,366 @@
]>
Colors
&Matthew.Woehlke; &Matthew.Woehlke.mail;
2018-03-30
Plasma 5.12
KDE
KControl
color
kcm
Colors
Scheme Management
This module lets you manage the color schemes on your machine.
It shows a list of color schemes shipped with &plasma; and a preview at the top.
Only one scheme is active at once, but you may edit schemes.
You can remove schemes using Remove Scheme.
Note that system schemes cannot be removed; the button for this action is
disabled.
If you have an Internet connection,
you can also browse and retrieve user-created schemes using Get
- New Schemes....
+ New Color Schemes....
You can also install schemes from a file that you have downloaded or otherwise
obtained, as well as import &kde; 4 schemes named like "*.colors".
If Apply colors to non-Qt applications
is checked, Plasma will attempt to export its color scheme so that
non-Qt applications will use the same colors. Most applications will
honor the exported scheme to varying degrees, though some may have bugs
or otherwise not honor the exported scheme.
Note: This documentation will sometimes refer to the
"current" scheme, or the "active" scheme.
The "current" scheme is the set of colors and color scheme options
that was most recently applied, &ie; what you would get if you choose
Cancel. The "active" scheme is the set of
colors as has been most recently edited by you, &ie; what you would get if
you choose Apply.
Edit or Create Schemes
To edit or create new schemes select a scheme from the list and press the
Edit Scheme button to open a dialog with three tabs
Options, Colors, Disabled
and Inactive.
When you have created a scheme you like, you can upload it, reset it or save it
under a different name or overwrite the active scheme.
Color Scheme Options
The Options tab allows you to change some
properties that deal with how the color scheme is used, as well as some
options that change the color scheme that are different from actually
assigning colors.
Apply effects to inactive windows
— If checked, state effects (see below) will be applied to inactive
windows. This can help visually identify active versus inactive windows,
and may have aesthetic value, depending on your taste. However, some
users feel that it causes distracting "flickering" since
windows must be repainted when they become inactive. Unlike desktop
effects, color state effects do not require compositing support and will
work on all systems, however they will only work on &kde; applications.
Use different colors for inactive selections
— If checked, the current selection in elements which do not have
input focus will be drawn using a different color. This can assist visual
identification of the element with input focus in some applications,
especially those which simultaneously display several lists.
Shade sorted column in lists
— If checked, multi-column lists will use a slightly different
color to paint the column whose information is being used to sort the
items in the list.
Contrast
— This slider controls the contrast of shaded elements, such as
frame borders and the "3D" effects used by most styles. A lower
value gives less contrast and therefore softer edges, while a higher
value makes such edges "stand out" more.
Colors
The Colors tab allows you to change the colors in
the active color scheme.
Creating or changing a scheme is a simple matter of clicking on the
swatch in the color list and selecting a new color. It is suggested
that you save your scheme when you
are done.
The Common Colors set, which is displayed
initially, is not actually a "set" in the sense used by Plasma (see
next section), but presents a number of color roles in a way that makes it
easier to edit the scheme as a whole. When creating a new color scheme, you
will usually change these colors first, and use the other sets to tweak
specific colors if needed.
Note that Common Colors makes available roles from
all sets. For example, "View Background" here is shorthand for the
Normal Background role from the View set. Also, setting colors that do not
refer to a specific set will change that color in all
sets. (As an exception, "Inactive Text" will change the color for
all sets except for Selection; there is a separate
"Selection Inactive Text" for Inactive Text in the Selection set.)
Some roles may not be visible under Common Colors at
all, and can only be changed (if needed) by selecting the appropriate
set.
Color Sets
Plasma breaks the color scheme into several sets based on the type
of user interface element, as follows:
View —
information presentation elements, such as lists, trees, text input boxes, etc.
Window —
window elements that are not buttons or views.
Button —
buttons and similar elements.
Selection —
selected text and items.
Tooltip —
tool tips, "What's This" tips, and similar elements.
Complementary —
Areas of applications with an alternative color scheme; usually with a dark background for light color schemes. Examples of areas with this inverted color scheme are the logout interface, the lock screen and the fullscreen mode for some applications.
Each set contains a number of color roles.
Each set has the same roles. All colors are associated with
one of the above sets.
Color Roles
Each color set is made up of a number of roles which are available in
all other sets. In addition to the obvious Normal Text and Normal
Background, these roles are as follows:
Alternate Background —
used when there is a need to subtly change the background to aid in
item association. This might be used ⪚ as the background of a
heading, but is mostly used for alternating rows in lists, especially
multi-column lists, to aid in visually tracking rows.
Link Text —
used for hyperlinks or to otherwise indicate "something which may
be visited", or to show relationships.
Visited Text —
used for "something (⪚ a hyperlink) that has been
visited", or to indicate something that is "old".
Active Text —
used to indicate an active element or attract attention, ⪚ alerts,
notifications; also for hovered hyperlinks.
Inactive Text —
used for text which should be unobtrusive, ⪚ comments,
"subtitles", unimportant information, etc.
Negative Text —
used for errors, failure notices, notifications that an action may be
dangerous (⪚ unsafe web page or security context), etc.
Neutral Text —
used to draw attention when another role is not appropriate; ⪚
warnings, to indicate secure/encrypted content, etc.
Positive Text —
used for success notices, to indicate trusted content, etc.
As well as the text roles, there are a few additional
"decoration" roles that are used for drawing lines or shading
UI elements (while the above may, in appropriate circumstances, also be
used for this purpose, the following are specifically
not meant for drawing text). These are:
Focus Decoration —
used to indicate the item which has active input focus.
Hover Decoration —
used for mouse-over effects, ⪚ the "illumination" effects for
buttons.
In addition, except for Inactive Text, there is a corresponding
background role for each of the text roles. Currently (except for Normal
and Alternate Background), these colors are not chosen by the user, but are
automatically determined based on Normal Background and the corresponding
Text color. These colors may be previewed by selecting one of the sets
other than "Common Colors".
The choice of color role is left to the developer; the above are
guidelines intended to represent typical usage.
Window Manager Colors
As previously stated, the Window Manager set has its own roles,
independent of those in other sets. These are (currently) only accessible
via Common Colors, and are as follows:
Active Titlebar —
used to draw the title bar background, borders, and/or decorations for
the active window (that is, the one with input focus). Not all window
decorations will use this in the same way, and some may even use the
Normal Background from the Window set to draw the title bar.
Active Titlebar Text —
used to draw the title bar text when Active Titlebar is used to draw
the title bar background. May also be used for other foreground
elements which use Active Titlebar as the background.
The Inactive Titlebar [Text] roles are the same as the above, but for
inactive windows, rather than active windows.
Color State Effects
Color state effects are applied to interface elements in the inactive
(windows that do not have focus; only if Apply inactive window
color effects is enabled) or disabled states. By changing the
effects, the appearance of elements in these states can be changed. Usually,
inactive elements will have reduced contrast (text fades slightly into the
background) and may have slightly reduced intensity, while disabled elements
will have strongly reduced contrast and are often notably darker or lighter.
Three types of effect may be applied to each state (with the effects
of the two states being independent). These are Intensity, Color and
Contrast. The first two (Intensity, Color) control the overall color, while
the last (Contrast) deals with the foreground colors relative to the
background.
Intensity
Intensity allows the overall color to be lightened or darkened.
Setting the slider to the middle produces no change. The available effects
are:
Shade —
makes everything lighter or darker in a controlled manner. Each
"tick" on the slider increases or decreases the overall
intensity (&ie; perceived brightness) by an absolute amount.
Darken —
changes the intensity to a percentage of the initial value. A slider
setting halfway between middle and maximum results in a color half as
intense as the original. The minimum gives a color twice as intense as
the original.
Lighten —
conceptually the opposite of darken; lighten can be thought of as
working with "distance from white", where darken works with
"distance from black". The minimum is a color twice as
"far" from white as the original, while halfway between
middle and maximum gives an intensity halfway between the original
color and white.
Color
Color also changes the overall color, but is not limited to
intensity. The available effects are:
Desaturate —
changes the relative chroma. The middle setting produces no change;
maximum gives a gray whose perceptual intensity equals that of the
original color. Lower settings increase the chroma, giving a color that
is less gray / more "vibrant" than the original.
Fade —
smoothly blends the original color into a reference color. The minimum
setting on the slider produces no change; maximum gives the reference
color.
Tint —
similar to Fade, except that the color (hue and chroma) changes more
quickly while the intensity changes more slowly as the slider value is
increased.
Contrast
The contrast effects are similar to the color effects, except they
apply to the text, using the background color as the reference color, and
desaturate is not available. Fade produces text that "fades out"
more quickly, but keeps its color longer, while Tint produces text that
changes color to match the background more quickly while keeping a greater
intensity contrast for longer (where "longer" means higher
settings on the slider). For Contrast effects, the minimum setting on the
slider produces no change, while maximum causes the text to completely
disappear into the background.
diff --git a/doc/kcontrol/desktopthemedetails/index.docbook b/doc/kcontrol/desktopthemedetails/index.docbook
index 00a47d376..6aef47a0a 100644
--- a/doc/kcontrol/desktopthemedetails/index.docbook
+++ b/doc/kcontrol/desktopthemedetails/index.docbook
@@ -1,62 +1,62 @@
]>
Desktop Theme
Andrew
Lake
2018-03-25
Plasma 5.12
KDE
System Settings
desktop
theme
plasma
A preview of available themes is displayed in this dialog. Select a theme by clicking on it.
-Use the Get New Themes button to download additional themes from the Internet
+Use the Get New Desktop Themes... button to download additional themes from the Internet
or load a theme from file.
The Remove button is enabled only for custom themes.
Since &plasma; 5.6 it is no longer possible to edit and customize individual components or items in a theme.
The recommended tools to check, blend and test themes is the plasma-sdk package, the
Plasma Theme Explorer specifically.
If the plasma-sdk package is installed on your system, a button appears hovering a theme preview and
lets you start the Plasma Theme Explorer.
For more technical information visit this page.
diff --git a/doc/kcontrol/emoticons/index.docbook b/doc/kcontrol/emoticons/index.docbook
index a3b361db0..3faf912c6 100644
--- a/doc/kcontrol/emoticons/index.docbook
+++ b/doc/kcontrol/emoticons/index.docbook
@@ -1,171 +1,171 @@
]>
Emoticons
&Anne-Marie.Mahfouf;
2016-09-21
Plasma 5.8
KDE
System Settings
emoticons
KCMEmoticons
Emoticons Themes Manager
Introduction
Screenshot of the Emoticons Theme Manager
The Emoticons Theme Manager
Emoticons can be used in several &kde; applications: &kopete;, &konversation;, &kmail;... This module offers you to easily manage your emoticons sets. You can:
add emoticons themes
remove emoticons themes
install an existing theme
add, remove or edit emoticons within a theme
Please note that you will set emoticons themes per application.
The module is separated in two parts: on the left you can manage your themes and on the right you can manage emoticons within themes.
An emoticon consists in two parts: an icon (typically a .png, .mng or .gif picture) and a text describing the emoticon. The text can be some ASCII symbols like ]:-> or the emoticon short description enclosed within * like *FRIEND*. The user types the symbol or the text and the emoticon icon replaces it.
The emoticons themes will be saved locally in your home in $(qtpaths --paths GenericDataLocation)/emoticons.
Emoticons Themes
This section allows you to manage emoticons themes.
Require spaces around emoticons
When this option is checked, you need to separate the emoticon with a white space before and after it so it is changed to an icon. If you type "Hello:-)" then this string will stay as it is while if you type "Hello :-)" you will get "Hello" followed by the :-) emoticon.
When this option is not checked (default), each emoticon string will be replaced by its icon.
Install from File
This action allows you to install a theme you downloaded yourself. A theme file is an archive file, usually a .tar.gz or a .zip file or any other archive files. A dialog asks you for the location of this local archive file and after you entered or dragged the URL and clicked OK, the theme is installed and will appear in the themes list.
-Get New Theme
+Get New Emoticons...
You need to be connected to the Internet to use this action. A dialog displays a list of emoticons themes from https://store.kde.org/ and you can install one by clicking the Install button on the right side of the theme description in the list.
New Theme
You can create your own new theme from scratch. Clicking on this button brings a dialog asking for the name of the new theme. You can then use the Add... button on the right to create new emoticons and their associated text.
Remove Theme
This action will remove the selected theme from your disk. Select the theme you want to remove in the list. Click the Remove Theme button. This theme will be removed from the disk if you click Apply.
Emoticons Management
This section allows you to manage emoticons within the selected theme. The list on the right displays all emoticons of the selected theme. You can add, edit or remove any emoticon. Select a theme in the list on the left and then select the action you want to perform.
Add...
This button allows you to add an emoticon to the selected theme. The dialog asks you to choose an icon for your emoticon and to enter the corresponding ASCII symbol or text attached to it. After that, clicking OK will add your new emoticon in the emoticon list, you will see the icon and the corresponding text displayed. If you want to modify either the icon or the text, you can use the Edit... button described below.
Remove
This will remove the selected emoticon from the selected theme. You need to click the Yes button to validate this action.
Edit...
The Edit... button allows you to change either the icon or the text of the selected emoticon. You need to click the OK button to validate this action.
diff --git a/doc/kcontrol/fontinst/index.docbook b/doc/kcontrol/fontinst/index.docbook
index ab377fc6e..3c0d9d23c 100644
--- a/doc/kcontrol/fontinst/index.docbook
+++ b/doc/kcontrol/fontinst/index.docbook
@@ -1,112 +1,112 @@
]>
Font Management
&Craig.Drummond; &Craig.Drummond.Mail;
2018-03-31
Plasma 5.12
KDE
Systemsettings
fonts
Font Management
This module is responsible for installing, un-installing, previewing and managing your fonts.
Font Groups
There are 4 special pre-defined font groups:
All Fonts
This will display all fonts, both personal and system-wide.
Personal Fonts
The fonts shown will be your personal fonts, and will not be available to other users.
System Fonts
The fonts shown will be those available to all users. Installing a font system-wide, or removing a system-wide font, will require administrator privileges.
Unclassified
This will list all fonts that have not been placed into any user-defined groups. This group will only appear if you have some user-defined groups.
To add a font to a group, drag it from the list of fonts onto a group. To remove a font from a group, drag the font onto the All Fonts
group.
Below this list you find buttons to create a new group, remove a group and enable or disable the fonts in the current group.
In the context menu of this list you have additional menuitems to print font samples and export a font to a zip archive.
Enabling and Disabling
Users with many fonts may find it useful to only have certain fonts enabled (or active) at certain times. To facilitate this, this module will allow you to disable individual fonts, or whole groups of fonts. Disabling a font does not remove the font from the system, it simply hides it so that it no longer appears within applications. Re-enabling a font will then allow it to be used.
Font List
The main display is a list of the installed fonts, grouped via the fonts' family name - the number in square brackets represents the number of installed styles for that family. e.g. The Times
font may be listed as:
Times [4]
Regular
Italic
Bold
Bold Italic
To install a font, press the Add... button, and select the desired fonts from within the file dialog. The selected font group will control where the fonts will be installed.
To un-install fonts, select the appropriate fonts from the list, and press the Delete... button.
Click with the &RMB; to open a context menu with some additional actions like Enable, Disable, Print, Open in Font Viewer and Reload.
Font Filtering
A text field on top of the font preview allows you to filter the list of fonts. You can filter fonts based upon different categories:
Family.
Style.
Foundry.
FontConfig match. This allows you to enter a family name, and see the family that fontconfig would actually use.
Font file type.
Font file name.
Font file location.
Writing system.
Get New Fonts
-New fonts may be installed from local files, or downloaded using Get Hot New Stuff. The Get New Fonts entry in the tool button (located above the group list), allows you to install fonts from the Internet. The fonts downloaded in this manner will be installed into your Personal Fonts
group. To install system-wide, you will need to move them to the System Fonts
group - this may be achieved by dragging the fonts over the System Fonts
group entry and will require administrator privileges.
+New fonts may be installed from local files, or downloaded using Get Hot New Stuff. The Get New Fonts... entry in the tool button (located above the group list), allows you to install fonts from the Internet. The fonts downloaded in this manner will be installed into your Personal Fonts
group. To install system-wide, you will need to move them to the System Fonts
group - this may be achieved by dragging the fonts over the System Fonts
group entry and will require administrator privileges.
Duplicate Fonts
If you have lots of fonts installed on your system it is possible that you may have duplicates.
Click on the tools icon above the group list and select the Scan For Duplicate Fonts... tool, a simple tool that will scan your system looking for fonts that have multiple files associated with them. For example, if you have times.ttf
and times.TTF
installed in /usr/local/share/fonts
the underlying font mechanism (called FontConfig
) will only see one of these. So, if you un-installed the font, it would re-appear, as only one of the files would have been removed. Running this tool will produce a dialog listing each font that has multiple files, and the corresponding list of files. To select a file for deletion, click on the column containing the trash can icon.
Preview
This displays a preview text in different font sizes.
Using the context menu enables you to zoom in and out, select a preview type (Standard Preview or All Characters) and change the preview text.
Launch the application &kfontview; if you need additional preview types for Unicode Blocks.
diff --git a/doc/kcontrol/icons/index.docbook b/doc/kcontrol/icons/index.docbook
index 03713e502..d44de17c6 100644
--- a/doc/kcontrol/icons/index.docbook
+++ b/doc/kcontrol/icons/index.docbook
@@ -1,134 +1,134 @@
]>
Icons
&Mike.McBride; &Mike.McBride.mail;
&Jost.Schenck; &Jost.Schenck.mail;
&Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;
2018-08-21
Plasma 5.13
KDE
KControl
icon
&plasma; comes with a full set of icons in several sizes. These icons
are being used all over &plasma;: the desktop, the panel, the &dolphin; file
manager, in every toolbar of every &plasma; application, etc. The icons
control module offers you very flexible ways of customizing the way &plasma;
handles icons.
Here's a screenshot of the icon theme manager
Customizing &plasma; icons
In this module you can:
install and choose icon themes
choose different icon sizes
remove icon themes
Please note that some of these settings may depend on
your selected icon theme. &plasma; comes with several icon themes by default,
Breeze, Breeze Dark and Oxygen.
At the top is a preview of the current theme icons. Most default
installations will have only a few icon theme available, amongst them the &plasma; default
Breeze theme. You can also download more from the Internet from
https://store.kde.org/ or
install them from a local file.
On hover an animated preview shows a random selection, common mime types
and common folder icons.
If you want to remove a theme, use the overlay
icon at the bottom right of the theme icon. To undo this action click on the
icon.
If you hit Apply or OK the themes
selected for removal are actually deleted, so you cannot undo individual or all
deletions.
Configure Icon Sizes
Select one of the components and use the slider to adapt the corresponding size.
Configure Icon Sizes
Configure Icon Sizes
-Get New Themes...
+Get New Icons...
You need to be connected to the Internet to use it. Clicking on this button will display a dialog where you can choose a new icon theme. Clicking on Install in the dialog will install the chosen icon theme and after you Close the installer your new theme is immediately available.
Get New Icon Themes
Get New Icon Themes
Install from File...
If you downloaded new themes from the internet, you can use this to browse to the
location of those newly downloaded themes. Clicking on this button will bring you the file dialog to point to the icon theme tarball you have on your disk.
Clicking Open in this dialog will install the theme you pointed to and make it available in the theme list.
diff --git a/doc/kcontrol/splashscreen/index.docbook b/doc/kcontrol/splashscreen/index.docbook
index fdab5450f..3710ef4bb 100644
--- a/doc/kcontrol/splashscreen/index.docbook
+++ b/doc/kcontrol/splashscreen/index.docbook
@@ -1,117 +1,117 @@
]>
Splash Screen
Anne-Marie
Mahfouf
&Anne-Marie.Mahfouf.mail;
2015-04-08
Plasma 5.3
KDE
System Settings
splash screen
theme
This module provides an interface to view and select splash screen themes.
Here's a screenshot of the splash screen manager
The splash screen manager module
On this page you can see previews of already installed splash screens. The preview of the current splash screen is highlighted.
Hover a preview image with the mouse cursor then the button Test Splashscreen appears at the top right of the image.
Press this button to view the splashscreen in action.
diff --git a/kcms/colors/colorsettings.ui b/kcms/colors/colorsettings.ui
index bd7af5486..9a8f671fc 100644
--- a/kcms/colors/colorsettings.ui
+++ b/kcms/colors/colorsettings.ui
@@ -1,143 +1,143 @@
colorSettings
0
0
736
422
0
0
0
0
-
-
Configure the current color scheme
Edit Scheme
false
-
Qt::Horizontal
40
20
-
false
Remove the selected scheme
Remove Scheme
false
-
Get new color schemes from the Internet
- Get &New Scheme
+ Get &New Color Schemes...
-
0
0
23
16
-
0
0
-
Import a color scheme from a file
&Install from File
-
true
Apply colors to &non-Qt applications
PreviewWidget
QWidget
1
schemeList
diff --git a/kcms/cursortheme/package/contents/ui/main.qml b/kcms/cursortheme/package/contents/ui/main.qml
index 124ff3662..c890b816d 100644
--- a/kcms/cursortheme/package/contents/ui/main.qml
+++ b/kcms/cursortheme/package/contents/ui/main.qml
@@ -1,181 +1,181 @@
/*
Copyright (c) 2015 Marco Martin
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
import QtQuick 2.7
import QtQuick.Window 2.2 // for Screen
import QtQuick.Layouts 1.1
import QtQuick.Controls 2.2 as QtControls
import QtQuick.Dialogs 1.1 as QtDialogs
import org.kde.kirigami 2.4 as Kirigami
import org.kde.kconfig 1.0 // for KAuthorized
import org.kde.kcm 1.1 as KCM
import org.kde.private.kcm_cursortheme 1.0
KCM.GridViewKCM {
KCM.ConfigModule.quickHelp: i18n("This module lets you configure the mouse cursor theme used.")
view.model: kcm.cursorsModel
view.delegate: Delegate {}
view.onCurrentIndexChanged: {
kcm.selectedThemeRow = view.currentIndex;
view.positionViewAtIndex(view.currentIndex, view.GridView.Beginning);
}
DropArea {
anchors.fill: parent
onEntered: {
if (!drag.hasUrls) {
drag.accepted = false;
}
}
onDropped: kcm.installThemeFromFile(drop.urls[0])
}
Connections {
target: kcm
onSelectedThemeRowChanged: view.currentIndex = kcm.selectedThemeRow;
}
footer: ColumnLayout {
id: footerLayout
Kirigami.InlineMessage {
id: infoLabel
Layout.fillWidth: true
showCloseButton: true
Connections {
target: kcm
onShowSuccessMessage: {
infoLabel.type = Kirigami.MessageType.Positive;
infoLabel.text = message;
infoLabel.visible = true;
}
onShowInfoMessage: {
infoLabel.type = Kirigami.MessageType.Information;
infoLabel.text = message;
infoLabel.visible = true;
}
onShowErrorMessage: {
infoLabel.type = Kirigami.MessageType.Error;
infoLabel.text = message;
infoLabel.visible = true;
}
}
}
RowLayout {
id: row1
//spacer
Item {
Layout.fillWidth: true
Layout.fillHeight: true
}
RowLayout {
id: comboLayout
enabled: kcm.canResize
QtControls.Label {
text: i18n("Size:")
}
QtControls.ComboBox {
id: sizeCombo
currentIndex: 0
onCountChanged: currentIndex = 0
model: kcm.sizesModel
textRole: "display"
onCurrentTextChanged: {
kcm.preferredSize = isNaN(parseInt(sizeCombo.currentText)) ? 0 : parseInt(sizeCombo.currentText);
}
delegate: QtControls.ItemDelegate {
id: sizeComboDelegate
readonly property int size: parseInt(model.display)
width: parent.width
highlighted: ListView.isCurrentItem
text: model.display
contentItem: RowLayout {
Kirigami.Icon {
source: model.decoration
smooth: true
width: sizeComboDelegate.size / Screen.devicePixelRatio
height: sizeComboDelegate.size / Screen.devicePixelRatio
visible: valid && sizeComboDelegate.size > 0
}
QtControls.Label {
Layout.fillWidth: true
color: sizeComboDelegate.highlighted ? Kirigami.Theme.highlightedTextColor : Kirigami.Theme.textColor
text: model[sizeCombo.textRole]
}
}
}
}
}
RowLayout {
parent: footerLayout.x + footerLayout.width - comboLayout.width > width ? row1 : row2
QtControls.Button {
icon.name: "document-import"
text: i18n("&Install From File...")
onClicked: fileDialogLoader.active = true;
enabled: kcm.canInstall
}
QtControls.Button {
icon.name: "get-hot-new-stuff"
- text: i18n("&Get New Theme...")
+ text: i18n("&Get New Cursors...")
onClicked: kcm.getNewClicked();
enabled: kcm.canInstall
visible: KAuthorized.authorize("ghns")
}
}
}
RowLayout {
id: row2
visible: children.length > 1
//spacer
Item {
Layout.fillWidth: true
Layout.fillHeight: true
}
}
}
Loader {
id: fileDialogLoader
active: false
sourceComponent: QtDialogs.FileDialog {
title: i18n("Open Theme")
folder: shortcuts.home
nameFilters: [ i18n("Cursor Theme Files (*.tar.gz *.tar.bz2)") ]
Component.onCompleted: open()
onAccepted: {
kcm.installThemeFromFile(fileUrls[0])
fileDialogLoader.active = false
}
onRejected: {
fileDialogLoader.active = false
}
}
}
}
diff --git a/kcms/desktoptheme/package/contents/ui/main.qml b/kcms/desktoptheme/package/contents/ui/main.qml
index af613fb69..953cace62 100644
--- a/kcms/desktoptheme/package/contents/ui/main.qml
+++ b/kcms/desktoptheme/package/contents/ui/main.qml
@@ -1,164 +1,164 @@
/*
Copyright (c) 2014 Marco Martin
Copyright (c) 2016 David Rosca
Copyright (c) 2018 Kai Uwe Broulik
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
import QtQuick 2.1
import QtQuick.Layouts 1.1
import QtQuick.Dialogs 1.0
import QtQuick.Controls 2.3 as QtControls
import org.kde.kirigami 2.4 as Kirigami
import org.kde.kconfig 1.0 // for KAuthorized
import org.kde.kcm 1.1 as KCM
KCM.GridViewKCM {
KCM.ConfigModule.quickHelp: i18n("This module lets you configure the desktop theme.")
view.model: kcm.desktopThemeModel
view.currentIndex: kcm.selectedPluginIndex
DropArea {
anchors.fill: parent
onEntered: {
if (!drag.hasUrls) {
drag.accepted = false;
}
}
onDropped: kcm.installThemeFromFile(drop.urls[0])
}
view.remove: Transition {
ParallelAnimation {
NumberAnimation { property: "scale"; to: 0.5; duration: Kirigami.Units.longDuration }
NumberAnimation { property: "opacity"; to: 0.0; duration: Kirigami.Units.longDuration }
}
}
view.removeDisplaced: Transition {
SequentialAnimation {
// wait for the "remove" animation to finish
PauseAnimation { duration: Kirigami.Units.longDuration }
NumberAnimation { properties: "x,y"; duration: Kirigami.Units.longDuration }
}
}
view.delegate: KCM.GridDelegate {
id: delegate
text: model.themeName
toolTip: model.description || model.themeName
opacity: model.pendingDeletion ? 0.3 : 1
Behavior on opacity {
NumberAnimation { duration: Kirigami.Units.longDuration }
}
thumbnailAvailable: true
thumbnail: ThemePreview {
id: preview
anchors.fill: parent
themeName: model.pluginName
}
actions: [
Kirigami.Action {
iconName: "document-edit"
tooltip: i18n("Edit Theme")
enabled: !model.pendingDeletion
visible: kcm.canEditThemes
onTriggered: kcm.editTheme(model.pluginName)
},
Kirigami.Action {
iconName: "edit-delete"
tooltip: i18n("Remove Theme")
enabled: model.isLocal
visible: !model.pendingDeletion
onTriggered: kcm.setPendingDeletion(model.index, true);
},
Kirigami.Action {
iconName: "edit-undo"
tooltip: i18n("Restore Theme")
visible: model.pendingDeletion
onTriggered: kcm.setPendingDeletion(model.index, false);
}
]
onClicked: {
kcm.selectedPlugin = model.pluginName;
view.forceActiveFocus();
}
}
footer: ColumnLayout {
Kirigami.InlineMessage {
id: infoLabel
Layout.fillWidth: true
showCloseButton: true
Connections {
target: kcm
onShowSuccessMessage: {
infoLabel.type = Kirigami.MessageType.Positive;
infoLabel.text = message;
infoLabel.visible = true;
}
onShowErrorMessage: {
infoLabel.type = Kirigami.MessageType.Error;
infoLabel.text = message;
infoLabel.visible = true;
}
}
}
RowLayout {
Layout.alignment: Qt.AlignRight
QtControls.Button {
text: i18n("Install from File...")
icon.name: "document-import"
onClicked: fileDialogLoader.active = true;
}
QtControls.Button {
- text: i18n("Get New Themes...")
+ text: i18n("Get New Desktop Themes...")
icon.name: "get-hot-new-stuff"
onClicked: kcm.getNewStuff(this)
visible: KAuthorized.authorize("ghns")
}
}
}
Loader {
id: fileDialogLoader
active: false
sourceComponent: FileDialog {
title: i18n("Open Theme")
folder: shortcuts.home
nameFilters: [ i18n("Theme Files (*.zip *.tar.gz *.tar.bz2)") ]
Component.onCompleted: open()
onAccepted: {
kcm.installThemeFromFile(fileUrls[0])
fileDialogLoader.active = false
}
onRejected: {
fileDialogLoader.active = false
}
}
}
}
diff --git a/kcms/emoticons/emoticonslist.ui b/kcms/emoticons/emoticonslist.ui
index 01df4b5bb..b38f49030 100644
--- a/kcms/emoticons/emoticonslist.ui
+++ b/kcms/emoticons/emoticonslist.ui
@@ -1,152 +1,157 @@
EmoticonsManager
0
0
630
419
Emoticons Manager
-
Modify the selected emoticon icon or text
Edit the selected emoticon to change its icon or its text
Edit...
-
Create a new emoticon
Create a new emoticon by assigning it an icon and some text
Add...
-
22
22
-
22
22
-
Get new icon themes from the Internet
You need to be connected to the Internet to use this action. A dialog will display a list of emoticon themes from the http://www.kde-look.org website. Clicking the Install button associated with a theme will install this theme locally.
- Get new Theme
+ Get New Emoticons...
+
+
+
+
+
-
Install a theme archive file you already have locally
If you already have an emoticon theme archive locally, this button will unpack it and make it available for KDE applications
Install from File
-
Require spaces around emoticons
-
Remove the selected theme from your disk
This will remove the selected theme from your disk.
Remove Theme
-
Qt::Horizontal
40
20
-
Design a new emoticon theme
Start a new theme by assigning it a name. Then use the Add button on the right to add emoticons to this theme.
New Theme
-
Remove the selected emoticon
Remove the selected emoticon from your disk
Remove
diff --git a/kcms/icons/package/contents/ui/main.qml b/kcms/icons/package/contents/ui/main.qml
index 85c2eba71..d6cd444a4 100644
--- a/kcms/icons/package/contents/ui/main.qml
+++ b/kcms/icons/package/contents/ui/main.qml
@@ -1,300 +1,300 @@
/*
* Copyright 2018 Kai Uwe Broulik
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License or (at your option) version 3 or any later version
* accepted by the membership of KDE e.V. (or its successor approved
* by the membership of KDE e.V.), which shall act as a proxy
* defined in Section 14 of version 3 of the license.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
import QtQuick 2.7
import QtQuick.Layouts 1.1
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.0 as QtDialogs
import QtQuick.Controls 2.3 as QtControls
import org.kde.kirigami 2.4 as Kirigami
import org.kde.kquickcontrolsaddons 2.0 as KQCAddons
import org.kde.kconfig 1.0 // for KAuthorized
import org.kde.kcm 1.1 as KCM
import org.kde.private.kcms.icons 1.0 as Private
KCM.GridViewKCM {
KCM.ConfigModule.quickHelp: i18n("This module allows you to choose the icons for your desktop.")
view.model: kcm.iconsModel
view.currentIndex: kcm.iconsModel.selectedThemeIndex
DropArea {
anchors.fill: parent
onEntered: {
if (!drag.hasUrls) {
drag.accepted = false;
}
}
onDropped: kcm.installThemeFromFile(drop.urls[0])
}
view.remove: Transition {
ParallelAnimation {
NumberAnimation { property: "scale"; to: 0.5; duration: Kirigami.Units.longDuration }
NumberAnimation { property: "opacity"; to: 0.0; duration: Kirigami.Units.longDuration }
}
}
view.removeDisplaced: Transition {
SequentialAnimation {
// wait for the "remove" animation to finish
PauseAnimation { duration: Kirigami.Units.longDuration }
NumberAnimation { properties: "x,y"; duration: Kirigami.Units.longDuration }
}
}
view.delegate: KCM.GridDelegate {
id: delegate
text: model.display
toolTip: model.description
thumbnailAvailable: typeof thumbFlow.previews === "undefined" || thumbFlow.previews.length > 0
thumbnail: MouseArea {
id: thumbArea
anchors.fill: parent
acceptedButtons: Qt.NoButton
hoverEnabled: true
clip: thumbFlow.y < 0
opacity: model.pendingDeletion ? 0.3 : 1
Behavior on opacity {
NumberAnimation { duration: Kirigami.Units.longDuration }
}
Timer {
interval: 1000
repeat: true
running: thumbArea.containsMouse
onRunningChanged: {
if (!running) {
thumbFlow.currentPage = 0;
}
}
onTriggered: {
if (!thumbFlow.allPreviesLoaded) {
thumbFlow.loadPreviews(-1 /*no limit*/);
thumbFlow.allPreviesLoaded = true;
}
++thumbFlow.currentPage;
if (thumbFlow.currentPage >= thumbFlow.pageCount) {
stop();
}
}
}
Flow {
id: thumbFlow
// undefined is "didn't load preview yet"
// empty array is "no preview available"
property var previews
// initially we only load 6 and when the animation starts we'll load the rest
property bool allPreviesLoaded: false
property int currentPage
readonly property int pageCount: Math.ceil(thumbRepeater.count / (thumbFlow.columns * thumbFlow.rows))
readonly property int iconWidth: Math.floor(thumbArea.width / thumbFlow.columns)
readonly property int iconHeight: Math.round(thumbArea.height / thumbFlow.rows)
readonly property int columns: 3
readonly property int rows: 2
function loadPreviews(limit) {
previews = kcm.previewIcons(model.themeName, Math.min(thumbFlow.iconWidth, thumbFlow.iconHeight), Screen.devicePixelRatio, limit);
}
width: parent.width
y: -currentPage * iconHeight * rows
Behavior on y {
NumberAnimation { duration: Kirigami.Units.longDuration }
}
Repeater {
id: thumbRepeater
model: thumbFlow.previews
Item {
width: thumbFlow.iconWidth
height: thumbFlow.iconHeight
KQCAddons.QPixmapItem {
anchors.centerIn: parent
width: Math.min(parent.width, nativeWidth)
height: Math.min(parent.height, nativeHeight)
// load on demand and avoid leaking a tiny corner of the icon
pixmap: thumbFlow.y < 0 || index < (thumbFlow.columns * thumbFlow.rows) ? modelData : undefined
smooth: true
fillMode: KQCAddons.QPixmapItem.PreserveAspectFit
}
}
}
Component.onCompleted: {
// avoid reloading it when icon sizes or dpr changes on startup
Qt.callLater(function() {
// We show 6 icons initially (3x2 grid), only load those
thumbFlow.loadPreviews(6 /*limit*/);
});
}
}
}
actions: [
Kirigami.Action {
iconName: "edit-delete"
tooltip: i18n("Remove Icon Theme")
enabled: model.removable
visible: !model.pendingDeletion
onTriggered: model.pendingDeletion = true
},
Kirigami.Action {
iconName: "edit-undo"
tooltip: i18n("Restore Icon Theme")
visible: model.pendingDeletion
onTriggered: model.pendingDeletion = false
}
]
onClicked: {
if (!model.pendingDeletion) {
kcm.iconsModel.selectedTheme = model.themeName;
}
view.forceActiveFocus();
}
}
footer: ColumnLayout {
Kirigami.InlineMessage {
id: infoLabel
Layout.fillWidth: true
showCloseButton: true
Connections {
target: kcm
onShowSuccessMessage: {
infoLabel.type = Kirigami.MessageType.Positive;
infoLabel.text = message;
infoLabel.visible = true;
}
onShowErrorMessage: {
infoLabel.type = Kirigami.MessageType.Error;
infoLabel.text = message;
infoLabel.visible = true;
}
}
}
RowLayout {
id: progressRow
visible: false
QtControls.BusyIndicator {
id: progressBusy
}
QtControls.Label {
id: progressLabel
Layout.fillWidth: true
textFormat: Text.PlainText
wrapMode: Text.WordWrap
}
Connections {
target: kcm
onShowProgress: {
progressLabel.text = message;
progressBusy.running = true;
progressRow.visible = true;
}
onHideProgress: {
progressBusy.running = false;
progressRow.visible = false;
}
}
}
RowLayout {
Layout.fillWidth: true
QtControls.Button {
id: iconSizesButton
text: i18n("Configure Icon Sizes")
icon.name: "transform-scale" // proper icon?
checkable: true
checked: iconSizePopupLoader.item && iconSizePopupLoader.item.opened
onClicked: {
iconSizePopupLoader.active = true;
iconSizePopupLoader.item.open();
}
}
Item {
Layout.fillWidth: true
}
QtControls.Button {
id: installFromFileButton
text: i18n("Install from File...")
icon.name: "document-import"
onClicked: fileDialogLoader.active = true
}
QtControls.Button {
- text: i18n("Get New Themes...")
+ text: i18n("Get New Icons...")
icon.name: "get-hot-new-stuff"
onClicked: kcm.getNewStuff(this)
visible: KAuthorized.authorize("ghns")
}
}
}
Loader {
id: iconSizePopupLoader
active: false
sourceComponent: IconSizePopup {
parent: iconSizesButton
y: -height
}
}
Loader {
id: fileDialogLoader
active: false
sourceComponent: QtDialogs.FileDialog {
title: i18n("Open Theme")
folder: shortcuts.home
nameFilters: [ i18n("Theme Files (*.tar.gz *.tar.bz2)") ]
Component.onCompleted: open()
onAccepted: {
kcm.installThemeFromFile(fileUrls[0])
fileDialogLoader.active = false
}
onRejected: {
fileDialogLoader.active = false
}
}
}
}
diff --git a/kcms/ksplash/package/contents/ui/main.qml b/kcms/ksplash/package/contents/ui/main.qml
index 1ae852a21..bd82a2428 100644
--- a/kcms/ksplash/package/contents/ui/main.qml
+++ b/kcms/ksplash/package/contents/ui/main.qml
@@ -1,68 +1,68 @@
/*
Copyright (c) 2014 Marco Martin
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
import QtQuick 2.1
import QtQuick.Layouts 1.1
import QtQuick.Controls 1.0 as QtControls
import org.kde.kirigami 2.4 as Kirigami
import org.kde.kconfig 1.0 // for KAuthorized
import org.kde.kcm 1.1 as KCM
KCM.GridViewKCM {
KCM.ConfigModule.quickHelp: i18n("This module lets you configure the splash screen theme.")
view.model: kcm.splashModel
//NOTE: pay attention to never break this binding
view.currentIndex: kcm.selectedPluginIndex
view.delegate: KCM.GridDelegate {
id: delegate
text: model.display
toolTip: model.description
thumbnailAvailable: !!model.screenshot
thumbnail: Image {
anchors.fill: parent
source: model.screenshot || ""
}
actions: [
Kirigami.Action {
visible: model.pluginName != "None"
iconName: "media-playback-start"
tooltip: i18n("Test Splashscreen")
onTriggered: kcm.test(model.pluginName)
}
]
onClicked: {
kcm.selectedPlugin = model.pluginName;
view.forceActiveFocus();
}
}
footer: RowLayout {
Item {
Layout.fillWidth: true
}
QtControls.Button {
iconName: "get-hot-new-stuff"
- text: i18n("&Get New Theme...")
+ text: i18n("&Get New Splash Screens...")
onClicked: kcm.getNewClicked();
visible: KAuthorized.authorize("ghns")
}
}
}
diff --git a/kcms/lookandfeel/package/contents/ui/main.qml b/kcms/lookandfeel/package/contents/ui/main.qml
index dd2edcca8..3f252e3fe 100644
--- a/kcms/lookandfeel/package/contents/ui/main.qml
+++ b/kcms/lookandfeel/package/contents/ui/main.qml
@@ -1,118 +1,118 @@
/*
Copyright (c) 2018 Marco Martin
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
import QtQuick 2.6
import QtQuick.Layouts 1.1
import QtQuick.Window 2.2
import QtQuick.Controls 2.3 as QtControls
import org.kde.kirigami 2.4 as Kirigami
import org.kde.kconfig 1.0 // for KAuthorized
import org.kde.kcm 1.1 as KCM
KCM.GridViewKCM {
KCM.ConfigModule.quickHelp: i18n("This module lets you configure the look and feel theme.")
view.model: kcm.lookAndFeelModel
view.currentIndex: kcm.selectedPluginIndex
view.delegate: KCM.GridDelegate {
id: delegate
text: model.display
toolTip: model.description
thumbnailAvailable: model.screenshot
thumbnail: Image {
anchors.fill: parent
source: model.screenshot || ""
}
actions: [
Kirigami.Action {
visible: model.fullScreenPreview != ""
iconName: "media-playback-start"
tooltip: i18n("Preview Theme")
onTriggered: {
previewWindow.url = model.fullScreenPreview;
previewWindow.showFullScreen();
}
}
]
onClicked: {
kcm.selectedPlugin = model.pluginName;
view.forceActiveFocus();
resetCheckbox.checked = false;
}
}
footer: ColumnLayout {
Kirigami.InlineMessage {
Layout.fillWidth: true
type: Kirigami.MessageType.Warning
text: i18n("Your desktop layout will be lost and reset to the default layout provided by the selected theme.")
visible: resetCheckbox.checked
}
RowLayout {
Layout.fillWidth: true
QtControls.CheckBox {
id: resetCheckbox
checked: kcm.resetDefaultLayout
text: i18n("Use Desktop Layout from theme")
onCheckedChanged: kcm.resetDefaultLayout = checked;
}
Item {
Layout.fillWidth: true
}
QtControls.Button {
- text: i18n("Get New Looks...")
+ text: i18n("Get New Look and Feel Themes...")
icon.name: "get-hot-new-stuff"
onClicked: kcm.getNewStuff(this);
visible: KAuthorized.authorize("ghns")
}
}
}
Window {
id: previewWindow
property alias url: previewImage.source
color: Qt.rgba(0, 0, 0, 0.7)
MouseArea {
anchors.fill: parent
Image {
id: previewImage
anchors.centerIn: parent
fillMode: Image.PreserveAspectFit
width: Math.min(parent.width, sourceSize.width)
height: Math.min(parent.height, sourceSize.height)
}
onClicked: previewWindow.visible = false;
QtControls.ToolButton {
anchors {
top: parent.top
right: parent.right
}
icon.name: "window-close"
onClicked: previewWindow.visible = false;
}
Shortcut {
onActivated: previewWindow.visible = false;
sequence: "Esc"
}
}
}
}