Author: jerome
Date: 2009-03-12 12:39:44 +0100 (Thu, 12 Mar 2009)
New Revision: 3988
Modified:
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/Configuration.java
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/MediaPlayerThread.java
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/WMPlayer.java
Log:
* Fixed a bug starting WMP thread.
Modified:
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/Configuration.java
===================================================================
---
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/Configuration.java
2009-03-12 11:16:51 UTC (rev 3987)
+++
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/Configuration.java
2009-03-12 11:39:44 UTC (rev 3988)
@@ -115,7 +115,7 @@
* Return true if user wants to quit media player when quitting the gadget.
* @return
*/
- public boolean stopWMPWhenQuitGadget()
+ public boolean getStopWMPToo()
{
return this.stopWMPToo;
}
@@ -125,9 +125,9 @@
* Set the stop value.
* @param stop
*/
- public void setStopWMPToo(boolean stop)
+ public void setStopWMPToo(boolean stopWMPToo)
{
- this.stopWMPToo = stop;
+ this.stopWMPToo = stopWMPToo;
}
}
Modified:
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/MediaPlayerThread.java
===================================================================
---
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/MediaPlayerThread.java
2009-03-12 11:16:51 UTC (rev 3987)
+++
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/MediaPlayerThread.java
2009-03-12 11:39:44 UTC (rev 3988)
@@ -38,6 +38,7 @@
private boolean startPlaylist;
private static Object mutex = new Object();
private final Collection<WMPThreadListener> WMPThreadListeners = new
ArrayList<WMPThreadListener>();
+ private String[] command;
/**
* This object starts the media player and waits the end of the thread.
@@ -77,6 +78,8 @@
{
Vector<String> args = new Vector<String>();
+ args.add("rundll32");
+ args.add("SHELL32.DLL,ShellExec_RunDLL");
args.add(getWMPpath());
if(args.get(0) == null)
{
@@ -93,31 +96,36 @@
}
}
- String[] command = new String[args.size()];
+ command = new String[args.size()];
for(int i=0; i < args.size(); i++)
{
command[i] = args.get(i);
}
+
+ com.tuxisalive.api.SThread thread = new
com.tuxisalive.api.SThread(this, "startWMP");
+ thread.start();
+ }
+
+
+ /**
+ * Start windows media player.
+ */
+ public void startWMP()
+ {
try
- {
+ {
Runtime.getRuntime().exec(command);
-
- //checking if wmp is started by checking for his
process name.
if(isWMPStarted())
{
this.triggerStarted();
}
- else
- {
- this.triggerStartError("Error: Can't found
windows media player path");
- }
- }
+ }
catch (IOException e)
{
this.triggerStartError("Error: IOException while
connecting to windows media player");
}
- }
+ }
/**
@@ -186,6 +194,7 @@
try
{
wmpRunning = Runtime.getRuntime().exec(cmd);
+
StreamReader reader = new
StreamReader(wmpRunning.getInputStream());
reader.start();
wmpRunning.waitFor();
@@ -280,23 +289,4 @@
return sw.toString();
}
}
-
-
-static class WMPChecker extends Thread{
-
- public void run()
- {
- while(MediaPlayerThread.isWMPStarted())
- {
- try
- {
- Thread.sleep(1000);
- }
- catch (InterruptedException e) {
- System.exit(0);
- }
- }
- System.exit(0);
- }
}
-}
Modified:
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/WMPlayer.java
===================================================================
---
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/WMPlayer.java
2009-03-12 11:16:51 UTC (rev 3987)
+++
software_suite_v2/software/gadgets/tuxdroid-gadget-WMP/trunk/tuxdroid-gadget-WMP/src/com/kysoh/tuxdroid/WMPlayer.java
2009-03-12 11:39:44 UTC (rev 3988)
@@ -39,11 +39,12 @@
public class WMPlayer extends SimpleGadget<Configuration>{
- private TuxAPI tux;
+ private static TuxAPI tux;
private int handle;
private final int WM_COMMAND = 0x111;
private final int lParam = 0;
+ private WMPChecker checker;
@Override
public void start() throws Exception
@@ -73,7 +74,8 @@
//Go to "now playing" tab.
WMPCurrentPlaylist();
connectToServer();
- new MediaPlayerThread.WMPChecker().start();
+ checker = new WMPChecker();
+ checker.start();
}
catch(Exception e)
{
@@ -325,9 +327,10 @@
{
if (value.equals("K_STANDBY"))
{
- if(this.configuration().stopWMPWhenQuitGadget())
+ if(this.configuration().getStopWMPToo())
{
WindowsAPI.postMessage(handle,
WM_COMMAND, 0xE141, lParam);
+ throwMessage("here");
}
tux.destroy();
System.exit(0);
@@ -370,4 +373,26 @@
}
}
}
+
+
+ static class WMPChecker extends Thread{
+
+ public void run()
+ {
+ while(MediaPlayerThread.isWMPStarted())
+ {
+ try
+ {
+ Thread.sleep(1000);
+ }
+ catch (InterruptedException e)
+ {
+ tux.destroy();
+ System.exit(0);
+ }
+ }
+ tux.destroy();
+ System.exit(0);
+ }
+ }
}
------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn