Author: titmuss
Date: Thu Oct  9 01:25:17 2008
New Revision: 3087

URL: http://svn.slimdevices.com?rev=3087&root=Jive&view=rev
Log:
 [EMAIL PROTECTED] (orig r3078):  tom | 2008-10-06 16:57:06 +0100
 windows multimedia key handling
 [EMAIL PROTECTED] (orig r3079):  tom | 2008-10-06 17:06:07 +0100
 whitespace issue checking in..
 [EMAIL PROTECTED] (orig r3083):  tom | 2008-10-08 16:11:42 +0100
 Added support to SDL for Linux multimedia keys. Based (with small 
modifications) from: 
 http://lists.libsdl.org/htdig.cgi/sdl-libsdl.org/2003-January/033209.html
 
 [EMAIL PROTECTED] (orig r3084):  bklaas | 2008-10-09 03:36:00 +0100
 Bug: n/a
 Description: an end to the hard-coded values for THUMB_SIZE and NowPlaying 
artwork
 skins now setup constants when registering themselves that can be accessed by 
other applets via JiveMain when requesting artwork
 
 [EMAIL PROTECTED] (orig r3086):  mherger | 2008-10-09 08:56:30 +0100
 Bug: 8978
 Description: Add support for remote fullscreen artwork to SlimBrowser. 
artworkId will be considered a local resource, artworkUrl a remote file.

Added:
    7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_nonwindows.c
    7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_windows.c
Modified:
    7.4/trunk/   (props changed)
    7.4/trunk/squeezeplay/src/SDL-1.2.13/configure
    7.4/trunk/squeezeplay/src/SDL-1.2.13/configure.in
    7.4/trunk/squeezeplay/src/SDL-1.2.13/include/SDL_keysym.h
    7.4/trunk/squeezeplay/src/SDL-1.2.13/src/video/x11/SDL_x11events.c
    7.4/trunk/squeezeplay/src/squeezeplay/Makefile.am
    7.4/trunk/squeezeplay/src/squeezeplay/Makefile.in
    7.4/trunk/squeezeplay/src/squeezeplay/VisualC/jive.vcproj
    
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinMeta.lua
    
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua
    
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/SlimBrowser/SlimBrowserApplet.lua
    7.4/trunk/squeezeplay/src/squeezeplay/share/jive/JiveMain.lua
    7.4/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua
    7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive.h
    7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c
    
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinApplet.lua
    
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinMeta.lua

Propchange: 7.4/trunk/
------------------------------------------------------------------------------
--- svk:merge (original)
+++ svk:merge Thu Oct  9 01:25:17 2008
@@ -2,7 +2,7 @@
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.1/branches/discovery-refactor:2596
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.1/trunk:2920
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.2/trunk:2921
-bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.3/trunk:3073
+bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.3/trunk:3086
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/7.0:2013
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/SN:1083
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/scrolling:1378

Modified: 7.4/trunk/squeezeplay/src/SDL-1.2.13/configure
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/SDL-1.2.13/configure?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/SDL-1.2.13/configure (original)
+++ 7.4/trunk/squeezeplay/src/SDL-1.2.13/configure Thu Oct  9 01:25:17 2008
@@ -1546,6 +1546,7 @@
                           enable X11 Xrandr extension for fullscreen
                           [default=yes]
   --enable-video-x11-dpms enable X11 DPMS extension [default=yes]
+  --enable-video-x11-xf86-keysyms   use XFree86's Internet-Keyboard 
keysymsdefault=yes
   --enable-video-photon   use QNX Photon video driver [default=yes]
   --enable-video-carbon   use Carbon/QuickDraw video driver [default=no]
   --enable-video-cocoa    use Cocoa/Quartz video driver [default=yes]
@@ -4589,7 +4590,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 4592 "configure"' > conftest.$ac_ext
+  echo '#line 4593 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -7033,11 +7034,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7036: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7037: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7040: \$? = $ac_status" >&5
+   echo "$as_me:7041: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7301,11 +7302,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7304: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7305: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7308: \$? = $ac_status" >&5
+   echo "$as_me:7309: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7405,11 +7406,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7408: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7409: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7412: \$? = $ac_status" >&5
+   echo "$as_me:7413: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -9715,7 +9716,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9718 "configure"
+#line 9719 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -9815,7 +9816,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9818 "configure"
+#line 9819 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12155,11 +12156,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12158: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12159: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:12162: \$? = $ac_status" >&5
+   echo "$as_me:12163: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -12259,11 +12260,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12262: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12263: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:12266: \$? = $ac_status" >&5
+   echo "$as_me:12267: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -13831,11 +13832,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:13834: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:13835: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:13838: \$? = $ac_status" >&5
+   echo "$as_me:13839: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -13935,11 +13936,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:13938: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:13939: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:13942: \$? = $ac_status" >&5
+   echo "$as_me:13943: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -16139,11 +16140,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16142: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16143: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16146: \$? = $ac_status" >&5
+   echo "$as_me:16147: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16407,11 +16408,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16410: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16411: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16414: \$? = $ac_status" >&5
+   echo "$as_me:16415: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16511,11 +16512,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16514: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16515: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:16518: \$? = $ac_status" >&5
+   echo "$as_me:16519: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -28800,6 +28801,69 @@
 #define SDL_VIDEO_DRIVER_X11_DPMS 1
 _ACEOF
 
+                fi
+            fi
+            # Check whether --enable-video-x11-xf86-keysyms was given.
+if test "${enable_video_x11_xf86_keysyms+set}" = set; then
+  enableval=$enable_video_x11_xf86_keysyms;
+else
+  enable_video_x11_xf86_keysyms=yes
+fi
+
+            if test x$enable_video_x11_xf86_keysyms = xyes; then
+                { echo "$as_me:$LINENO: checking for XFree86 
Internet/MultiMedia Keyboard keysym support" >&5
+echo $ECHO_N "checking for XFree86 Internet/MultiMedia Keyboard keysym 
support... $ECHO_C" >&6; }
+                video_x11_xf86_keysyms=no
+                cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+                 #include <X11/XF86keysym.h>
+
+int
+main ()
+{
+
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+        test -z "$ac_c_werror_flag" ||
+        test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+
+                video_x11_xf86_keysyms=yes
+
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+                { echo "$as_me:$LINENO: result: $video_x11_xf86_keysyms" >&5
+echo "${ECHO_T}$video_x11_xf86_keysyms" >&6; }
+                if test x$video_x11_xf86_keysyms = xyes; then
+                    EXTRA_CFLAGS="$EXTRA_CFLAGS -DXFREE86_KEYSYMS"
                 fi
             fi
         fi

Modified: 7.4/trunk/squeezeplay/src/SDL-1.2.13/configure.in
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/SDL-1.2.13/configure.in?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/SDL-1.2.13/configure.in (original)
+++ 7.4/trunk/squeezeplay/src/SDL-1.2.13/configure.in Thu Oct  9 01:25:17 2008
@@ -1101,6 +1101,23 @@
                                 ])
                 if test x$have_dpms_h_hdr = xyes; then
                     AC_DEFINE(SDL_VIDEO_DRIVER_X11_DPMS)
+                fi
+            fi
+            AC_ARG_ENABLE(video-x11-xf86-keysyms,
+[  --enable-video-x11-xf86-keysyms   use XFree86's Internet-Keyboard 
keysyms[default=yes]],
+                          , enable_video_x11_xf86_keysyms=yes)
+            if test x$enable_video_x11_xf86_keysyms = xyes; then
+                AC_MSG_CHECKING(for XFree86 Internet/MultiMedia Keyboard 
keysym support)
+                video_x11_xf86_keysyms=no
+                AC_TRY_COMPILE([
+                 #include <X11/XF86keysym.h>
+                ],[
+                ],[
+                video_x11_xf86_keysyms=yes
+                ])
+                AC_MSG_RESULT($video_x11_xf86_keysyms)
+                if test x$video_x11_xf86_keysyms = xyes; then
+                    EXTRA_CFLAGS="$EXTRA_CFLAGS -DXFREE86_KEYSYMS"
                 fi
             fi
         fi

Modified: 7.4/trunk/squeezeplay/src/SDL-1.2.13/include/SDL_keysym.h
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/SDL-1.2.13/include/SDL_keysym.h?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/SDL-1.2.13/include/SDL_keysym.h (original)
+++ 7.4/trunk/squeezeplay/src/SDL-1.2.13/include/SDL_keysym.h Thu Oct  9 
01:25:17 2008
@@ -281,6 +281,71 @@
        SDLK_EURO               = 321,          /* Some european keyboards */
        SDLK_UNDO               = 322,          /* Atari keyboard has Undo */
 
