By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release. View | Details | Raw Unified | Return to bug 1031
Collapse All | Expand All

(-)a/config.h.in (+3 lines)
Lines 105-110 Link Here
105
/* Define to 1 if you have the `vsnprintf' function. */
105
/* Define to 1 if you have the `vsnprintf' function. */
106
#undef HAVE_VSNPRINTF
106
#undef HAVE_VSNPRINTF
107
107
108
/* XTest extension available */
109
#undef HAVE_XTEST
110
108
/* If we have libxine installed */
111
/* If we have libxine installed */
109
#undef HAVE_XINE
112
#undef HAVE_XINE
110
113
(-)a/configure.in (+29 lines)
Lines 123-128 if test x$have_expat = xyes -a x$want_expat = xyes; then Link Here
123
    AC_SUBST(LIB_EXPAT)
123
    AC_SUBST(LIB_EXPAT)
124
fi
124
fi
125
125
126
dnl -------------------------
127
dnl check for XTest extension
128
dnl -------------------------
129
130
AC_ARG_WITH([xtest], [AS_HELP_STRING([--without-xtest], [build without XTest support])],,
131
  [with_xtest=yes])
132
133
CFLAGS_XTEST=""
134
LIB_XTEST=""
135
136
if test "$with_xtest" != "no" ; then
137
	AC_MSG_CHECKING([for XTest extension])
138
139
	if "$PKG_CONFIG" --exists xtst ; then
140
		with_xtest=yes
141
		CFLAGS_XTEST=`"$PKG_CONFIG" --cflags xtst`
142
		LIB_XTEST=`"$PKG_CONFIG" --libs xtst`
143
		AC_DEFINE([HAVE_XTEST],,[XTest extension available])
144
		AC_MSG_RESULT([yes])
145
	else
146
		with_xtest=no
147
		AC_MSG_RESULT([no])
148
	fi
149
fi
150
151
AC_SUBST([CFLAGS_XTEST])
152
AC_SUBST([LIB_XTEST])
153
154
126
KDE_CHECK_HEADER(xine.h,
155
KDE_CHECK_HEADER(xine.h,
127
   have_xine=yes,
156
   have_xine=yes,
128
   have_xine=no)
157
   have_xine=no)
(-)a/configure.in.in (+28 lines)
Lines 58-63 if test x$have_expat = xyes -a x$want_expat = xyes; then Link Here
58
    AC_SUBST(LIB_EXPAT)
58
    AC_SUBST(LIB_EXPAT)
59
fi
59
fi
60
60
61
dnl -------------------------
62
dnl check for XTest extension
63
dnl -------------------------
64
65
AC_ARG_WITH([xtest], [AS_HELP_STRING([--without-xtest], [build without XTest support])],,
66
  [with_xtest=yes])
67
68
CFLAGS_XTEST=""
69
LIB_XTEST=""
70
71
if test "$with_xtest" != "no" ; then
72
	AC_MSG_CHECKING([for XTest extension])
73
74
	if "$PKG_CONFIG" --exists xtst ; then
75
		with_xtest=yes
76
		CFLAGS_XTEST=`"$PKG_CONFIG" --cflags xtst`
77
		LIB_XTEST=`"$PKG_CONFIG" --libs xtst`
78
		AC_DEFINE([HAVE_XTEST],,[XTest extension available])
79
		AC_MSG_RESULT([yes])
80
	else
81
		with_xtest=no
82
		AC_MSG_RESULT([no])
83
	fi
84
fi
85
86
AC_SUBST([CFLAGS_XTEST])
87
AC_SUBST([LIB_XTEST])
88
61
KDE_CHECK_HEADER(xine.h,
89
KDE_CHECK_HEADER(xine.h,
62
   have_xine=yes,
90
   have_xine=yes,
63
   have_xine=no)
91
   have_xine=no)
