mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-20 12:58:08 +01:00
switchpanel default icon removed
The default icon (defIcon) is never used because the function wDefaultGetImage always returns a icon (it searches the default icon). So we can remove the defIcon variable, its creation and remove code.
This commit is contained in:
committed by
Carlos R. Mafra
parent
829830c010
commit
44c9ee694d
@@ -56,8 +56,6 @@ struct SwitchPanel {
|
||||
|
||||
WMLabel *label;
|
||||
|
||||
RImage *defIcon;
|
||||
|
||||
RImage *tileTmp;
|
||||
RImage *tile;
|
||||
|
||||
@@ -162,27 +160,6 @@ static RImage *scaleDownIfNeeded(RImage *image)
|
||||
return image;
|
||||
}
|
||||
|
||||
/* This function sets the default icon (defIcon) in the switchpanel */
|
||||
static void create_default_icon(WSwitchPanel *panel)
|
||||
{
|
||||
RImage *image = NULL;
|
||||
char *path = NULL;
|
||||
char *file = wDefaultGetIconFile(NULL, NULL, False);
|
||||
|
||||
if (file) {
|
||||
path = FindImage(wPreferences.icon_path, file);
|
||||
if (path) {
|
||||
image = RLoadImage(panel->scr->rcontext, path, 0);
|
||||
wfree(path);
|
||||
}
|
||||
}
|
||||
|
||||
if (image)
|
||||
panel->defIcon = scaleDownIfNeeded(image);
|
||||
|
||||
image = NULL;
|
||||
}
|
||||
|
||||
static void addIconForWindow(WSwitchPanel *panel, WMWidget *parent, WWindow *wwin, int x, int y)
|
||||
{
|
||||
WMFrame *icon = WMCreateFrame(parent);
|
||||
@@ -195,18 +172,10 @@ static void addIconForWindow(WSwitchPanel *panel, WMWidget *parent, WWindow *wwi
|
||||
if (!WFLAGP(wwin, always_user_icon) && wwin->net_icon_image)
|
||||
image = RRetainImage(wwin->net_icon_image);
|
||||
|
||||
/* wDefaultGetImage() includes the default icon image */
|
||||
if (!image)
|
||||
image = wDefaultGetImage(panel->scr, wwin->wm_instance, wwin->wm_class, ICON_TILE_SIZE);
|
||||
|
||||
// Make this use a caching thing. When there are many windows,
|
||||
// it's very likely that most of them are instances of the same thing,
|
||||
// so caching them should get performance acceptable in these cases.
|
||||
if (!image && !panel->defIcon)
|
||||
create_default_icon(panel);
|
||||
|
||||
if (!image && panel->defIcon)
|
||||
image = RRetainImage(panel->defIcon);
|
||||
|
||||
image = scaleDownIfNeeded(image);
|
||||
|
||||
WMAddToArray(panel->images, image);
|
||||
@@ -581,8 +550,6 @@ void wSwitchPanelDestroy(WSwitchPanel *panel)
|
||||
WMFreeArray(panel->icons);
|
||||
|
||||
WMFreeArray(panel->windows);
|
||||
if (panel->defIcon)
|
||||
RReleaseImage(panel->defIcon);
|
||||
|
||||
if (panel->tile)
|
||||
RReleaseImage(panel->tile);
|
||||
|
||||
Reference in New Issue
Block a user