On Wed, 20 Jun 2012 at 15:29:10 +0200, Rodolfo kix Garcia wrote:
> El 19.06.2012 18:07, Rodolfo kix Garcia escribió:
> >El 19.06.2012 11:24, Carlos R. Mafra escribió:
> >>On Mon, 18 Jun 2012 at 23:11:27 +0200, Rodolfo García Peñas wrote:
> >>>Subject: [PATCH 05/12] Create WAppIcon always
> >>>
> >>>When the application is created, the WAppIcon now is created
> >>>always,
> >>>but is only painted if the flag is not set.
> >>>
> >>>The icon initialization to NULL can be done now at
> >>>app_icon_create_from_docks
> >>>because is always called.
> >>>---
> >>> src/appicon.c | 3 +++
> >>> src/application.c | 23 ++++++++++-------------
> >>> 2 files changed, 13 insertions(+), 13 deletions(-)
> >>>
> >>>diff --git a/src/appicon.c b/src/appicon.c
> >>>index c19efa0..ed4403c 100644
> >>>--- a/src/appicon.c
> >>>+++ b/src/appicon.c
> >>>@@ -975,6 +975,9 @@ void app_icon_create_from_docks(WWindow
> >>>*wwin, WApplication *wapp, Window main_w
> >>> {
> >>> WScreen *scr = wwin->screen_ptr;
> >>>
> >>>+ /* Create the application icon */
> >>>+ wapp->app_icon = NULL;
> >>>+
> >>> if (scr->last_dock)
> >>> wapp->app_icon = findDockIconFor(scr->last_dock, main_window);
> >>>
> >>>diff --git a/src/application.c b/src/application.c
> >>>index be305b2..f29e90f 100644
> >>>--- a/src/application.c
> >>>+++ b/src/application.c
> >>>@@ -158,20 +158,17 @@ WApplication *wApplicationCreate(WWindow
> >>>* wwin)
> >>> /* application descriptor */
> >>> XSaveContext(dpy, main_window, wAppWinContext, (XPointer) wapp);
> >>>
> >>>- /* Create the application icon */
> >>>- wapp->app_icon = NULL;
> >>>- if (!WFLAGP(wapp->main_window_desc, no_appicon)) {
> >>>- /* Create the application icon using the icon from docks
> >>>- * If not found in docks, create a new icon
> >>>- * using the function wAppIconCreate() */
> >>>- app_icon_create_from_docks(wwin, wapp, main_window);
> >>>-
> >>>- /* Now, paint the icon */
> >>>- paint_app_icon(wapp);
> >>>+ /* Create the application icon using the icon from docks
> >>>+ * If not found in docks, create a new icon
> >>>+ * using the function wAppIconCreate() */
> >>>+ app_icon_create_from_docks(wwin, wapp, main_window);
> >>>
> >>>- /* Save the app_icon in a file */
> >>>- save_app_icon(wwin, wapp);
> >>>- }
> >>>+ /* Save the app_icon in a file */
> >>>+ save_app_icon(wwin, wapp);
> >>>+
> >>>+ /* Now, paint the icon */
> >>>+ if (!WFLAGP(wapp->main_window_desc, no_appicon))
> >>>+ paint_app_icon(wapp);
> >>>
> >>> return wapp;
> >>> }
> >>
> >>This commit causes the regression I reported earlier, about the
> >>appicons
> >>being created shifted to the right on the bottom of the screen
> >>(as if that
> >>space was occupied by other icons).
> >>
> >>The only odd thing here is that I have a xterm with no_appicon
> >>set, and
> >>that whenever I start wmaker the application xconsole is
> >>automatically
> >>started, but its appicon is shifted. That happens for all the other
> >>apps I start.
> >
> >Thanks Carlos,
> >
> >I will check this problem. Something in app_icon_create calls an
> >X11-Map function. I will check it these days.
> >
> >--
> >||// //\\// Rodolfo "kix" Garcia
> >||\\// //\\ http://www.kix.es/
>
> Carlos,
>
> I cannot reproduce the problem :-? Probably the bug is, of course,
> but I cannot see it.
>
> Here the things are fine. If I set the no_appicon flag, all runs
> correctly.
>
> Can you send me more info? Can you test your WMStatus file? Can you
> so something with xwininfo or other x11 tools?
So I'd say the problem lies in the automatic start of applications
which have no appicon.
I have three xterms which automatically start (through the Save Session)
and they all have no_appicon set. It seems that the space corresponding
to three appicons is in use, and if I start some other application
then its appicon is placed in a shifted position which is equivalent
to 3 appicons.
And I bisected the problem to this commit.
--
To unsubscribe, send mail to [email protected].