Warning, /plasma/kdeplasma-addons/windowswitchers/IconTabBox.qml is written in an unsupported language. File is not indexed.

0001 /*
0002  KWin - the KDE window manager
0003  This file is part of the KDE project.
0004 
0005  SPDX-FileCopyrightText: 2011 Martin Gräßlin <mgraesslin@kde.org>
0006 
0007  SPDX-License-Identifier: GPL-2.0-or-later
0008  */
0009 import QtQuick 2.15
0010 import org.kde.plasma.core 2.0 as PlasmaCore
0011 
0012 ListView {
0013     id: iconsListView
0014 
0015     property int iconSize
0016 
0017     focus: true
0018     orientation: ListView.Horizontal
0019 
0020     implicitWidth: contentWidth
0021     implicitHeight: iconSize + (highlightItem ? highlightItem.margins.top + highlightItem.margins.bottom : 0)
0022 
0023     delegate: PlasmaCore.IconItem {
0024         property string caption: model.caption
0025 
0026         width: iconSize + (highlightItem ? highlightItem.margins.left + highlightItem.margins.right : 0)
0027         height: iconSize + (highlightItem ? highlightItem.margins.top + highlightItem.margins.bottom : 0)
0028 
0029         source: model.icon
0030         active: index == iconsListView.currentIndex
0031         usesPlasmaTheme: false
0032 
0033         TapHandler {
0034             onSingleTapped: {
0035                 if (index === iconsListView.currentIndex) {
0036                     iconsListView.model.activate(index);
0037                     return;
0038                 }
0039                 iconsListView.currentIndex = index;
0040             }
0041             onDoubleTapped: iconsListView.model.activate(index)
0042         }
0043     }
0044 
0045     highlight: PlasmaCore.FrameSvgItem {
0046         id: highlightItem
0047         imagePath: "widgets/viewitem"
0048         prefix: "hover"
0049         width: iconSize + margins.left + margins.right
0050         height: iconSize + margins.top + margins.bottom
0051     }
0052 
0053     highlightMoveDuration: 0
0054     highlightResizeDuration: 0
0055     boundsBehavior: Flickable.StopAtBounds
0056 }