README updated
[gregoa/zavai.git] / README
diff --git a/README b/README
index 270c1e271fed74cfb072a02c40da55c38363fd80..7f0cc1f3d0773be1bb45abf7cca69870e2704686 100644 (file)
--- a/README
+++ b/README
@@ -11,9 +11,14 @@ Getting it to work:
 
  * Install dependencies
 
 
  * Install dependencies
 
-   apt-get install valac libglib2.0-dev libdbus-glib-1-dev libgee-dev libgtk2.0-dev libwnck-dev
+   # Build time
+   apt-get install valac libglib2.0-dev libdbus-glib-1-dev libgee-dev libgtk2.0-dev libwnck-dev libdevkit-power-gobject-dev
 
 
-   Optional: apt-get install polygen polygen-data
+   # Runtime
+   apt-get install devicekit-power
+
+   # Optional runtime
+   apt-get install polygen polygen-data
 
  * Compile
 
 
  * Compile
 
@@ -36,6 +41,11 @@ Getting it to work:
    cp /usr/share/applications/FBReader.desktop ~/.zavai
    cp conf/satmon.desktop ~/.zavai
 
    cp /usr/share/applications/FBReader.desktop ~/.zavai
    cp conf/satmon.desktop ~/.zavai
 
+ * Copy accessory scripts in ~/.zavai
+
+   cp hooks/display ~/.zavai
+   cp hooks/keyboard ~/.zavai
+
  * Update the information about the polygen grammars installed in the system
    (optional) 
 
  * Update the information about the polygen grammars installed in the system
    (optional) 
 
@@ -97,15 +107,38 @@ Features / guide
  * Alarms
 
  It is possible to set an alarm, which will be shown in the alarm window. When
  * Alarms
 
  It is possible to set an alarm, which will be shown in the alarm window. When
- the alarm expires, the phone wakes up if it is suspended, and zavai does
- nothing but print an error message on standard error.
+ the alarm expires, the phone wakes up if it is suspended, and zavai vibrates
+ for 5 seconds.
+
+ It is planned to use the AUX button to acknowledge the alarm and stop the
+ vibration; when this will happen, vibration can go on for more than 5 seconds.
  
  
- When there will be a documented API to turn OFF the vibrator, I'll implement
- vibration on alarm.  When I'll implement some audio playing infrastructure,
- I'll implement playing an audio file as well.
+ When I'll implement some audio playing infrastructure, I'll implement playing
+ an audio file as well.
+
+ Also missing are a popup that tells that an alarm is ringing, and a notifier
+ for unacknowledged popups.
 
  Patches welcome.
 
 
  Patches welcome.
 
+ Details: the alarms are scheduled with at(1). Please see omhacks for simple
+ suspend hooks that will wake up the phone to run scheduled at jobs.
+
+ * Calendar
+
+ You can reach the calendar from the menu or by clicking on the date in the
+ main screen.
+
+ The calendar shows notes on every day. You can add notes just by typing on the
+ white space below the calendar.
+
+ The notes are saved in ~/.zavai/cal/YEAR/MONTH/DAY.txt, feel free to:
+  - sync it with your main computer;
+  - create a tool that populates it using the information from your
+    favourite calendar system;
+  - interface zavai with a proper calendar system, without making the interface
+    harder to use (if you can).
+
 Stability / design
 
  Zavai currently focuses on the interface side, trying to make it easy for me
 Stability / design
 
  Zavai currently focuses on the interface side, trying to make it easy for me
@@ -122,10 +155,22 @@ TODO list / wish list
  http://git.freesmartphone.org/?p=specs.git;a=blob_plain;f=html/index.html;hb=HEAD
 
  * Features to add:
  http://git.freesmartphone.org/?p=specs.git;a=blob_plain;f=html/index.html;hb=HEAD
 
  * Features to add:
- - icon linking to "current apps" in the main screen
+ - contacts: show as a fancy focus+context list (see prefuse)
+    - use a TreeStore as a backend (precaching the elements in an array)
+    - profile
+    - polygen can use the same list
+    - draw something outside of focus area
+    - ensure that the first and last items are selectable
+ - s/autotools/cmake
+ - Split polygen applet in a separate app, ran via a .desktop file
+   (faster zavai startup time, can then integrate a browser in the polygen
+    applet, makes more sense altogether)
  - alarm
     - vibrate at alarm trigger
     - play sound at alarm trigger
  - alarm
     - vibrate at alarm trigger
     - play sound at alarm trigger
+    - acknowledge alarms with AUX button
+       - then, vibrate and play sound for longer
+    - popup that tells that an alarm is ringing
     - leave expired alarm on screen until acknowledged
       (alarm status icon that also brings to alarm menu)
     - remember alarm names (on request, maybe with an add feature) and how
     - leave expired alarm on screen until acknowledged
       (alarm status icon that also brings to alarm menu)
     - remember alarm names (on request, maybe with an add feature) and how
@@ -133,30 +178,45 @@ TODO list / wish list
     - remember unexpired alarms persistently (again, a table in sqlite?) so
       that they can be reinstated if zavai is restarted
     - show active alarms and allow to delete them
     - remember unexpired alarms persistently (again, a table in sqlite?) so
       that they can be reinstated if zavai is restarted
     - show active alarms and allow to delete them
- - calendar, just the GTK calendar widget with buttons to go back, forth and
-   current (fill in with opimd if it will make sense)
-    - fill in day info with data coming from the laptop, but just read only,
-      without edit features. Good to check what's on for the day, and notes can
-      be taken with pen and paper for now
+ - work without ogpsd
+    + power on/off the gps and start/stop gpsd
+    + set to keep the GPS on during suspend
+    - use the gpsd protocol
+    - suspend/resume hooks to put the GPS into low power mode
+ - next30: don't update if not shown currently on the notebook
+ - gtk_calendar_set_detail_func
+ - GSM power and network
+    - link to open SHR-dialer
+ - icon to show if there are new messages
+    - link to open SHR-messages
+ - switch backlight keep mode when on power/recharging
+    - the button changes the default for the current power mode
+ - unlock screen when receiving phone calls
  - GPX status icon (off, waiting for fix, recording)
  - GPX waypoint using AUX button
  - GPX + Audio track
  - track EPV (and similar) in gpx and kill trackpoints with bad accuracy
  - Audio note
     - shortcut icon in main screen
  - GPX status icon (off, waiting for fix, recording)
  - GPX waypoint using AUX button
  - GPX + Audio track
  - track EPV (and similar) in gpx and kill trackpoints with bad accuracy
  - Audio note
     - shortcut icon in main screen
- - Wake up alarm
  - Toggle wireless
     - turn on/off chip
     - start/stop wicd
     - start/stop wicd-client
  - Toggle wireless
     - turn on/off chip
     - start/stop wicd
     - start/stop wicd-client
+ - Simple wireless scanner (code from guessnet)
  - Suspend phone if not calling and gps is not on and backlight is not on
    (maybe with idle notifier?)
  - Phone from kapula (or just running kapula)
  - Suspend phone if not calling and gps is not on and backlight is not on
    (maybe with idle notifier?)
  - Phone from kapula (or just running kapula)
- - Split polygen applet in a separate app, ran via a .desktop file
-   (faster zavai startup time, can then integrate a browser in the polygen
-    applet, makes more sense altogether)
  - Is there a way to lock the screen completely turning off the touchscreen, so
    that interrupts are not even generated?
  - Is there a way to lock the screen completely turning off the touchscreen, so
    that interrupts are not even generated?
+ - Timezone selector
+    - Location aware (show timezones in order of distance from current
+      location)
+ - Show timezone in clock
+
+ * To find out
+ - Why sometimes the phone will stop acting normal and will completely ignore
+   the screen for the purpose of screen dimming, that is, it will dim the
+   screen even if I'm using the touchscreen?
 
  * Not quite needed yet:
  - GPX log with more features (quality, course, speed, ...)
 
  * Not quite needed yet:
  - GPX log with more features (quality, course, speed, ...)