! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
add xfce_hvbox to libgui
Status:
RESOLVED: FIXED
Product:
Libxfcegui4
Component:
General

Comments

Description Jani Monoses 2006-02-19 10:31:46 CET
A gtkbox implementation based on obox in gnome-panel which can behave as both a
hbox and a vbox. This is needed for the systray plugin so it does not need to
destroy and then create a new systray box when the panel orientation changes.
The current behaviour makes gaim pop up on such events for instance and other apps
may take some time before noticing and repopulating the tray area.

Reproducible: Always
Steps to Reproduce:
1. 
2. 
3.
Comment 1 Jani Monoses 2006-02-19 10:33:20 CET
Created attachment 449 
build patch
Comment 2 Jani Monoses 2006-02-19 10:34:03 CET
Created attachment 450 
c file
Comment 3 Jani Monoses 2006-02-19 10:34:26 CET
Created attachment 451 
.h file
Comment 4 Jani Monoses 2006-02-19 10:35:52 CET
Created attachment 452 
patch against systray plugin to use the hvbox

with this the systray is no longer stop/restarted and changing panel
orientation is smoother
Comment 5 Jasper Huijsmans editbugs 2006-02-19 15:24:49 CET
I'll take this bug. Sounds good to me. Alternatively we could possibly use
xfce-itembar from libxfce4panel, which does something similar. 
Comment 6 Jani Monoses 2006-02-19 16:14:15 CET
I didn't know about itembar, I only looked through libxfcegu4 for somethig similar.
Either way is fine, but putting it in gui would help other apps to.
thanks
Comment 7 Brian J. Tarricone (not reading bugmail) 2006-02-19 17:32:44 CET
I don't think adding a new widget is necessary.  We should fix the actual
problem, not introduce a new, complex layout widget.

We should just g_object_ref() and then gtk_container_remove() each systray icon,
destroy the hbox (or vbox), create a new vbox (or hbox), and then
gtk_box_pack_start() and g_object_unref() each of the systray icons.  Simple
enough, unless I'm missing something here.
Comment 8 Jasper Huijsmans editbugs 2006-02-19 20:50:08 CET
(In reply to comment #7)
> I don't think adding a new widget is necessary.  We should fix the actual
> problem, not introduce a new, complex layout widget.
> 
> We should just g_object_ref() and then gtk_container_remove() each systray icon,
> destroy the hbox (or vbox), create a new vbox (or hbox), and then
> gtk_box_pack_start() and g_object_unref() each of the systray icons.  Simple
> enough, unless I'm missing something here.

Well, you would think that. I did. And again now that I've read your post I
changed it to do that. Strangely enough, when I simply reparent the widgets to a
new box, I get ghosts of the existing icons. I have no idea why :(

I'll look into it a bit further.
Comment 9 Jasper Huijsmans editbugs 2006-02-26 21:13:39 CET
I have added a slightly modified version to libxfce4panel and changed a few
plugins to use it. It's a bit of a hack, but I can appreciate that ;-)

The widget could definitely be useful for panel plugins with multiple items and
is better suited to the task than xfce-itembar.

Bug #1478

Reported by:
Jani Monoses
Reported on: 2006-02-19
Last modified on: 2009-07-15

People

Assignee:
Xfce Bug Triage
CC List:
1 user

Version

Version:
unspecified

Attachments

build patch (1.77 KB, patch)
2006-02-19 10:33 CET , Jani Monoses
no flags
c file (4.18 KB, text/plain)
2006-02-19 10:34 CET , Jani Monoses
no flags
.h file (2.14 KB, text/plain)
2006-02-19 10:34 CET , Jani Monoses
no flags
patch against systray plugin to use the hvbox (3.04 KB, patch)
2006-02-19 10:35 CET , Jani Monoses
no flags

Additional information