summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/app/captureFrame.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/app/captureFrame.cpp b/src/app/captureFrame.cpp
index 920e18a..4988999 100644
--- a/src/app/captureFrame.cpp
+++ b/src/app/captureFrame.cpp
@@ -6,6 +6,7 @@
#include <kpushbutton.h>
#include <kstatusbar.h>
#include <kstdguiitem.h>
+#include <tqapplication.h>
#include <tqdialog.h>
#include <tqhbox.h>
#include <tqlabel.h>
@@ -69,7 +70,16 @@ public:
, m_title( TheStream::prettyTitle() )
{
(new TQVBoxLayout( this ))->setAutoAdd( true );
- (new TQLabel( this ))->setPixmap( frame );
+
+ // Scale the image to fit within the current screen's size.
+ TQRect screenRect = tqApp->desktop()->availableGeometry( this );
+ if ( screenRect.contains( frame.rect() ) ) {
+ (new TQLabel( this ))->setPixmap( frame );
+ } else {
+ TQSize scaledSize = screenRect.size() * 0.9;
+ TQImage scaledImage = frame.scale( scaledSize, TQImage::ScaleMin );
+ (new TQLabel( this ))->setPixmap( scaledImage );
+ }
TQHBox *box = new TQHBox( this );
KPushButton *o = new KPushButton( KStdGuiItem::save(), box );