summaryrefslogtreecommitdiff
authoralwin <alwin>2005-03-23 18:26:46 (UTC)
committer alwin <alwin>2005-03-23 18:26:46 (UTC)
commit76ea5ee6e306a4ee9fe6831dbe4c13ee53f6cdf5 (patch) (unidiff)
tree8269bc37e5d3addf36194e231e84bce8a9e49e8b
parent73928229c1ed258a78e815d9089667f0d99e72d8 (diff)
downloadopie-76ea5ee6e306a4ee9fe6831dbe4c13ee53f6cdf5.zip
opie-76ea5ee6e306a4ee9fe6831dbe4c13ee53f6cdf5.tar.gz
opie-76ea5ee6e306a4ee9fe6831dbe4c13ee53f6cdf5.tar.bz2
dirty hack let opie-eye crash
fixed display problems the right way now I hope ToDo: fix flicker when switching images in fullscreen mode while window is visible
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/graphics/opie-eye/gui/imageview.cpp2
-rw-r--r--noncore/graphics/opie-eye/gui/mainwindow.cpp27
2 files changed, 8 insertions, 21 deletions
diff --git a/noncore/graphics/opie-eye/gui/imageview.cpp b/noncore/graphics/opie-eye/gui/imageview.cpp
index 03df321..6c3f9cb 100644
--- a/noncore/graphics/opie-eye/gui/imageview.cpp
+++ b/noncore/graphics/opie-eye/gui/imageview.cpp
@@ -267,20 +267,20 @@ void ImageView::hide()
267 showNormal(); 267 showNormal();
268 } 268 }
269 QWidget::hide(); 269 QWidget::hide();
270} 270}
271void ImageView::enableFullscreen() 271void ImageView::enableFullscreen()
272{ 272{
273 if (!fullScreen()) return; 273 if (!fullScreen()) return;
274 if (m_ignore_next_in) {m_ignore_next_in = false;return;} 274 if (m_ignore_next_in) {m_ignore_next_in = false;return;}
275 275
276 setUpdatesEnabled(false); 276 setUpdatesEnabled(false);
277 // This is needed because showNormal() forcefully changes the window 277 // This is needed because showNormal() forcefully changes the window
278 // style to WSTyle_TopLevel. 278 // style to WSTyle_TopLevel.
279 reparent(0, WStyle_Customize | WStyle_NoBorder, QPoint(0,0)); 279 reparent(0, WStyle_Customize | WStyle_NoBorderEx, QPoint(0,0));
280 // Enable fullscreen. 280 // Enable fullscreen.
281 /* this is the trick - I don't now why, but after a showFullScreen QTE toggles the focus 281 /* this is the trick - I don't now why, but after a showFullScreen QTE toggles the focus
282 * so we must block it here! */ 282 * so we must block it here! */
283 m_ignore_next_in = true; 283 m_ignore_next_in = true;
284 showFullScreen(); 284 showFullScreen();
285 setUpdatesEnabled(true); 285 setUpdatesEnabled(true);
286} 286}
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp
index 3a89dfd..d11e4e1 100644
--- a/noncore/graphics/opie-eye/gui/mainwindow.cpp
+++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp
@@ -298,25 +298,25 @@ void PMainWindow::slotFullScreenButton(bool current)
298 if (m_disp->isVisible()) { 298 if (m_disp->isVisible()) {
299 setupViewWindow(current, true); 299 setupViewWindow(current, true);
300 } 300 }
301} 301}
302 302
303void PMainWindow::setupViewWindow(bool current, bool forceDisplay) 303void PMainWindow::setupViewWindow(bool current, bool forceDisplay)
304{ 304{
305 if (!m_disp) { 305 if (!m_disp) {
306 return; 306 return;
307 } 307 }
308 if (current) { 308 if (current) {
309 m_disp->setBackgroundColor(black); 309 m_disp->setBackgroundColor(black);
310 m_disp->reparent(0, WStyle_Customize | WStyle_NoBorder, QPoint(0,0)); 310 m_disp->reparent(0, WStyle_Customize | WStyle_NoBorderEx, QPoint(0,0));
311 m_disp->setVScrollBarMode(QScrollView::AlwaysOff); 311 m_disp->setVScrollBarMode(QScrollView::AlwaysOff);
312 m_disp->setHScrollBarMode(QScrollView::AlwaysOff); 312 m_disp->setHScrollBarMode(QScrollView::AlwaysOff);
313 m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height()); 313 m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height());
314 m_disp->setFullScreen(current,forceDisplay); 314 m_disp->setFullScreen(current,forceDisplay);
315 } else { 315 } else {
316 setUpdatesEnabled(false); 316 setUpdatesEnabled(false);
317#if 0 317#if 0
318 if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { 318 if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) {
319 319
320 //m_disp->setMinimumSize(QApplication::desktop()->size()/2); 320 //m_disp->setMinimumSize(QApplication::desktop()->size()/2);
321 } else { 321 } else {
322 //m_disp->setMinimumSize(10,10); 322 //m_disp->setMinimumSize(10,10);
@@ -366,64 +366,51 @@ void PMainWindow::slotShowInfo( const QString& inf ) {
366 } 366 }
367 m_aNext->setEnabled(false); 367 m_aNext->setEnabled(false);
368 m_aPrevious->setEnabled(false); 368 m_aPrevious->setEnabled(false);
369 m_aDirUp->setEnabled(false); 369 m_aDirUp->setEnabled(false);
370 m_aShowInfo->setEnabled(false); 370 m_aShowInfo->setEnabled(false);
371 m_aViewfile->setEnabled(true); 371 m_aViewfile->setEnabled(true);
372 m_aStartSlide->setEnabled(false); 372 m_aStartSlide->setEnabled(false);
373 m_stack->raiseWidget( ImageInfo ); 373 m_stack->raiseWidget( ImageInfo );
374} 374}
375 375
376void PMainWindow::slotDisplay( const QString& inf ) { 376void PMainWindow::slotDisplay( const QString& inf ) {
377 bool nwindow = false; 377 bool nwindow = false;
378 bool disp_hack = false;
379 int lb;
380 if (m_disp && m_disp->fullScreen()) {
381 lb = m_disp->Intensity();
382 delete m_disp;
383 m_disp = 0;
384
385 disp_hack = true;
386 }
387 if ( !m_disp ) { 378 if ( !m_disp ) {
388 nwindow = true; 379 nwindow = true;
389 initDisp(); 380 initDisp();
390 m_disp->setIntensity((disp_hack?lb:m_Intensity)); 381 m_disp->setIntensity(m_Intensity);
382 m_setCurrentBrightness->setEnabled(true);
391 } 383 }
392 m_setCurrentBrightness->setEnabled(true);
393
394 Opie::Ui::OWait wdlg;
395 wdlg.setTimerLength(30);
396 wdlg.show();
397 //qApp->processEvents(20);
398 m_disp->setImage( inf ); 384 m_disp->setImage( inf );
399 wdlg.hide();
400 //qApp->processEvents(20);
401 if (m_SmallWindow) { 385 if (m_SmallWindow) {
402 if (m_gPrevNext->isEnabled()==false) { 386 if (m_gPrevNext->isEnabled()==false) {
403 m_gPrevNext->addTo(toolBar); 387 m_gPrevNext->addTo(toolBar);
404 fsButton->hide(); 388 fsButton->hide();
405 } 389 }
406 } 390 }
407 m_gPrevNext->setEnabled(true); 391 m_gPrevNext->setEnabled(true);
408 m_aDirUp->setEnabled(false); 392 m_aDirUp->setEnabled(false);
409 m_aShowInfo->setEnabled(true); 393 m_aShowInfo->setEnabled(true);
410 m_aViewfile->setEnabled(false); 394 m_aViewfile->setEnabled(false);
411 m_aStartSlide->setEnabled(false); 395 m_aStartSlide->setEnabled(false);
412 396
413 if (!nwindow && m_disp->fullScreen()!=m_aFullScreen->isOn()) { 397 if (!nwindow && m_disp->fullScreen()!=m_aFullScreen->isOn()) {
414 slotFullScreenToggled(m_aFullScreen->isOn()); 398 slotFullScreenToggled(m_aFullScreen->isOn());
415 } 399 }
416 if (m_disp->fullScreen()) { 400 if (m_disp->fullScreen()) {
417 qwsDisplay()->requestFocus( m_disp->winId(), TRUE); 401 if (!m_disp->isVisible()) {
402 m_disp->showFullScreen();
403 qwsDisplay()->requestFocus( m_disp->winId(), TRUE);
404 }
418 } else { 405 } else {
419 m_stack->raiseWidget( ImageDisplay ); 406 m_stack->raiseWidget( ImageDisplay );
420 } 407 }
421} 408}
422 409
423void PMainWindow::raiseIconView() { 410void PMainWindow::raiseIconView() {
424 setUpdatesEnabled(false); 411 setUpdatesEnabled(false);
425 if (m_SmallWindow) { 412 if (m_SmallWindow) {
426 m_gPrevNext->removeFrom(toolBar); 413 m_gPrevNext->removeFrom(toolBar);
427 fsButton->show(); 414 fsButton->show();
428 } 415 }
429 m_gPrevNext->setEnabled(false); 416 m_gPrevNext->setEnabled(false);