All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Fix XML-RPC server and Goggle UI
@ 2011-01-11 14:33 Joshua Lock
  2011-01-11 14:33 ` [PATCH 1/4] bitbake/uievent: fix queueing of events for xmlrpc before UI has loaded Joshua Lock
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Joshua Lock @ 2011-01-11 14:33 UTC (permalink / raw)
  To: poky

This series contains two important fixes and two trivial UI enhancements.

With this series the XML-RPC server now works correctly and the goggle UI has a
subtle, long-standing, bug fixed.

Pull URL: git://git.pokylinux.org/poky-contrib.git
  Branch: josh/umm
  Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=josh/umm

Thanks,
    Joshua Lock <josh@linux.intel.com>
---


Joshua Lock (4):
  bitbake/uievent: fix queueing of events for xmlrpc before UI has
    loaded
  bitbake/goggle: closing the progress dialog kills the UI
  bitbake/depexp: closing progress dialog kills gui
  bitbake/goggle: don't drop events

 bitbake/lib/bb/ui/depexp.py  |    1 +
 bitbake/lib/bb/ui/goggle.py  |    3 ++-
 bitbake/lib/bb/ui/uievent.py |    7 +++++--
 3 files changed, 8 insertions(+), 3 deletions(-)

-- 
1.7.3.4



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/4] bitbake/uievent: fix queueing of events for xmlrpc before UI has loaded
  2011-01-11 14:33 [PATCH 0/4] Fix XML-RPC server and Goggle UI Joshua Lock
@ 2011-01-11 14:33 ` Joshua Lock
  2011-01-11 14:33 ` [PATCH 2/4] bitbake/goggle: closing the progress dialog kills the UI Joshua Lock
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2011-01-11 14:33 UTC (permalink / raw)
  To: poky

The recent change to Queue up events before the UI is spawned (in
26eda933379801ef1c8b4b09e67d14f498cd3813) broke the xmlrpc server because the
uievent implementation of BBUIEventQueue expects pickled strings for its
queue_event() method.

This is because the RPC exposed event.send() method must accept pickled
strings, but for xmlrpc event.send() is just mapped to queue_event().

Work around this by adding a send_event method which unpickles strings and
hands them off to queue_event() which can then be used for the remapping.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 bitbake/lib/bb/ui/uievent.py |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/bitbake/lib/bb/ui/uievent.py b/bitbake/lib/bb/ui/uievent.py
index b404805..2fef4e4 100644
--- a/bitbake/lib/bb/ui/uievent.py
+++ b/bitbake/lib/bb/ui/uievent.py
@@ -63,17 +63,20 @@ class BBUIEventQueue:
 
     def queue_event(self, event):
         self.eventQueueLock.acquire()
-        self.eventQueue.append(pickle.loads(event))
+        self.eventQueue.append(event)
         self.eventQueueNotify.set()
         self.eventQueueLock.release()
 
+    def send_event(self, event):
+        self.queue_event(pickle.loads(event))
+
     def startCallbackHandler(self):
 
         server = UIXMLRPCServer()
         self.host, self.port = server.socket.getsockname()
 
         server.register_function( self.system_quit, "event.quit" )
-        server.register_function( self.queue_event, "event.send" )
+        server.register_function( self.send_event, "event.send" )
         server.socket.settimeout(1)
 
         self.EventHandle = self.BBServer.registerEventHandler(self.host, self.port)
-- 
1.7.3.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/4] bitbake/goggle: closing the progress dialog kills the UI
  2011-01-11 14:33 [PATCH 0/4] Fix XML-RPC server and Goggle UI Joshua Lock
  2011-01-11 14:33 ` [PATCH 1/4] bitbake/uievent: fix queueing of events for xmlrpc before UI has loaded Joshua Lock
@ 2011-01-11 14:33 ` Joshua Lock
  2011-01-11 14:33 ` [PATCH 3/4] bitbake/depexp: closing progress dialog kills gui Joshua Lock
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2011-01-11 14:33 UTC (permalink / raw)
  To: poky

It's unlikely that someone wants to close the progress dialog
yet leave the UI (and BitBake process) running, so hook up
the progress dialogs delete-event to exit gtk.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 bitbake/lib/bb/ui/goggle.py |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/bitbake/lib/bb/ui/goggle.py b/bitbake/lib/bb/ui/goggle.py
index 3c6a014..1905c0c 100644
--- a/bitbake/lib/bb/ui/goggle.py
+++ b/bitbake/lib/bb/ui/goggle.py
@@ -70,6 +70,7 @@ def main (server, eventHandler):
     window = MainWindow ()
     window.show_all ()
     pbar = ProgressBar(window)
+    pbar.connect("delete-event", gtk.main_quit)
 
     # Create the object for the current build
     running_build = RunningBuild ()
