openmoko-dialer2: apply patch from http://bugzilla.openmoko.org/cgi-bin/bugzilla...
authorKoen Kooi <koen@openembedded.org>
Tue, 28 Aug 2007 06:54:58 +0000 (06:54 +0000)
committerKoen Kooi <koen@openembedded.org>
Tue, 28 Aug 2007 06:54:58 +0000 (06:54 +0000)
packages/openmoko2/openmoko-dialer2/.mtn2git_empty [new file with mode: 0644]
packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch [new file with mode: 0644]
packages/openmoko2/openmoko-dialer2_svn.bb

diff --git a/packages/openmoko2/openmoko-dialer2/.mtn2git_empty b/packages/openmoko2/openmoko-dialer2/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch b/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch
new file mode 100644 (file)
index 0000000..5969726
--- /dev/null
@@ -0,0 +1,117 @@
+--- openmoko-dialer2/src/moko-dialer.c~        2007-08-27 20:02:37.000000000 +0930
++++ openmoko-dialer2/src/moko-dialer.c 2007-08-27 18:59:37.000000000 +0930
+@@ -69,8 +69,7 @@
+   /* Registration variables */
+   guint               reg_timeout;
+-  gboolean            reg_request;
+-  gboolean            registered;
++  MokoGsmdConnectionNetregType registered;
+ };
+ enum
+@@ -292,8 +291,7 @@
+   moko_keypad_set_pin_mode (MOKO_KEYPAD (priv->keypad), FALSE);
+     
+-  priv->reg_request = TRUE;
+-  priv->registered = FALSE;
++  priv->registered = MOKO_GSMD_CONNECTION_NETREG_NONE;
+   priv->reg_timeout = g_timeout_add (GSM_REGISTER_TIMEOUT, 
+                                      (GSourceFunc)register_network_cb, 
+                                      dialer);
+@@ -424,14 +422,14 @@
+   g_return_if_fail (MOKO_IS_DIALER (dialer));
+   priv = dialer->priv;
++  g_warning ("on_network_registered: type is %d\n", type);
++
+   switch (type)
+   {
+     case MOKO_GSMD_CONNECTION_NETREG_NONE:
+     case MOKO_GSMD_CONNECTION_NETREG_SEARCHING:
+       /* Do nothing */
+       g_print ("NetReg: Searching for network\n");
+-      g_source_remove (priv->reg_timeout);
+-      priv->registered = TRUE;
+       break;
+     case MOKO_GSMD_CONNECTION_NETREG_DENIED:
+       /* This may be a pin issue*/
+@@ -441,11 +439,12 @@
+       g_print ("NetReg: Network registered\n");
+       g_print("\tLocationAreaCode = %x\n\tCellID = %x\n", lac, cell);
+       g_source_remove (priv->reg_timeout);
+-      priv->registered = TRUE;
+       break;
+     default:
+       g_warning ("Unhandled register event type = %d\n", type);
+    };
++
++  priv->registered = type;
+ }
+ static void
+@@ -619,28 +618,32 @@
+   g_return_val_if_fail (MOKO_DIALER (dialer), TRUE);
+   priv = MOKO_DIALER_GET_PRIVATE (dialer);
+-  if (!priv->reg_request)
++  /* We check whether we've been registered yet, otherwise keep poking 
++   * gsmd
++   */
++  switch (priv->registered)
+   {
+-    /* We have yet to request registration, so lets do it */
+-    /* FIXME: do the pin stuff */
+-    g_print ("Requesting registration\n");
+-    moko_gsmd_connection_network_register (priv->connection);
+-  }
+-  else 
+-  {
+-    /* We check whether we've been registered yet, otherwise keep poking 
+-     * gsmd
+-     */
+-    if (priv->registered)
+-    {
+-      g_print ("Network Registered\n");
+-      return FALSE;
+-    }
+-    else
+-    {
++    case MOKO_GSMD_CONNECTION_NETREG_NONE:
++      /* We have yet to request registration, so lets do it */
++      /* FIXME: do the pin stuff */
+       g_print ("Requesting registration\n");
+       moko_gsmd_connection_network_register (priv->connection);
+-    }
++      priv->registered = MOKO_GSMD_CONNECTION_NETREG_SEARCHING;
++      break;
++    case MOKO_GSMD_CONNECTION_NETREG_SEARCHING:
++      g_print ("Waiting for registration\n");
++      break;
++    case MOKO_GSMD_CONNECTION_NETREG_DENIED:
++      g_print ("Registration denied, retrying\n");
++      moko_gsmd_connection_network_register (priv->connection);
++      priv->registered = MOKO_GSMD_CONNECTION_NETREG_SEARCHING;
++      break;
++    case MOKO_GSMD_CONNECTION_NETREG_HOME:
++    case MOKO_GSMD_CONNECTION_NETREG_ROAMING:
++      g_print ("Network Registered\n");
++      return FALSE;
++    default:
++      g_warning ("Unhandled register event type = %d\n", priv->registered);
+   }
+   
+   return TRUE;
+@@ -754,9 +757,8 @@
+   /* Handle network registration a few seconds after powering up the 
+    * antenna*/ 
+-  priv->reg_request = TRUE;
+-  priv->registered = FALSE;
+-  priv->reg_timeout = g_timeout_add (GSM_REGISTER_TIMEOUT, 
++  priv->registered = MOKO_GSMD_CONNECTION_NETREG_NONE;
++  priv->reg_timeout = g_timeout_add (GSM_REGISTER_TIMEOUT * 2, 
+                                      (GSourceFunc)register_network_cb, 
+                                      dialer);
+   
index 9da832a..46f7137 100644 (file)
@@ -2,10 +2,12 @@ DESCRIPTION = "The OpenMoko Dialer"
 SECTION = "openmoko/pim"
 DEPENDS = "libmokogsmd2 libmokoui2 libmokojournal2 pulseaudio"
 PV = "0.1.0+svn${SVNREV}"
-PR = "r3"
+PR = "r4"
 
 inherit openmoko2
 
+SRC_URI += "file://openmoko-dialer.patch;patch=1"
+
 EXTRA_OECONF = "--with-dbusbindir=${STAGING_BINDIR_NATIVE}"
 
 FILES_${PN} += "${datadir}/openmoko-dialer/ ${datadir}/dbus-1/services/"