mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
32 lines
1.0 KiB
QML
32 lines
1.0 KiB
QML
import QtQuick.Layouts
|
|
import Quickshell
|
|
import qs.Commons
|
|
import qs.Services
|
|
import qs.Widgets
|
|
|
|
NQuickSetting {
|
|
property ShellScreen screen
|
|
property real scaling: 1.0
|
|
|
|
enabled: ProgramCheckerService.gpuScreenRecorderAvailable
|
|
icon: "camera-video"
|
|
text: ScreenRecorderService.isRecording ? I18n.tr("quickSettings.screenRecorder.label.recording") : I18n.tr("quickSettings.screenRecorder.label.stopped")
|
|
fontSize: Style.fontSizeS * scaling
|
|
fontWeight: Style.fontWeightMedium
|
|
hot: ScreenRecorderService.isRecording
|
|
tooltipText: I18n.tr("quickSettings.screenRecorder.tooltip.action")
|
|
style: Settings.data.controlCenter.quickSettingsStyle || "modern"
|
|
|
|
// Force hover state when recording to get hover colors
|
|
property bool originalHovered: hovered
|
|
hovered: ScreenRecorderService.isRecording || originalHovered
|
|
|
|
onClicked: {
|
|
ScreenRecorderService.toggleRecording()
|
|
if (!ScreenRecorderService.isRecording) {
|
|
var panel = PanelService.getPanel("controlCenterPanel")
|
|
panel?.close()
|
|
}
|
|
}
|
|
}
|