The Following 2 Users Say Thank You to joerg_rw For This Useful Post: | ||
|
2012-06-09
, 09:18
|
|
Posts: 2,222 |
Thanked: 12,651 times |
Joined on Mar 2010
@ SOL 3
|
#693
|
Since update my status area disappears (crashes, I assume) and comes back minute later, but missing some applets and menu items. This happens randomly and once or twice per day, so far.
The Following 9 Users Say Thank You to joerg_rw For This Useful Post: | ||
|
2012-06-09
, 19:14
|
Posts: 3,328 |
Thanked: 4,476 times |
Joined on May 2011
@ Poland
|
#694
|
brainparty
/opt/brainparty/brainparty
allegro
meecolay /opt/allegro/bin/allegro
meecolay
|
2012-06-09
, 19:20
|
|
Posts: 1,359 |
Thanked: 1,292 times |
Joined on Oct 2011
@ Tartus.Syria
|
#695
|
|
2012-06-09
, 19:43
|
Posts: 440 |
Thanked: 203 times |
Joined on May 2010
|
#696
|
|
2012-06-09
, 21:25
|
Posts: 804 |
Thanked: 1,598 times |
Joined on Feb 2010
@ Gdynia, Poland
|
#697
|
Hi
How is it determined whether a app is treated as blacklisted or not? Which part of executable is taken?
Why does blacklisting
Launched byCode:brainparty
works but blacklistingCode:/opt/brainparty/brainparty
launched byCode:allegro
doesn't work, and blacklistingCode:meecolay /opt/allegro/bin/allegro
doesn't work too?Code:meecolay
Sorry if posting in the wrong thread
I'm asking about it as it's connected with the development of MeeCoLay
gboolean hd_comp_mgr_is_blacklisted(MBWindowManager *wm, MBWindowManagerClient *c) ... XClassHint class_hint; ... ret = XGetClassHint (wm->xdpy, c->window->xwindow, &class_hint); ... if (ret && class_hint.res_class) wname = g_strdup(class_hint.res_name); ... if (g_strrstr(blacklist, wname) && !(c->portrait_supported || c->portrait_requested)) blacklisted = TRUE; ... if(c->stacked_below && (wname == NULL)) if(hd_comp_mgr_is_blacklisted(wm, c->stacked_below)) blacklisted = TRUE;
gboolean blacklisted = hd_comp_mgr_is_blacklisted_parse_desktop_file(wname, class_hint.res_class, c->window->pid);
The Following 6 Users Say Thank You to misiak For This Useful Post: | ||
|
2012-06-10
, 15:41
|
Posts: 58 |
Thanked: 12 times |
Joined on Apr 2012
@ philippines
|
#698
|
|
2012-06-10
, 16:08
|
Posts: 3,328 |
Thanked: 4,476 times |
Joined on May 2011
@ Poland
|
#699
|
marmistrz, I don't have meecolay installed right now, but by looking at the package contents at http://maemo.org/packages/package_in...ay-core/0.9.1/ , /usr/bin/meecolay is just a script... so it is in fact a /bin/sh (which on my device is linked to busybox, so in fact busybox?) process... Have you tried blacklisting busybox? If not, please do it and check what happens
Another case is how the resulting program is run - it is a child process created from busybox /bin/sh via "exec the_real_app_command". Even if my considerations don't have any sense or or just plain wrong, I hope they give more details for other guys here working on cssu to answer your question better and quicker.
Edit 1 (maybe will edit later if I work out what does that code do): see http://gitorious.org/community-ssu/h.../hd-comp-mgr.c , lines 3804 - 3855 (EDIT 2: SORRY I GAVE YOU WRONG LINES EARLIER)
Edit 3: here we go according toThe window will be blacklisted when one of following conditions is made:Code:gboolean hd_comp_mgr_is_blacklisted(MBWindowManager *wm, MBWindowManagerClient *c) ... XClassHint class_hint; ... ret = XGetClassHint (wm->xdpy, c->window->xwindow, &class_hint); ... if (ret && class_hint.res_class) wname = g_strdup(class_hint.res_name); ... if (g_strrstr(blacklist, wname) && !(c->portrait_supported || c->portrait_requested)) blacklisted = TRUE; ... if(c->stacked_below && (wname == NULL)) if(hd_comp_mgr_is_blacklisted(wm, c->stacked_below)) blacklisted = TRUE;
1. XClassHint.res_name for the created window is on the blacklisted list
2. MBWindowManagerClient->portait_supported is false (I doubt you can do anything about this one...)
3. The window stacked below (parent window as I understand) does not support portrait and this window's XClassHint.res_name is null... This option also is a no-go for you, as you rather cannot set XClassHint.res_name for a window created by external aplication being run by your script... Besides, I think this is only for child dialogs of other apps, etc.
There is also linesomewhere between those lines - so maybe after creating a .desktop file with X-CSSU-Force-Landscape=true, the problem will be solved?Code:gboolean blacklisted = hd_comp_mgr_is_blacklisted_parse_desktop_file(wname, class_hint.res_class, c->window->pid);
I think you should try to do something with the first option - getting res_name of XClassHint structure for windows created by different apps and blacklist them all... UNLESS you play with qt-components and e.g. create your own qt which sets this value as e.g. 'marmistrz rocks' for all windows and blacklist this value
sorry for TOTAL offtopic, this is better for Development section of TMO...
Edit 4: fixed few little typos and grammar errors
|
2012-06-10
, 16:11
|
Posts: 304 |
Thanked: 235 times |
Joined on May 2010
@ Manila
|
#700
|
/j
Maemo Community Council member [2012-10, 2013-05, 2013-11, 2014-06 terms]
Hildon Foundation Council inaugural member.
MCe.V. foundation member
EX Hildon Foundation approved Maemo Administration Coordinator (stepped down due to bullying 2014-04-05)
aka "techstaff" - the guys who keep your infra running - Devotion to Duty http://xkcd.com/705/
IRC(freenode): DocScrutinizer*
First USB hostmode fanatic, father of H-E-N