1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-19 20:38:08 +01:00

Removed "Keep Attracted Icons" from Clip's menu.

This commit is contained in:
dan
1999-10-13 21:22:37 +00:00
parent cce4ef3664
commit d6566ff6bd
7 changed files with 40 additions and 49 deletions

View File

@@ -1,8 +1,10 @@
Changes since version 0.61.0:
Changes since version 0.61.1:
.............................
- fixed bug with menu editor in WPrefs placing cut/paste-ed entries in wrong
positions.
- removed "Keep Attracted Icons" option from Clip's menu. See NEWS.
Changes since version 0.61.0:

24
NEWS
View File

@@ -2,6 +2,30 @@
NEWS for veteran Window Maker users
-----------------------------------
--- 0.61.2
Removed "Keep Attracted Icons" option from Clip's menu
------------------------------------------------------
Since this option brought more confusion than usefulness among users, and
since it was usable only in a very limited context, being able to fill up
the Clip very easily, it was removed.
An alternative way of gaining the same functionality is to use the "Keep icon"
entry in the Clip's main menu. Or select multiple icons before calling that
entry, to make it apply to more than one icon.
Note: "Keep icon", as the obsoleted "Keep Attracted Icons" had nothing to do
with holding icons in Clip, while the application is running. Once they
are attracted, they are kept until the application close. Using
"Keep icon", will only assure that the icon will be kept, even after the
application is closed.
Please don't ask for this option back. It's error prone, and very unintuitive.
Considering it's very restrictive usability, and it's very ambiguous topic, it
does not need a special entry in the Clip's menu, taking in count that there
are already better alternative ways of gaining the same functionality.
--- 0.61.1
New libPropList

View File

@@ -94,7 +94,7 @@ wprefsdir = @wprefsdir@
prefsdatadir = $(pkgdatadir)/Styles
prefsdata_DATA = Autumn.style Black.style BlackTexture.style Blue.style BlueDawn.style BlueishGreen.style Brown.style Brownish.style Chumbo.style Copper.style DarkBlue.style DarkRed.style Fire.style Food.style Golden.style Green.style GreyBlue.style Gtk.style LightBlue.style Pastel.style Pink.style Pumpkin.style Purple.style Purplish.style Red.style RednBlue.style Summer.style Traditional.style VioletBlue.style
prefsdata_DATA = Autumn.style Black.style BlackTexture.style Blue.style BlueDawn.style BlueishGreen.style Brown.style Brownish.style Chumbo.style Copper.style DarkBlue.style DarkRed.style Emerald.style Fire.style Food.style Golden.style Green.style GreyBlue.style Gtk.style LightBlue.style Pastel.style Pink.style Pumpkin.style Purple.style Purplish.style Red.style RednBlue.style Spring.style Summer.style Traditional.style VioletBlue.style
EXTRA_DIST = $(prefsdata_DATA)

View File

