This commit is contained in:
Valeria Fadeeva 2023-07-02 11:51:48 +05:00
parent c771118ef6
commit d2ac00c2a7
31 changed files with 1079 additions and 390 deletions

8
.gitignore vendored
View File

@ -1,8 +0,0 @@
*.pkg.tar
*.pkg.tar.*
*.zst
*.zst.*
pkg/
src/
.idea/
plasma-plasmoid-OnzeMenuKDE

View File

@ -1,21 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" <kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0 http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
<kcfgfile name=""/> <kcfgfile name=""/>
<group name="General"> <group name="General">
<entry name="displayPosition" type="Enum"> <entry name="displayPosition" type="Enum">
<label>Position.</label> <label>Position.</label>
<choices name="Settings::displayPosition"> <choices name="Settings::displayPosition">
<choice name="Default" /> <choice name="Default"/>
<choice name="Center" /> <choice name="Center"/>
<choice name="CenterBottom" /> <choice name="CenterBottom"/>
</choices> </choices>
<default>2</default> <default>2</default>
</entry> </entry>
<entry name="icon" type="String"> <entry name="icon" type="String">
<default>start-here-kde</default> <default>start-here-kde</default>
</entry> </entry>
@ -23,29 +18,28 @@
<default>false</default> <default>false</default>
</entry> </entry>
<entry name="customButtonImage" type="Url"> <entry name="customButtonImage" type="Url">
<default></default> <default/>
</entry> </entry>
<entry name="showFilterList" type="Bool"> <entry name="showFilterList" type="Bool">
<default>true</default> <default>true</default>
</entry> </entry>
<entry name="appNameFormat" type="Int"> <entry name="appNameFormat" type="Int">
<default>0</default> <default>0</default>
</entry> </entry>
<entry name="limitDepth" type="Bool"> <entry name="limitDepth" type="Bool">
<default>false</default> <default>false</default>
</entry> </entry>
<entry name="numberColumns" type="Int"> <entry name="numberColumns" type="Int">
<default>6</default> <default>6</default>
</entry> </entry>
<entry name="numberRows" type="Int"> <entry name="numberRows" type="Int">
<default>3</default> <default>3</default>
</entry>
<entry name="textLabelFontsize" type="Int">
<default>12</default>
</entry> </entry>
<entry name="defaultSize" type="String"> <entry name="defaultSize" type="String">
<default>Medium</default> <default>Medium</default>
</entry> </entry>
<entry name="favoriteApps" type="StringList"> <entry name="favoriteApps" type="StringList">
<default>preferred://browser,kontact.desktop,systemsettings.desktop,org.kde.dolphin.desktop,ktp-contactlist.desktop,org.kde.kate.desktop</default> <default>preferred://browser,kontact.desktop,systemsettings.desktop,org.kde.dolphin.desktop,ktp-contactlist.desktop,org.kde.kate.desktop</default>
@ -54,12 +48,20 @@
<default>logout,lock-screen,reboot,shutdown</default> <default>logout,lock-screen,reboot,shutdown</default>
</entry> </entry>
<entry name="hiddenApplications" type="StringList"> <entry name="hiddenApplications" type="StringList">
<default></default> <default/>
</entry> </entry>
<entry name="useExtraRunners" type="Bool"> <entry name="useExtraRunners" type="Bool">
<default>true</default> <default>true</default>
</entry> </entry>
<entry name="hideRecentDocs" type="Bool">
<default>false</default>
</entry>
<entry name="showRecentApps" type="Bool">
<default>false</default>
</entry>
<entry name="pullupAnimation" type="Bool">
<default>true</default>
</entry>
<entry name="extraRunners" type="StringList"> <entry name="extraRunners" type="StringList">
<default>bookmarks,baloosearch</default> <default>bookmarks,baloosearch</default>
</entry> </entry>
@ -76,23 +78,25 @@
<entry name="removeApplicationCommand" type="String"> <entry name="removeApplicationCommand" type="String">
<default>muon-discover --application</default> <default>muon-discover --application</default>
</entry> </entry>
<entry name="iconSmooth" type="Bool">
<default>false</default>
</entry>
<entry name="showAtCenter" type="Bool"> <entry name="showAtCenter" type="Bool">
<default>true</default> <default>true</default>
</entry> </entry>
<entry name="showFavoritesFirst" type="Bool"> <entry name="showFavoritesFirst" type="Bool">
<default>false</default> <default>false</default>
</entry> </entry>
<entry name="favoritesPortedToKAstats" type="Bool"> <entry name="favoritesPortedToKAstats" type="Bool">
<label>Are the favorites ported to use KActivitiesStats to allow per-activity favorites</label> <label>Are the favorites ported to use KActivitiesStats to allow per-activity favorites</label>
<default>false</default> <default>false</default>
</entry> </entry>
<entry name="viewUser" type="Bool"> <entry name="viewUser" type="Bool">
<default>true</default> <default>true</default>
</entry>
<entry name="menuLabel" type="string">
<label>Text label for the Panel button</label>
<default></default>
</entry> </entry>
</group> </group>
</kcfg> </kcfg>

View File

