21 |
#include <math.h> |
#include <math.h> |
22 |
#include <string.h> |
#include <string.h> |
23 |
|
|
24 |
|
#if MAEMO_VERSION_MAJOR == 5 |
25 |
|
#include <gdk/gdkx.h> |
26 |
|
#include <X11/Xatom.h> |
27 |
|
#endif |
28 |
|
|
29 |
static GtkWidget *cache_description(appdata_t *appdata, cache_t *cache) { |
static GtkWidget *cache_description(appdata_t *appdata, cache_t *cache) { |
30 |
return html_view(appdata, cache->long_description, |
return html_view(appdata, cache->long_description, |
31 |
cache->long_is_html?HTML_HTML:HTML_PLAIN_TEXT, TRUE, cache, NULL); |
cache->long_is_html?HTML_HTML:HTML_PLAIN_TEXT, TRUE, cache, NULL); |
343 |
/* ----------------------------------------------------- */ |
/* ----------------------------------------------------- */ |
344 |
|
|
345 |
if(cache->attribute) { |
if(cache->attribute) { |
346 |
|
GtkWidget *thbox = gtk_hbox_new(FALSE, 0); |
347 |
ihbox = gtk_hbox_new(FALSE, 0); |
ihbox = gtk_hbox_new(FALSE, 0); |
348 |
|
|
349 |
attribute_t *att = cache->attribute; |
attribute_t *att = cache->attribute; |
353 |
else |
else |
354 |
tip = icon_get_widget_ovl(ICON_ATT, att->id+1, 0); |
tip = icon_get_widget_ovl(ICON_ATT, att->id+1, 0); |
355 |
|
|
356 |
gtk_box_pack_start(GTK_BOX(ihbox), tip, 1,0,0); |
gtk_box_pack_start(GTK_BOX(ihbox), tip, FALSE, FALSE, 4); |
357 |
|
|
358 |
#ifndef USE_MAEMO |
#ifndef USE_MAEMO |
359 |
gtk_tooltips_set_tip(tips, tip, _(att->name), NULL); |
gtk_tooltips_set_tip(tips, tip, _(att->name), NULL); |
362 |
att = att->next; |
att = att->next; |
363 |
} |
} |
364 |
|
|
365 |
gtk_box_pack_start(GTK_BOX(vbox), ihbox, FALSE, FALSE, 0); |
gtk_box_pack_start(GTK_BOX(thbox), ihbox, TRUE, FALSE, 0); |
366 |
|
gtk_box_pack_start(GTK_BOX(vbox), thbox, FALSE, FALSE, 0); |
367 |
gtk_box_pack_start(GTK_BOX(vbox), gtk_hseparator_new(), FALSE, FALSE, 0); |
gtk_box_pack_start(GTK_BOX(vbox), gtk_hseparator_new(), FALSE, FALSE, 0); |
368 |
} |
} |
369 |
|
|
904 |
|
|
905 |
#else |
#else |
906 |
#ifdef USE_STACKABLE_WINDOW |
#ifdef USE_STACKABLE_WINDOW |
907 |
|
|
908 |
|
#if !defined(__i386__) |
909 |
|
/* get access to zoom buttons */ |
910 |
|
static void |
911 |
|
on_window_realize(GtkWidget *widget, gpointer data) { |
912 |
|
if (widget->window) { |
913 |
|
unsigned char value = 1; |
914 |
|
Atom hildon_zoom_key_atom = |
915 |
|
gdk_x11_get_xatom_by_name("_HILDON_ZOOM_KEY_ATOM"), |
916 |
|
integer_atom = gdk_x11_get_xatom_by_name("INTEGER"); |
917 |
|
Display *dpy = |
918 |
|
GDK_DISPLAY_XDISPLAY(gdk_drawable_get_display(widget->window)); |
919 |
|
Window w = GDK_WINDOW_XID(widget->window); |
920 |
|
|
921 |
|
XChangeProperty(dpy, w, hildon_zoom_key_atom, |
922 |
|
integer_atom, 8, PropModeReplace, &value, 1); |
923 |
|
} |
924 |
|
} |
925 |
|
#endif |
926 |
|
|
927 |
static void on_cache_destroy (GtkWidget *widget, appdata_t *appdata) { |
static void on_cache_destroy (GtkWidget *widget, appdata_t *appdata) { |
928 |
appdata->cur_cache = NULL; |
appdata->cur_cache = NULL; |
929 |
|
|
938 |
GtkWidget *window = hildon_stackable_window_new(); |
GtkWidget *window = hildon_stackable_window_new(); |
939 |
appdata->window = HILDON_WINDOW(window); |
appdata->window = HILDON_WINDOW(window); |
940 |
|
|
941 |
|
#if !defined(__i386__) |
942 |
|
g_signal_connect(G_OBJECT(appdata->window), "realize", |
943 |
|
G_CALLBACK(on_window_realize), NULL); |
944 |
|
#endif |
945 |
|
|
946 |
|
g_signal_connect(G_OBJECT(appdata->window), "key_press_event", |
947 |
|
G_CALLBACK(on_window_key_press), appdata); |
948 |
|
|
949 |
/* store last "cur_view" in window */ |
/* store last "cur_view" in window */ |
950 |
g_object_set_data(G_OBJECT(window), "cur_view", appdata->cur_view); |
g_object_set_data(G_OBJECT(window), "cur_view", appdata->cur_view); |
951 |
|
|