@ -50,55 +50,56 @@ PlasmaComponents.Page {
ColumnLayout {
spacing: units . smallSpacing
Layout.topMargin: units . smallSpacing
Layout.rightMargin: units . smallSpacing * 2
visible: dialog . highLevel
LatteComponents . Header {
text: i18n ( "Badges" )
}
PlasmaComponents. CheckBox {
ColumnLayout {
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Unread messages from tasks" )
checked: plasmoid . configuration . showInfoBadge
tooltip: i18n ( "Show unread messages or information from tasks" )
Layout.rightMargin: units . smallSpacing * 2
spacing: 0
onClicked: {
plasmoid . configuration . showInfoBadge = checked
PlasmaComponents . CheckBox {
text: i18n ( "Unread messages from tasks" )
checked: plasmoid . configuration . showInfoBadge
tooltip: i18n ( "Show unread messages or information from tasks" )
onClicked: {
plasmoid . configuration . showInfoBadge = checked
}
}
}
PlasmaComponents . CheckBox {
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Progress information for tasks" )
checked: plasmoid . configuration . showProgressBadge
tooltip: i18n ( "Show a progress animation for tasks e.g. when copying files with Dolphin" )
PlasmaComponents . CheckBox {
text: i18n ( "Progress information for tasks" )
checked: plasmoid . configuration . showProgressBadge
tooltip: i18n ( "Show a progress animation for tasks e.g. when copying files with Dolphin" )
onClicked: {
plasmoid . configuration . showProgressBadge = checked
onClicked: {
plasmoid . configuration . showProgressBadge = checked
}
}
}
PlasmaComponents . CheckBox {
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Audio playing from tasks" )
checked: plasmoid . configuration . showAudioBadge
tooltip: i18n ( "Show audio playing from tasks" )
PlasmaComponents . CheckBox {
text: i18n ( "Audio playing from tasks" )
checked: plasmoid . configuration . showAudioBadge
tooltip: i18n ( "Show audio playing from tasks" )
onClicked: {
plasmoid . configuration . showAudioBadge = checked
onClicked: {
plasmoid . configuration . showAudioBadge = checked
}
}
}
PlasmaComponents . CheckBox {
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Change volume when scrolling audio badge" )
checked: plasmoid . configuration . audioBadgeActionsEnabled
enabled: plasmoid . configuration . showAudioBadge
tooltip: i18n ( "The user is able to mute/unmute with click or change the volume with mouse wheel" )
PlasmaComponents . CheckBox {
text: i18n ( "Change volume when scrolling audio badge" )
checked: plasmoid . configuration . audioBadgeActionsEnabled
enabled: plasmoid . configuration . showAudioBadge
tooltip: i18n ( "The user is able to mute/unmute with click or change the volume with mouse wheel" )
onClicked: {
plasmoid . configuration . audioBadgeActionsEnabled = checked
onClicked: {
plasmoid . configuration . audioBadgeActionsEnabled = checked
}
}
}
}
@ -107,47 +108,50 @@ PlasmaComponents.Page {
/ / ! B E G I N : T a s k s I n t e r a c t i o n
ColumnLayout {
spacing: units . smallSpacing
Layout.rightMargin: units . smallSpacing * 2
LatteComponents . Header {
text: i18n ( "Interaction" )
}
PlasmaComponents. CheckBox {
ColumnLayout {
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Add launchers only in the Tasks Area" )
checked: plasmoid . configuration . addLaunchersInTaskManager
tooltip: i18n ( "Launchers are added only in the taskmanager and not as plasma applets" )
Layout.rightMargin: units . smallSpacing * 2
spacing: 0
onClicked: {
plasmoid . configuration . addLaunchersInTaskManager = checked ;
PlasmaComponents . CheckBox {
text: i18n ( "Add launchers only in the Tasks Area" )
checked: plasmoid . configuration . addLaunchersInTaskManager
tooltip: i18n ( "Launchers are added only in the taskmanager and not as plasma applets" )
onClicked: {
plasmoid . configuration . addLaunchersInTaskManager = checked ;
}
}
}
PlasmaComponents . CheckBox {
id: windowActionsChk
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Show window actions in the context menu" )
checked: plasmoid . configuration . showWindowActions
visible: dialog . highLevel
enabled: ! disableAllWindowsFunctionality
PlasmaComponents . CheckBox {
id: windowActionsChk
text: i18n ( "Show window actions in the context menu" )
checked: plasmoid . configuration . showWindowActions
visible: dialog . highLevel
enabled: ! disableAllWindowsFunctionality
onClicked: {
plasmoid . configuration . showWindowActions = checked
onClicked: {
plasmoid . configuration . showWindowActions = checked
}
}
}
PlasmaComponents . CheckBox {
id: unifyGlobalShortcutsChk
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "🅰 Based on position shortcuts apply only for tasks" )
checked: ! plasmoid . configuration . unifiedGlobalShortcuts
tooltip: i18n ( "Based on position global shortcuts are enabled only for tasks and not for applets" )
visible: dialog . highLevel
enabled: latteView . isPreferredForShortcuts || ( ! latteView . managedLayout . preferredForShortcutsTouched && latteView . isHighestPriorityView ( ) )
PlasmaComponents . CheckBox {
id: unifyGlobalShortcutsChk
text: i18n ( "🅰 Based on position shortcuts apply only for tasks" )
checked: ! plasmoid . configuration . unifiedGlobalShortcuts
tooltip: i18n ( "Based on position global shortcuts are enabled only for tasks and not for applets" )
visible: dialog . highLevel
enabled: latteView . isPreferredForShortcuts || ( ! latteView . managedLayout . preferredForShortcutsTouched && latteView . isHighestPriorityView ( ) )
onClicked: {
plasmoid . configuration . unifiedGlobalShortcuts = ! checked
onClicked: {
plasmoid . configuration . unifiedGlobalShortcuts = ! checked
}
}
}
}
@ -156,67 +160,70 @@ PlasmaComponents.Page {
/ / ! B E G I N : T a s k s F i l t e r s
ColumnLayout {
spacing: units . smallSpacing
Layout.rightMargin: units . smallSpacing * 2
LatteComponents . Header {
text: i18n ( "Filters" )
}
PlasmaComponents . CheckBox {
id: showOnlyCurrentScreen
ColumnLayout {
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Show only tasks from the current screen" )
checked: plasmoid . configuration . showOnlyCurrentScreen
Layout.rightMargin: units . smallSpacing * 2
spacing: 0
onClicked: {
plasmoid . configuration . showOnlyCurrentScreen = checked
PlasmaComponents . CheckBox {
id: showOnlyCurrentScreen
text: i18n ( "Show only tasks from the current screen" )
checked: plasmoid . configuration . showOnlyCurrentScreen
onClicked: {
plasmoid . configuration . showOnlyCurrentScreen = checked
}
}
}
PlasmaComponents . CheckBox {
id: showOnlyCurrentDesktop
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Show only tasks from the current desktop" )
checked: plasmoid . configuration . showOnlyCurrentDesktop
PlasmaComponents . CheckBox {
id: showOnlyCurrentDesktop
text: i18n ( "Show only tasks from the current desktop" )
checked: plasmoid . configuration . showOnlyCurrentDesktop
onClicked: {
plasmoid . configuration . showOnlyCurrentDesktop = checked
onClicked: {
plasmoid . configuration . showOnlyCurrentDesktop = checked
}
}
}
PlasmaComponents . CheckBox {
id: showOnlyCurrentActivity
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Show only tasks from the current activity" )
checked: plasmoid . configuration . showOnlyCurrentActivity
PlasmaComponents . CheckBox {
id: showOnlyCurrentActivity
text: i18n ( "Show only tasks from the current activity" )
checked: plasmoid . configuration . showOnlyCurrentActivity
onClicked: {
plasmoid . configuration . showOnlyCurrentActivity = checked
onClicked: {
plasmoid . configuration . showOnlyCurrentActivity = checked
}
}
}
PlasmaComponents . CheckBox {
id: showWindowsOnlyFromLaunchersChk
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Show only tasks from launchers" )
checked: plasmoid . configuration . showWindowsOnlyFromLaunchers
visible: dialog . highLevel
PlasmaComponents . CheckBox {
id: showWindowsOnlyFromLaunchersChk
text: i18n ( "Show only tasks from launchers" )
checked: plasmoid . configuration . showWindowsOnlyFromLaunchers
visible: dialog . highLevel
onClicked: {
plasmoid . configuration . showWindowsOnlyFromLaunchers = checked
onClicked: {
plasmoid . configuration . showWindowsOnlyFromLaunchers = checked
}
}
}
PlasmaComponents . CheckBox {
id: groupTasksChk
Layout.leftMargin: units . smallSpacing * 2
text: i18n ( "Group tasks of the same application" )
checked: plasmoid . configuration . groupTasksByDefault
tooltip: i18n ( "By default group tasks of the same application" )
visible: dialog . highLevel
PlasmaComponents . CheckBox {
id: groupTasksChk
text: i18n ( "Group tasks of the same application" )
checked: plasmoid . configuration . groupTasksByDefault
tooltip: i18n ( "By default group tasks of the same application" )
visible: dialog . highLevel
onClicked: {
plasmoid . configuration . groupTasksByDefault = checked
onClicked: {
plasmoid . configuration . groupTasksByDefault = checked
}
}
}
}
@ -225,67 +232,73 @@ PlasmaComponents.Page {
/ / ! B E G I N : L a u n c h e r s G r o u p
ColumnLayout {
spacing: units . smallSpacing
Layout.rightMargin: units . smallSpacing * 2
LatteComponents . Header {
text: i18n ( "Launchers" )
}
LatteComponents . SubHeader {
isFirstSubCategory: true
text: i18nc ( "launchers group" , "Group" ) ;
}
RowLayout {
Layout.fillWidth: true
ColumnLayout {
Layout.leftMargin: units . smallSpacing * 2
spacing: 2
Layout.rightMargin: units . smallSpacing * 2
spacing: 0
LatteComponents . SubHeader {
isFirstSubCategory: true
text: i18nc ( "launchers group" , "Group" ) ;
}
RowLayout {
Layout.fillWidth: true
property int group: plasmoid . configuration . launchersGroup
spacing: 2
ExclusiveGroup {
id: launchersGroup
onCurrentChanged: {
if ( current . checked ) {
viewConfig . updateLaunchersForGroup ( current . group ) ;
plasmoid . configuration . launchersGroup = current . group ;
property int group: plasmoid . configuration . launchersGroup
ExclusiveGroup {
id: launchersGroup
onCurrentChanged: {
if ( current . checked ) {
viewConfig . updateLaunchersForGroup ( current . group ) ;
plasmoid . configuration . launchersGroup = current . group ;
}
}
}
}
PlasmaComponents . Button {
Layout.fillWidth: true
text: i18nc ( "unique launchers group" , "Unique" )
checked: parent . group === group
checkable: true
exclusiveGroup: launchersGroup
tooltip: i18n ( "Use a unique set of launchers for this view which is independent from any other view" )
PlasmaComponents . Button {
Layout.fillWidth: true
text: i18nc ( "unique launchers group" , "Unique" )
checked: parent . group === group
checkable: true
exclusiveGroup: launchersGroup
tooltip: i18n ( "Use a unique set of launchers for this view which is independent from any other view" )
readonly property int group: Latte . Types . UniqueLaunchers
}
readonly property int group: Latte . Types . UniqueLaunchers
}
PlasmaComponents . Button {
Layout.fillWidth: true
text: i18nc ( "layout launchers group" , "Layout" )
checked: parent . group === group
checkable: true
exclusiveGroup: launchersGroup
tooltip: i18n ( "Use the current layout set of launchers for this latteView. This group provides launchers <b>synchronization</b> between different views in the <b>same layout</b>" )
/ / ! i t i s s h o w n o n l y w h e n t h e u s e r h a s a c t i v a t e d t h a t o p t i o n m a n u a l l y f r o m t h e t e x t l a y o u t f i l e
visible: plasmoid . configuration . launchersGroup === group
readonly property int group: Latte . Types . LayoutLaunchers
}
PlasmaComponents . Button {
Layout.fillWidth: true
text: i18nc ( "layout launchers group" , "Layout" )
checked: parent . group === group
checkable: true
exclusiveGroup: launchersGroup
tooltip: i18n ( "Use the current layout set of launchers for this latteView. This group provides launchers <b>synchronization</b> between different views in the <b>same layout</b>" )
/ / ! i t i s s h o w n o n l y w h e n t h e u s e r h a s a c t i v a t e d t h a t o p t i o n m a n u a l l y f r o m t h e t e x t l a y o u t f i l e
visible: plasmoid . configuration . launchersGroup === group
readonly property int group: Latte . Types . LayoutLaunchers
}
PlasmaComponents . Button {
Layout.fillWidth: true
text: i18nc ( "global launchers group" , "Global" )
checked: parent . group === group
checkable: true
exclusiveGroup: launchersGroup
tooltip: i18n ( "Use the global set of launchers for this latteView. This group provides launchers <b>synchronization</b> between different views and between <b>different layouts</b>" )
PlasmaComponents . Button {
Layout.fillWidth: true
text: i18nc ( "global launchers group" , "Global" )
checked: parent . group === group
checkable: true
exclusiveGroup: launchersGroup
tooltip: i18n ( "Use the global set of launchers for this latteView. This group provides launchers <b>synchronization</b> between different views and between <b>different layouts</b>" )
readonly property int group: Latte . Types . GlobalLaunchers
readonly property int group: Latte . Types . GlobalLaunchers
}
}
}
}
@ -294,175 +307,178 @@ PlasmaComponents.Page {
/ / ! B E G I N : A c t i o n s
ColumnLayout {
spacing: units . smallSpacing
Layout.rightMargin: units . smallSpacing * 2
visible: dialog . expertLevel
LatteComponents . Header {
text: i18n ( "Actions" )
}
GridLayout {
columns: 2
ColumnLayout {
Layout.leftMargin: units . smallSpacing * 2
Layout. top Margin: units . smallSpacing
enabled: ! disableAllWindowsFunctionality
Layout. righ tMargin: units . smallSpacing * 2
spacing: 0
PlasmaComponents . Label {
text: i18n ( "Left Click" )
}
GridLayout {
columns: 2
LatteComponents . ComboBox {
id: leftClickAction
Layout.fillWidth: true
model: [ i18nc ( "present windows action" , "Present Windows" ) ,
i18n ( "Cycle Through Tasks" ) ,
i18n ( "Preview Windows" ) ]
Layout.topMargin: units . smallSpacing
enabled: ! disableAllWindowsFunctionality
PlasmaComponents . Label {
text: i18n ( "Left Click" )
}
LatteComponents . ComboBox {
id: leftClickAction
Layout.fillWidth: true
model: [ i18nc ( "present windows action" , "Present Windows" ) ,
i18n ( "Cycle Through Tasks" ) ,
i18n ( "Preview Windows" ) ]
currentIndex: {
switch ( plasmoid . configuration . leftClickAction ) {
case Latte.Types.PresentWindows:
return 0 ;
case Latte.Types.CycleThroughTasks:
return 1 ;
case Latte.Types.PreviewWindows:
return 2 ;
}
currentIndex: {
switch ( plasmoid . configuration . leftClickAction ) {
case Latte.Types.PresentWindows:
return 0 ;
case Latte.Types.CycleThroughTasks:
return 1 ;
case Latte.Types.PreviewWindows:
return 2 ;
}
return 0 ;
onCurrentIndexChanged: {
switch ( currentIndex ) {
case 0 :
plasmoid . configuration . leftClickAction = Latte . Types . PresentWindows ;
break ;
case 1 :
plasmoid . configuration . leftClickAction = Latte . Types . CycleThroughTasks ;
break ;
case 2 :
plasmoid . configuration . leftClickAction = Latte . Types . PreviewWindows ;
break ;
}
}
}
onCurrentIndexChanged: {
switch ( currentIndex ) {
case 0 :
plasmoid . configuration . leftClickAction = Latte . Types . PresentWindows ;
break ;
case 1 :
plasmoid . configuration . leftClickAction = Latte . Types . CycleThroughTasks ;
break ;
case 2 :
plasmoid . configuration . leftClickAction = Latte . Types . PreviewWindows ;
break ;
}
PlasmaComponents . Label {
text: i18n ( "Middle Click" )
}
}
PlasmaComponents . Label {
text: i18n ( "Middle Click" )
}
LatteComponents . ComboBox {
id: middleClickAction
Layout.fillWidth: true
model: [
i18nc ( "The click action" , "None" ) ,
i18n ( "Close Window or Group" ) ,
i18n ( "New Instance" ) ,
i18n ( "Minimize/Restore Window or Group" ) ,
i18n ( "Cycle Through Tasks" ) ,
i18n ( "Toggle Task Grouping" )
]
currentIndex: plasmoid . configuration . middleClickAction
onCurrentIndexChanged: plasmoid . configuration . middleClickAction = currentIndex
}
LatteComponents . ComboBox {
id: middleClickAction
Layout.fillWidth: true
model: [
i18nc ( "The click action" , "None" ) ,
i18n ( "Close Window or Group" ) ,
i18n ( "New Instance" ) ,
i18n ( "Minimize/Restore Window or Group" ) ,
i18n ( "Cycle Through Tasks" ) ,
i18n ( "Toggle Task Grouping" )
]
currentIndex: plasmoid . configuration . middleClickAction
onCurrentIndexChanged: plasmoid . configuration . middleClickAction = currentIndex
}
PlasmaComponents . Label {
text: i18n ( "Hover" )
}
PlasmaComponents . Label {
text: i18n ( "Hover" )
}
LatteComponents . ComboBox {
id: hoverAction
Layout.fillWidth: true
model: [
i18nc ( "none action" , "None" ) ,
i18n ( "Preview Windows" ) ,
i18n ( "Highlight Windows" ) ,
i18n ( "Preview and Highlight Windows" ) ,
]
currentIndex: {
switch ( plasmoid . configuration . hoverAction ) {
case Latte.Types.NoneAction:
return 0 ;
case Latte.Types.PreviewWindows:
return 1 ;
case Latte.Types.HighlightWindows:
return 2 ;
case Latte.Types.PreviewAndHighlightWindows:
return 3 ;
}
LatteComponents . ComboBox {
id: hoverAction
Layout.fillWidth: true
model: [
i18nc ( "none action" , "None" ) ,
i18n ( "Preview Windows" ) ,
i18n ( "Highlight Windows" ) ,
i18n ( "Preview and Highlight Windows" ) ,
]
currentIndex: {
switch ( plasmoid . configuration . hoverAction ) {
case Latte.Types.NoneAction:
return 0 ;
case Latte.Types.PreviewWindows:
return 1 ;
case Latte.Types.HighlightWindows:
return 2 ;
case Latte.Types.PreviewAndHighlightWindows:
return 3 ;
}
return 0 ;
}
onCurrentIndexChanged: {
switch ( currentIndex ) {
case 0 :
plasmoid . configuration . hoverAction = Latte . Types . NoneAction ;
break ;
case 1 :
plasmoid . configuration . hoverAction = Latte . Types . PreviewWindows ;
break ;
case 2 :
plasmoid . configuration . hoverAction = Latte . Types . HighlightWindows ;
break ;
case 3 :
plasmoid . configuration . hoverAction = Latte . Types . PreviewAndHighlightWindows ;
break ;
onCurrentIndexChanged: {
switch ( currentIndex ) {
case 0 :
plasmoid . configuration . hoverAction = Latte . Types . NoneAction ;
break ;
case 1 :
plasmoid . configuration . hoverAction = Latte . Types . PreviewWindows ;
break ;
case 2 :
plasmoid . configuration . hoverAction = Latte . Types . HighlightWindows ;
break ;
case 3 :
plasmoid . configuration . hoverAction = Latte . Types . PreviewAndHighlightWindows ;
break ;
}
}
}
}
}
RowLayout {
Layout.leftMargin: units . smallSpacing * 2
Layout.topMargin: units . smallSpacing
spacing: units . smallSpacing
enabled: ! disableAllWindowsFunctionality
RowLayout {
Layout.topMargin: units . smallSpacing
spacing: units . smallSpacing
enabled: ! disableAllWindowsFunctionality
LatteComponents . ComboBox {
id: modifier
Layout.maximumWidth: theme . mSize ( theme . defaultFont ) . width * 5
model: [ "Shift" , "Ctrl" , "Alt" , "Meta" ]
LatteComponents . ComboBox {
id: modifier
Layout.maximumWidth: theme . mSize ( theme . defaultFont ) . width * 5
model: [ "Shift" , "Ctrl" , "Alt" , "Meta" ]
currentIndex: plasmoid . configuration . modifier
onCurrentIndexChanged: plasmoid . configuration . modifier = currentIndex
}
currentIndex: plasmoid . configuration . modifier
onCurrentIndexChanged: plasmoid . configuration . modifier = currentIndex
}
PlasmaComponents . Label {
text: "+"
}
PlasmaComponents . Label {
text: "+"
}
LatteComponents . ComboBox {
id: modifierClick
Layout.maximumWidth: theme . mSize ( theme . defaultFont ) . width * 10
model: [ i18n ( "Left Click" ) , i18n ( "Middle Click" ) , i18n ( "Right Click" ) ]
LatteComponents . ComboBox {
id: modifierClick
Layout.maximumWidth: theme . mSize ( theme . defaultFont ) . width * 10
model: [ i18n ( "Left Click" ) , i18n ( "Middle Click" ) , i18n ( "Right Click" ) ]
currentIndex: plasmoid . configuration . modifierClick
onCurrentIndexChanged: plasmoid . configuration . modifierClick = currentIndex
}
currentIndex: plasmoid . configuration . modifierClick
onCurrentIndexChanged: plasmoid . configuration . modifierClick = currentIndex
}
PlasmaComponents . Label {
text: "="
}
PlasmaComponents . Label {
text: "="
}
LatteComponents . ComboBox {
id: modifierClickAction
Layout.fillWidth: true
model: [ i18nc ( "The click action" , "None" ) , i18n ( "Close Window or Group" ) ,
i18n ( "New Instance" ) , i18n ( "Minimize/Restore Window or Group" ) , i18n ( "Cycle Through Tasks" ) , i18n ( "Toggle Task Grouping" ) ]
LatteComponents . ComboBox {
id: modifierClickAction
Layout.fillWidth: true
model: [ i18nc ( "The click action" , "None" ) , i18n ( "Close Window or Group" ) ,
i18n ( "New Instance" ) , i18n ( "Minimize/Restore Window or Group" ) , i18n ( "Cycle Through Tasks" ) , i18n ( "Toggle Task Grouping" ) ]
currentIndex: plasmoid . configuration . modifierClickAction
onCurrentIndexChanged: plasmoid . configuration . modifierClickAction = currentIndex
currentIndex: plasmoid . configuration . modifierClickAction
onCurrentIndexChanged: plasmoid . configuration . modifierClickAction = currentIndex
}
}
}
}
/ / ! E N D : A c t i o n s
/ / ! B E G I N : Ac t i o n s
/ / ! B E G I N : Re c y c l i n g
ColumnLayout {
spacing: units . smallSpacing
Layout.rightMargin: units . smallSpacing * 2
visible: dialog . expertLevel
LatteComponents . Header {
@ -471,6 +487,7 @@ PlasmaComponents.Page {
PlasmaComponents . Button {
Layout.leftMargin: units . smallSpacing * 2
Layout.rightMargin: units . smallSpacing * 2
Layout.topMargin: units . smallSpacing
Layout.fillWidth: true