Notices


Reply
Thread Tools
Posts: 114 | Thanked: 201 times | Joined on Apr 2009
#61
For Fremantle users, binary packages of Browser Switchboard 3.1-2fremantle3 are now available on Garage and in Fremantle extras-devel.

Again, the "only" change in this release is a change in the way we detect the last MicroB window being closed; this should now work regardless of whether the Conversations application is (pre)started or not. Many thanks to jukey for providing the detailed feedback that produced this change.

Hopefully the following should now work 100% of the time:
  1. Configure Browser Switchboard with any default browser other than MicroB.
  2. Restart the device.
  3. Open a link from an application or a desktop widget; the link should open in the default browser you configured.
  4. Open MicroB by using the Web menu entry (you don't need to change the default browser setting or restart the device).
  5. Open a link from an application or a desktop widget; the link should open in MicroB.
  6. Close all the MicroB browser windows.
  7. Open a link from an application or a desktop widget; the link should open in the default browser you configured.
  8. Open MicroB by using the Web menu entry (it should come up).

Please let me know whether this works consistently now or not, and whether or not you notice any other inconsistent or strange behaviors. If anything doesn't work as expected along the way, please let me know; if you can, open an xterm, run "killall browser-switchboard; browser-switchboard", go through the sequence of steps, and then provide the output that browser-switchboard produces in the terminal when reporting your problem.

Also, please report any problems you have with MicroB losing bookmarks, history, or settings when it's closed; a change to more heavy-handed measures for killing MicroB in the last release may have introduced such bugs.

Assuming everything works, this should be the last release before 3.2 (for both Diablo and Fremantle).
 

The Following User Says Thank You to steven676 For This Useful Post:
Posts: 114 | Thanked: 201 times | Joined on Apr 2009
#62
I'd like some feedback from users and application developers regarding a proposed behavior change for the upcoming Browser Switchboard 3.2 release.

Currently, no matter what the default browser is set to, the "Web" menu entry opens MicroB (on Diablo, this doesn't mean the sidebar panel with the bookmarks, it means the item that's in the Internet menu by the default), and running "browser" from the shell does the same. This is done to make sure that there's always a way of opening MicroB regardless of the default browser setting.

However, this behavior would seem to be less than intuitive (why does the entry marked "Web" not open the default browser? on Diablo, why do the Web sidebar panel and Web menu entry do completely different things?). Therefore, I propose to do the following for 3.2:
  • Make the Web menu entry launch the user's selected default browser.
  • Make running "browser" from the shell launch the user's selected default browser.
  • Install a new menu item labeled "MicroB" that can be used to launch MicroB no matter what the default browser is set to.
  • Install a new "microb" script that can be used to launch MicroB no matter what the default browser is set to.

This has one primary disadvantage: none of the standard methods of launching a browser on Maemo can be guaranteed to bring up MicroB. If anyone knows of an application that needs to be able to launch MicroB specifically (not just a browser), please let me know so that I can talk this over with the developers.

Also, if you believe the current behavior of the Web menu entry or the /usr/bin/browser script is better, or if you have a better suggestion for how they should behave, please let me know.
 

The Following User Says Thank You to steven676 For This Useful Post:
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#63
Originally Posted by steven676 View Post
For Fremantle users, binary packages of Browser Switchboard 3.1-2fremantle3 are now available on Garage and in Fremantle extras-devel.

Again, the "only" change in this release is a change in the way we detect the last MicroB window being closed; this should now work regardless of whether the Conversations application is (pre)started or not. Many thanks to jukey for providing the detailed feedback that produced this change.

Hopefully the following should now work 100% of the time:
  1. Configure Browser Switchboard with any default browser other than MicroB.
  2. Restart the device.
  3. Open a link from an application or a desktop widget; the link should open in the default browser you configured.
  4. Open MicroB by using the Web menu entry (you don't need to change the default browser setting or restart the device).
  5. Open a link from an application or a desktop widget; the link should open in MicroB.
  6. Close all the MicroB browser windows.
  7. Open a link from an application or a desktop widget; the link should open in the default browser you configured.
  8. Open MicroB by using the Web menu entry (it should come up).

Please let me know whether this works consistently now or not, and whether or not you notice any other inconsistent or strange behaviors. If anything doesn't work as expected along the way, please let me know; if you can, open an xterm, run "killall browser-switchboard; browser-switchboard", go through the sequence of steps, and then provide the output that browser-switchboard produces in the terminal when reporting your problem.

Also, please report any problems you have with MicroB losing bookmarks, history, or settings when it's closed; a change to more heavy-handed measures for killing MicroB in the last release may have introduced such bugs.

Assuming everything works, this should be the last release before 3.2 (for both Diablo and Fremantle).
New Note 5


Configure Browser Switchboard with any default browser other than MicroB.
Restart the device.
Open a link from an application or a desktop widget; the link should open in the default browser you configured.
Open MicroB by using the Web menu entry (you don't need to change the default browser setting or restart the device).
Open a link from an application or a desktop widget; the link should open in MicroB.
Close all the MicroB browser windows.
Open a link from an application or a desktop widget; the link should open in the default browser you configured.
Open MicroB by using the Web menu entry (it should come up).

1. Configured for Tear; optimization setting left at default of "Lower memory usage".
2. Rebooted.
3. Link from RSS reader opened in Tear.
4. Closed Tear and opened MicroB from the Web entry in the menu. Bookmarks showed up along with empty window (not a problem for me at least - I really like it doing that [the opening of the new, blank window] but it's not standard behaviour when opening MicroB using the Web menu entry - only the Bookmarks window should show up) . (Done w/out changing default browser setting or restarting.)
5. Link from RSS reader opened in a new window in MicroB (this is with the blank window and bookmarks window open and the default browser still set to Tear).
6. All MicroB windows closed.
7. Link from RSS reader opened in Tear.
8. With Tear still open, starting MicroB from the menu using the Web entry worked fine, opening the Bookmarks window and the blank window.

The only oddity that exists, I would have to say, is that closing the last browser window while still having the Bookmarks window open automatically closes the Bookmarks window. Not a problem for me, personally, as I rely upon the history feature.

---

After doing the above steps once, opening the Browser from the menu again and noticing that oddity above, I closed the browser. When I went to open the Browser using the menu entry, Tear popped up so I closed it. Using the menu entry subsequently opened up MicroB but it wasn't through Browser Switchboard as I did not get the blank window.

Here's the ps output while it's in this state:

~ $ ps | grep browser
1236 user 39964 S /usr/sbin/browserd -d
1630 user 65400 S /usr/sbin/browserd -s 1630 -n RTComMessagingServer
1785 user 3936 S browser
1786 user 33068 S browser
1827 user 72076 S /usr/sbin/browserd -s 1827 -n browserui
1855 user 2092 S grep browser
~ $
 

The Following User Says Thank You to qwerty12 For This Useful Post:
Posts: 114 | Thanked: 201 times | Joined on Apr 2009
#64
Originally Posted by qwerty12 View Post
4. Closed Tear and opened MicroB from the Web entry in the menu. Bookmarks showed up along with empty window (not a problem for me at least - I really like it doing that [the opening of the new, blank window] but it's not standard behaviour when opening MicroB using the Web menu entry - only the Bookmarks window should show up)
Originally Posted by qwerty12 View Post
The only oddity that exists, I would have to say, is that closing the last browser window while still having the Bookmarks window open automatically closes the Bookmarks window. Not a problem for me, personally, as I rely upon the history feature.
Both of these are because we have no reliable way of detecting when the bookmarks window closes. These will be release noted (whenever I get around to revising the release notes).

Originally Posted by qwerty12 View Post
After doing the above steps once, opening the Browser from the menu again and noticing that oddity above, I closed the browser. When I went to open the Browser using the menu entry, Tear popped up so I closed it. Using the menu entry subsequently opened up MicroB but it wasn't through Browser Switchboard as I did not get the blank window.
Okay, THAT is strange -- I have no idea how that could possibly happen. To make sure I understand you correctly: you used the Web menu entry, and Tear (the Browser Switchboard default browser) came up; then you closed Tear, opened the Web menu entry again, and the MicroB bookmarks window (without the about:blank window that Browser Switchboard opens) came up?

Originally Posted by qwerty12 View Post
Here's the ps output while it's in this state:

~ $ ps | grep browser
1236 user 39964 S /usr/sbin/browserd -d
1630 user 65400 S /usr/sbin/browserd -s 1630 -n RTComMessagingServer
1785 user 3936 S browser
1786 user 33068 S browser
1827 user 72076 S /usr/sbin/browserd -s 1827 -n browserui
1855 user 2092 S grep browser
~ $
That looks like Browser Switchboard launched MicroB (otherwise the browser processes would show as "/usr/bin/browser"). I realize this might be difficult to reproduce, but can you try to reproduce it with browser-switchboard running in a terminal, and show the debug output?
 

The Following User Says Thank You to steven676 For This Useful Post:
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#65
Originally Posted by steven676 View Post
Both of these are because we have no reliable way of detecting when the bookmarks window closes. These will be release noted (whenever I get around to revising the release notes).
*nod*

Originally Posted by steven676 View Post
Okay, THAT is strange -- I have no idea how that could possibly happen. To make sure I understand you correctly: you used the Web menu entry, and Tear (the Browser Switchboard default browser) came up; then you closed Tear, opened the Web menu entry again, and the MicroB bookmarks window (without the about:blank window that Browser Switchboard opens) came up?
Yep.

Sorry about the bad wording, but it's late here, and I'm rather dodgy at typing on the N900. Tear doesn't help either, with its habit of being really unstable in textboxes.

Originally Posted by steven676 View Post
That looks like Browser Switchboard launched MicroB (otherwise the browser processes would show as "/usr/bin/browser"). I realize this might be difficult to reproduce, but can you try to reproduce it with browser-switchboard running in a terminal, and show the debug output?
Sorry, but my attempts to reproduce it were to no avail. (Could you maybe add an option to have it log to syslog, instead? [AFAIK, GLog's default handler under Fremantle outputs to syslog.])

P.S. As a pedant and a GLib-whore lover, I have to ask to satisfy my feeling of nosiness: Why use the DBus-GLib bindings to provide the dbus-switchboard service but use the libdbus functions to listen to signals?

Last edited by qwerty12; 2010-02-15 at 00:16.
 

The Following User Says Thank You to qwerty12 For This Useful Post:
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#66
OK, I was able to reproduce it. How? I have no idea.

~ $ browser-switchboard
continuous_mode: 0
default_browser: 'tear'
other_browser_cmd: 'NULL'
Starting main loop
launch_microb with uri 'new_window'
Waiting for MicroB to start
Checking to see if MicroB is ready
Message has only 0 arguments, but more were expected

^C
~ $ ps | grep bro
1166 user 39964 S /usr/sbin/browserd -d
2032 user 65284 S /usr/sbin/browserd -s 2032 -n RTComMessagingServer
2360 user 3936 S browser
2361 user 29464 S browser
2475 user 55408 S /usr/sbin/browserd -s 2475 -n browserui
2496 user 2092 S grep bro
~ $
When I opened the browser using the menu entry and then closed the Bookmark window along with the blank window (trying to use it to browse failed - it stayed blank), I didn't recieve any "killed" messages from the running browser-switchboard process.

Last edited by qwerty12; 2010-02-15 at 00:28. Reason: BBcode fail
 

The Following User Says Thank You to qwerty12 For This Useful Post:
Posts: 114 | Thanked: 201 times | Joined on Apr 2009
#67
Originally Posted by qwerty12 View Post
Sorry, but my attempts to reproduce it were to no avail. (Could you maybe add an option to have it log to syslog, instead? [AFAIK, GLog's default handler under Fremantle outputs to syslog.])
Good idea -- I'll put that on the list for 3.2.

Originally Posted by qwerty12 View Post
P.S. As a pedant and a GLib-whore lover, I have to ask to satisfy my feeling of nosiness: Why use the DBus-GLib bindings to provide the dbus-switchboard service but use the libdbus functions to listen to signals?
Because I have no idea how to eavesdrop on D-Bus traffic using the GLib API (the present code does the same thing that dbus-monitor does).
 

The Following User Says Thank You to steven676 For This Useful Post:
Posts: 114 | Thanked: 201 times | Joined on Apr 2009
#68
Originally Posted by qwerty12 View Post
Code:
~ $ browser-switchboard
continuous_mode: 0
default_browser: 'tear'
other_browser_cmd: 'NULL'
Starting main loop
launch_microb with uri 'new_window'
Waiting for MicroB to start
Checking to see if MicroB is ready
Message has only 0 arguments, but more were expected

^C
~ $ ps | grep bro
1166 user 39964 S /usr/sbin/browserd -d
2032 user 65284 S /usr/sbin/browserd -s 2032 -n RTComMessagingServer
2360 user 3936 S browser
2361 user 29464 S browser
2475 user 55408 S /usr/sbin/browserd -s 2475 -n browserui
2496 user 2092 S grep bro
~ $
Okay, so MicroB gets launched, but we miss eavesdropping on the acquisition of the com.nokia.osso_browser name.

Looking at the code again, it looks like there could be a race here between MicroB connecting to the bus and the installation of our eavesdropping filter on the bus. (That would also explain why this is so difficult to reproduce!)

Originally Posted by qwerty12 View Post
When I opened the browser using the menu entry and then closed the Bookmark window along with the blank window (trying to use it to browse failed - it stayed blank), I didn't recieve any "killed" messages from the running browser-switchboard process.
Hm, so the blank window did come up, then? Browser Switchboard doesn't bring up the blank window until after it detects that MicroB is open, and the above suggests it didn't, so I'm not sure why the window appears here. The failure to actually use the browser suggests that something's wrong with the connection between it and the browserd too -- lots of strange stuff going on here.
 

The Following User Says Thank You to steven676 For This Useful Post:
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#69
Originally Posted by steven676 View Post
Hm, so the blank window did come up, then? Browser Switchboard doesn't bring up the blank window until after it detects that MicroB is open, and the above suggests it didn't, so I'm not sure why the window appears here. The failure to actually use the browser suggests that something's wrong with the connection between it and the browserd too -- lots of strange stuff going on here.
I think the blank window was a result of me bringing it up manually, actually. Sorry, but I can't remember. :/

Originally Posted by steven676 View Post
Because I have no idea how to eavesdrop on D-Bus traffic using the GLib API (the present code does the same thing that dbus-monitor does).
I picked it up from http://developer.pidgin.im/wiki/Dbus...BUSglibexample and http://wiki.bluez.org/wiki/HOWTO/DiscoveringDevices. But, anyway, that's just me being odd and wanting GLib-domination; the current code obviously works fine. (Thanks for it, BTW - I loved looking through it and seeing the neat tricks. )

Last edited by qwerty12; 2010-02-15 at 01:20.
 

The Following User Says Thank You to qwerty12 For This Useful Post:
Posts: 114 | Thanked: 201 times | Joined on Apr 2009
#70
Originally Posted by steven676 View Post
Looking at the code again, it looks like there could be a race here between MicroB connecting to the bus and the installation of our eavesdropping filter on the bus. (That would also explain why this is so difficult to reproduce!)
Is this problem reproducible with the attached patch applied? (I'll tag a release tomorrow with this fix anyway, but it'd be nice to know whether it works or not before.)
 

The Following User Says Thank You to steven676 For This Useful Post:
Reply

Tags
browser, default, microb, opera

Thread Tools

 
Forum Jump


All times are GMT. The time now is 18:53.