+    /* "Internet"/"MultiMedia" keyboards */
+    SDLK_Standby            = 323,
+    SDLK_AudioLowerVolume   = 324,
+    SDLK_AudioMute          = 325,
+    SDLK_AudioRaiseVolume   = 326,
+    SDLK_AudioPlay          = 327,
+    SDLK_AudioStop          = 328,
+    SDLK_AudioPrev          = 329,
+    SDLK_AudioNext          = 330,
+    SDLK_HomePage           = 331,
+    SDLK_Mail               = 332,
+    SDLK_Start              = 333,
+    SDLK_Search             = 334,
+    SDLK_AudioRecord        = 325,
+
+    SDLK_Calculator         = 326,
+    SDLK_Memo               = 327,
+    SDLK_ToDoList           = 328,
+    SDLK_Calendar           = 329,
+    SDLK_PowerDown          = 330,
+    SDLK_ContrastAdjust     = 331,
+    SDLK_RockerUp           = 332,
+    SDLK_RockerDown         = 333,
+    SDLK_RockerEnter        = 334,
+
+    SDLK_Back               = 335,
+    SDLK_Forward            = 336,
+    SDLK_Stop               = 337,
+    SDLK_Refresh            = 338,
+    SDLK_PowerOff           = 339,
+    SDLK_WakeUp             = 340,
+    SDLK_Eject              = 341,
+    SDLK_ScreenSaver        = 342,
+    SDLK_WWW                = 343,
+    SDLK_Sleep              = 344,
+    SDLK_Favorites          = 345,
+    SDLK_AudioPause         = 346,
+    SDLK_AudioMedia         = 347,
+    SDLK_MyComputer         = 348,
+    SDLK_VendorHome         = 349,
+    SDLK_LightBulb          = 350,
+    SDLK_Shop               = 351,
+    SDLK_History            = 352,
+    SDLK_OpenURL            = 353,
+    SDLK_AddFavorite        = 354,
+    SDLK_HotLinks           = 355,
+    SDLK_BrightnessAdjust   = 356,
+
+    SDLK_Launch0            = 357,
+    SDLK_Launch1            = 358,
+    SDLK_Launch2            = 359,
+    SDLK_Launch3            = 360,
+    SDLK_Launch4            = 361,
+    SDLK_Launch5            = 362,
+    SDLK_Launch6            = 363,
+    SDLK_Launch7            = 364,
+    SDLK_Launch8            = 365,
+    SDLK_Launch9            = 366,
+    SDLK_LaunchA            = 367,
+    SDLK_LaunchB            = 368,
+    SDLK_LaunchC            = 369,
+    SDLK_LaunchD            = 370,
+    SDLK_LaunchE            = 371,
+    SDLK_LaunchF            = 372,
+
        /* Add any other keys here */
 
        SDLK_LAST

Modified: 7.4/trunk/squeezeplay/src/SDL-1.2.13/src/video/x11/SDL_x11events.c
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/SDL-1.2.13/src/video/x11/SDL_x11events.c?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/SDL-1.2.13/src/video/x11/SDL_x11events.c 
(original)
+++ 7.4/trunk/squeezeplay/src/SDL-1.2.13/src/video/x11/SDL_x11events.c Thu Oct  
9 01:25:17 2008
@@ -48,6 +48,9 @@
 #include "SDL_x11mouse_c.h"
 #include "SDL_x11events_c.h"
 
+#ifdef XFREE86_KEYSYMS
+#include <X11/XF86keysym.h>
+#endif
 
 /* Define this if you want to debug X11 events */
 /*#define DEBUG_XEVENTS*/
@@ -1092,6 +1095,90 @@
        MISC_keymap[XK_Hyper_R&0xFF] = SDLK_MENU;   /* Windows "Menu" key */
 }
 
