AC_PROG_INSTALL
AM_PROG_LIBTOOL
-PKG_CHECK_MODULES(EXAMPLE, hildon-1 libhildondesktop-1 hildon-fm-2 gtk+-2.0 gstreamer-0.10)
-AC_SUBST(EXAMPLE_CFLAGS)
-AC_SUBST(EXAMPLE_LIBS)
+PKG_CHECK_MODULES(MAEMO, hildon-1 libhildondesktop-1 hildon-fm-2 gtk+-2.0 gstreamer-0.10)
+AC_SUBST(MAEMO_CFLAGS)
+AC_SUBST(MAEMO_LIBS)
PKG_CHECK_MODULES(OSSO, [libosso >= 1])
AC_SUBST(OSSO_LIBS)
bin_PROGRAMS = livewp
livewp_SOURCES = $(SOURCE_FILES)
#
-livewp_CFLAGS = -Wall $(EXAMPLE_CFLAGS) $(OSSO_CFLAGS) $(SQLITE_CFLAGS) -DAPPLICATION
+livewp_CFLAGS = -Wall $(MAEMO_CFLAGS) $(OSSO_CFLAGS) $(SQLITE_CFLAGS) -DAPPLICATION
#
-livewp_LDADD = $(EXAMPLE_LIBS) $(OSSO_LIBS) $(SQLITE_LIBS) -lgstinterfaces-0.10
+livewp_LDADD = $(MAEMO_LIBS) $(OSSO_LIBS) $(SQLITE_LIBS) -lgstinterfaces-0.10
# We invent desktoplib_LTLIBRARIES instead of the normal lib_LTLIBRARIES,
# so we can specify the non-standard installation directory.
livewp-dbus.c livewp-dbus.h \
livewp-actor.c livewp-actor.h \
livewp-scene.c livewp-scene.h
-liblivewp_home_widget_la_LIBADD = $(EXAMPLE_LIBS) $(OSSO_LIBS) $(SQLITE_LIBS)
+liblivewp_home_widget_la_LIBADD = $(MAEMO_LIBS) $(OSSO_LIBS) $(SQLITE_LIBS)
-AM_CFLAGS = -Wall $(EXAMPLE_CFLAGS) $(OSSO_CFLAGS) $(SQLITE_CFLAGS)
+AM_CFLAGS = -Wall $(MAEMO_CFLAGS) $(OSSO_CFLAGS) $(SQLITE_CFLAGS)
panellib_LTLIBRARIES = liblivewp-panel-widget.la
panellibdir = $(HILDON_PANEL_LIB_DIR)
livewp-config.c livewp-config.h \
livewp-control-widget.c livewp-control-widget.h \
livewp-dbus.c livewp-dbus.h
-liblivewp_panel_widget_la_LIBADD = $(EXAMPLE_LIBS) $(OSSO_LIBS) $(CONTROLPANEL_LIBS)
+liblivewp_panel_widget_la_LIBADD = $(MAEMO_LIBS) $(OSSO_LIBS) $(CONTROLPANEL_LIBS)
-liblivewp_panel_widget_la_CFLAGS = -Wall $(EXAMPLE_CFLAGS) $(OSSO_CFLAGS) $(CONTROLPANEL_CFLAGS) -DCONTROLPANEL
+liblivewp_panel_widget_la_CFLAGS = -Wall $(MAEMO_CFLAGS) $(OSSO_CFLAGS) $(CONTROLPANEL_CFLAGS) -DCONTROLPANEL
gint
current_active_view(void){
GConfClient *gconf_client = NULL;
- GConfValue *value = NULL;
gint result = -1;
gconf_client = gconf_client_get_default();
void lw_settings(Animation_WallpaperPrivate *priv, gpointer data);
gint read_config(Animation_WallpaperPrivate *priv);
void livewp_initialize_dbus(Animation_WallpaperPrivate *priv);
+void lw_main_settings(Animation_WallpaperPrivate *priv, gpointer data);
/*******************************************************************************/
void livewp_initialize_dbus(Animation_WallpaperPrivate *priv);
void livewp_deinitialize_dbus(Animation_WallpaperPrivate *priv);
-DBusHandlerResult
-get_livewp_signal_cb(DBusConnection *conn, DBusMessage *msg, Animation_WallpaperPrivate *priv);
-
+DBusHandlerResult get_livewp_signal_cb(DBusConnection *conn, DBusMessage *msg, Animation_WallpaperPrivate *priv);
void send_dbus_signal (Animation_WallpaperPrivate *priv, const gchar *interface, const gchar *path, const gchar *member);
gint read_config(Animation_WallpaperPrivate *priv);
void reload_scene(AWallpaperPlugin *desktop_plugin);
+void quit_from_program (Animation_WallpaperPrivate *priv);
+void view_state_changed (Animation_WallpaperPrivate *priv);
/*******************************************************************************/
#endif
#include "livewp-scene.h"
#include <sys/time.h>
#include <stdlib.h>
+#include <unistd.h>
+#include <sys/wait.h>
#define GCONF_KEY_POSITION "/apps/osso/hildon-desktop/applets/livewp-home-widget.desktop-%i/position"
#define GCONF_KEY_MODIFIED "/apps/osso/hildon-desktop/applets/livewp-home-widget.desktop-%i/modified"
GdkScreen *screen;
gchar * strid;
gint id;
- AWallpaperPlugin *desktop_plugin = widget;
+ AWallpaperPlugin *desktop_plugin = (AWallpaperPlugin *)widget;
char* child_argv[] = {"/usr/bin/livewp", "0", (char *) 0 };
fprintf(stderr,"Problem with new process");
}
- desktop_plugin_visible_notify(widget, NULL, desktop_plugin);
+ desktop_plugin_visible_notify((GObject *)widget, NULL, desktop_plugin);
#if 0
/* Load config */
GTK_WIDGET_CLASS (animation_wallpaper_plugin_parent_class)->realize (widget);
}
-
-static gboolean
-lw_applet_expose_event(GtkWidget *widget,
- GdkEventExpose *event)
-{
- cairo_t *cr;
-
- /* Create cairo context */
- cr = gdk_cairo_create (GDK_DRAWABLE (widget->window));
- gdk_cairo_region (cr, event->region);
- cairo_clip (cr);
-
- /* Draw alpha background */
- cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
- cairo_set_source_rgba (cr, 0.0, 0.0, 0.0, 0.0);
- cairo_paint (cr);
-
- /* Free context */
- cairo_destroy (cr);
-
- return GTK_WIDGET_CLASS (animation_wallpaper_plugin_parent_class)->expose_event (widget,
- event);
-}
-
static gboolean
expose_event (GtkWidget *widget,GdkEventExpose *event,
gpointer data)
static void
animation_wallpaper_plugin_init (AWallpaperPlugin *desktop_plugin)
{
- GtkWidget *rich_animation;
- gchar buffer[2048];
- gchar str[128];
//fprintf(stderr, "!!!!!!!plugin init \n");
Animation_WallpaperPrivate *priv = Animation_Wallpaper_HOME_PLUGIN_GET_PRIVATE (desktop_plugin);
livewp_initialize_dbus(priv);
priv->desktop_plugin = desktop_plugin;
- priv->window = desktop_plugin;
+ priv->window = (GtkWidget *)desktop_plugin;
priv->visible = FALSE;
priv->short_timer = 0;
priv->xapplet = 0;
static void
desktop_widget_finalize (GObject *object)
{
- AWallpaperPlugin *desktop_plugin = Animation_Wallpaper_HOME_PLUGIN (object);
- Animation_WallpaperPrivate *priv = desktop_plugin->priv;
-
- /* Call the base class's implementation: */
- G_OBJECT_CLASS (animation_wallpaper_plugin_parent_class)->finalize (object);
+ /* Call the base class's implementation: */
+ G_OBJECT_CLASS (animation_wallpaper_plugin_parent_class)->finalize (object);
}
static void
gobject_class->destroy = (gpointer)lw_applet_finalize;
object_class->finalize = desktop_widget_finalize;
widget_class->realize = lw_applet_realize;
-// widget_class->expose_event = lw_applet_expose_event;
g_type_class_add_private (klass, sizeof (Animation_WallpaperPrivate));
gint current_active_view(void);
gboolean long_timeout (AWallpaperPlugin *desktop_plugin);
void desktop_plugin_visible_notify (GObject *object, GParamSpec *spec, AWallpaperPlugin *desktop_plugin);
+void send_dbus_signal (Animation_WallpaperPrivate *priv, const gchar *interface, const gchar *path, const gchar *member);
#endif
/*******************************************************************************/
static void set_live_bg (Display *display, Window xwindow, int mode);
+void quit_from_program (Animation_WallpaperPrivate *priv);
+void view_state_changed (Animation_WallpaperPrivate *priv);
+
static
void set_live_bg (Display *display, Window xwindow, int mode)
{
g_free(run_string);
}
/*******************************************************************************/
-gboolean cb_timeout0(AWallpaperPlugin *desktop_plugin) {
- GstFormat fmt = GST_FORMAT_TIME;
- gboolean test;
- gint64 len;
- gint len_seconds = 0;
+gboolean
+cb_timeout0(AWallpaperPlugin *desktop_plugin) {
if (!desktop_plugin || !desktop_plugin->priv->pipeline)
return FALSE;
if (desktop_plugin->priv->theme_int_parametr1 == 0){
- if (!gst_element_seek(GST_PIPELINE (desktop_plugin->priv->pipeline), 1.0, GST_FORMAT_TIME,
+ if (!gst_element_seek((GstElement *)GST_PIPELINE (desktop_plugin->priv->pipeline), 1.0, GST_FORMAT_TIME,
GST_SEEK_FLAG_FLUSH, GST_SEEK_TYPE_SET,
desktop_plugin->priv->theme_int_parametr1 * GST_SECOND,
GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE))
if (gst_element_get_state (desktop_plugin->priv->pipeline, NULL, NULL, -1) == GST_STATE_CHANGE_FAILURE)
return TRUE;
else{
- if (!gst_element_seek(GST_PIPELINE (desktop_plugin->priv->pipeline), 1.0, GST_FORMAT_TIME,
+ if (!gst_element_seek((GstElement *)GST_PIPELINE (desktop_plugin->priv->pipeline), 1.0, GST_FORMAT_TIME,
GST_SEEK_FLAG_FLUSH, GST_SEEK_TYPE_SET,
desktop_plugin->priv->theme_int_parametr1 * GST_SECOND,
GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE))
{
GstElement *bin;
GstElement *videosink;
- GstFormat format;
gchar *file_plus_uri;
{
GstBus *bus;
bus = gst_pipeline_get_bus (GST_PIPELINE (desktop_plugin->priv->pipeline));
- gst_bus_add_watch(bus, bus_call, desktop_plugin);
+ gst_bus_add_watch(bus, (GstBusFunc)bus_call, desktop_plugin);
gst_object_unref (bus);
}
file_plus_uri = g_strdup_printf("file://%s",desktop_plugin->priv->theme_string_parametr1);
if (desktop_plugin->priv->visible){
gst_element_set_state (desktop_plugin->priv->pipeline, GST_STATE_PLAYING);
- g_timeout_add(100, cb_timeout0, desktop_plugin);
+ g_timeout_add(50, (GSourceFunc)cb_timeout0, desktop_plugin);
}
//gst_element_get_state(deskddtop_plugin->priv->pipeline, NULL, NULL, 100 * GST_MSECOND);
#include <sys/time.h>
#include "livewp-rules.h"
#include <glib-object.h>
-
+#include <unistd.h>
void destroy_scene(AWallpaperPlugin *desktop_plugin);
void init_scene_Video(AWallpaperPlugin *desktop_plugin);
void init_scene_Xsnow(AWallpaperPlugin *desktop_plugin);
void init_scene_theme(AWallpaperPlugin *desktop_plugin);
+void create_hildon_actor_text(Actor *actor, AWallpaperPlugin *desktop_plugin);
#endif