AC_SUBST(DEVKITPOWER_CFLAGS)
AC_SUBST(DEVKITPOWER_LIBS)
+PKG_CHECK_MODULES(OMHACKS, libomhacks)
+AC_SUBST(OMHACKS_CFLAGS)
+AC_SUBST(OMHACKS_LIBS)
+
AC_CONFIG_FILES([Makefile
src/Makefile])
-VFLAGS=-g --pkg gee-1.0 --pkg dbus-glib-1 --pkg gtk+-2.0 --pkg posix --pkg libwnck-1.0 --vapidir=. --pkg linux-input --pkg dbus-extra --pkg devkit-power-gobject
+VFLAGS=-g --pkg gee-1.0 --pkg dbus-glib-1 --pkg gtk+-2.0 --pkg posix --pkg libwnck-1.0 --vapidir=. --pkg linux-input --pkg dbus-extra --pkg devkit-power-gobject --pkg omhacks
#zavai: $(SOURCES)
# valac -o zavai $(VFLAGS) $^
$(GTK_CFLAGS) \
$(WNCK_CFLAGS) \
$(DEVKITPOWER_CFLAGS) \
+ $(OMHACKS_CFLAGS) \
-DWNCK_I_KNOW_THIS_IS_UNSTABLE \
-DI_KNOW_THE_DEVICEKIT_POWER_API_IS_SUBJECT_TO_CHANGE
-zavai_VAPIS = linux-input.vapi dbus-extra.vapi devkit-power-gobject.vapi
+zavai_VAPIS = linux-input.vapi dbus-extra.vapi devkit-power-gobject.vapi omhacks.vapi
BUILT_SOURCES = zavai.vala.stamp zavai-calendar.vala.stamp \
$(zavai_VALASOURCES:.vala=.c) $(zavai_calendar_VALASOURCES:.vala=.c)
$(GEE_LIBS) \
$(GTK_LIBS) \
$(WNCK_LIBS) \
- $(DEVKITPOWER_LIBS)
+ $(DEVKITPOWER_LIBS) \
+ $(OMHACKS_LIBS)
zavai_calendar_LDADD = \
$(GLIB_LIBS) \
}
}
+public class PowerMenuService : Service
+{
+ public PowerMenuService()
+ {
+ Object(name: "app.debug.power_menu_service");
+ }
+ public override void start()
+ {
+ zavai.ui.power.power_menu.toggle();
+ }
+ public override void stop()
+ {
+ zavai.ui.power.power_menu.toggle();
+ }
+}
+
+
+
/*
class Quitter(gtk.Action):
def __init__(self, **kw):
var menu_debug = new zavai.Menu("Debug");
menu_debug.add_applet("app.debug.useless");
menu_debug.add_service_toggle("app.debug.useless_service", "Start useless service", "Stop useless service");
+
+ var power_menu_service = new PowerMenuService();
+ zavai.registry.register_service(power_menu_service);
+ menu_debug.add_service_toggle("app.debug.power_menu_service", "Toggle power menu", "Toggle power menu");
+
menu_debug.add_applet("app.debug.quit");
zavai.registry.register_menu("menu.debug", menu_debug);
}
}
+public class BrightnessAdjustment : Gtk.Adjustment
+{
+ public BrightnessAdjustment()
+ {
+ lower = 0;
+ upper = Omhacks.Screen.Brightness.get_max();
+ value = Omhacks.Screen.Brightness.get();
+ step_increment = 1;
+ page_increment = upper/10;
+ page_size = upper/10;
+ value_changed += on_value_changed;
+
+ /*
+ Gtk.Adjustment(
+ zavai.config.backlight_max/2,
+ 0, zavai.config.backlight_max,
+ 1, zavai.config.backlight_max/10, zavai.config.backlight_max/10);
+ */
+ }
+
+ protected void on_value_changed()
+ {
+ Omhacks.Screen.Brightness.set((int)value);
+ }
+}
+
public class PowerMenu : zavai.Resource, Gtk.Window
{
protected Gtk.VBox vbox;
+ protected Gtk.HBox hbox;
protected ScreenLockButton act_screen_lock;
protected SuspendButton act_suspend;
protected ShutdownButton act_shutdown;
protected RebootButton act_reboot;
protected ServiceRequestLink act_backlight_on;
+ protected Gtk.VScrollbar bscroll;
protected bool shown;
public PowerMenu()
set_position(Gtk.WindowPosition.CENTER_ON_PARENT);
set_size_request(300, 500);
+ hbox = new Gtk.HBox(false, 0);
+ add(hbox);
+
vbox = new Gtk.VBox(false, 0);
- add(vbox);
+ hbox.pack_start(vbox, true, true, 0);
+
+ bscroll = new Gtk.VScrollbar(brightness);
+ bscroll.inverted = true;
+ hbox.pack_start(bscroll, false, false, 0);
//destroy += Gtk.main_quit;
//set_events(get_events() | Gdk.EventMask.VISIBILITY_NOTIFY_MASK);
PowerMenu power_menu;
Gee.ArrayList<BatteryIcon> battery_icons;
Backlight backlight;
+BrightnessAdjustment brightness;
//TogglePowerMenu tpm;
public void init()
power = new Power();
backlight = new Backlight();
zavai.registry.register_service(backlight);
+ brightness = new BrightnessAdjustment();
try {
battery_icons = new Gee.ArrayList<BatteryIcon>();
public string gprs_apn { get; set; }
public string gprs_user { get; set; }
public string gprs_pass { get; set; }
+ public int backlight_max { get; set; }
private string _argv0;
public string argv0 {
get { return _argv0; }
gprs_apn = "general.t-mobile.uk";
gprs_user = "x";
gprs_pass = "x";
+ backlight_max = 15;
}
/*
--- /dev/null
+[CCode (lower_case_cprefix="", cprefix="", cheader_filename="omhacks/all.h")]
+namespace Omhacks
+{
+ namespace Screen
+ {
+ namespace Brightness
+ {
+ [CCode (cname = "om_screen_brightness_get")]
+ public int get();
+ [CCode (cname = "om_screen_brightness_get_max")]
+ public int get_max();
+ [CCode (cname = "om_screen_brightness_set")]
+ public int set(int val);
+ }
+ }
+}