forked from qt-creator/qt-creator
ScreenRecorder: Add setting for capturing mouse clicks
Only available for macOS/AVFoundation, and off by default. Change-Id: I30b3e6e472c62b5bb68b609c2cd945aa4fd70127 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
@@ -363,6 +363,7 @@ QStringList RecordWidget::ffmpegParameters(const ClipInfo &clipInfo) const
|
||||
videoGrabParams = {
|
||||
"-f", "avfoundation",
|
||||
"-capture_cursor", captureCursorStr,
|
||||
"-capture_mouse_clicks", Internal::settings().captureMouseClicks() ? "1" : "0",
|
||||
"-framerate", frameRateStr,
|
||||
"-pixel_format", "bgr0",
|
||||
"-i", QString("Capture screen %1:none").arg(rS.screenId),
|
||||
|
||||
@@ -72,6 +72,12 @@ ScreenRecorderSettings::ScreenRecorderSettings()
|
||||
captureCursor.setLabel(Tr::tr("Capture the mouse cursor"));
|
||||
captureCursor.setLabelPlacement(BoolAspect::LabelPlacement::AtCheckBox);
|
||||
|
||||
captureMouseClicks.setSettingsKey("CaptureMouseClicks");
|
||||
captureMouseClicks.setDefaultValue(false);
|
||||
captureMouseClicks.setLabel(Tr::tr("Capture the screen mouse clicks"));
|
||||
captureMouseClicks.setLabelPlacement(BoolAspect::LabelPlacement::AtCheckBox);
|
||||
captureMouseClicks.setVisible(HostOsInfo::isMacHost()); // only available with AVFoundation
|
||||
|
||||
enableFileSizeLimit.setSettingsKey("EnableFileSizeLimit");
|
||||
enableFileSizeLimit.setDefaultValue(true);
|
||||
enableFileSizeLimit.setLabel(Tr::tr("Size limit for intermediate output file"));
|
||||
@@ -151,6 +157,7 @@ ScreenRecorderSettings::ScreenRecorderSettings()
|
||||
title(Tr::tr("Record settings")),
|
||||
Column {
|
||||
captureCursor,
|
||||
captureMouseClicks,
|
||||
Row { enableFileSizeLimit, fileSizeLimit, st },
|
||||
Row { enableRtBuffer, rtBufferSize, st },
|
||||
},
|
||||
|
||||
@@ -27,6 +27,7 @@ public:
|
||||
Utils::FilePathAspect ffmpegTool{this};
|
||||
Utils::FilePathAspect ffprobeTool{this};
|
||||
Utils::BoolAspect captureCursor{this};
|
||||
Utils::BoolAspect captureMouseClicks{this};
|
||||
Utils::BoolAspect enableFileSizeLimit{this};
|
||||
Utils::IntegerAspect fileSizeLimit{this}; // in MB
|
||||
Utils::BoolAspect enableRtBuffer{this};
|
||||
|
||||
Reference in New Issue
Block a user