GNOME Bugzilla – Bug 70822
some checkbox don't work
Last modified: 2004-12-22 21:47:04 UTC
The checkbox in the setting menu don't work(load image, animate image, proxy, java, font and popup). The only one that work is work offline.
I've forgotted these informations: I use gconf 1.0.7, moz 0.9.7 and 0.9.8, gtk 1.2.10, gnome-libs 1.4.1.2, bonobo 1.0.17, gdkpixbf 0.14.0, gnomevfs 1.0.3, gnome-print 0.32, imlib 1.9.11, libglade 0.17, libxml1 1.8.16, nautilus 1.0.6, oaf 0.6.7, orbi 0.5.12 with galeon, there's certainly some missing, but it's the most important. In the config, some options are enabled but not in the menu so the option is not activated. It didn't change anything to restart galeon. This bug didn't exist in the cvs of 30 december 2001. The 5 january, the bug appear.
Unable to reproduce. Looking at the ChangeLog between 20011230 and 20020105, I don't see anything obvious. Anyone have any ideas? A problem with GConf notifiers, maybe?
Can you try to put this in window_menu_allow_javascript_activate_cb function, file menu_callbacks.c, line 927: g_print ("Javascript %s\n", menuitem->active ? "Enabled" : "Disabled"); Then when you activate/disactivate Settings->Allow JavaScript you should get right messages. Please let me know if you cant do it, I'll try to look more at the code, but really I cant find how this could break :((
Test 2: void generic_settings_bool_notifier(GConfClient *client, guint cnxn_id, GConfEntry *entry, GtkWidget *widget) { gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (widget), gconf_value_get_bool(gconf_entry_get_value(entry))); } in window_notifiers.c try to change in: void generic_settings_bool_notifier(GConfClient *client, guint cnxn_id, GConfEntry *entry, GtkWidget *widget) { g_print ("Setting bool\n"); } Check the output and see if it fixes the problem. Thank you ;)
*** Bug 71735 has been marked as a duplicate of this bug. ***
I've applied the 2 patch in the same time, if it's not good, say it and I'll do it in 2 times. I've got this output: *** Registering -venkman handler. *** Registering smime account manager extension. Setting bool Setting bool Setting bool Setting bool Javascript Enabled Setting bool The 4 "Setting bool" were printed at the launch of galeon, then I click on activate jscript and it print "Javascript Enabled" and "Setting bool" and the checkbox was selected.
It looks like the prob is initialization of menus at startup. I did another small patch that could help debugging this, would you mind giving a try and pasting output here ? Thanks
Created attachment 6755 [details] [review] test patch
*** Registering -venkman handler. *** Registering smime account manager extension. Install notifier: /apps/galeon/Advanced/Filtering/java_enabled Install notifier: /apps/galeon/Advanced/Filtering/javascript_enabled Install notifier: /apps/galeon/Advanced/Network/proxy_mode Install notifier: /apps/galeon/Rendering/FontsColors/use_own_colors Install notifier: /apps/galeon/Rendering/FontsColors/use_own_fonts Install notifier: /apps/galeon/Advanced/Filtering/allow_popups Install notifier: /apps/galeon/Advanced/Filtering/animate_type Install notifier: /apps/galeon/Advanced/Filtering/image_loading_type Setting value: disabled Setting value: disabled Setting value: disabled Setting value: disabled Setting value: disabled Setting value: disabled like before: 4 "Setting value: disabled" at startup and 2 after the activation.
grrrr this bug is getting me crazy, it looks like a gconf bug but I dont get why it shows only for settings menu. You could try to change the only thing I know is different. So, without removing debug patch try to remove window.c line 300 window_init_notifiers (window); So the settings notifiers will be the first to be attacched If this fail too, I'm really clueless. Please try to see if you have gconf related errors in /var/log/messages possibly using a gconf debug build.
It's really an odd bug because the Javascript Enabled means we are setting that pref to TRUE and the two settings value: disabled means the notifier report a FALSE value. Also I dont get why disabled is showed two times after activation.
I understood why disable is printed two times. The notifier report a FALSE value so the checkbox is updated according to it. This cause the pref to be set again and the notifier recalled. Yeah, this is a bad behavior but doesnt have any visible effect on the user. The real problem is that the notifier is reporting a wrong value. Grrrrr
another interesting test, simple this time ;) Keep the patch applied, change js pref in prefs dialog and take a look to the output. Ok, sorry, I see I'm bugging too much ;)
When I comment window_init_notifiers (window); in window.c, nothing change. With a gconf compiled with --enable-debug=yes, in the /var/log/messages, I only have "Feb 18 20:27:11 ced gconfd (ced-18833): starting (version 1.0.8), pid 18833 user 'ced'" Always with the same build, when I go in the prefs and change the js options, I have this: *** Registering -venkman handler. *** Registering smime account manager extension. Install notifier: /apps/galeon/Advanced/Filtering/java_enabled Install notifier: /apps/galeon/Advanced/Filtering/javascript_enabled Install notifier: /apps/galeon/Advanced/Network/proxy_mode Install notifier: /apps/galeon/Rendering/FontsColors/use_own_colors Install notifier: /apps/galeon/Rendering/FontsColors/use_own_fonts Install notifier: /apps/galeon/Advanced/Filtering/allow_popups Install notifier: /apps/galeon/Advanced/Filtering/animate_type Install notifier: /apps/galeon/Advanced/Filtering/image_loading_type Setting value: disabled Setting value: disabled Setting value: disabled Setting value: disabled Setting value: disabled The last one is when I click on the checkbox, but when I close the prefs dialog, it didn't change the menu. Can it help you if I send my ~/.gconf/apps/galeon?
Yeah please send that. Also please try to: galeon-config-tool --clean-schemas galeon-config-tool --install-schemas and see if after that galeon works on a clean user ( you can clean an existing user with galeon-config-tool --clean) Thanks Marco
It didn't work better. I've sent you my gconf pref by mail.
Your prefs looks ok. I plan to rewrite the initialization code for these prefs in a different way. I dont know if it will solve your problem though.
I attach a patch with a start of the rewrite. It's done only for javascript option. If it works as expected i'll complete the rewrite in the weekend. I really expect initialization to work now. So when starting galeon the checkbox should be checked. Please then please try to disable it and see if it works. Then close galeon, restart and see if it's still unchecked ... then enable it again and see if it works.
Created attachment 6777 [details] [review] Try it
Your patch don't work. I've updated my source directory of galeon to the current cvs (branch 1.2) and then I've saw it was your patch the problem: it's full of "? .deps/GaleonAutomation-common.P"
Created attachment 6782 [details] [review] this one should work
It didn't work better. I've asked to binny(he's also got this bug) to test your patch, but it didn't either. I've sended a mail to spider to saw if he's got a slack like me and binny, maybe a distro problem?
Lat test. static void +window_menubar_init_settings (GaleonWindow *window) +{ + gtk_check_menu_item_set_active + (GTK_CHECK_MENU_ITEM (window->enable_javascript), + eel_gconf_get_boolean (CONF_FILTERING_JAVASCRIPT_ENABLED)); } Please try to put in this function a: g_print ("%s", eel_gconf_get_boolean (CONF_FILTERING_JAVASCRIPT_ENABLED) ? "True" : "False"); If it prints False out then it's definately a gconf problem.
The first time I launch it, it print False, then i go in the pref panel, I activate javascript, close galeon and reopen it and it print True, i close galeon, relaunch it and it print False. Spider answer me about his config, it's a rh 7.2 with mozilla 0.9.8 , gnome 1.4.1rc1 ,galeon-1.1.3 , gcc-2.96-98 , glibc-2.2.4-19.3 , gnome-libs-1.4.1.4-1 , gnome-core-1.4.0.6-2 , mozilla-0.9.8-0 , gtk+-1.2.10-2 libxml-1.8.16-1 GConf-1.0.7-1 ORBit-0.5.12-2 oaf-0.6.7-2 gnome-vfs-1.0.4-1 gdk-pixbuf-0.16.0-1 libglade-0.17-1 glib-1.2.10-2 bonobo-1.0.15-1
woops, sorry.
It really looks like a gconf problem. Closing and reopening galeon is not supposed to change any pref, so the value should not change. When it prints out TRUE the javascript checkbox is checked ? And does it work correctly ?
No, it isn't selected and it didn't work.
Looks like a gconf problem and I cannot reproduce. Removing 1.2 target (I hope dan is ok), will look at it later
ok, I can't debug this one with the latest patches since I do not have a working gtk+2 system installed. If somone could be bothered to help me debug it in a galeon 1.1.3 / gtk 1.2 system I'll be glad to help, but as of the moment I cannot start to install gtk2/glib2/gnome2 on this system. (packaging issues) Should I add that the bug is -NOT- present in the 1.0.x series??
You dont need gtk2, checkout 1-2 branch. cvs -z3 co -r galeon-1-2 galeon
Btw, I've really no clue about this bug and being not able to reproduce doesnt make possible for me to fix it. The only thing that could help me would be to check out old galeon cvs versions (around that 30 December), compile them with old mozilla and see if at some dates the bug is fixed. If you are able to find out which commit/changelog borked it then we can probably understand what happened. As I already said I strongly believe this is a very odd gconf issue, but finding which commit could make possible for us to fix it in gconf or at least to work it around. I know this suck, but really I cant do more being not able to reproduce. Sorry :(
Ended to be a gconf problem with a particular package