@@ -376,7 +376,7 @@ wApplicationCreate(WScreen *scr, Window main_window)
if (clip && clip->attract_icons && wDockFindFreeSlot(clip, &x, &y)) {
wapp->app_icon->attracted = 1;
if (!clip->keep_attracted && !wapp->app_icon->icon->shadowed) {
if (!wapp->app_icon->icon->shadowed) {
wapp->app_icon->icon->shadowed = 1;
wapp->app_icon->icon->force_paint = 1;
/* We don't do an wAppIconPaint() here because it's in
@@ -462,9 +462,7 @@ wApplicationDestroy(WApplication *wapp)
XDeleteContext(dpy, wapp->main_window, wAppWinContext);
wAppMenuDestroy(wapp->menu);
if (wapp->app_icon) {
if (wapp->app_icon->docked
&& (!wapp->app_icon->attracted ||
wapp->app_icon->dock->keep_attracted)) {
if (wapp->app_icon->docked && !wapp->app_icon->attracted) {
#ifdef REDUCE_APPICONS
if (napps == 0) {
#endif

View File

@@ -102,7 +102,7 @@ static proplist_t dDropCommand=NULL;
#endif
static proplist_t dAutoLaunch, dName, dForced, dBuggyApplication, dYes, dNo;
static proplist_t dHost, dDock, dClip;
static proplist_t dAutoAttractIcons, dKeepAttracted;
static proplist_t dAutoAttractIcons;
static proplist_t dPosition, dApplications, dLowered, dCollapsed, dAutoCollapse;
@@ -184,7 +184,6 @@ make_keys()
dAutoCollapse = PLMakeString("AutoCollapse");
dAutoRaiseLower = PLMakeString("AutoRaiseLower");
dAutoAttractIcons = PLMakeString("AutoAttractIcons");
dKeepAttracted = PLMakeString("KeepAttracted");
dOmnipresent = PLMakeString("Omnipresent");
@@ -653,6 +652,7 @@ toggleAutoAttractCallback(WMenu *menu, WMenuEntry *entry)
}
#if 0
static void
toggleKeepCallback(WMenu *menu, WMenuEntry *entry)
{
@@ -682,6 +682,7 @@ toggleKeepCallback(WMenu *menu, WMenuEntry *entry)
wMenuPaint(menu);
}
#endif
static void
@@ -727,7 +728,7 @@ colectIconsCallback(WMenu *menu, WMenuEntry *entry)
#endif /* ANIMATIONS */
}
aicon->attracted = 1;
if (!clip->keep_attracted && !aicon->icon->shadowed) {
if (!aicon->icon->shadowed) {
aicon->icon->shadowed = 1;
aicon->icon->force_paint = 1;
/* We don't do an wAppIconPaint() here because it's in
@@ -1079,11 +1080,6 @@ updateClipOptionsMenu(WMenu *menu, WDock *dock)
entry->flags.indicator_on = dock->attract_icons;
entry->clientdata = dock;
/* keep attracted icons */
entry = menu->entries[++index];
entry->flags.indicator_on = dock->keep_attracted;
entry->clientdata = dock;
menu->flags.realized = 0;
wMenuRealize(menu);
}
@@ -1131,12 +1127,6 @@ makeClipOptionsMenu(WScreen *scr)
entry->flags.indicator_on = 1;
entry->flags.indicator_type = MI_CHECK;
entry = wMenuAddCallback(menu, _("Keep Attracted Icons"),
toggleKeepCallback, NULL);
entry->flags.indicator = 1;
entry->flags.indicator_on = 1;
entry->flags.indicator_type = MI_CHECK;
menu->flags.realized = 0;
wMenuRealize(menu);
@@ -1258,7 +1248,6 @@ wDockCreate(WScreen *scr, int type)
dock->auto_lower_magic = NULL;
dock->auto_raise_magic = NULL;
dock->attract_icons = 0;
dock->keep_attracted = 0;
dock->lowered = 1;
dock->icon_array[0] = btn;
wRaiseFrame(btn->icon->core);
@@ -1449,7 +1438,7 @@ dockSaveState(WDock *dock)
for (i=(dock->type==WM_DOCK ? 0 : 1); i<dock->max_icons; i++) {
WAppIcon *btn = dock->icon_array[i];
if (!btn || (btn->attracted && !dock->keep_attracted))
if (!btn || btn->attracted)
continue;
if ((icon_info = make_icon_state(dock->icon_array[i]))) {
@@ -1492,9 +1481,6 @@ dockSaveState(WDock *dock)
value = (dock->attract_icons ? dYes : dNo);
PLInsertDictionaryEntry(dock_state, dAutoAttractIcons, value);
value = (dock->keep_attracted ? dYes : dNo);
PLInsertDictionaryEntry(dock_state, dKeepAttracted, value);
}
return dock_state;
@@ -1894,22 +1880,6 @@ wDockRestoreState(WScreen *scr, proplist_t dock_state, int type)
}
/* restore keep attracted icons state */
dock->keep_attracted = 0;
value = PLGetDictionaryEntry(dock_state, dKeepAttracted);
if (value) {
if (!PLIsString(value))
COMPLAIN("KeepAttracted");
else {
if (strcasecmp(PLGetString(value), "YES")==0)
dock->keep_attracted = 1;
}
}
/* application list */
{
@@ -2185,7 +2155,7 @@ wDockAttachIcon(WDock *dock, WAppIcon *icon, int x, int y)
char *command=NULL;
/* icon->forced_dock = 1;*/
if (!icon->attracted || dock->type!=WM_CLIP || dock->keep_attracted) {
if (dock->type!=WM_CLIP || !icon->attracted) {
icon->editing = 1;
if (wInputDialog(dock->screen_ptr, _("Dock Icon"),
_("Type the command used to launch the application"),
@@ -2376,11 +2346,10 @@ moveIconBetweenDocks(WDock *src, WDock *dest, WAppIcon *icon, int x, int y)
icon->icon->core->descriptor.handle_leavenotify = clipLeaveNotify;
}
/* set it to be kept when moving to dock, or to a clip that keep the
* attracted icons.
/* set it to be kept when moving to dock.
* Unless the icon does not have a command set
*/
if (icon->command && (dest->type==WM_DOCK || dest->keep_attracted)) {
if (icon->command && dest->type==WM_DOCK) {
icon->attracted = 0;
if (icon->icon->shadowed) {
icon->icon->shadowed = 0;

View File

@@ -56,7 +56,6 @@ typedef struct WDock {
unsigned int mapped:1;
unsigned int lowered:1;
unsigned int attract_icons:1; /* If clip should attract app-icons */
unsigned int keep_attracted:1; /* if keep them when application exits*/
unsigned int lclip_button_pushed:1;
unsigned int rclip_button_pushed:1;

View File

@@ -653,7 +653,7 @@ makeAppIconFor(WApplication *wapp)
if (clip && clip->attract_icons && wDockFindFreeSlot(clip, &x, &y)) {
wapp->app_icon->attracted = 1;
if (!clip->keep_attracted && !wapp->app_icon->icon->shadowed) {
if (!wapp->app_icon->icon->shadowed) {
wapp->app_icon->icon->shadowed = 1;
wapp->app_icon->icon->force_paint = 1;
}
@@ -677,8 +677,7 @@ removeAppIconFor(WApplication *wapp)
if (!wapp->app_icon)
return;
if (wapp->app_icon->docked &&
(!wapp->app_icon->attracted || wapp->app_icon->dock->keep_attracted)) {
if (wapp->app_icon->docked && !wapp->app_icon->attracted) {
wapp->app_icon->running = 0;
/* since we keep it, we don't care if it was attracted or not */
wapp->app_icon->attracted = 0;