+#ifdef XFREE86_KEYSYMS
+/* Macro for trivial assignment from XFree86 value to SDL value */
+#define XF86_to_SDLK(x) \
+    case XF86XK_##x:    \
+        return SDLK_##x
+
+static SDLKey
+TranslateXFree86VendorSpecificKeysyms(KeySym xsym)
+{
+    switch (xsym) {
+        /* Keys found on some "Internet" keyboards. */
+        XF86_to_SDLK(Standby);
+        XF86_to_SDLK(AudioLowerVolume);
+        XF86_to_SDLK(AudioMute);
+        XF86_to_SDLK(AudioRaiseVolume);
+        XF86_to_SDLK(AudioPlay);
+        XF86_to_SDLK(AudioStop);
+        XF86_to_SDLK(AudioPrev);
+        XF86_to_SDLK(AudioNext);
+        XF86_to_SDLK(HomePage);
+        XF86_to_SDLK(Mail);
+        XF86_to_SDLK(Start);
+        XF86_to_SDLK(Search);
+        XF86_to_SDLK(AudioRecord);
+
+        /* These are sometimes found on PDA's (e.g. Palm, PocketPC or 
elsewhere) */
+        XF86_to_SDLK(Calculator);
+        XF86_to_SDLK(Memo);
+        XF86_to_SDLK(ToDoList);
+        XF86_to_SDLK(Calendar);
+        XF86_to_SDLK(PowerDown);
+        XF86_to_SDLK(ContrastAdjust);
+        XF86_to_SDLK(RockerUp);
+        XF86_to_SDLK(RockerDown);
+        XF86_to_SDLK(RockerEnter);
+
+        /* Some more "Internet" keyboard symbols */
+        XF86_to_SDLK(Back);
+        XF86_to_SDLK(Forward);
+        XF86_to_SDLK(Stop);
+        XF86_to_SDLK(Refresh);
+        XF86_to_SDLK(PowerOff);
+        XF86_to_SDLK(WakeUp);
+        XF86_to_SDLK(Eject);
+        XF86_to_SDLK(ScreenSaver);
+        XF86_to_SDLK(WWW);
+        XF86_to_SDLK(Sleep);
+        XF86_to_SDLK(Favorites);
+        XF86_to_SDLK(AudioPause);
+        XF86_to_SDLK(AudioMedia);
+        XF86_to_SDLK(MyComputer);
+        XF86_to_SDLK(VendorHome);
+        XF86_to_SDLK(LightBulb);
+        XF86_to_SDLK(Shop);
+        XF86_to_SDLK(History);
+        XF86_to_SDLK(OpenURL);
+        XF86_to_SDLK(AddFavorite);
+        XF86_to_SDLK(HotLinks);
+        XF86_to_SDLK(BrightnessAdjust);
+
+        XF86_to_SDLK(Launch0);
+        XF86_to_SDLK(Launch1);
+        XF86_to_SDLK(Launch2);
+        XF86_to_SDLK(Launch3);
+        XF86_to_SDLK(Launch4);
+        XF86_to_SDLK(Launch5);
+        XF86_to_SDLK(Launch7);
+        XF86_to_SDLK(Launch8);
+        XF86_to_SDLK(Launch9);
+        XF86_to_SDLK(LaunchA);
+        XF86_to_SDLK(LaunchB);
+        XF86_to_SDLK(LaunchC);
+        XF86_to_SDLK(LaunchD);
+        XF86_to_SDLK(LaunchE);
+        XF86_to_SDLK(LaunchF);
+
+        default:
+            return SDLK_UNKNOWN;
+    }
+}
+#endif
+
+
+
 /* Get the translated SDL virtual keysym */
 SDLKey X11_TranslateKeycode(Display *display, KeyCode kc)
 {
@@ -1138,6 +1225,12 @@
                    case 0xFF:
                        key = MISC_keymap[xsym&0xFF];
                        break;
+
+#ifdef XFREE86_KEYSYMS
+                    case 0x1008ff: /* XFree86 vendor specific keysyms from 
/usr/X11R6/include/X11/XF86keysym.h */
+                       key = TranslateXFree86VendorSpecificKeysyms(xsym);
+                       break;
+#endif
                    default:
                        /*
                        fprintf(stderr, "X11: Unhandled xsym, sym = 0x%04x\n",

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/Makefile.am
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/Makefile.am?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/Makefile.am (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/Makefile.am Thu Oct  9 01:25:17 2008
@@ -151,6 +151,7 @@
        src/ui/jive_event.c \
        src/ui/jive_font.c \
        src/ui/jive_framework.c \
+       src/ui/jive_framework_nonwindows.c \
        src/ui/jive_group.c \
        src/ui/jive_icon.c \
        src/ui/jive_label.c \

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/Makefile.in
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/Makefile.in?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/Makefile.in (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/Makefile.in Thu Oct  9 01:25:17 2008
@@ -75,10 +75,11 @@
 libjivenet_la_OBJECTS = $(am_libjivenet_la_OBJECTS)
 libjiveui_la_DEPENDENCIES =
 am_libjiveui_la_OBJECTS = jive_event.lo jive_font.lo jive_framework.lo \
-       jive_group.lo jive_icon.lo jive_label.lo jive_menu.lo \
-       jive_slider.lo jive_style.lo jive_surface.lo jive_textarea.lo \
-       jive_textinput.lo jive_tile.lo jive_timer.lo jive_utils.lo \
-       jive_widget.lo jive_window.lo lua_jiveui.lo
+       jive_framework_nonwindows.lo jive_group.lo jive_icon.lo \
+       jive_label.lo jive_menu.lo jive_slider.lo jive_style.lo \
+       jive_surface.lo jive_textarea.lo jive_textinput.lo \
+       jive_tile.lo jive_timer.lo jive_utils.lo jive_widget.lo \
+       jive_window.lo lua_jiveui.lo
 libjiveui_la_OBJECTS = $(am_libjiveui_la_OBJECTS)
 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(testdir)"
 binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
@@ -270,6 +271,7 @@
        src/ui/jive_event.c \
        src/ui/jive_font.c \
        src/ui/jive_framework.c \
+       src/ui/jive_framework_nonwindows.c \
        src/ui/jive_group.c \
        src/ui/jive_icon.c \
        src/ui/jive_label.c \
@@ -479,6 +481,7 @@
 @AMDEP_TRUE@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
 @AMDEP_TRUE@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
 @AMDEP_TRUE@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
[EMAIL PROTECTED]@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
 @AMDEP_TRUE@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
 @AMDEP_TRUE@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
 @AMDEP_TRUE@@am__include@ @[EMAIL PROTECTED]/$(DEPDIR)/[EMAIL PROTECTED]@
@@ -644,6 +647,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='src/ui/jive_framework.c' 
object='jive_framework.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) 
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) 
$(CFLAGS) -c -o jive_framework.lo `test -f 'src/ui/jive_framework.c' || echo 
'$(srcdir)/'`src/ui/jive_framework.c
+
+jive_framework_nonwindows.lo: src/ui/jive_framework_nonwindows.c
[EMAIL PROTECTED]@      if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) 
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) 
$(CFLAGS) -MT jive_framework_nonwindows.lo -MD -MP -MF 
"$(DEPDIR)/jive_framework_nonwindows.Tpo" -c -o jive_framework_nonwindows.lo 
`test -f 'src/ui/jive_framework_nonwindows.c' || echo 
'$(srcdir)/'`src/ui/jive_framework_nonwindows.c; \
[EMAIL PROTECTED]@      then mv -f "$(DEPDIR)/jive_framework_nonwindows.Tpo" 
"$(DEPDIR)/jive_framework_nonwindows.Plo"; else rm -f 
"$(DEPDIR)/jive_framework_nonwindows.Tpo"; exit 1; fi
[EMAIL PROTECTED]@@am__fastdepCC_FALSE@ 
source='src/ui/jive_framework_nonwindows.c' 
object='jive_framework_nonwindows.lo' libtool=yes @AMDEPBACKSLASH@
[EMAIL PROTECTED]@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
[EMAIL PROTECTED]@      $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) 
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) 
$(CFLAGS) -c -o jive_framework_nonwindows.lo `test -f 
'src/ui/jive_framework_nonwindows.c' || echo 
'$(srcdir)/'`src/ui/jive_framework_nonwindows.c
 
 jive_group.lo: src/ui/jive_group.c
 @am__fastdepCC_TRUE@   if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) 
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) 
$(CFLAGS) -MT jive_group.lo -MD -MP -MF "$(DEPDIR)/jive_group.Tpo" -c -o 
jive_group.lo `test -f 'src/ui/jive_group.c' || echo 
'$(srcdir)/'`src/ui/jive_group.c; \

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/VisualC/jive.vcproj
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/VisualC/jive.vcproj?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/VisualC/jive.vcproj (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/VisualC/jive.vcproj Thu Oct  9 
01:25:17 2008
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <VisualStudioProject
        ProjectType="Visual C++"
        Version="9.00"
@@ -311,6 +311,10 @@
                                >
                        </File>
                        <File
+                               
RelativePath="..\src\ui\jive_framework_windows.c"
+                               >
+                       </File>
+                       <File
                                RelativePath="..\src\ui\jive_group.c"
                                >
                        </File>

Modified: 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinMeta.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinMeta.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinMeta.lua
 (original)
+++ 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinMeta.lua
 Thu Oct  9 01:25:17 2008
@@ -35,9 +35,14 @@
 
 function registerApplet(self)
        -- load ourselves indirectly through jiveMain
-       jiveMain:registerSkin(self:string("CONTROLLER_SKIN"), "DefaultSkin", 
"skin")
+       local params = {
+               THUMB_SIZE = 56,
+               nowPlayingBrowseArtworkSize = 154,
+               nowPlayingSSArtworkSize = 186,
+       }
+       jiveMain:registerSkin(self:string("CONTROLLER_SKIN"), "DefaultSkin", 
"skin", params)
+
 end
-
 
 --[[
 

Modified: 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua
 (original)
+++ 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/NowPlaying/NowPlayingApplet.lua
 Thu Oct  9 01:25:17 2008
@@ -43,15 +43,6 @@
 module(..., Framework.constants)
 oo.class(_M, Applet)
 
-
--- FIXME: Bug 8479. workaround: this is hardcoded for now
-local ARTWORK_SIZE = 154
-
---[[ alternative skins
-local ARTWORK_SIZE = 190
-local ARTWORK_SIZE = 350
---]]
-
 local showProgressBar = true
 local modeTokens = {
        off   = "SCREENSAVER_OFF",
@@ -99,12 +90,9 @@
        local server = self.player:getSlimServer()
 
        if windowStyle == 'ss' then
-               -- without drop shadow
-               ARTWORK_SIZE = 186
-               -- with drop shadow
-               --ARTWORK_SIZE = 172
+               ARTWORK_SIZE = jiveMain:getSkinParam("nowPlayingSSArtworkSize")
        else
-               ARTWORK_SIZE = 154
+               ARTWORK_SIZE = 
jiveMain:getSkinParam("nowPlayingBrowseArtworkSize")
        end
 
        if item and item["icon-id"] then

Modified: 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/SlimBrowser/SlimBrowserApplet.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/share/applets/SlimBrowser/SlimBrowserApplet.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/SlimBrowser/SlimBrowserApplet.lua
 (original)
+++ 
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/SlimBrowser/SlimBrowserApplet.lua
 Thu Oct  9 01:25:17 2008
@@ -74,9 +74,6 @@
 -- number of volume steps
 local VOLUME_STEPS = 20
 
--- defaults for thumbnail images
-local THUMB_SIZE = 56
-
 
--==============================================================================
 -- Local variables (globals)
 
--==============================================================================
@@ -221,6 +218,9 @@
 local function _artworkItem(item, group, menuAccel)
        local icon = group and group:getWidget("icon")
        local iconSize
+
+       local THUMB_SIZE = jiveMain:getSkinParam("THUMB_SIZE")
+
        if icon then
                iconSize = icon:getSize()
                if not iconSize or iconSize == 0 then
@@ -742,7 +742,11 @@
        end
 
        log:debug("Artwork width/height will be ", shortDimension)
-       _server:fetchArtworkThumb(chunk.data.artworkId, icon, shortDimension)
+       if chunk.data and chunk.data.artworkId then
+               _server:fetchArtworkThumb(chunk.data.artworkId, icon, 
shortDimension)
+       elseif chunk.data and chunk.data.artworkUrl then
+               _server:fetchArtworkURL(chunk.data.artworkUrl, icon, 
shortDimension)
+       end
        popup:addWidget(icon)
        popup:show()
        return popup
@@ -949,7 +953,7 @@
                                        if data.window['icon-id'] then
                                                -- Fetch an image from 
SlimServer
                                                titleIcon = Icon("icon")
-                                               
_server:fetchArtworkThumb(data.window["icon-id"], titleIcon, THUMB_SIZE)
+                                               
_server:fetchArtworkThumb(data.window["icon-id"], titleIcon, 
jiveMain:getSkinParam("THUMB_SIZE"))
                                        -- only allow the existing icon to stay 
if titleStyle isn't being changed
                                        elseif not data.window.titleStyle and 
titleWidget:getWidget('icon') then
                                                titleIcon = 
titleWidget:getWidget('icon')

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/share/jive/JiveMain.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/share/jive/JiveMain.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/share/jive/JiveMain.lua (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/share/jive/JiveMain.lua Thu Oct  9 
01:25:17 2008
@@ -256,10 +256,15 @@
 end
 
 
-function JiveMain:registerSkin(name, appletName, method)
+function JiveMain:registerSkin(name, appletName, method, params)
        log:debug("registerSkin(", name, ",", appletName, ")")
-
        self.skins[appletName] = { name, method }
+       local defaultParams = {
+               THUMB_SIZE = 56,
+       }
+       local params = params or defaultParams
+       JiveMain:setSkinParams(appletName, params)
+
 end
 
 
@@ -302,9 +307,34 @@
 
 
 function JiveMain:setSelectedSkin(appletName, reload)
+       log:warn(appletName)
        if _loadSkin(self, appletName, false) then
-               self.selectedSkin = appletName
-       end
+               self.selectedSkin        = appletName
+       end
+end
+
+function JiveMain:getSkinParam(key)
+
+       local skinName = self.selectedSkin or "DefaultSkin"
+       
+       if key and self.skinParams and self.skinParams[skinName] and 
self.skinParams[skinName][key] then
+               return self.skinParams[skinName][key]
+       else
+               log:error('no value for skinParam ', key, ' found') 
+               return nil
+       end
+
+end
+
+-- service method to allow other applets to set skin-specific settings like 
THUMB_SIZE
+function JiveMain:setSkinParams(skinName, settings)
+
+       _assert(type(settings) == 'table')
+       if not self.skinParams then
+               self.skinParams = {}
+       end
+       self.skinParams[skinName] = settings
+
 end
 
 

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua Thu Oct  9 
01:25:17 2008
@@ -62,6 +62,7 @@
 local EVENT_CONSUME    = jive.ui.EVENT_CONSUME
 
 local jnt            = jnt
+local jiveMain       = jiveMain
 local iconbar        = iconbar
 
 
@@ -906,9 +907,9 @@
                        s.text:setValue(textValue)
                        s.artIcon:setStyle("icon")
                        if display['icon'] then
-                               
self.slimServer:fetchArtworkURL(display['icon'], s.artIcon, 56)
+                               
self.slimServer:fetchArtworkURL(display['icon'], s.artIcon, 
jiveMain:getSkinParam('THUMB_SIZE'))
                        else
-                               
self.slimServer:fetchArtworkThumb(display["icon-id"], s.artIcon, 56, 'png')
+                               
self.slimServer:fetchArtworkThumb(display["icon-id"], s.artIcon, 
jiveMain:getSkinParam('THUMB_SIZE'), 'png')
                        end
                else
                        s.text:setValue('')

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive.h
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive.h?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive.h (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive.h Thu Oct  9 01:25:17 2008
@@ -255,6 +255,11 @@
 
 /* extra pump function */
 extern int (*jive_sdlevent_pump)(lua_State *L);
+
+extern int (*jive_sdlfilter_pump)(const SDL_Event *event);
+void jive_platform_init(lua_State *L);
+void jive_send_key_event(JiveEventType keyType, JiveKey keyCode);
+
 
 /* global counter used to invalidate widget */
 extern Uint32 jive_origin;

Modified: 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c Thu Oct  9 
01:25:17 2008
@@ -10,8 +10,10 @@
 
 #include <time.h>
 
+#include <SDL_syswm.h>
 
 int (*jive_sdlevent_pump)(lua_State *L);
+int (*jive_sdlfilter_pump)(const SDL_Event *event);
 
 char *jive_resource_path = NULL;
 
@@ -93,6 +95,7 @@
 
 static int init_path(lua_State *L);
 static int process_event(lua_State *L, SDL_Event *event);
+static int filter_events(const SDL_Event *event);
 int jiveL_update_screen(lua_State *L);
 
 
@@ -148,6 +151,12 @@
                SDL_Quit();
                exit(-1);
        }