-- 
1.7.3.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/4] bitbake/depexp: closing progress dialog kills gui
  2011-01-11 14:33 [PATCH 0/4] Fix XML-RPC server and Goggle UI Joshua Lock
  2011-01-11 14:33 ` [PATCH 1/4] bitbake/uievent: fix queueing of events for xmlrpc before UI has loaded Joshua Lock
  2011-01-11 14:33 ` [PATCH 2/4] bitbake/goggle: closing the progress dialog kills the UI Joshua Lock
@ 2011-01-11 14:33 ` Joshua Lock
  2011-01-11 14:34 ` [PATCH 4/4] bitbake/goggle: don't drop events Joshua Lock
  2011-01-12 11:44 ` [PATCH 0/4] Fix XML-RPC server and Goggle UI Richard Purdie
  4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2011-01-11 14:33 UTC (permalink / raw)
  To: poky

It seems safe to assume a user hitting the close button
on the dialog wants to kill the whole UI.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 bitbake/lib/bb/ui/depexp.py |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/bitbake/lib/bb/ui/depexp.py b/bitbake/lib/bb/ui/depexp.py
index 13bf9ac..3dbd5e0 100644
--- a/bitbake/lib/bb/ui/depexp.py
+++ b/bitbake/lib/bb/ui/depexp.py
@@ -218,6 +218,7 @@ def main(server, eventHandler):
     gtk.gdk.threads_enter()
     dep = DepExplorer()
     pbar = ProgressBar(dep)
+    pbar.connect("delete-event", gtk.main_quit)
     gtk.gdk.threads_leave()
 
     progress_total = 0
-- 
1.7.3.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4/4] bitbake/goggle: don't drop events
  2011-01-11 14:33 [PATCH 0/4] Fix XML-RPC server and Goggle UI Joshua Lock
                   ` (2 preceding siblings ...)
  2011-01-11 14:33 ` [PATCH 3/4] bitbake/depexp: closing progress dialog kills gui Joshua Lock
@ 2011-01-11 14:34 ` Joshua Lock
  2011-01-12 11:44 ` [PATCH 0/4] Fix XML-RPC server and Goggle UI Richard Purdie
  4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2011-01-11 14:34 UTC (permalink / raw)
  To: poky

We had a logic inversion that meant we where dropping quite a
significant number of events on the floor.... Fixed!

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 bitbake/lib/bb/ui/goggle.py |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/bitbake/lib/bb/ui/goggle.py b/bitbake/lib/bb/ui/goggle.py
index 1905c0c..ec5a38d 100644
--- a/bitbake/lib/bb/ui/goggle.py
+++ b/bitbake/lib/bb/ui/goggle.py
@@ -32,8 +32,8 @@ def event_handle_idle_func (eventHandler, build, pbar):
     # Consume as many messages as we can in the time available to us
     event = eventHandler.getEvent()
     while event:
-        event = eventHandler.getEvent()
         build.handle_event (event, pbar)
+        event = eventHandler.getEvent()
 
     return True
 
-- 
1.7.3.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 0/4] Fix XML-RPC server and Goggle UI
  2011-01-11 14:33 [PATCH 0/4] Fix XML-RPC server and Goggle UI Joshua Lock
                   ` (3 preceding siblings ...)
  2011-01-11 14:34 ` [PATCH 4/4] bitbake/goggle: don't drop events Joshua Lock
@ 2011-01-12 11:44 ` Richard Purdie
  4 siblings, 0 replies; 6+ messages in thread
From: Richard Purdie @ 2011-01-12 11:44 UTC (permalink / raw)
  To: Joshua Lock; +Cc: poky

On Tue, 2011-01-11 at 14:33 +0000, Joshua Lock wrote:
> This series contains two important fixes and two trivial UI enhancements.
> 
> With this series the XML-RPC server now works correctly and the goggle UI has a
> subtle, long-standing, bug fixed.
> 
> Pull URL: git://git.pokylinux.org/poky-contrib.git
>   Branch: josh/umm
>   Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=josh/umm
> 
> Thanks,
>     Joshua Lock <josh@linux.intel.com>

Merged into master, thanks!

Richard



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-01-12 11:44 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-11 14:33 [PATCH 0/4] Fix XML-RPC server and Goggle UI Joshua Lock
2011-01-11 14:33 ` [PATCH 1/4] bitbake/uievent: fix queueing of events for xmlrpc before UI has loaded Joshua Lock
2011-01-11 14:33 ` [PATCH 2/4] bitbake/goggle: closing the progress dialog kills the UI Joshua Lock
2011-01-11 14:33 ` [PATCH 3/4] bitbake/depexp: closing progress dialog kills gui Joshua Lock
2011-01-11 14:34 ` [PATCH 4/4] bitbake/goggle: don't drop events Joshua Lock
2011-01-12 11:44 ` [PATCH 0/4] Fix XML-RPC server and Goggle UI Richard Purdie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.