Warning, /plasma/plasma-mobile/quicksettings/record/package/contents/ui/main.qml is written in an unsupported language. File is not indexed.
0001 // SPDX-FileCopyrightText: 2022 Devin Lin <devin@kde.org> 0002 // SPDX-License-Identifier: LGPL-2.0-or-later 0003 0004 import QtQuick 2.15 0005 import QtQuick.Window 2.15 0006 0007 import org.kde.plasma.private.mobileshell.state as MobileShellState 0008 import org.kde.pipewire.record 0.1 as PWRec 0009 import org.kde.taskmanager 0.1 as TaskManager 0010 import org.kde.plasma.quicksetting.record 1.0 0011 import org.kde.plasma.private.mobileshell.quicksettingsplugin as QS 0012 0013 QS.QuickSetting { 0014 id: root 0015 text: switch (record.state) { 0016 case PWRec.PipeWireRecord.Idle: 0017 return i18n("Record Screen") 0018 case PWRec.PipeWireRecord.Recording: 0019 return i18n("Recording…") 0020 case PWRec.PipeWireRecord.Rendering: 0021 i18n("Writing…") 0022 } 0023 status: switch(record.state) { 0024 case PWRec.PipeWireRecord.Idle: 0025 return i18n("Tap to start recording") 0026 case PWRec.PipeWireRecord.Recording: 0027 return i18n("Screen is being captured…") 0028 case PWRec.PipeWireRecord.Rendering: 0029 i18n("Please wait…") 0030 } 0031 icon: "media-record" 0032 enabled: false 0033 0034 function toggle() { 0035 if (!record.active) { 0036 record.output = RecordUtil.videoLocation("screen-recording.mp4"); 0037 } else { 0038 RecordUtil.showNotification(i18n("New Screen Recording"), i18n("New Screen Recording saved in %1", record.output), record.output); 0039 } 0040 0041 enabled = !enabled 0042 MobileShellState.ShellDBusClient.closeActionDrawer(); 0043 } 0044 0045 PWRec.PipeWireRecord { 0046 id: record 0047 nodeId: waylandItem.nodeId 0048 active: root.enabled 0049 } 0050 TaskManager.ScreencastingRequest { 0051 id: waylandItem 0052 outputName: root.enabled ? Screen.name : "" 0053 } 0054 }