+
+       /* Register callback for additional events (used for multimedia keys)*/
+       SDL_EventState(SDL_SYSWMEVENT,SDL_ENABLE);
+       SDL_SetEventFilter(filter_events);
+
+       jive_platform_init(L);
 
        /* open window */
        SDL_WM_SetCaption("SqueezePlay Beta", "SqueezePlay Beta");
@@ -244,6 +253,24 @@
        return 0;
 }
 
+static int filter_events(const SDL_Event *event)
+{
+       if (jive_sdlfilter_pump) {
+               return jive_sdlfilter_pump(event);
+       }
+       
+       return 1;
+}
+
+void jive_send_key_event(JiveEventType keyType, JiveKey keyCode) {
+       JiveEvent keyEvent;
+       memset(&keyEvent, 0, sizeof(JiveEvent));
+       
+       keyEvent.type = keyType;
+       keyEvent.ticks = SDL_GetTicks();
+       keyEvent.u.key.code = keyCode;
+       jive_queue_event(&keyEvent);
+}
 
 static int jiveL_quit(lua_State *L) {
 

Added: 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_nonwindows.c
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_nonwindows.c?rev=3087&root=Jive&view=auto
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_nonwindows.c 
(added)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_nonwindows.c 
Thu Oct  9 01:25:17 2008
@@ -1,0 +1,15 @@
+/*
+** Copyright 2007 Logitech. All Rights Reserved.
+**
+** This file is subject to the Logitech Public Source License Version 1.0. 
Please see the LICENCE file for details.
+*/
+
+
+#include "common.h"
+#include "jive.h"
+
+
+void jive_platform_init(lua_State *L) {
+       //nothing to do for platforms other than windows yet
+       //jive_sdlfilter_pump = <platform>_filter_pump;
+}

Added: 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_windows.c
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_windows.c?rev=3087&root=Jive&view=auto
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_windows.c 
(added)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework_windows.c Thu 
Oct  9 01:25:17 2008
@@ -1,0 +1,54 @@
+/*
+** Copyright 2007 Logitech. All Rights Reserved.
+**
+** This file is subject to the Logitech Public Source License Version 1.0. 
Please see the LICENCE file for details.
+*/
+
+
+#include "common.h"
+#include "jive.h"
+
+#include <SDL_syswm.h>
+
+#ifndef WM_APPCOMMAND
+#define WM_APPCOMMAND  0x0319
+#endif
+static int windows_filter_pump(const SDL_Event *event);
+
+static int windows_filter_pump(const SDL_Event *event) {
+       //handle multimedia button events
+       if (event->type == SDL_SYSWMEVENT)
+       {
+               SDL_SysWMmsg *wmmsg;
+               wmmsg = event->syswm.msg;
+               
+               if (wmmsg->msg == WM_APPCOMMAND) {
+                       switch (GET_APPCOMMAND_LPARAM(wmmsg->lParam)) {
+                               case APPCOMMAND_MEDIA_NEXTTRACK:
+                                       
jive_send_key_event(JIVE_EVENT_KEY_PRESS, JIVE_KEY_FWD);
+                                       return 0; // return non-zero, because 
we have handled the message (see MSDN doc)
+                               case APPCOMMAND_MEDIA_PREVIOUSTRACK:
+                                       
jive_send_key_event(JIVE_EVENT_KEY_PRESS, JIVE_KEY_REW);
+                                       return 0;
+                               case APPCOMMAND_MEDIA_PLAY_PAUSE:
+                                       
jive_send_key_event(JIVE_EVENT_KEY_PRESS, JIVE_KEY_PAUSE);
+                                       return 0;
+                               case APPCOMMAND_VOLUME_DOWN:
+                                       
jive_send_key_event(JIVE_EVENT_KEY_DOWN, JIVE_KEY_VOLUME_DOWN);
+                                       jive_send_key_event(JIVE_EVENT_KEY_UP, 
JIVE_KEY_VOLUME_DOWN);
+                                       return 0;
+                               case APPCOMMAND_VOLUME_UP:
+                                       
jive_send_key_event(JIVE_EVENT_KEY_DOWN, JIVE_KEY_VOLUME_UP);
+                                       jive_send_key_event(JIVE_EVENT_KEY_UP, 
JIVE_KEY_VOLUME_UP);
+                                       return 0;
+                               //todo: APPCOMMAND_MEDIA_STOP or 
JIVE_KEY_VOLUME_UP - do anything for these?
+                               default : break;
+                       }
+               }
+    }
+       return 1;
+}
+
+void jive_platform_init(lua_State *L) {
+       jive_sdlfilter_pump = windows_filter_pump;
+}

Modified: 
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinApplet.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinApplet.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinApplet.lua
 (original)
+++ 
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinApplet.lua
 Thu Oct  9 01:25:17 2008
@@ -938,7 +938,7 @@
        s.albumitem.icon.h = WH_FILL
        s.albumitem.icon.align = "left"
        --FIXME, this path likely needs changing
-       --s.albumitem.icon.img = Surface:loadImage(imgpath .. 
"menu_album_noartwork_125.png")
+       s.albumitem.icon.img = Surface:loadImage(imgpath .. 
"menu_album_noartwork_125.png")
        s.albumitem.icon.padding = 0
 
        -- checked albummenu item
@@ -959,7 +959,7 @@
        s.transporter = _uses(s.chooseplayer, {
                                icon = {
                                        img = Surface:loadImage(imgpath .. 
"Icons/Players/transporter.png"),
-                                       w = 56,
+                                       w = 125,
                                }
                        })
        s.transporterchecked = _uses(s.transporter, {
@@ -985,7 +985,7 @@
        s.boom = _uses(s.chooseplayer, {
                                icon = {
                                        img = Surface:loadImage(imgpath .. 
"Icons/Players/boom.png"),
-                                       w = 56,
+                                       w = 125,
                                }
                        })
        s.boomchecked = _uses(s.boom, {
@@ -1238,7 +1238,7 @@
                        --FIXME, need a resized icon_connecting.png image for 
the correct albumitem thumb size
                        img = Surface:loadImage(imgpath .. 
"icon_connecting.png"),
                        frameRate = 4,
-                       frameWidth = 120
+                       frameWidth = 125
                }
        })
 

Modified: 
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinMeta.lua
URL: 
http://svn.slimdevices.com/7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinMeta.lua?rev=3087&root=Jive&r1=3086&r2=3087&view=diff
==============================================================================
--- 
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinMeta.lua
 (original)
+++ 
7.4/trunk/squeezeplay/src/squeezeplay_desktop/share/applets/FullscreenSkin/FullscreenSkinMeta.lua
 Thu Oct  9 01:25:17 2008
@@ -34,9 +34,13 @@
 
 
 function registerApplet(self)
-       jiveMain:registerSkin(self:string("DESKTOP_SKIN"), 'FullscreenSkin', 
'skin')
+       local params = {
+               THUMB_SIZE = 125,
+               nowPlayingBrowseArtworkSize = 350,
+               nowPlayingSSArtworkSize = 350,
+       }
+       jiveMain:registerSkin(self:string("DESKTOP_SKIN"), 'FullscreenSkin', 
'skin', params)
 end
-
 
 --[[
 

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins

Reply via email to