(-)a/src/Makefile.am (-2 / +2 lines)
Lines 5-12 METASOURCES= AUTO Link Here
5
lib_LTLIBRARIES= libkmplayercommon.la
5
lib_LTLIBRARIES= libkmplayercommon.la
6
6
7
libkmplayercommon_la_SOURCES = viewarea.cpp kmplayerview.cpp playlistview.cpp kmplayercontrolpanel.cpp kmplayerconfig.cpp pref.cpp kmplayerprocess.cpp kmplayer_callback.skel kmplayer_backend.stub kmplayerpartbase.cpp kmplayerplaylist.cpp kmplayer_asx.cpp kmplayer_smil.cpp kmplayer_rp.cpp kmplayer_rss.cpp kmplayer_atom.cpp kmplayer_xspf.cpp triestring.cpp kmplayerpartbase.skel
7
libkmplayercommon_la_SOURCES = viewarea.cpp kmplayerview.cpp playlistview.cpp kmplayercontrolpanel.cpp kmplayerconfig.cpp pref.cpp kmplayerprocess.cpp kmplayer_callback.skel kmplayer_backend.stub kmplayerpartbase.cpp kmplayerplaylist.cpp kmplayer_asx.cpp kmplayer_smil.cpp kmplayer_rp.cpp kmplayer_rss.cpp kmplayer_atom.cpp kmplayer_xspf.cpp triestring.cpp kmplayerpartbase.skel
8
libkmplayercommon_la_LDFLAGS = -avoid-version $(all_libraries)
8
libkmplayercommon_la_LDFLAGS = -avoid-version $(all_libraries) $(CFLAGS_XTEST)
9
libkmplayercommon_la_LIBADD = -lkmediaplayer $(LIB_KPARTS) $(LIB_KUTILS) $(LIB_EXPAT) -lm $(LIBCAIRO_LIBS) $(LIBQTDBUS)
9
libkmplayercommon_la_LIBADD = -lkmediaplayer $(LIB_KPARTS) $(LIB_KUTILS) $(LIB_EXPAT) -lm $(LIBCAIRO_LIBS) $(LIBQTDBUS) $(LIB_XTEST)
10
10
11
if include_koffice_support
11
if include_koffice_support
12
kofficeplugin_lib= libkmplayerkofficepart.la
12
kofficeplugin_lib= libkmplayerkofficepart.la
(-)a/src/kmplayer.h (+6 lines)
Lines 137-142 private slots: Link Here
137
    void menuMoveUpNode ();
137
    void menuMoveUpNode ();
138
    void menuMoveDownNode ();
138
    void menuMoveDownNode ();
139
    void preparePlaylistMenu (KMPlayer::PlayListItem *, TQPopupMenu *);
139
    void preparePlaylistMenu (KMPlayer::PlayListItem *, TQPopupMenu *);
140
    void slotFakeKeyEvent();
140
141
141
private:
142
private:
142
    void menuItemClicked (TQPopupMenu * menu, int id);
143
    void menuItemClicked (TQPopupMenu * menu, int id);
Lines 192-197 private: Link Here
192
    bool m_played_exit;
193
    bool m_played_exit;
193
    bool m_minimal_mode;
194
    bool m_minimal_mode;
194
    bool m_auto_resize;
195
    bool m_auto_resize;
196
197
    TQTimer m_screensaverTimer;
198
    bool m_haveKWin;
199
    bool haveXTest;
200
    int fakeKeycode;
195
};
201
};
196
202
197
class KMPLAYER_NO_EXPORT FileDocument : public KMPlayer::Document {
203
class KMPLAYER_NO_EXPORT FileDocument : public KMPlayer::Document {
(-)a/src/kmplayerapp.cpp (+44 lines)
Lines 73-78 Link Here
73
#include "kmplayervdr.h"
73
#include "kmplayervdr.h"
74
#include "kmplayerconfig.h"
74
#include "kmplayerconfig.h"
75
75
76
#ifdef HAVE_XTEST
77
#include <X11/keysym.h>
78
#include <X11/extensions/XTest.h>
79
#endif
80
76
static const int DVDNav_start = 1;
81
static const int DVDNav_start = 1;
77
static const int DVDNav_previous = 2;
82
static const int DVDNav_previous = 2;
78
static const int DVDNav_next = 3;
83
static const int DVDNav_next = 3;
Lines 533-538 KDE_NO_CDTOR_EXPORT KMPlayerApp::KMPlayerApp(TQWidget* , const char* name) Link Here
533
    initActions();
538
    initActions();
534
    initView();
539
    initView();
535
540
541
    haveXTest = false;
542
#ifdef HAVE_XTEST
543
    int dummy_event, dummy_error, dummy_major, dummy_minor;
544
    if (XTestQueryExtension(x11Display(), &dummy_event, &dummy_error, &dummy_major, &dummy_minor)) {
545
	fakeKeycode = XKeysymToKeycode(x11Display(), XK_Shift_L);
546
	if (fakeKeycode != 0)
547
	    haveXTest = true;
548
    }
549
#endif
550
    /** TWin are you there? **/
551
    m_haveKWin = KApplication::dcopClient()->isApplicationRegistered("twin");
552
    if (m_haveKWin)
553
	kdDebug() << "Window manager: TWin found" << endl;
554
    else
555
	kdDebug() << "Window manager: not TWin - using save fullscreen mode" << endl;
556
    connect(&m_screensaverTimer, TQT_SIGNAL(timeout()), TQT_TQOBJECT(this), TQT_SLOT(slotFakeKeyEvent()));
557
    m_screensaverTimer.start( 55000 );
558
    
536
    //setAutoSaveSettings();
559
    //setAutoSaveSettings();
537
    playlist = new Playlist (this, lstsrc);
560
    playlist = new Playlist (this, lstsrc);
538
    playlist_id = m_view->playList ()->addTree (playlist, "listssource", "player_playlist", KMPlayer::PlayListView::AllowDrag | KMPlayer::PlayListView::AllowDrops | KMPlayer::PlayListView::TreeEdit | KMPlayer::PlayListView::Moveable | KMPlayer::PlayListView::Deleteable);
561
    playlist_id = m_view->playList ()->addTree (playlist, "listssource", "player_playlist", KMPlayer::PlayListView::AllowDrag | KMPlayer::PlayListView::AllowDrops | KMPlayer::PlayListView::TreeEdit | KMPlayer::PlayListView::Moveable | KMPlayer::PlayListView::Deleteable);
Lines 685-690 KDE_NO_EXPORT void KMPlayerApp::initView () { Link Here
685
    setAcceptDrops (true);
708
    setAcceptDrops (true);
686
}
709
}
687
710
711
void KMPlayerApp::slotFakeKeyEvent()
712
{
713
	if ( m_player && m_player->isPlaying())
714
		if (m_haveKWin) {
715
			// use a better method if we're in a kde environment
716
			kdDebug() << "KMPlayer: Fake mouse movement\n";
717
			XWarpPointer(x11Display(), None, None, 0, 0, 0, 0, 0, 0);
718
			XFlush(x11Display());
719
		} else {
720
		    if(haveXTest) {
721
#ifdef HAVE_XTEST
722
			kdDebug() << "KMPlayer: Fake key press\n";
723
			XTestFakeKeyEvent(x11Display(), fakeKeycode, true, 0);
724
			XTestFakeKeyEvent(x11Display(), fakeKeycode, false, 0);
725
			XFlush(x11Display());
726
#endif
727
		    }
728
		}
729
}
730
731
688
KDE_NO_EXPORT void KMPlayerApp::loadingProgress (int perc) {
732
KDE_NO_EXPORT void KMPlayerApp::loadingProgress (int perc) {
689
    if (perc < 100)
733
    if (perc < 100)
690
        statusBar ()->changeItem (TQString ("%1%").arg (perc), id_status_timer);
734
        statusBar ()->changeItem (TQString ("%1%").arg (perc), id_status_timer);
(-)a/src/kmplayerview.cpp (-15 lines)
Lines 599-625 bool View::isFullScreen () const { Link Here
599
599
600
void View::fullScreen () {
600
void View::fullScreen () {
601
    if (!m_view_area->isFullScreen()) {
601
    if (!m_view_area->isFullScreen()) {
602
        m_sreensaver_disabled = false;
603
        TQByteArray data, replydata;
604
        TQCString replyType;
605
        if (kapp->dcopClient ()->call ("kdesktop", "KScreensaverIface",
606
                    "isEnabled()", data, replyType, replydata)) {
607
            bool enabled;
608
            TQDataStream replystream (replydata, IO_ReadOnly);
609
            replystream >> enabled;
610
            if (enabled)
611
                m_sreensaver_disabled = kapp->dcopClient()->send
612
                    ("kdesktop", "KScreensaverIface", "enable(bool)", TQString("false"));
613
        }
614
        //if (m_keepsizeratio && m_viewer->aspect () < 0.01)
602
        //if (m_keepsizeratio && m_viewer->aspect () < 0.01)
615
        //    m_viewer->setAspect (1.0 * m_viewer->width() / m_viewer->height());
603
        //    m_viewer->setAspect (1.0 * m_viewer->width() / m_viewer->height());
616
        m_view_area->fullScreen();
604
        m_view_area->fullScreen();
617
        m_control_panel->popupMenu ()->setItemVisible (ControlPanel::menu_zoom, false);
605
        m_control_panel->popupMenu ()->setItemVisible (ControlPanel::menu_zoom, false);
618
        m_widgetstack->visibleWidget ()->setFocus ();
606
        m_widgetstack->visibleWidget ()->setFocus ();
619
    } else {
607
    } else {
620
        if (m_sreensaver_disabled)
621
            m_sreensaver_disabled = !kapp->dcopClient()->send
622
                ("kdesktop", "KScreensaverIface", "enable(bool)", TQString("true"));
623
        m_view_area->fullScreen();
608
        m_view_area->fullScreen();
624
        m_control_panel->popupMenu ()->setItemVisible (ControlPanel::menu_zoom, true);
609
        m_control_panel->popupMenu ()->setItemVisible (ControlPanel::menu_zoom, true);
625
    }
610
    }
(-)a/src/kmplayerview.h (-1 lines)
Lines 198-204 private: Link Here
198
    bool m_playing;
198
    bool m_playing;
199
    bool m_mixer_init;
199
    bool m_mixer_init;
200
    bool m_inVolumeUpdate;
200
    bool m_inVolumeUpdate;
201
    bool m_sreensaver_disabled;
202
    bool m_tmplog_needs_eol;
201
    bool m_tmplog_needs_eol;
203
    bool m_revert_fullscreen;
202
    bool m_revert_fullscreen;
204
    bool m_no_info;
203
    bool m_no_info;
(-)a/src/main.cpp (+1 lines)
Lines 25-30 email : Link Here
25
25
26
#include <tqguardedptr.h>
26
#include <tqguardedptr.h>
27
#include <tqfileinfo.h>
27
#include <tqfileinfo.h>
28
#include <tqtimer.h>
28
29
29
#include "kmplayer.h"
30
#include "kmplayer.h"
30
31

Return to bug 1031