@ -7,14 +7,15 @@ Rectangle{
id:item id:item
implicitHeight: units.gridUnit * 1.8 implicitHeight: Math.floor( PlasmaCore.Units.gridUnit * 1.8)
width: lb.implicitWidth + units.smallSpacing * 5 + icon.width width: Math.floor(lb.implicitWidth + PlasmaCore.Units.smallSpacing * 5 + icon.width)
border.width: 1 border.width: 1
border.color: mouseItem.containsMouse ? theme.highlightColor : colorWithAlpha(theme.textColor,0.2) border.color: mouseItem.containsMouse ? theme.highlightColor : colorWithAlpha(theme.textColor,0.2)
radius: 4 radius: 2
color: theme.backgroundColor color: theme.backgroundColor
smooth: plasmoid.configuration.iconSmooth
property alias text: lb.text property alias text: lb.text
@ -27,9 +28,9 @@ Rectangle{
RowLayout{ RowLayout{
id: row id: row
anchors.fill: parent anchors.fill: parent
anchors.leftMargin: units.smallSpacing * 2 anchors.leftMargin: PlasmaCore.Units.smallSpacing * 2
anchors.rightMargin: units.smallSpacing * 2 anchors.rightMargin: PlasmaCore.Units.smallSpacing * 2
spacing: units.smallSpacing spacing: PlasmaCore.Units.smallSpacing
LayoutMirroring.enabled: mirror LayoutMirroring.enabled: mirror
Label{ Label{
@ -38,8 +39,9 @@ Rectangle{
} }
PlasmaCore.IconItem { PlasmaCore.IconItem {
id: icon id: icon
implicitHeight: units.gridUnit implicitHeight: PlasmaCore.Units.gridUnit
implicitWidth: implicitHeight implicitWidth: implicitHeight
smooth: plasmoid.configuration.iconSmooth
} }
} }

View File

@ -0,0 +1,58 @@
/*
* Copyright 2016 David Edmundson <davidedmundson@kde.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Library General Public License as
* published by the Free Software Foundation; either version 2 or
* (at your option) any later version.
*
* 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 Library General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import QtQuick 2.8
import QtQuick.Layouts 1.1
import QtQuick.Controls 1.0
import org.kde.plasma.core 2.0
ColumnLayout {
readonly property bool softwareRendering: GraphicsInfo.api === GraphicsInfo.Software
Layout.fillWidth: true
Item{
Layout.fillHeight: true
}
Label {
text: Qt.formatTime(timeSource.data["Local"]["DateTime"])
color: ColorScope.textColor
style: softwareRendering ? Text.Outline : Text.Normal
styleColor: softwareRendering ? ColorScope.backgroundColor : "transparent" //no outline, doesn't matter
font.pointSize: 24
Layout.alignment: Qt.AlignHCenter
}
Label {
text: Qt.formatDate(timeSource.data["Local"]["DateTime"], Qt.DefaultLocaleLongDate)
color: ColorScope.textColor
style: softwareRendering ? Text.Outline : Text.Normal
styleColor: softwareRendering ? ColorScope.backgroundColor : "transparent" //no outline, doesn't matter
font.pointSize: 11
Layout.alignment: Qt.AlignHCenter
}
Item{
Layout.fillHeight: true
}
DataSource {
id: timeSource
engine: "time"
connectedSources: ["Local"]
interval: 1000
}
}

View File

@ -22,6 +22,7 @@ import QtQuick.Layouts 1.1
import org.kde.plasma.plasmoid 2.0 import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 3.0 as PC3
Item { Item {
id: root id: root
@ -38,8 +39,15 @@ Item {
Plasmoid.status: dashWindow && dashWindow.visible ? PlasmaCore.Types.RequiresAttentionStatus : PlasmaCore.Types.PassiveStatus Plasmoid.status: dashWindow && dashWindow.visible ? PlasmaCore.Types.RequiresAttentionStatus : PlasmaCore.Types.PassiveStatus
onWidthChanged: updateSizeHints() // Taken from DigitalClock to ensure uniform sizing when next to each other
onHeightChanged: updateSizeHints() readonly property bool tooSmall: plasmoid.formFactor === PlasmaCore.Types.Horizontal && Math.round(2 * (root.height / 5)) <= PlasmaCore.Theme.smallestFont.pixelSize
readonly property bool shouldHaveIcon: Plasmoid.formFactor === PlasmaCore.Types.Vertical || Plasmoid.icon !== ""
readonly property bool shouldHaveLabel: Plasmoid.formFactor !== PlasmaCore.Types.Vertical && Plasmoid.configuration.menuLabel !== ""
// onWidthChanged: updateSizeHints()
// onHeightChanged: updateSizeHints()
function updateSizeHints() { function updateSizeHints() {
if (useCustomButtonImage) { if (useCustomButtonImage) {
@ -47,31 +55,78 @@ Item {
var scaledHeight = Math.floor(parent.width * (buttonIcon.implicitHeight / buttonIcon.implicitWidth)); var scaledHeight = Math.floor(parent.width * (buttonIcon.implicitHeight / buttonIcon.implicitWidth));
root.Layout.minimumHeight = scaledHeight; root.Layout.minimumHeight = scaledHeight;
root.Layout.maximumHeight = scaledHeight; root.Layout.maximumHeight = scaledHeight;
root.Layout.minimumWidth = units.iconSizes.small; root.Layout.minimumWidth = PlasmaCore.Units.iconSizes.small;
root.Layout.maximumWidth = inPanel ? units.iconSizeHints.panel : -1; root.Layout.maximumWidth = inPanel ? PlasmaCore.Units.iconSizeHints.panel : -1;
} else { } else {
var scaledWidth = Math.floor(parent.height * (buttonIcon.implicitWidth / buttonIcon.implicitHeight)); var scaledWidth = Math.floor(parent.height * (buttonIcon.implicitWidth / buttonIcon.implicitHeight));
root.Layout.minimumWidth = scaledWidth; root.Layout.minimumWidth = scaledWidth;
root.Layout.maximumWidth = scaledWidth; root.Layout.maximumWidth = scaledWidth;
root.Layout.minimumHeight = units.iconSizes.small; root.Layout.minimumHeight = PlasmaCore.Units.iconSizes.small;
root.Layout.maximumHeight = inPanel ? units.iconSizeHints.panel : -1; root.Layout.maximumHeight = inPanel ? PlasmaCore.Units.iconSizeHints.panel : -1;
} }
} else { } else {
root.Layout.minimumWidth = units.iconSizes.small; root.Layout.minimumWidth = PlasmaCore.Units.iconSizes.small;
root.Layout.maximumWidth = inPanel ? units.iconSizeHints.panel : -1; root.Layout.maximumWidth = inPanel ? PlasmaCore.Units.iconSizeHints.panel : -1;
root.Layout.minimumHeight = units.iconSizes.small root.Layout.minimumHeight = PlasmaCore.Units.iconSizes.small
root.Layout.maximumHeight = inPanel ? units.iconSizeHints.panel : -1; root.Layout.maximumHeight = inPanel ? PlasmaCore.Units.iconSizeHints.panel : -1;
} }
} }
Connections { readonly property var sizing: {
target: units.iconSizeHints const displayedIcon = buttonIcon.valid ? buttonIcon : buttonIconFallback;
onPanelChanged: updateSizeHints() let impWidth = 0;
if (shouldHaveIcon) {
impWidth += displayedIcon.width;
}
if (shouldHaveLabel) {
impWidth += labelTextField.contentWidth + labelTextField.Layout.leftMargin + labelTextField.Layout.rightMargin;
}
const impHeight = Math.max(PlasmaCore.Units.iconSizeHints.panel, displayedIcon.height);
// at least square, but can be wider/taller
if (root.inPanel) {
if (root.vertical) {
return {
minimumWidth: -1,
maximumWidth: PlasmaCore.Units.iconSizeHints.panel,
minimumHeight: -1,
maximumHeight: impHeight,
};
} else { // horizontal
return {
minimumWidth: impWidth,
maximumWidth: impWidth,
minimumHeight: -1,
maximumHeight: PlasmaCore.Units.iconSizeHints.panel,
};
}
} else {
return {
minimumWidth: impWidth,
maximumWidth: -1,
minimumHeight: PlasmaCore.Units.iconSizes.small,
maximumHeight: -1,
};
}
} }
implicitWidth: PlasmaCore.Units.iconSizeHints.panel
implicitHeight: PlasmaCore.Units.iconSizeHints.panel
Layout.minimumWidth: sizing.minimumWidth
Layout.maximumWidth: sizing.maximumWidth
Layout.minimumHeight: sizing.minimumHeight
Layout.maximumHeight: sizing.maximumHeight
//Connections {
// target: PlasmaCore.Units.iconSizeHints
// function onPanelChanged(){ updateSizeHints()}
//}
PlasmaCore.IconItem { PlasmaCore.IconItem {
id: buttonIcon id: buttonIcon3
anchors.fill: parent anchors.fill: parent
@ -83,22 +138,73 @@ Item {
active: mouseArea.containsMouse active: mouseArea.containsMouse
smooth: true smooth: true
visible: false
// A custom icon could also be rectangular. However, if a square, custom, icon is given, assume it // A custom icon could also be rectangular. However, if a square, custom, icon is given, assume it
// to be an icon and round it to the nearest icon size again to avoid scaling artefacts. // to be an icon and round it to the nearest icon size again to avoid scaling artefacts.
roundToIconSize: !useCustomButtonImage || aspectRatio === 1 roundToIconSize: !useCustomButtonImage || aspectRatio === 1
onSourceChanged: updateSizeHints() // onSourceChanged: updateSizeHints()
}
RowLayout {
id: iconLabelRow
anchors.fill: parent
spacing: 0
PlasmaCore.IconItem {
id: buttonIcon
Layout.fillWidth: root.vertical
Layout.fillHeight: !root.vertical
Layout.preferredWidth: root.vertical ? -1 : height / (implicitHeight / implicitWidth)
Layout.preferredHeight: !root.vertical ? -1 : width * (implicitHeight / implicitWidth)
Layout.alignment: Qt.AlignVCenter | Qt.AlignHCenter
source: useCustomButtonImage ? plasmoid.configuration.customButtonImage : plasmoid.configuration.icon
//source: Tools.iconOrDefault(plasmoid.formFactor, plasmoid.icon)
//active: compactRoot.containsMouse || compactDragArea.containsDrag
roundToIconSize: implicitHeight === implicitWidth
visible: valid
}
PlasmaCore.IconItem {
id: buttonIconFallback
// fallback is assumed to be square
Layout.fillWidth: root.vertical
Layout.fillHeight: !root.vertical
Layout.preferredWidth: root.vertical ? -1 : height
Layout.preferredHeight: !root.vertical ? -1 : width
Layout.alignment: Qt.AlignVCenter | Qt.AlignHCenter
source: buttonIcon.valid ? null : Tools.defaultIconName
//active: compactRoot.containsMouse || compactDragArea.containsDrag
visible: !buttonIcon.valid && Plasmoid.icon !== ""
}
PC3.Label {
id: labelTextField
Layout.fillHeight: true
Layout.leftMargin: PlasmaCore.Units.smallSpacing
Layout.rightMargin: PlasmaCore.Units.smallSpacing
text: plasmoid.configuration.menuLabel
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignVCenter
wrapMode: Text.NoWrap
//fontSizeMode: Text.VerticalFit
font.pixelSize: plasmoid.configuration.textLabelFontsize
//font.pixelSize: compactRoot.tooSmall ? PlasmaCore.Theme.defaultFont.pixelSize : PlasmaCore.Units.roundToIconSize(PlasmaCore.Units.gridUnit * 2)
minimumPointSize: PlasmaCore.Theme.smallestFont.pointSize
visible: root.shouldHaveLabel
}
} }
MouseArea MouseArea
{ {
id: mouseArea id: mouseArea
anchors.fill: parent anchors.fill: parent
hoverEnabled: true hoverEnabled: true
onClicked: { onClicked: {
dashWindow.visible = !dashWindow.visible; dashWindow.visible = !dashWindow.visible;
} }

View File

@ -17,45 +17,47 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . * * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/ ***************************************************************************/
import QtQuick 2.0 import QtQuick 2.15
import QtQuick.Controls 1.0
import QtQuick.Dialogs 1.2 import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.0 import QtQuick.Layouts 1.0
import QtQuick.Controls 2.5
import org.kde.plasma.core 2.0 as PlasmaCore import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.kquickcontrolsaddons 2.0 as KQuickAddons import org.kde.kquickcontrolsaddons 2.0 as KQuickAddons
import org.kde.draganddrop 2.0 as DragDrop import org.kde.draganddrop 2.0 as DragDrop
import org.kde.plasma.private.kicker 0.1 as Kicker import org.kde.plasma.private.kicker 0.1 as Kicker
import "code/tools.js" as Logic
import org.kde.kirigami 2.4 as Kirigami import "code/tools.js" as Tools
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.kirigami 2.10 as Kirigami
Kirigami.FormLayout { Kirigami.FormLayout {
id: configGeneral id: configGeneral
width: childrenRect.width
height: childrenRect.height
property string cfg_icon: plasmoid.configuration.icon property string cfg_icon: plasmoid.configuration.icon
property bool cfg_useCustomButtonImage: plasmoid.configuration.useCustomButtonImage property bool cfg_useCustomButtonImage: plasmoid.configuration.useCustomButtonImage
property string cfg_customButtonImage: plasmoid.configuration.customButtonImage property string cfg_customButtonImage: plasmoid.configuration.customButtonImage
//property alias cfg_appNameFormat: appNameFormat.currentIndex
//property alias cfg_switchCategoriesOnHover: switchCategoriesOnHover.checked
property alias cfg_useExtraRunners: useExtraRunners.checked property alias cfg_useExtraRunners: useExtraRunners.checked
property alias cfg_hideRecentDocs: hideRecentDocs.checked
property alias cfg_showRecentApps: showRecentApps.checked
property alias cfg_numberColumns: numberColumns.value property alias cfg_numberColumns: numberColumns.value
property alias cfg_numberRows: numberRows.value property alias cfg_numberRows: numberRows.value
property alias cfg_labels2lines: labels2lines.checked property alias cfg_labels2lines: labels2lines.checked
property alias cfg_displayPosition: displayPosition.currentIndex property alias cfg_displayPosition: displayPosition.currentIndex
property alias cfg_iconSmooth: iconSmooth.checked
property alias cfg_pullupAnimation: pullupAnimation.checked
property string cfg_defaultSize property string cfg_defaultSize
property string cfg_menuLabel: menuLabel.text
property alias cfg_textLabelFontsize: textLabelFontsize.value
// ----------------- Icon ----------------- // ----------------- Icon -----------------
@ -63,13 +65,13 @@ Kirigami.FormLayout {
Button { Button {
Kirigami.FormData.label: i18n("Icon:") Kirigami.FormData.label: i18n("Icon:")
id: iconButton id: iconButton
//Layout.minimumWidth: previewFrame.width + units.smallSpacing * 2 //Layout.minimumWidth: previewFrame.width + PlasmaCore.Units.smallSpacing * 2
//Layout.maximumWidth: Layout.minimumWidth //Layout.maximumWidth: Layout.minimumWidth
//Layout.minimumHeight: previewFrame.height + units.smallSpacing * 2 //Layout.minimumHeight: previewFrame.height + PlasmaCore.Units.smallSpacing * 2
//Layout.maximumHeight: Layout.minimumWidth //Layout.maximumHeight: Layout.minimumWidth
implicitWidth: previewFrame.width + units.smallSpacing * 2 implicitWidth: previewFrame.width + PlasmaCore.Units.smallSpacing * 2
implicitHeight: previewFrame.height + units.smallSpacing * 2 implicitHeight: previewFrame.height + PlasmaCore.Units.smallSpacing * 2
DragDrop.DropArea { DragDrop.DropArea {
id: dropArea id: dropArea
@ -130,12 +132,12 @@ Kirigami.FormLayout {
anchors.centerIn: parent anchors.centerIn: parent
imagePath: plasmoid.location === PlasmaCore.Types.Vertical || plasmoid.location === PlasmaCore.Types.Horizontal imagePath: plasmoid.location === PlasmaCore.Types.Vertical || plasmoid.location === PlasmaCore.Types.Horizontal
? "widgets/panel-background" : "widgets/background" ? "widgets/panel-background" : "widgets/background"
width: units.iconSizes.large + fixedMargins.left + fixedMargins.right width: PlasmaCore.Units.iconSizes.large + fixedMargins.left + fixedMargins.right
height: units.iconSizes.large + fixedMargins.top + fixedMargins.bottom height: PlasmaCore.Units.iconSizes.large + fixedMargins.top + fixedMargins.bottom
PlasmaCore.IconItem { PlasmaCore.IconItem {
anchors.centerIn: parent anchors.centerIn: parent
width: units.iconSizes.large width: PlasmaCore.Units.iconSizes.large
height: width height: width
source: cfg_useCustomButtonImage ? cfg_customButtonImage : cfg_icon source: cfg_useCustomButtonImage ? cfg_customButtonImage : cfg_icon
} }
@ -162,6 +164,41 @@ Kirigami.FormLayout {
} }
Kirigami.ActionTextField {
id: menuLabel
enabled: plasmoid.formFactor !== PlasmaCore.Types.Vertical
Kirigami.FormData.label: i18nc("@label:textbox", "Text label")
text: plasmoid.configuration.menuLabel
placeholderText: i18nc("@info:placeholder", "Type here to add a text label")
onTextEdited: {
cfg_menuLabel = menuLabel.text
// This is to make sure that we always have a icon if there is no text.
// If the user remove the icon and remove the text, without this, we'll have no icon and no text.
// This is to force the icon to be there.
if (!menuLabel.text) {
cfg_icon = cfg_icon || Tools.defaultIconName
}
}
rightActions: [
Action {
icon.name: "edit-clear"
enabled: menuLabel.text !== ""
text: i18nc("@action:button", "Reset menu label")
onTriggered: {
menuLabel.clear()
cfg_menuLabel = ''
cfg_icon = cfg_icon || Tools.defaultIconName
}
}
]
}
SpinBox{
id: textLabelFontsize
from: 10
to: 50
Kirigami.FormData.label: i18n("Text label fontsize")
}
ComboBox { ComboBox {
id: displayPosition id: displayPosition
@ -174,43 +211,74 @@ Kirigami.FormLayout {
onActivated: cfg_displayPosition = currentIndex onActivated: cfg_displayPosition = currentIndex
} }
CheckBox {
// title: i18n("Search") id: showRecentApps
// Kirigami.FormData.label: i18n("Main section")
// text: i18n("Show recent applications")
}
CheckBox { CheckBox {
id: useExtraRunners id: useExtraRunners
text: i18n("Expand search to bookmarks, files and emails") text: i18n("Expand search to bookmarks, files and emails")
visible: false
} }
CheckBox { CheckBox {
id: labels2lines id: labels2lines
text: i18n("Show labels in two lines") text: i18n("Show labels in two lines")
} }
CheckBox {
id: hideRecentDocs
text: i18n("Hide recent documents")
}
SpinBox{ SpinBox{
id: numberColumns id: numberColumns
minimumValue: 4 from: 4
maximumValue: 10 to: 10
Kirigami.FormData.label: i18n("Number of columns (main grid)") Kirigami.FormData.label: i18n("Number of columns (main grid)")
} }
SpinBox{ SpinBox{
id: numberRows id: numberRows
minimumValue: 1 from: 1
maximumValue: 10 to: 10
Kirigami.FormData.label: i18n("Number of rows (main grid)") Kirigami.FormData.label: i18n("Number of rows (main grid)")
} }
CheckBox {
id: iconSmooth
Kirigami.FormData.label: i18n("Icons smooth")
visible: false // TODO validate
}
CheckBox {
id: pullupAnimation
Kirigami.FormData.label: i18n("Pull Up Animation")
}
ComboBox { ComboBox {
id: defaultFormatCombo id: defaultFormatCombo
Kirigami.FormData.label: i18n("Size of icons") Kirigami.FormData.label: i18n("Size of icons")
model: Logic.formats model: Tools.formats
currentIndex: defaultFormatCombo.model.indexOf(cfg_defaultSize) currentIndex: defaultFormatCombo.model.indexOf(cfg_defaultSize)
onActivated: cfg_defaultSize = model[index] onActivated: cfg_defaultSize = model[index]
} }
RowLayout{
Button {
text: i18n("Unhide all applications")
onClicked: {
plasmoid.configuration.hiddenApplications = [];
unhideAllAppsPopup.text = i18n("Unhidden!");
}
}
Label {
id: unhideAllAppsPopup
}
}
} }

View File

@ -23,7 +23,7 @@ import org.kde.plasma.private.quicklaunch 1.0
RowLayout{ RowLayout{
spacing: units.largeSpacing spacing: PlasmaCore.Units.largeSpacing
KCoreAddons.KUser { id: kuser } KCoreAddons.KUser { id: kuser }
Logic { id: logic } Logic { id: logic }
@ -44,10 +44,10 @@ RowLayout{
source: kuser.faceIconUrl.toString() || "user-identity" source: kuser.faceIconUrl.toString() || "user-identity"
cache: false cache: false
visible: source !== "" visible: source !== ""
Layout.leftMargin: 10 sourceSize.height: parent.height * 0.9
sourceSize.height: parent.height * 0.7 sourceSize.width: parent.height * 0.9
sourceSize.width: parent.height * 0.7
fillMode: Image.PreserveAspectFit fillMode: Image.PreserveAspectFit
Layout.alignment: Qt.AlignVCenter
// Crop the avatar to fit in a circle, like the lock and login screens // Crop the avatar to fit in a circle, like the lock and login screens
// but don't on software rendering where this won't render // but don't on software rendering where this won't render
@ -73,8 +73,6 @@ RowLayout{
text: qsTr(kuser.fullName) text: qsTr(kuser.fullName)
} }
Item{ Item{
Layout.fillWidth: true Layout.fillWidth: true
} }
@ -110,8 +108,7 @@ RowLayout{
PlasmaComponents3.ToolButton { PlasmaComponents3.ToolButton {
icon.name: "system-shutdown" icon.name: "system-shutdown"
onClicked: pmEngine.performOperation("requestShutDown") onClicked: pmEngine.performOperation("requestShutDown")
Layout.rightMargin: 10 //Layout.rightMargin: 10
ToolTip.delay: 1000 ToolTip.delay: 1000
ToolTip.timeout: 1000 ToolTip.timeout: 1000
ToolTip.visible: hovered ToolTip.visible: hovered

View File

@ -61,25 +61,15 @@ Item {
PlasmaCore.IconItem { PlasmaCore.IconItem {
id: icon id: icon
anchors.left: parent.left anchors.left: parent.left
anchors.leftMargin: units.smallSpacing anchors.leftMargin: PlasmaCore.Units.smallSpacing
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
width: iconSize width: iconSize
height: width height: width
colorGroup: PlasmaCore.Theme.ComplementaryColorGroup colorGroup: PlasmaCore.Theme.ComplementaryColorGroup
animated: false animated: false
usesPlasmaTheme: item.GridView.view.usesPlasmaTheme usesPlasmaTheme: item.GridView.view.usesPlasmaTheme
source: { source: model.decoration
return model.decoration smooth: plasmoid.configuration.iconSmooth
//if (model.display.indexOf(".") === -1 ) {
// var s = "-" + model.url
// if( s[s.length - 8 ] == "."){
// return model.decoration
// }
// return "folder"
//}else{
// return model.decoration
//}
}
} }
PlasmaComponents.Label { PlasmaComponents.Label {
@ -87,7 +77,7 @@ Item {
visible: showLabel visible: showLabel
anchors { anchors {
left: icon.right left: icon.right
leftMargin: units.smallSpacing leftMargin: PlasmaCore.Units.smallSpacing*2
//top: icon.top //top: icon.top
verticalCenter: icon.verticalCenter verticalCenter: icon.verticalCenter
} }
@ -95,12 +85,12 @@ Item {
elide: Text.ElideRight elide: Text.ElideRight
wrapMode: Text.Wrap wrapMode: Text.Wrap
color: theme.textColor color: theme.textColor
width: parent.width - icon.width - units.largeSpacing width: parent.width - icon.width - PlasmaCore.Units.largeSpacing
text: ("name" in model ? model.name : model.display) text: ("name" in model ? model.name : model.display)
} }
PlasmaComponents.Label { PlasmaComponents.Label {
anchors.right: parent.right anchors.right: parent.right
anchors.rightMargin: units.smallSpacing anchors.rightMargin: PlasmaCore.Units.smallSpacing * 2
anchors.verticalCenter: label.verticalCenter anchors.verticalCenter: label.verticalCenter
visible: showLabel visible: showLabel
horizontalAlignment: Text.AlignRight horizontalAlignment: Text.AlignRight
@ -108,7 +98,7 @@ Item {
width: parent.width - label.implicitWidth - icon.width * 2 width: parent.width - label.implicitWidth - icon.width * 2
elide: Text.ElideRight elide: Text.ElideRight
wrapMode: Text.Wrap wrapMode: Text.Wrap
color: colorWithAlpha(theme.textColor,0.6) color: colorWithAlpha(theme.textColor,0.8)
text: model.description text: model.description
} }

View File

@ -63,13 +63,14 @@ Item {
id: icon id: icon
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
anchors.verticalCenterOffset: -units.gridUnit anchors.verticalCenterOffset: - PlasmaCore.Units.gridUnit
width: iconSize width: iconSize
height: width height: width
colorGroup: PlasmaCore.Theme.ComplementaryColorGroup colorGroup: PlasmaCore.Theme.ComplementaryColorGroup
animated: false animated: false
usesPlasmaTheme: item.GridView.view.usesPlasmaTheme usesPlasmaTheme: item.GridView.view.usesPlasmaTheme
source: model.decoration source: model.decoration
smooth: plasmoid.configuration.iconSmooth
} }
PlasmaComponents.Label { PlasmaComponents.Label {
@ -78,11 +79,11 @@ Item {
anchors { anchors {
horizontalCenter: icon.horizontalCenter horizontalCenter: icon.horizontalCenter
top: icon.bottom top: icon.bottom
topMargin: units.smallSpacing topMargin: PlasmaCore.Units.smallSpacing
} }
width: parent.width - units.largeSpacing width: parent.width - PlasmaCore.Units.largeSpacing
maximumLineCount: 2 maximumLineCount: 2
height: units.gridUnit * 2 height: PlasmaCore.Units.gridUnit * 2
elide: Text.ElideRight elide: Text.ElideRight
horizontalAlignment: Qt.AlignHCenter horizontalAlignment: Qt.AlignHCenter
verticalAlignment: Qt.AlignTop verticalAlignment: Qt.AlignTop

View File

@ -68,21 +68,22 @@ Item {
id: icon id: icon
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left anchors.left: parent.left
anchors.leftMargin: units.smallSpacing anchors.leftMargin: PlasmaCore.Units.smallSpacing
width: units.iconSizes.medium width: PlasmaCore.Units.iconSizes.medium
height: width height: width
colorGroup: PlasmaCore.Theme.ComplementaryColorGroup colorGroup: PlasmaCore.Theme.ComplementaryColorGroup
animated: false animated: false
usesPlasmaTheme: item.GridView.view.usesPlasmaTheme usesPlasmaTheme: item.GridView.view.usesPlasmaTheme
source: model.decoration source: model.decoration
smooth: plasmoid.configuration.iconSmooth
} }
GridLayout { GridLayout {
columns: numColumns columns: numColumns
anchors.left: icon.right anchors.left: icon.right
anchors.right: parent.right anchors.right: parent.right
anchors.leftMargin: units.largeSpacing anchors.leftMargin: PlasmaCore.Units.largeSpacing
anchors.rightMargin: units.largeSpacing anchors.rightMargin: PlasmaCore.Units.largeSpacing
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
columnSpacing: 1 columnSpacing: 1
rowSpacing: 1 rowSpacing: 1
@ -107,9 +108,10 @@ Item {
width: 10 width: 10
elide: Text.ElideRight elide: Text.ElideRight
wrapMode: Text.Wrap wrapMode: Text.Wrap
color: colorWithAlpha(theme.textColor,0.6) color: colorWithAlpha(theme.textColor,0.8)
text: model.description text: model.description
font.pixelSize: label.font.pixelSize - 2 font.pointSize: label.font.pointSize - 2
//font.pixelSize: label.font.pixelSize - 2
} }
} }
@ -132,7 +134,6 @@ Item {
GridView.view.model.trigger(index, "", null); GridView.view.model.trigger(index, "", null);
root.toggle(); root.toggle();
} }
itemGrid.itemActivated(index, "", null); itemGrid.itemActivated(index, "", null);
} }
} }

View File

@ -89,6 +89,7 @@ FocusScope {
function tryActivate(row, col) { function tryActivate(row, col) {
if (count) { if (count) {
gridView.focus = true
var columns = Math.floor(width / itemGrid.cellWidth); var columns = Math.floor(width / itemGrid.cellWidth);
var rows = Math.ceil(count / columns); var rows = Math.ceil(count / columns);
row = Math.min(row, rows - 1); row = Math.min(row, rows - 1);
@ -214,7 +215,7 @@ FocusScope {
property bool usesPlasmaTheme: false property bool usesPlasmaTheme: false
property int iconSize: units.iconSizes.huge property int iconSize: PlasmaCore.Units.iconSizes.huge
property bool animating: false property bool animating: false
property int animationDuration: itemGrid.dropEnabled ? resetAnimationDurationTimer.interval : 0 property int animationDuration: itemGrid.dropEnabled ? resetAnimationDurationTimer.interval : 0
@ -288,7 +289,7 @@ FocusScope {
bottomMargin: parent.margins.bottom bottomMargin: parent.margins.bottom
} }
width: units.iconSizes.smallMedium width: PlasmaCore.Units.iconSizes.smallMedium
height: width height: width
source: "list-add" source: "list-add"

View File

@ -208,7 +208,7 @@ FocusScope {
property bool usesPlasmaTheme: false property bool usesPlasmaTheme: false
property int iconSize: units.iconSizes.huge property int iconSize: PlasmaCore.Units.iconSizes.huge
property bool animating: false property bool animating: false
property int animationDuration: dropEnabled ? resetAnimationDurationTimer.interval : 0 property int animationDuration: dropEnabled ? resetAnimationDurationTimer.interval : 0
property bool square: false property bool square: false
@ -282,7 +282,7 @@ FocusScope {
bottomMargin: parent.margins.bottom bottomMargin: parent.margins.bottom
} }
width: units.iconSizes.smallMedium width: PlasmaCore.Units.iconSizes.smallMedium
height: width height: width
source: "list-add" source: "list-add"

View File

@ -187,7 +187,7 @@ Item {
height: parent.height height: parent.height
spacing: units.smallSpacing * 2 spacing: PlasmaCore.Units.smallSpacing * 2
readonly property real actualSpacing: ((icon.visible ? 1 : 0) * spacing) + ((arrow.visible ? 1 : 0) * spacing) readonly property real actualSpacing: ((icon.visible ? 1 : 0) * spacing) + ((arrow.visible ? 1 : 0) * spacing)
LayoutMirroring.enabled: (Qt.application.layoutDirection == Qt.RightToLeft) LayoutMirroring.enabled: (Qt.application.layoutDirection == Qt.RightToLeft)
@ -197,7 +197,7 @@ Item {
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
width: visible ? units.iconSizes.small : 0 width: visible ? PlasmaCore.Units.iconSizes.small : 0
height: width height: width
visible: iconsEnabled visible: iconsEnabled
@ -231,7 +231,7 @@ Item {
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
width: visible ? units.iconSizes.small : 0 width: visible ? PlasmaCore.Units.iconSizes.small : 0
height: width height: width
visible: hasChildren visible: hasChildren

View File

@ -26,14 +26,7 @@ import org.kde.plasma.private.kicker 0.1 as Kicker
PlasmaExtras.ScrollArea { PlasmaExtras.ScrollArea {
id: itemMultiGrid id: itemMultiGrid
//anchors {
// top: parent.top
//}
anchors.fill: parent anchors.fill: parent
//width: parent.width
implicitHeight: itemColumn.implicitHeight implicitHeight: itemColumn.implicitHeight
signal keyNavLeft(int subGridIndex) signal keyNavLeft(int subGridIndex)
@ -67,6 +60,7 @@ PlasmaExtras.ScrollArea {
} }
function tryActivate(row, col) { // FIXME TODO: Cleanup messy algo. function tryActivate(row, col) { // FIXME TODO: Cleanup messy algo.
console.log("on try activate multigrid")
if (flickableItem.contentY > 0) { if (flickableItem.contentY > 0) {
row = 0; row = 0;
} }
@ -94,14 +88,14 @@ PlasmaExtras.ScrollArea {
Column { Column {
id: itemColumn id: itemColumn
width: itemMultiGrid.width //- units.gridUnit width: itemMultiGrid.width //- PlasmaCore.Units.gridUnit
Repeater { Repeater {
id: repeater id: repeater
delegate: Item { delegate: Item {
width: itemColumn.width width: itemColumn.width
height: gridViewLabel.height + gridView.height + (index == repeater.count - 1 ? 0 : units.smallSpacing) height: gridViewLabel.height + gridView.height + (index == repeater.count - 1 ? 0 : PlasmaCore.Units.smallSpacing)
//visible: gridView.count > 0 //visible: gridView.count > 0
property Item itemGrid: gridView property Item itemGrid: gridView
@ -110,7 +104,7 @@ PlasmaExtras.ScrollArea {
id: gridViewLabel id: gridViewLabel
anchors.top: parent.top anchors.top: parent.top
anchors.left: parent.left anchors.left: parent.left
anchors.leftMargin: units.smallSpacing * 4 anchors.leftMargin: PlasmaCore.Units.smallSpacing
height: dummyHeading.height height: dummyHeading.height
wrapMode: Text.NoWrap wrapMode: Text.NoWrap
color: theme.textColor color: theme.textColor
@ -118,14 +112,14 @@ PlasmaExtras.ScrollArea {
font.weight: Font.DemiBold font.weight: Font.DemiBold
level: 5 level: 5
verticalAlignment: Qt.AlignVCenter verticalAlignment: Qt.AlignVCenter
text: repeater.model.modelForRow(index).description text: repeater.model.modelForRow(index) ? repeater.model.modelForRow(index).description : ""
} }
Rectangle{ Rectangle{
anchors.right: parent.right anchors.right: parent.right
anchors.verticalCenter: gridViewLabel.verticalCenter anchors.verticalCenter: gridViewLabel.verticalCenter
height: 1 height: 1
width: parent.width - gridViewLabel.implicitWidth - units.largeSpacing*2 width: parent.width - gridViewLabel.implicitWidth - PlasmaCore.Units.largeSpacing*2
color: theme.textColor color: theme.textColor
opacity: 0.15 opacity: 0.15
} }
@ -141,7 +135,7 @@ PlasmaExtras.ScrollArea {
anchors { anchors {
top: gridViewLabel.bottom top: gridViewLabel.bottom
topMargin: units.smallSpacing topMargin: PlasmaCore.Units.smallSpacing
} }
width: parent.width width: parent.width

View File

@ -44,15 +44,15 @@ PlasmaCore.Dialog {
objectName: "popupWindow" objectName: "popupWindow"
flags: Qt.WindowStaysOnTopHint flags: Qt.WindowStaysOnTopHint
location: PlasmaCore.Types.Floating location: plasmoid.configuration.pullupAnimation ? PlasmaCore.Types.BottomEdge : PlasmaCore.Types.Floating
hideOnWindowDeactivate: true hideOnWindowDeactivate: true
property int defaultSize: { property int defaultSize: {
switch(plasmoid.configuration.defaultSize){ switch(plasmoid.configuration.defaultSize){
case "SmallMedium": return units.iconSizes.smallMedium; case "SmallMedium": return PlasmaCore.Units.iconSizes.smallMedium;
case "Medium": return units.iconSizes.medium; case "Medium": return PlasmaCore.Units.iconSizes.medium;
case "Large": return units.iconSizes.large; case "Large": return PlasmaCore.Units.iconSizes.large;
case "Huge": return units.iconSizes.huge; case "Huge": return PlasmaCore.Units.iconSizes.huge;
default: return 64 default: return 64
} }
} }
@ -63,31 +63,30 @@ PlasmaCore.Dialog {
+ (2 * Math.max(highlightItemSvg.margins.top + highlightItemSvg.margins.bottom, + (2 * Math.max(highlightItemSvg.margins.top + highlightItemSvg.margins.bottom,
highlightItemSvg.margins.left + highlightItemSvg.margins.right)) highlightItemSvg.margins.left + highlightItemSvg.margins.right))
property int tileSideWidth: tileSideHeight + units.smallSpacing*2 property int tileSideWidth: tileSideHeight + PlasmaCore.Units.smallSpacing*2
property int tileHeightDocuments: units.gridUnit * 2 + units.smallSpacing * 4 property int tileHeightDocuments: PlasmaCore.Units.gridUnit * 2 + PlasmaCore.Units.smallSpacing * 4
property bool searching: (searchField.text != "") property bool searching: (searchField.text != "")
property bool readySearch: false property bool readySearch: false
property bool viewDocuments: false property bool viewDocuments: false
property int _margin: iconSizeSquare > 33 ? units.largeSpacing : units.largeSpacing * 0.5 property int _margin: iconSizeSquare > 33 ? PlasmaCore.Units.largeSpacing : PlasmaCore.Units.largeSpacing * 0.5
function colorWithAlpha(color, alpha) {
return Qt.rgba(color.r, color.g, color.b, alpha)
}
property bool mainViewVisible: !searching && !readySearch
onVisibleChanged: { onVisibleChanged: {
reset()
if (visible) { if (visible) {
reset();
var pos = popupPosition(width, height); var pos = popupPosition(width, height);
x = pos.x; x = pos.x;
y = pos.y; y = pos.y;
requestActivate(); requestActivate();
//animation1.start() if(!plasmoid.configuration.pullupAnimation)
animation1.start()
}else{ }else{
reset() //focusScope.opacity = 0
//focusScope.y = 250
} }
} }
@ -108,22 +107,32 @@ PlasmaCore.Dialog {
reset(); reset();
}else{ }else{
viewDocuments = false viewDocuments = false
readySearch = false if(readySearch)
readySearch = false
} }
} }
function colorWithAlpha(color, alpha) {
return Qt.rgba(color.r, color.g, color.b, alpha)
}
function reset() { function reset() {
preloadAllAppsTimer.restart();
globalFavoritesGrid.tryActivate(0,0) globalFavoritesGrid.tryActivate(0,0)
searchField.clear(); searchField.clear();
readySearch = false readySearch = false
viewDocuments = false viewDocuments = false
} }
function toggle(){ function setModels(){
root.visible = false; allAppsGrid.model = rootModel.modelForRow(2)
documentsFavoritesGrid.model = rootModel.modelForRow(1)
} }
function toggle(){
root.visible = !root.visible;
}
function popupPosition(width, height) { function popupPosition(width, height) {
var screenAvail = plasmoid.availableScreenRect; var screenAvail = plasmoid.availableScreenRect;
@ -134,7 +143,7 @@ PlasmaCore.Dialog {
screenAvail.height); screenAvail.height);
var offset = units.smallSpacing; var offset = PlasmaCore.Units.smallSpacing;
// Fall back to bottom-left of screen area when the applet is on the desktop or floating. // Fall back to bottom-left of screen area when the applet is on the desktop or floating.
var x = offset; var x = offset;
@ -179,21 +188,19 @@ PlasmaCore.Dialog {
return Qt.point(x, y); return Qt.point(x, y);
} }
FocusScope { FocusScope {
id: focusScope id: focusScope
Layout.maximumWidth: (tileSideWidth * plasmoid.configuration.numberColumns) + units.largeSpacing * 2 Layout.maximumWidth: (tileSideWidth * plasmoid.configuration.numberColumns) + _margin * 2
Layout.minimumWidth: (tileSideWidth * plasmoid.configuration.numberColumns) + units.largeSpacing * 2 Layout.minimumWidth: (tileSideWidth * plasmoid.configuration.numberColumns) + _margin * 2
Layout.minimumHeight: searchField.implicitHeight + topRow.height + firstPage.height + footer.height + _margin * 5 Layout.minimumHeight: searchField.implicitHeight + topRow.height + firstPage.height + footer.height + _margin * 5
Layout.maximumHeight: Layout.minimumHeight Layout.maximumHeight: Layout.minimumHeight
property bool done: false property bool done: false
ScaleAnimator{id: animation1 ; target: globalFavoritesGrid ; from: 0.9; to: 1; duration: units.shortDuration*2; easing.type: Easing.InOutQuad } ScaleAnimator{id: animation1 ; target: focusScope ; from: 0.8; to: 1; duration: PlasmaCore.Units.shortDuration*3; easing.type: Easing.OutBack}
XAnimator{id: animation2; target: mainColumn ; from: focusScope.width; to: units.smallSpacing; duration: units.shortDuration*2; easing.type: Easing.OutCubic }
focus: true focus: true
@ -216,31 +223,6 @@ PlasmaCore.Dialog {
} }
} }
Timer {
id: preloadAllAppsTimer
property bool done: false
interval: 1000
repeat: false
onTriggered: {
if (done) {
return;
}
for (var i = 0; i < rootModel.count; ++i) {
var model = rootModel.modelForRow(i);
if (model.description === "KICKER_ALL_MODEL") {
allAppsGrid.model = model;
done = true;
break;
}
}
}
function defer() {
if (!running && !done) {
restart();
}
}
}
PlasmaComponents3.TextField { PlasmaComponents3.TextField {
id: searchField id: searchField
anchors.top: parent.top anchors.top: parent.top
@ -248,11 +230,11 @@ PlasmaCore.Dialog {
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
focus: true focus: true
width: tileSideWidth * plasmoid.configuration.numberColumns width: tileSideWidth * plasmoid.configuration.numberColumns
implicitHeight: units.gridUnit * 2 implicitHeight: PlasmaCore.Units.gridUnit * 2
placeholderText: i18n("Type here to search ...") placeholderText: i18n("Type here to search ...")
placeholderTextColor: colorWithAlpha(theme.textColor,0.7) placeholderTextColor: colorWithAlpha(theme.textColor,0.7)
leftPadding: units.largeSpacing + units.iconSizes.small leftPadding: PlasmaCore.Units.largeSpacing + PlasmaCore.Units.iconSizes.small
topPadding: units.gridUnit * 0.5 topPadding: PlasmaCore.Units.gridUnit * 0.5
verticalAlignment: Text.AlignTop verticalAlignment: Text.AlignTop
background: Rectangle { background: Rectangle {
color: theme.backgroundColor color: theme.backgroundColor
@ -260,26 +242,24 @@ PlasmaCore.Dialog {
border.width: 1 border.width: 1
border.color: colorWithAlpha(theme.textColor,0.05) border.color: colorWithAlpha(theme.textColor,0.05)
} }
onTextChanged: { onTextChanged: runnerModel.query = text;
runnerModel.query = text;
}
function clear() { function clear() {
text = ""; text = "";
} }
function backspace() { function backspace() {
focus = true; //focus = true;
if(searching) text = text.slice(0, -1); if(searching) text = text.slice(0, -1);
} }
function appendText(newText) { function appendText(newText) {
if (!root.visible) { if (!root.visible) {
return; return;
} }
focus = true; //focus = true;
text = text + newText; text = text + newText;
} }
Keys.onPressed: { Keys.onPressed: {
if (event.key == Qt.Key_Down || event.key == Qt.Key_Tab) { if (event.key === Qt.Key_Down || event.key === Qt.Key_Tab) {
event.accepted = true; event.accepted = true;
if( searching || readySearch) if( searching || readySearch)
mainColumn.visibleGrid.tryActivate(0,0); mainColumn.visibleGrid.tryActivate(0,0);
@ -304,10 +284,10 @@ PlasmaCore.Dialog {
anchors { anchors {
left: searchField.left left: searchField.left
verticalCenter: searchField.verticalCenter verticalCenter: searchField.verticalCenter
leftMargin: units.smallSpacing * 2 leftMargin: PlasmaCore.Units.smallSpacing * 2
} }
height: units.iconSizes.small height: PlasmaCore.Units.iconSizes.small
width: height width: height
} }
@ -326,8 +306,8 @@ PlasmaCore.Dialog {
PlasmaCore.IconItem { PlasmaCore.IconItem {
source: searching || readySearch ? 'application-menu' : 'favorite' source: searching || readySearch ? 'application-menu' : 'favorite'
implicitHeight: units.iconSizes.smallMedium implicitHeight: PlasmaCore.Units.iconSizes.smallMedium
implicitWidth: units.iconSizes.smallMedium implicitWidth: PlasmaCore.Units.iconSizes.smallMedium
} }
PlasmaExtras.Heading { PlasmaExtras.Heading {
@ -335,7 +315,7 @@ PlasmaCore.Dialog {
color: colorWithAlpha(theme.textColor, 0.8) color: colorWithAlpha(theme.textColor, 0.8)
level: 5 level: 5
text: searching || readySearch ? i18n("Search results"): i18n("Pinned") text: searching || readySearch ? i18n("Search results"): i18n("Pinned")
Layout.leftMargin: units.smallSpacing Layout.leftMargin: PlasmaCore.Units.smallSpacing
font.weight: Font.Bold font.weight: Font.Bold
} }
@ -348,18 +328,18 @@ PlasmaCore.Dialog {
AToolButton { AToolButton {
id: btnAction id: btnAction
flat: false flat: false
mirror: searching || readySearch mirror: !mainViewVisible
iconName: searching || readySearch ? 'go-previous' : "go-next" iconName: mainViewVisible ? "go-next" : 'go-previous'
text: searching || readySearch ? i18n("Pinned") : i18n("All apps") text: mainViewVisible ? i18n("All apps") : i18n("Pinned")
onClicked: { onClicked: {
if(readySearch || searching){ if(mainViewVisible){
readySearch = false
searchField.text = ''
}
else{
readySearch = true readySearch = true
//searchField.focus = true //searchField.focus = true
} }
else{
readySearch = false
searchField.text = ''
}
} }
} }
@ -376,7 +356,7 @@ PlasmaCore.Dialog {
} }
] ]
transitions: Transition { transitions: Transition {
OpacityAnimator{ duration: units.shortDuration*2 } OpacityAnimator{ duration: PlasmaCore.Units.shortDuration*2 }
} }
} }
@ -389,15 +369,66 @@ PlasmaCore.Dialog {
Column{ Column{
id: firstPage id: firstPage
width: tileSideWidth * plasmoid.configuration.numberColumns width: tileSideWidth * plasmoid.configuration.numberColumns
height: tileSideHeight * plasmoid.configuration.numberRows + btnAction.implicitHeight + tileHeightDocuments * 3 + _margin height: tileSideHeight * plasmoid.configuration.numberRows + btnAction.implicitHeight + tileHeightDocuments * 3 + _margin
anchors.top: topRow.bottom anchors.top: topRow.bottom
anchors.topMargin: _margin anchors.topMargin: _margin
anchors.horizontalCenter: parent.horizontalCenter //anchors.horizontalCenter: parent.horizontalCenter
spacing: _margin spacing: _margin
visible: !readySearch && !searching //visible: mainViewVisible
state: 'visible'
states: [
State {
name: "hidden"
when: !mainViewVisible
PropertyChanges { target: firstPage ; opacity: 0}
PropertyChanges { target: firstPage ; x: -firstPage.width}
PropertyChanges { target: firstPage ; visible: 0}
},
State {
name: "visible"
when: mainViewVisible
PropertyChanges { target: firstPage ; visible: 1}
PropertyChanges { target: firstPage ; opacity: 1}
PropertyChanges { target: firstPage ; x: _margin }
}
]
transitions: [
Transition {
from: "hidden"
to: "visible"
NumberAnimation {
properties: "opacity,x"
duration: PlasmaCore.Units.shortDuration*2
}
},
Transition {
from: "visible"
to: "hidden"
SequentialAnimation {
PropertyAction {
target: firstPage;
property: "visible"
value: true
}
PropertyAnimation {
target: firstPage
properties: "opacity,x"
duration: PlasmaCore.Units.shortDuration*2
}
}
}
]
ItemGridView { ItemGridView {
id: globalFavoritesGrid id: globalFavoritesGrid
width: tileSideWidth * plasmoid.configuration.numberColumns width: tileSideWidth * plasmoid.configuration.numberColumns
@ -407,20 +438,15 @@ PlasmaCore.Dialog {
cellHeight: tileSideHeight cellHeight: tileSideHeight
iconSize: root.iconSizeSquare iconSize: root.iconSizeSquare
square: true square: true
model: globalFavorites model: plasmoid.configuration.showRecentApps ? rootModel.modelForRow(0) : rootModel.favoritesModel
dropEnabled: true dropEnabled: true
usesPlasmaTheme: true usesPlasmaTheme: true
verticalScrollBarPolicy: Qt.ScrollBarAlwaysOff verticalScrollBarPolicy: Qt.ScrollBarAlwaysOff
//visible: !viewDocuments
state: 'small' state: 'small'
onKeyNavDown: documentsFavoritesGrid.tryActivate(0,0) onKeyNavDown: documentsFavoritesGrid.tryActivate(0,0)
onKeyNavUp: searchField.focus = true onKeyNavUp: searchField.focus = true
onCurrentIndexChanged: {
preloadAllAppsTimer.defer();
}
states: [ states: [
State { State {
name: "small" name: "small"
@ -435,27 +461,31 @@ PlasmaCore.Dialog {
} }
] ]
transitions: Transition { transitions: Transition {
PropertyAnimation { property: "height"; duration: units.shortDuration*2;} PropertyAnimation { property: "height"; duration: PlasmaCore.Units.shortDuration*2;}
} }
Keys.onPressed: { Keys.onPressed: {
if(event.modifiers & Qt.ControlModifier ||event.modifiers & Qt.ShiftModifier){
searchField.focus = true;
return
}
if (event.key == Qt.Key_Tab) { if (event.key === Qt.Key_Tab) {
event.accepted = true; event.accepted = true;
documentsFavoritesGrid.tryActivate(0,0) documentsFavoritesGrid.tryActivate(0,0)
} else if (event.key == Qt.Key_Backspace) { } else if (event.key === Qt.Key_Backspace) {
event.accepted = true; event.accepted = true;
if(searching) if(searching)
searchField.backspace(); searchField.backspace();
else else
searchField.focus = true searchField.focus = true
} else if (event.key == Qt.Key_Escape) { } else if (event.key === Qt.Key_Escape) {
event.accepted = true; event.accepted = true;
if(searching){ if(searching){
searchField.clear() searchField.clear()
} else { } else {
root.toggle() root.toggle()
} }
} else if (event.text != "") { } else if (event.text !== "") {
event.accepted = true; event.accepted = true;
searchField.appendText(event.text); searchField.appendText(event.text);
} }
@ -468,23 +498,24 @@ PlasmaCore.Dialog {
height: btnAction.implicitHeight height: btnAction.implicitHeight
PlasmaCore.IconItem { PlasmaCore.IconItem {
source: 'tag' // 'format-list-unordered' source: plasmoid.configuration.hideRecentDocs ? 'clock' : 'tag'
implicitHeight: units.iconSizes.smallMedium implicitHeight: PlasmaCore.Units.iconSizes.smallMedium
implicitWidth: units.iconSizes.smallMedium implicitWidth: PlasmaCore.Units.iconSizes.smallMedium
} }
PlasmaExtras.Heading { PlasmaExtras.Heading {
id: headLabelDocuments id: headLabelDocuments
color: colorWithAlpha(theme.textColor, 0.8) color: colorWithAlpha(theme.textColor, 0.8)
level: 5 level: 5
text: i18n("Recommended") text: plasmoid.configuration.hideRecentDocs ? i18n("Date and time") : i18n("Recommended")
Layout.leftMargin: units.smallSpacing Layout.leftMargin: PlasmaCore.Units.smallSpacing
font.weight: Font.Bold font.weight: Font.Bold
} }
Item{ Item{
Layout.fillWidth: true Layout.fillWidth: true
} }
AToolButton { AToolButton {
visible: !plasmoid.configuration.hideRecentDocs
flat: false flat: false
iconName: viewDocuments ? 'go-previous' : "go-next" iconName: viewDocuments ? 'go-previous' : "go-next"
mirror: viewDocuments mirror: viewDocuments
@ -493,14 +524,19 @@ PlasmaCore.Dialog {
} }
} }
Clock{
width: parent.width
height: tileHeightDocuments * 3
visible: plasmoid.configuration.hideRecentDocs
}
ItemGridView3 { ItemGridView3 {
id: documentsFavoritesGrid id: documentsFavoritesGrid
visible: !plasmoid.configuration.hideRecentDocs
width: parent.width width: parent.width
height: tileHeightDocuments * 3 height: tileHeightDocuments * 3
cellWidth: Math.floor(parent.width * 0.5) cellWidth: Math.floor(parent.width * 0.5)
cellHeight: tileHeightDocuments cellHeight: tileHeightDocuments
square: false square: false
model: rootModel.modelForRow(1)
dropEnabled: true dropEnabled: true
usesPlasmaTheme: false usesPlasmaTheme: false
verticalScrollBarPolicy: Qt.ScrollBarAlwaysOff verticalScrollBarPolicy: Qt.ScrollBarAlwaysOff
@ -510,10 +546,6 @@ PlasmaCore.Dialog {
else globalFavoritesGrid.tryActivate(0,0); else globalFavoritesGrid.tryActivate(0,0);
} }
onCurrentIndexChanged: {
preloadAllAppsTimer.defer();
}
states: [ states: [
State { State {
name: "small" name: "small"
@ -527,30 +559,34 @@ PlasmaCore.Dialog {
} }
] ]
transitions: Transition { transitions: Transition {
PropertyAnimation { property: "height"; duration: units.shortDuration*2 } PropertyAnimation { property: "height"; duration: PlasmaCore.Units.shortDuration*2 }
} }
Keys.onPressed: { Keys.onPressed: {
if(event.modifiers & Qt.ControlModifier ||event.modifiers & Qt.ShiftModifier){
searchField.focus = true;
return
}
if (event.key == Qt.Key_Tab) { if (event.key === Qt.Key_Tab) {
event.accepted = true; event.accepted = true;
if (viewDocuments) searchField.focus = true if (viewDocuments) searchField.focus = true
else globalFavoritesGrid.tryActivate(0,0); else globalFavoritesGrid.tryActivate(0,0);
} else if (event.key == Qt.Key_Backspace) { } else if (event.key === Qt.Key_Backspace) {
event.accepted = true; event.accepted = true;
if(searching) if(searching)
searchField.backspace(); searchField.backspace();
else else
searchField.focus = true searchField.focus = true
} else if (event.key == Qt.Key_Escape) { } else if (event.key === Qt.Key_Escape) {
event.accepted = true; event.accepted = true;
if(searching){ if(searching){
searchField.clear() searchField.clear()
} else { } else {
root.toggle() root.toggle()
} }
} else if (event.text != "") { } else if (event.text !== "") {
event.accepted = true; event.accepted = true;
searchField.appendText(event.text); searchField.appendText(event.text);
} }
@ -563,15 +599,65 @@ PlasmaCore.Dialog {
} }
Item{ //
anchors.top: topRow.bottom //
anchors.horizontalCenter: parent.horizontalCenter //
anchors.fill: firstPage //
visible: searching || readySearch
Item{
id: mainLists
anchors.top: topRow.bottom
anchors.topMargin: _margin
width: tileSideWidth * plasmoid.configuration.numberColumns
height: tileSideHeight * plasmoid.configuration.numberRows + btnAction.implicitHeight + tileHeightDocuments * 3 + _margin
state: 'hidden'
states: [
State {
name: "hidden"
when: mainViewVisible
PropertyChanges { target: mainLists ; opacity: 0}
PropertyChanges { target: mainLists ; x: mainLists.width}
PropertyChanges { target: mainLists ; visible: 0}
},
State {
name: "visible"
when: !mainViewVisible
PropertyChanges { target: mainLists ; visible: 1}
PropertyChanges { target: mainLists ; opacity: 1}
PropertyChanges { target: mainLists ; x: _margin }
}
]
transitions: [
Transition {
from: "hidden"
to: "visible"
NumberAnimation {
properties: "opacity,x"
duration: PlasmaCore.Units.shortDuration*2
}
},
Transition {
from: "visible"
to: "hidden"
SequentialAnimation {
PropertyAction {
target: mainLists;
property: "visible"
value: true
}
PropertyAnimation {
target: mainLists
properties: "opacity,x"
}
}
}
]
onVisibleChanged: {
if(visible) animation2.start()
}
Item { Item {
id: mainColumn id: mainColumn
@ -579,7 +665,7 @@ PlasmaCore.Dialog {
height: parent.height height: parent.height
anchors { anchors {
top: parent.top top: parent.top
topMargin: units.smallSpacing topMargin: PlasmaCore.Units.smallSpacing
} }
property Item visibleGrid: allAppsGrid property Item visibleGrid: allAppsGrid
@ -597,9 +683,8 @@ PlasmaCore.Dialog {
height: parent.height height: parent.height
enabled: (opacity == 1.0) ? 1 : 0 enabled: (opacity == 1.0) ? 1 : 0
opacity: searching ? 0 : 1 opacity: searching ? 0 : 1
aCellWidth: parent.width - units.largeSpacing aCellWidth: parent.width - PlasmaCore.Units.largeSpacing
aCellHeight: iconSize + units.smallSpacing*2 aCellHeight: iconSize + PlasmaCore.Units.smallSpacing*2
model: rootModel.modelForRow(2);
onOpacityChanged: { onOpacityChanged: {
if (opacity == 1.0) { if (opacity == 1.0) {
allAppsGrid.flickableItem.contentY = 0; allAppsGrid.flickableItem.contentY = 0;
@ -614,8 +699,8 @@ PlasmaCore.Dialog {
id: runnerGrid id: runnerGrid
anchors.fill: parent anchors.fill: parent
z: (opacity == 1.0) ? 1 : 0 z: (opacity == 1.0) ? 1 : 0
aCellWidth: parent.width - units.largeSpacing aCellWidth: parent.width - PlasmaCore.Units.largeSpacing
aCellHeight: iconSize + units.smallSpacing * 2 aCellHeight: iconSize + PlasmaCore.Units.smallSpacing * 2
enabled: (opacity == 1.0) ? 1 : 0 enabled: (opacity == 1.0) ? 1 : 0
isSquare: false isSquare: false
@ -633,23 +718,28 @@ PlasmaCore.Dialog {
Keys.onPressed: { Keys.onPressed: {
if (event.key == Qt.Key_Tab) { if(event.modifiers & Qt.ControlModifier ||event.modifiers & Qt.ShiftModifier){
searchField.focus = true;
return
}
if (event.key === Qt.Key_Tab) {
event.accepted = true; event.accepted = true;
globalFavoritesGrid.tryActivate(0,0) globalFavoritesGrid.tryActivate(0,0)
} else if (event.key == Qt.Key_Backspace) { } else if (event.key === Qt.Key_Backspace) {
event.accepted = true; event.accepted = true;
if(searching) if(searching)
searchField.backspace(); searchField.backspace();
else else
searchField.focus = true searchField.focus = true
} else if (event.key == Qt.Key_Escape) { } else if (event.key === Qt.Key_Escape) {
event.accepted = true; event.accepted = true;
if(searching){ if(searching){
searchField.clear() searchField.clear()
} else { } else {
root.toggle() root.toggle()
} }
} else if (event.text != "") { } else if (event.text !== "") {
event.accepted = true; event.accepted = true;
searchField.appendText(event.text); searchField.appendText(event.text);
} }
@ -659,30 +749,21 @@ PlasmaCore.Dialog {
} }
//
Rectangle{ //
//
//
PlasmaExtras.PlasmoidHeading {
id: footer id: footer
width: parent.width + backgroundSvg.margins.right + backgroundSvg.margins.left contentWidth: parent.width
height: root.iconSizeSquare + units.smallSpacing*2 // units.gridUnit * 3 contentHeight: root.iconSizeSquare + PlasmaCore.Units.smallSpacing
x: - backgroundSvg.margins.left anchors.bottom: parent.bottom
y: parent.height - height + backgroundSvg.margins.bottom position: PlasmaComponents3.ToolBar.Footer
color: colorWithAlpha(theme.textColor,0.05)
Footer{ Footer{
anchors.fill: parent anchors.fill: parent
anchors.leftMargin: _margin*2 anchors.leftMargin: _margin
anchors.rightMargin: _margin*2 anchors.rightMargin: _margin
} }
Rectangle{
anchors.top: parent.top
width: parent.width
height: 1
color: theme.textColor
opacity: 0.15
z:2
}
} }
Keys.onPressed: { Keys.onPressed: {
@ -694,8 +775,9 @@ PlasmaCore.Dialog {
} }
Component.onCompleted: { Component.onCompleted: {
rootModel.refreshed.connect(reset) rootModel.refreshed.connect(setModels)
kicker.reset.connect(reset);
reset(); reset();
rootModel.refresh();
} }
} }

View File

@ -28,6 +28,8 @@ var formats = [
"Huge" "Huge"
] ]
const defaultIconName = "start-here-kde";
function fillActionMenu(i18n, actionMenu, actionList, favoriteModel, favoriteId) { function fillActionMenu(i18n, actionMenu, actionList, favoriteModel, favoriteId) {
// Accessing actionList can be a costly operation, so we don't // Accessing actionList can be a costly operation, so we don't
// access it until we need the menu. // access it until we need the menu.

View File

@ -33,18 +33,12 @@ Item {
signal reset signal reset
property bool isDash: false
Plasmoid.preferredRepresentation: Plasmoid.fullRepresentation Plasmoid.preferredRepresentation: Plasmoid.fullRepresentation
Plasmoid.compactRepresentation: null Plasmoid.compactRepresentation: null
Plasmoid.fullRepresentation: compactRepresentation Plasmoid.fullRepresentation: compactRepresentation
property Item dragSource: null property Item dragSource: null
property QtObject globalFavorites: rootModel.favoritesModel
property QtObject systemFavorites: rootModel.systemFavoritesModel
function action_menuedit() { function action_menuedit() {
processRunner.runMenuEditor(); processRunner.runMenuEditor();
} }
@ -59,90 +53,50 @@ Item {
MenuRepresentation {} MenuRepresentation {}
} }
Kicker.RootModel { readonly property Kicker.RootModel rootModel: Kicker.RootModel {
id: rootModel id: rootModel
autoPopulate: false autoPopulate: false
appNameFormat: 0
flat: true
showSeparators: false
appletInterface: plasmoid appletInterface: plasmoid
flat: true // have categories, but no subcategories
showSeparators: false
showTopLevelItems: false//true
showAllApps: true showAllApps: true
showAllAppsCategorized: true showAllAppsCategorized: true
showTopLevelItems: false
showRecentApps: true showRecentApps: true
showRecentDocs: true showRecentDocs: true
showRecentContacts: false showRecentContacts: false
showPowerSession: false
Component.onCompleted: { Component.onCompleted: {
if ("initForClient" in favoritesModel) {
favoritesModel.initForClient("org.kde.plasma.kicker.favorites.instance-" + plasmoid.id)
if (!plasmoid.configuration.favoritesPortedToKAstats) { favoritesModel.initForClient("org.kde.plasma.kickoff.favorites.instance-" + plasmoid.id)
favoritesModel.portOldFavorites(plasmoid.configuration.favoriteApps);
plasmoid.configuration.favoritesPortedToKAstats = true; if (!plasmoid.configuration.favoritesPortedToKAstats) {
if (favoritesModel.count < 1) {
favoritesModel.portOldFavorites(plasmoid.configuration.favorites);
} }
} else { plasmoid.configuration.favoritesPortedToKAstats = true;
favoritesModel.favorites = plasmoid.configuration.favoriteApps;
} }
favoritesModel.maxFavorites = pageSize;
rootModel.refresh();
} }
} }
Connections { readonly property Kicker.RecentUsageModel frequentUsageModel: Kicker.RecentUsageModel {
target: globalFavorites favoritesModel: rootModel.favoritesModel
ordering: 1 // Popular / Frequently Used
onFavoritesChanged: {
plasmoid.configuration.favoriteApps = target.favorites;
}
} }
Connections { readonly property Kicker.RecentUsageModel recentUsageModel: Kicker.RecentUsageModel {
target: systemFavorites favoritesModel: rootModel.favoritesModel
onFavoritesChanged: {
plasmoid.configuration.favoriteSystemActions = target.favorites;
}
}
Connections {
target: plasmoid.configuration
onFavoriteAppsChanged: {
globalFavorites.favorites = plasmoid.configuration.favoriteApps;
}
onFavoriteSystemActionsChanged: {
systemFavorites.favorites = plasmoid.configuration.favoriteSystemActions;
}
} }
Kicker.RunnerModel { Kicker.RunnerModel {
id: runnerModel id: runnerModel
appletInterface: plasmoid appletInterface: plasmoid
favoritesModel: globalFavorites favoritesModel: rootModel.favoritesModel
//mergeResults: true mergeResults: false
//runners: plasmoid.configuration.useExtraRunners ? new Array("services").concat(plasmoid.configuration.extraRunners) : "services"
runners: {
var runners = new Array("services", "krunner_systemsettings");
runners = runners.concat(new Array("desktopsessions", "PowerDevil",
"calculator", "unitconverter"));
if (plasmoid.configuration.useExtraRunners) {
runners = runners.concat(plasmoid.configuration.extraRunners);
}
return runners;
}
deleteWhenEmpty: true deleteWhenEmpty: true
} }
Kicker.DragHelper { Kicker.DragHelper {
@ -157,11 +111,16 @@ Item {
id: windowSystem id: windowSystem
} }
Connections {
target: plasmoid.configuration
function onHiddenApplicationsChanged(){
rootModel.refresh(); // Force refresh on hidden
}
}
PlasmaCore.FrameSvgItem { PlasmaCore.FrameSvgItem {
id : highlightItemSvg id : highlightItemSvg
visible: false visible: false
imagePath: "widgets/viewitem" imagePath: "widgets/viewitem"
prefix: "hover" prefix: "hover"
} }
@ -208,7 +167,7 @@ Item {
//dragHelper.dropped.connect(resetDragSource); //dragHelper.dropped.connect(resetDragSource);
if (plasmoid.hasOwnProperty("activationTogglesExpanded")) { if (plasmoid.hasOwnProperty("activationTogglesExpanded")) {
plasmoid.activationTogglesExpanded = false//!kicker.isDash plasmoid.activationTogglesExpanded = false
} }
windowSystem.focusIn.connect(enableHideOnWindowDeactivate); windowSystem.focusIn.connect(enableHideOnWindowDeactivate);
@ -219,9 +178,7 @@ Item {
} }
//updateSvgMetrics(); //updateSvgMetrics();
PlasmaCore.Theme.themeChanged.connect(updateSvgMetrics); //PlasmaCore.Theme.themeChanged.connect(updateSvgMetrics);
rootModel.refreshed.connect(reset);
dragHelper.dropped.connect(resetDragSource); dragHelper.dropped.connect(resetDragSource);
} }
} }

View File

@ -7,18 +7,19 @@
} }
], ],
"Category": "Application Launchers", "Category": "Application Launchers",
"Dependencies": [
],
"Description": "A configurable launcher menu 11", "Description": "A configurable launcher menu 11",
"Description[x-test]": "xxA configurable launcher menu 11xx",
"EnabledByDefault": true, "EnabledByDefault": true,
"Icon": "start-here-kde", "Icon": "start-here-kde",
"Id": "com.github.adhec.OnzeMenuKDE", "Id": "com.github.adhec.OnzeMenuKDE",
"License": "GPL-2.0+", "License": "GPL-2.0+",
"Name": "OnzeMenuKDE", "Name": "OnzeMenu",
"Name[x-test]": "xxOnze Menuxx",
"ServiceTypes": [ "ServiceTypes": [
"Plasma/Applet" "Plasma/Applet"
], ],
"Version": "8.0" "Version": "1.0",
"Website": ""
}, },
"X-Plasma-API": "declarativeappletscript", "X-Plasma-API": "declarativeappletscript",
"X-Plasma-MainScript": "ui/main.qml", "X-Plasma-MainScript": "ui/main.qml",

View File

@ -34,12 +34,13 @@ Or if you know how to make a pull request
## Status ## Status
| Locale | Lines | % Done| | Locale | Lines | % Done|
|----------|---------|-------| |----------|---------|-------|
| Template | 33 | | | Template | 40 | |
| de | 32/33 | 96% | | de | 32/40 | 80% |
| fr | 32/33 | 96% | | fr | 32/40 | 80% |
| ko | 32/33 | 96% | | ko | 32/40 | 80% |
| nl | 32/33 | 96% | | nl | 33/40 | 82% |
| pt-br | 32/33 | 96% | | pt-br | 32/40 | 80% |
| ru | 32/33 | 96% | | ru | 32/40 | 80% |
| tr | 28/33 | 84% | | tr | 28/40 | 70% |
| zh_CN | 30/33 | 90% | | uk | 33/40 | 82% |
| zh_CN | 30/40 | 75% |

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: 2022-11-06 15:+0200\n" "PO-Revision-Date: 2022-11-06 15:+0200\n"
"Last-Translator: Pascal Dietrich <pascal.1.dietrich@hotmail.com>\n" "Last-Translator: Pascal Dietrich <pascal.1.dietrich@hotmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -78,6 +78,14 @@ msgstr "Mitte"
msgid "Center bottom" msgid "Center bottom"
msgstr "Mitte unten" msgstr "Mitte unten"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "Suche auf Lesezeichen, Dateien und E-Mails erweitern" msgstr "Suche auf Lesezeichen, Dateien und E-Mails erweitern"
@ -86,6 +94,10 @@ msgstr "Suche auf Lesezeichen, Dateien und E-Mails erweitern"
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "Beschriftungen in zwei Zeilen anzeigen" msgstr "Beschriftungen in zwei Zeilen anzeigen"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "Anzahl der Spalten (Hauptraster)" msgstr "Anzahl der Spalten (Hauptraster)"
@ -98,10 +110,22 @@ msgstr "Anzahl der Reihen (Hauptraster)"
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "Größe der Symbole" msgstr "Größe der Symbole"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "Benutzerordner" msgstr "Benutzerordner"
@ -138,6 +162,10 @@ msgstr "Angeheftet"
msgid "All apps" msgid "All apps"
msgstr "Alle Apps" msgstr "Alle Apps"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "Empfohlen" msgstr "Empfohlen"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -79,6 +79,14 @@ msgstr "Centré"
msgid "Center bottom" msgid "Center bottom"
msgstr "Centré en bas" msgstr "Centré en bas"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "Étendre la recherche dans les marques-pages, les fichiers et les emails" msgstr "Étendre la recherche dans les marques-pages, les fichiers et les emails"
@ -87,6 +95,10 @@ msgstr "Étendre la recherche dans les marques-pages, les fichiers et les emails
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "Montrer les étiquettes sur 2 lignes" msgstr "Montrer les étiquettes sur 2 lignes"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "Nombre de colonnes (grille principale)" msgstr "Nombre de colonnes (grille principale)"
@ -99,10 +111,22 @@ msgstr "Nombre de lignes (grille principale)"
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "Taille des icônes" msgstr "Taille des icônes"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "Dossier utilisateur (Home)" msgstr "Dossier utilisateur (Home)"
@ -139,6 +163,10 @@ msgstr "Applications épinglées"
msgid "All apps" msgid "All apps"
msgstr "Toutes les applications" msgstr "Toutes les applications"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "Applications recommandées" msgstr "Applications recommandées"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: 2022-06-22 14:28+0900\n" "PO-Revision-Date: 2022-06-22 14:28+0900\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@ -80,6 +80,14 @@ msgstr "가운데"
msgid "Center bottom" msgid "Center bottom"
msgstr "가운데 밑" msgstr "가운데 밑"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "책갈피, 파일, 이메일에서도 찾기" msgstr "책갈피, 파일, 이메일에서도 찾기"
@ -88,6 +96,10 @@ msgstr "책갈피, 파일, 이메일에서도 찾기"
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "두 줄로 레이블 표시" msgstr "두 줄로 레이블 표시"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "열 수 (메인 그리드)" msgstr "열 수 (메인 그리드)"
@ -100,10 +112,22 @@ msgstr "행 수 (메인 그리드)"
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "아이콘 크기" msgstr "아이콘 크기"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "홈 폴더" msgstr "홈 폴더"
@ -140,6 +164,10 @@ msgstr "고정됨"
msgid "All apps" msgid "All apps"
msgstr "모든 프로그램" msgstr "모든 프로그램"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "추천" msgstr "추천"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: 2022-04-27 17:59+0200\n" "PO-Revision-Date: 2023-04-03 11:01+0200\n"
"Last-Translator: Heimen Stoffels <vistausss@fastmail.com>\n" "Last-Translator: Heimen Stoffels <vistausss@fastmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: nl\n" "Language: nl\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n" "X-Generator: Poedit 3.2.2\n"
#: ../metadata.desktop #: ../metadata.desktop
msgid "OnzeMenu 11" msgid "OnzeMenu 11"
@ -24,7 +24,7 @@ msgstr "OnzeMenu 11"
#: ../metadata.desktop #: ../metadata.desktop
msgid "A configurable launcher menu 11" msgid "A configurable launcher menu 11"
msgstr "Een instelbare programmastarter 11" msgstr "Instelbare programmastarter 11"
#: ../contents/config/config.qml #: ../contents/config/config.qml
msgid "General" msgid "General"
@ -80,6 +80,14 @@ msgstr "Gecentreerd"
msgid "Center bottom" msgid "Center bottom"
msgstr "Gecentreerd (onderaan)" msgstr "Gecentreerd (onderaan)"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "Ook bladwijzers, bestanden en e-mails doorzoeken" msgstr "Ook bladwijzers, bestanden en e-mails doorzoeken"
@ -88,6 +96,10 @@ msgstr "Ook bladwijzers, bestanden en e-mails doorzoeken"
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "Labeltekst verdelen over twee regels" msgstr "Labeltekst verdelen over twee regels"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "Aantal kolommen op overzicht" msgstr "Aantal kolommen op overzicht"
@ -98,12 +110,24 @@ msgstr "Aantal rijen op overzicht"
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Icons smooth" msgid "Icons smooth"
msgstr "Pictogrammen gladstrijken"
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "Pictogramgrootte" msgstr "Pictogramgrootte"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "Persoonlijke map" msgstr "Persoonlijke map"
@ -140,6 +164,10 @@ msgstr "Vastgemaakt"
msgid "All apps" msgid "All apps"
msgstr "Alle programma's" msgstr "Alle programma's"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "Aanbevolen" msgstr "Aanbevolen"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: mateussmb mt.moreirabarros@gmail.com\n" "Last-Translator: mateussmb mt.moreirabarros@gmail.com\n"
"Language-Team: \n" "Language-Team: \n"
@ -81,6 +81,14 @@ msgstr "Centro"
msgid "Center bottom" msgid "Center bottom"
msgstr "Centro inferior" msgstr "Centro inferior"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "Expandir a pesquisa para favoritos, arquivos e e-mails" msgstr "Expandir a pesquisa para favoritos, arquivos e e-mails"
@ -89,6 +97,10 @@ msgstr "Expandir a pesquisa para favoritos, arquivos e e-mails"
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "Mostrar rótulos em duas linhas" msgstr "Mostrar rótulos em duas linhas"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "Número de colunas (grade principal)" msgstr "Número de colunas (grade principal)"
@ -101,10 +113,22 @@ msgstr "Número de linhas (grade principal)"
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "Tamanho dos ícones" msgstr "Tamanho dos ícones"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "Página inicial do usuário" msgstr "Página inicial do usuário"
@ -141,6 +165,10 @@ msgstr "Fixado"
msgid "All apps" msgid "All apps"
msgstr "Todos os aplicativos" msgstr "Todos os aplicativos"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "Recomendado" msgstr "Recomendado"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -79,6 +79,14 @@ msgstr "Центр"
msgid "Center bottom" msgid "Center bottom"
msgstr "Центр снизу" msgstr "Центр снизу"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "Поиск по закладкам, файлам и электронным письмам" msgstr "Поиск по закладкам, файлам и электронным письмам"
@ -87,6 +95,10 @@ msgstr "Поиск по закладкам, файлам и электронны
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "Показывать метки в две строки" msgstr "Показывать метки в две строки"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "Количество столбцов" msgstr "Количество столбцов"
@ -99,10 +111,22 @@ msgstr "Количество строк"
msgid "Icons smooth" msgid "Icons smooth"
msgstr "Сглаживание значков" msgstr "Сглаживание значков"
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "Размер значков" msgstr "Размер значков"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "Домашний каталог" msgstr "Домашний каталог"
@ -139,6 +163,10 @@ msgstr "Закреплено"
msgid "All apps" msgid "All apps"
msgstr "Все приложения" msgstr "Все приложения"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "Рекомендуемое" msgstr "Рекомендуемое"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -79,6 +79,14 @@ msgstr ""
msgid "Center bottom" msgid "Center bottom"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "" msgstr ""
@ -87,6 +95,10 @@ msgstr ""
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "" msgstr ""
@ -99,10 +111,22 @@ msgstr ""
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "" msgstr ""
@ -139,6 +163,10 @@ msgstr ""
msgid "All apps" msgid "All apps"
msgstr "" msgstr ""
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Language-Team:\n" "Language-Team:\n"
"Language: tr\n" "Language: tr\n"
@ -80,6 +80,14 @@ msgstr "Orta"
msgid "Center bottom" msgid "Center bottom"
msgstr "Orta alt" msgstr "Orta alt"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "Aramayı yer imlerine, dosyalara ve e-postalara genişletin" msgstr "Aramayı yer imlerine, dosyalara ve e-postalara genişletin"
@ -88,6 +96,10 @@ msgstr "Aramayı yer imlerine, dosyalara ve e-postalara genişletin"
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "Etiketleri iki satırda göster" msgstr "Etiketleri iki satırda göster"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "" msgstr ""
@ -100,10 +112,22 @@ msgstr ""
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "Kullanıcı Ana Sayfası" msgstr "Kullanıcı Ana Sayfası"
@ -140,6 +164,10 @@ msgstr "Sabitlenmiş"
msgid "All apps" msgid "All apps"
msgstr "Tüm uygulamalar" msgstr "Tüm uygulamalar"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "Tavsiye edilen" msgstr "Tavsiye edilen"

View File

@ -0,0 +1,180 @@
# Translation of OnzeMenu in Ukrainian
# Copyright (C) 2023
# This file is distributed under the same license as the OnzeMenu package.
# Mykhailo Stetsiuk <yaBobJonez@gmail.com>, 2023.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: 2023-04-07 HO:MI+ZONE\n"
"Last-Translator: Mykhailo Stetsiuk <yaBobJonez@gmail.com>\n"
"Language-Team: \n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../metadata.desktop
msgid "OnzeMenu 11"
msgstr "OnzeMenu 11"
#: ../metadata.desktop
msgid "A configurable launcher menu 11"
msgstr "Налаштовуваний засіб запуску програм 11"
#: ../contents/config/config.qml
msgid "General"
msgstr "Загальне"
#: ../contents/ui/code/tools.js
msgid "Remove from Favorites"
msgstr "Вилучити з улюблених"
#: ../contents/ui/code/tools.js
msgid "Add to Favorites"
msgstr "Додати до улюблених"
#: ../contents/ui/code/tools.js
msgid "On All Activities"
msgstr "У всіх просторах дій"
#: ../contents/ui/code/tools.js
msgid "On the Current Activity"
msgstr "У поточному просторі дій"
#: ../contents/ui/code/tools.js
msgid "Show in Favorites"
msgstr "Показати в улюблених"
#: ../contents/ui/ConfigGeneral.qml
msgid "Icon:"
msgstr "Піктограма:"
#: ../contents/ui/ConfigGeneral.qml
msgctxt "@item:inmenu Open icon chooser dialog"
msgid "Choose..."
msgstr "Вибрати..."
#: ../contents/ui/ConfigGeneral.qml
msgctxt "@item:inmenu Reset icon to default"
msgid "Clear Icon"
msgstr "Прибрати піктограму"
#: ../contents/ui/ConfigGeneral.qml
msgid "Menu position"
msgstr "Розташування меню"
#: ../contents/ui/ConfigGeneral.qml
msgid "Default"
msgstr "За замовчуванням"
#: ../contents/ui/ConfigGeneral.qml
msgid "Center"
msgstr "Центр"
#: ../contents/ui/ConfigGeneral.qml
msgid "Center bottom"
msgstr "Центр знизу"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails"
msgstr "Розширення пошуку на закладки, файли та електронну пошту"
#: ../contents/ui/ConfigGeneral.qml
msgid "Show labels in two lines"
msgstr "Відображати пункти у два рядки"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)"
msgstr "Кількість стовпців"
#: ../contents/ui/ConfigGeneral.qml
msgid "Number of rows (main grid)"
msgstr "Кількість рядків"
#: ../contents/ui/ConfigGeneral.qml
msgid "Icons smooth"
msgstr "Згладжування піктограм"
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons"
msgstr "Розмір піктограм"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml
msgid "User Home"
msgstr "Домівка"
#: ../contents/ui/Footer.qml
msgid "System Preferences"
msgstr "Системні параметри"
#: ../contents/ui/Footer.qml
msgid "Lock Screen"
msgstr "Заблокувати"
#: ../contents/ui/Footer.qml
msgid "Leave ..."
msgstr "Вийти..."
#: ../contents/ui/main.qml
msgid "Edit Applications…"
msgstr "Змінити список програм…"
#: ../contents/ui/MenuRepresentation.qml
msgid "Type here to search ..."
msgstr "Введіть текст для пошуку"
#: ../contents/ui/MenuRepresentation.qml
msgid "Search results"
msgstr "Результати пошуку"
#: ../contents/ui/MenuRepresentation.qml
msgid "Pinned"
msgstr "Закріплені"
#: ../contents/ui/MenuRepresentation.qml
msgid "All apps"
msgstr "Усі програми"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml
msgid "Recommended"
msgstr "Рекомендовані"
#: ../contents/ui/MenuRepresentation.qml
msgid "Back"
msgstr "Назад"
#: ../contents/ui/MenuRepresentation.qml
msgid "More"
msgstr "Додатково"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OnzeMenu\n" "Project-Id-Version: OnzeMenu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-02 23:21-0300\n" "POT-Creation-Date: 2023-04-30 00:33-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -79,6 +79,14 @@ msgstr "屏幕中央"
msgid "Center bottom" msgid "Center bottom"
msgstr "底部居中" msgstr "底部居中"
#: ../contents/ui/ConfigGeneral.qml
msgid "Main section"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Show recent applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Expand search to bookmarks, files and emails" msgid "Expand search to bookmarks, files and emails"
msgstr "扩大搜索范围,包括书签、文件和电子邮件" msgstr "扩大搜索范围,包括书签、文件和电子邮件"
@ -87,6 +95,10 @@ msgstr "扩大搜索范围,包括书签、文件和电子邮件"
msgid "Show labels in two lines" msgid "Show labels in two lines"
msgstr "在两行间显示标签" msgstr "在两行间显示标签"
#: ../contents/ui/ConfigGeneral.qml
msgid "Hide recent documents"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Number of columns (main grid)" msgid "Number of columns (main grid)"
msgstr "主网格列数" msgstr "主网格列数"
@ -99,10 +111,22 @@ msgstr "主网格行数"
msgid "Icons smooth" msgid "Icons smooth"
msgstr "" msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Pull Up Animation"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml #: ../contents/ui/ConfigGeneral.qml
msgid "Size of icons" msgid "Size of icons"
msgstr "图标大小" msgstr "图标大小"
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhide all applications"
msgstr ""
#: ../contents/ui/ConfigGeneral.qml
msgid "Unhidden!"
msgstr ""
#: ../contents/ui/Footer.qml #: ../contents/ui/Footer.qml
msgid "User Home" msgid "User Home"
msgstr "主目录" msgstr "主目录"
@ -139,6 +163,10 @@ msgstr "已固定"
msgid "All apps" msgid "All apps"
msgstr "所有应用" msgstr "所有应用"
#: ../contents/ui/MenuRepresentation.qml
msgid "Date and time"
msgstr ""
#: ../contents/ui/MenuRepresentation.qml #: ../contents/ui/MenuRepresentation.qml
msgid "Recommended" msgid "Recommended"
msgstr "推荐" msgstr "推荐"