Index: README
===================================================================
RCS file: /home/kde/kdebase/kwin/README,v
retrieving revision 2.0
diff -u -b -t -p -r2.0 README
--- README	28 Jul 2000 08:49:37 -0000	2.0
+++ README	29 Jan 2003 05:16:49 -0000
@@ -15,7 +15,7 @@ AnimSteps=<integer=20>
 BorderSnapZone=<integer=10>
 WindowSnapZone=<integer=10>
 TitlebarDoubleClickCommand=Move | Resize |
-        Maximize | Iconify | Close | Sticky | Shade | Operations
+        Maximize | Iconify | Close | OnAllDesktops | Shade | Operations
 
 
     /*!
@@ -109,8 +109,8 @@ KWin raises the following sound events v
                   "Window DeIconify"
                   "Window Maximize"
                   "Window UnMaximize"
-                  "Window Sticky"
-                  "Window UnSticky"
+                  "Window On All Desktops"
+                  "Window Not On All Desktops"
                   "Window New"
                   "Window Delete"
                   "Window Trans New"
Index: client.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/client.cpp,v
retrieving revision 1.344.2.8
diff -u -b -t -p -r1.344.2.8 client.cpp
--- client.cpp	27 Jan 2003 17:32:34 -0000	1.344.2.8
+++ client.cpp	29 Jan 2003 05:16:55 -0000
@@ -533,7 +533,7 @@ Client::Client( Workspace *ws, WId w, QW
     // set the initial mapping state
     setMappingState( WithdrawnState );
     desk = 0; // and no desktop yet
-    is_sticky_ = FALSE;
+    is_on_all_desktops_ = FALSE;
 
     mode = Nowhere;
     buttonDown = FALSE;
@@ -812,19 +812,19 @@ bool Client::manage( bool isMapped, bool
     // initial desktop placement
     if ( info->desktop() )
         desk = info->desktop(); // window had the initial desktop property!
-    if ( mainClient()->isSticky() )
+    if ( mainClient()->isOnAllDesktops() )
         desk = NET::OnAllDesktops;
     
     if ( session ) {
         desk = session->desktop;
-        if( session->sticky )
+        if( session->onAllDesktops )
             desk = NET::OnAllDesktops;
     } else if ( desk == 0 ) {
         // if this window is transient, ensure that it is opened on the
         // same window as its parent.  this is necessary when an application
         // starts up on a different desktop than is currently displayed
         //
-        if ( isTransient() && !mainClient()->isSticky() )
+        if ( isTransient() && !mainClient()->isOnAllDesktops() )
             desk = mainClient()->desktop();
 
         if ( desk != 0 && !isMapped && !doNotShow && desk != workspace()->currentDesktop()
@@ -841,9 +841,9 @@ bool Client::manage( bool isMapped, bool
     if ( desk == 0 ) // assume window wants to be visible on the current desktop
         desk = workspace()->currentDesktop();
     info->setDesktop( desk );
-    is_sticky_ = ( desk == NET::OnAllDesktops );
-    workspace()->setStickyTransientsOf( this, isSticky());
-    stickyChange( isSticky());
+    is_on_all_desktops_ = ( desk == NET::OnAllDesktops );
+    workspace()->setOnAllDesktopsTransientsOf( this, isOnAllDesktops());
+    onAllDesktopsChange( isOnAllDesktops());
 
     if (isInitial) {
         setMappingState( init_state );
@@ -1216,7 +1216,7 @@ void Client::withdraw()
         // (NETWM sections 5.5,5.7)
         info->setDesktop( 0 );
         desk = 0;
-        is_sticky_ = false;
+        is_on_all_desktops_ = false;
         info->setState( 0, info->state()); // reset all state flags
     }
     releaseWindow(TRUE);
@@ -1938,13 +1938,13 @@ void Client::maximizeChange( bool )
 {
 }
 
-/*!\fn stickyChange( bool sticky )
+/*!\fn onAllDesktopsChange( bool on_all_desktops )
 
-  Indicates that the window was made sticky or unsticky. \a sticky is
+  Indicates that the window appears or not on all desktops. \a on_all_desktops is
   set respectively. Subclasses may want to indicate the new state
   graphically, for example with a different icon.
  */
-void Client::stickyChange( bool )
+void Client::onAllDesktopsChange( bool )
 {
 }
 
@@ -2174,9 +2174,9 @@ void Client::maximize( MaximizeMode m)
 }
 
 
-void Client::toggleSticky()
+void Client::toggleOnAllDesktops()
 {
-    setSticky( !isSticky() );
+    setOnAllDesktops( !isOnAllDesktops() );
 }
 
 void Client::toggleShade()
@@ -2558,21 +2558,21 @@ void Client::setDesktop( int desktop )
         return;
     int was_desk = desk;
     desk = desktop;
-    is_sticky_ = ( desk == NET::OnAllDesktops );
+    is_on_all_desktops_ = ( desk == NET::OnAllDesktops );
     info->setDesktop( desktop );
     if(( was_desk == NET::OnAllDesktops ) != ( desktop == NET::OnAllDesktops )) {
-        // sticky changed
+        // onAllDesktops changed
         if ( isVisible())
-            Events::raise( isSticky() ? Events::Sticky : Events::UnSticky );
-        workspace()->setStickyTransientsOf( this, isSticky());
-        stickyChange( isSticky());
+            Events::raise( isOnAllDesktops() ? Events::OnAllDesktops : Events::NotOnAllDesktops );
+        workspace()->setOnAllDesktopsTransientsOf( this, isOnAllDesktops());
+        onAllDesktopsChange( isOnAllDesktops());
     }
 }
 
-void Client::setSticky( bool b )
+void Client::setOnAllDesktops( bool b )
 {
-    if(( b && isSticky())
-        || ( !b && !isSticky()))
+    if(( b && isOnAllDesktops())
+        || ( !b && !isOnAllDesktops()))
         return;
     if( b )
         setDesktop( NET::OnAllDesktops );
Index: client.h
===================================================================
RCS file: /home/kde/kdebase/kwin/client.h,v
retrieving revision 1.91.2.6
diff -u -b -t -p -r1.91.2.6 client.h
--- client.h	16 Jan 2003 16:51:25 -0000	1.91.2.6
+++ client.h	29 Jan 2003 05:16:55 -0000
@@ -146,8 +146,8 @@ public:
     MaximizeMode maximizeMode() const;
     bool isMinimizable() const;
 
-    bool isSticky() const;
-    void setSticky( bool );
+    bool isOnAllDesktops() const;
+    void setOnAllDesktops( bool );
 
     bool skipTaskbar() const;
     void setSkipTaskbar( bool );
@@ -259,7 +259,7 @@ public slots:
     void killWindow();
     void maximize( MaximizeMode m );
     void maximize();
-    void toggleSticky();
+    void toggleOnAllDesktops();
     void toggleShade();
     void contextHelp();
     void autoRaise();
@@ -287,7 +287,7 @@ protected:
     virtual void iconChange();
     virtual void activeChange( bool );
     virtual void maximizeChange( bool );
-    virtual void stickyChange( bool );
+    virtual void onAllDesktopsChange( bool );
     virtual void shadeChange( bool );
 
 
@@ -350,7 +350,7 @@ private:
     uint shaded :1;
     uint hover_unshade :1;
     uint active :1;
-    uint is_sticky_ :1; // KDE4 remove, equal to desk == NET::OnAllDesktops
+    uint is_on_all_desktops_ :1; // KDE4 remove, equal to desk == NET::OnAllDesktops
     uint keep_above : 1; // NET::KeepAbove (was stays_on_top)
     uint is_shape :1;
     uint may_move :1;
@@ -445,7 +445,7 @@ inline bool Client::isActive() const
 /*!
   Returns the virtual desktop within the workspace() the client window
   is located in, 0 if it isn't located on any special desktop (not mapped yet),
-  or NET::OnAllDesktops (sticky). Do not use desktop() directly, use
+  or NET::OnAllDesktops. Do not use desktop() directly, use
   isOnDesktop() instead.
  */
 inline int Client::desktop() const
@@ -453,17 +453,17 @@ inline int Client::desktop() const
     return desk;
  }
 
-inline bool Client::isSticky() const
+inline bool Client::isOnAllDesktops() const
 {
-    return desk == NET::OnAllDesktops; // equal to is_sticky_
+    return desk == NET::OnAllDesktops; // equal to is_on_all_desktops_
 }
 /*!
   Returns whether the client is on visible or iconified on the virtual
-  desktop \a d. This is always TRUE for sticky clients.
+  desktop \a d. This is always TRUE for onAllDesktops clients.
  */
 inline bool Client::isOnDesktop( int d ) const
 {
-    return desk == d || /*desk == 0 ||*/ isSticky();
+    return desk == d || /*desk == 0 ||*/ isOnAllDesktops();
 }
 
 
Index: events.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/events.cpp,v
retrieving revision 1.12.4.1
diff -u -b -t -p -r1.12.4.1 events.cpp
--- events.cpp	14 Jan 2003 18:46:35 -0000	1.12.4.1
+++ events.cpp	29 Jan 2003 05:16:56 -0000
@@ -35,11 +35,11 @@ void Events::raise( Event e )
     case UnMaximize:
         event = "unmaximize";
         break;
-    case Sticky:
-        event = "sticky";
+    case OnAllDesktops:
+        event = "on_all_desktops";
         break;
-    case UnSticky:
-        event = "unsticky";
+    case NotOnAllDesktops:
+        event = "not_on_all_desktops";
         break;
     case New:
         event = "new";
Index: events.h
===================================================================
RCS file: /home/kde/kdebase/kwin/events.h,v
retrieving revision 1.6.4.1
diff -u -b -t -p -r1.6.4.1 events.h
--- events.h	14 Jan 2003 18:46:35 -0000	1.6.4.1
+++ events.h	29 Jan 2003 05:16:56 -0000
@@ -21,8 +21,8 @@ public:
         DeIconify,
         Maximize,
         UnMaximize,
-        Sticky,
-        UnSticky,
+        OnAllDesktops,
+        NotOnAllDesktops,
         New,
         Delete,
         TransNew,
Index: eventsrc
===================================================================
RCS file: /home/kde/kdebase/kwin/eventsrc,v
retrieving revision 1.222
diff -u -b -t -p -r1.222 eventsrc
--- eventsrc	26 Nov 2002 12:00:32 -0000	1.222
+++ eventsrc	29 Jan 2003 05:17:03 -0000
@@ -2091,8 +2091,8 @@ Comment[zu]=I-window ilahlekelwe Ukukhul
 default_sound=KDE_Window_UnMaximize.wav
 default_presentation=0
 
-[sticky]
-Name=Window Sticky
+[on_all_desktops]
+Name=Window On All Desktops
 Name[af]=Venster Taaierig
 Name[az]=Yapışqan Pəncərə
 Name[bg]=Прилепи прозорец
@@ -2146,7 +2146,7 @@ Name[vi]=Cửa sềEkiểu bềEdính
 Name[zh_CN]=粘附窗口
 Name[zh_TW]=黏附視窗
 Name[zu]=Ukunamfuka Kwe-Window
-Comment=A Window is Made Sticky
+Comment=A Window is made Visible on All Desktops
 Comment[af]='n Venster is Gemaak Taaierig
 Comment[az]=Bir Pəncərə Yapışqan Hala Gətirildi
 Comment[bg]=Прозореца е прилепен
@@ -2203,8 +2203,8 @@ Comment[zu]=I-window yenziwe yanamfuka
 default_sound=KDE_Window_Sticky.wav
 default_presentation=0
 
-[unsticky]
-Name=Window Unsticky
+[not_on_all_desktops]
+Name=Window Not On All Desktops
 Name[af]=Venster Nie plakkerig
 Name[az]=Sərbəst Pəncərə
 Name[bg]=Отлепи прозорец
@@ -2258,7 +2258,7 @@ Name[xh]=Window Ayenzi shushu nafumileyo
 Name[zh_CN]=取消粘附
 Name[zh_TW]=取消黏附視窗
 Name[zu]=Susa Ukunamfuka kwe-Window
-Comment=A Window is Made Unsticky
+Comment=A Window is no more Visible on All Desktops
 Comment[af]='n Venster is Gemaak Nie plakkerig
 Comment[az]=Bir Pəncərə Sərbəst Hala Gətirildi
 Comment[bg]=Прозореца е отлепен
Index: kwinbindings.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/kwinbindings.cpp,v
retrieving revision 1.36
diff -u -b -t -p -r1.36 kwinbindings.cpp
--- kwinbindings.cpp	17 Dec 2002 16:09:08 -0000	1.36
+++ kwinbindings.cpp	29 Jan 2003 05:17:03 -0000
@@ -30,7 +30,7 @@
         DEF( I18N_NOOP("Window Resize"),                       0, 0, slotWindowResize() );
         DEF( I18N_NOOP("Window Raise"),                        0, 0, slotWindowRaise() );
         DEF( I18N_NOOP("Window Lower"),                        0, 0, slotWindowLower() );
-        DEF( I18N_NOOP("Window Sticky"),                       0, 0, slotWindowSticky() );
+        DEF( I18N_NOOP("Window On All Desktops"),              0, 0, slotWindowOnAllDesktops() );
         DEF( I18N_NOOP("Window Stays On Top"),                 0, 0, slotWindowStaysOnTop() );
         DEF( I18N_NOOP("Toggle Window Raise/Lower"),           0, 0, slotWindowRaiseOrLower() );
 
Index: layers.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/Attic/layers.cpp,v
retrieving revision 1.1.2.3
diff -u -b -t -p -r1.1.2.3 layers.cpp
--- layers.cpp	20 Jan 2003 12:31:11 -0000	1.1.2.3
+++ layers.cpp	29 Jan 2003 05:17:04 -0000
@@ -178,7 +178,7 @@ void Workspace::raiseOrLowerClient( Clie
          most_recently_raised->isVisible() )
         topmost = most_recently_raised;
     else
-        topmost = topClientOnDesktop( c->isSticky() ? currentDesktop() : c->desktop());
+        topmost = topClientOnDesktop( c->isOnAllDesktops() ? currentDesktop() : c->desktop());
 
     if( c == topmost)
         lowerClient(c);
Index: options.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/options.cpp,v
retrieving revision 1.83.2.2
diff -u -b -t -p -r1.83.2.2 options.cpp
--- options.cpp	14 Jan 2003 18:46:35 -0000	1.83.2.2
+++ options.cpp	29 Jan 2003 05:17:05 -0000
@@ -266,8 +266,8 @@ Options::WindowOperation Options::window
         return IconifyOp;
     else if (name == "Close")
         return CloseOp;
-    else if (name == "Sticky")
-        return StickyOp;
+    else if ( (name == "Sticky") || (name == "OnAllDesktops") ) //CT "Sticky" will be deprecated after 3.2
+        return OnAllDesktopsOp;
     else if (name == "Shade")
         return ShadeOp;
     else if (name == "Operations")
Index: options.h
===================================================================
RCS file: /home/kde/kdebase/kwin/options.h,v
retrieving revision 1.54.2.3
diff -u -b -t -p -r1.54.2.3 options.h
--- options.h	16 Jan 2003 16:51:25 -0000	1.54.2.3
+++ options.h	29 Jan 2003 05:17:05 -0000
@@ -210,7 +210,7 @@ public:
         MoveOp,
         ResizeOp,
         CloseOp,
-        StickyOp,
+        OnAllDesktopsOp,
         ShadeOp,
         KeepAboveOp,
         KeepBelowOp,
@@ -268,7 +268,7 @@ public:
     * returns which buttons should be on the left side of the titlebar from left
     * to right. Characters in the returned string have this meaning :
     * @li 'M' menu button
-    * @li 'S' sticky button
+    * @li 'S' on_all_desktops button
     * @li 'H' quickhelp button
     * @li 'I' iconify ( minimize ) button
     * @li 'A' maximize button
Index: placement.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/placement.cpp,v
retrieving revision 1.4.2.5
diff -u -b -t -p -r1.4.2.5 placement.cpp
--- placement.cpp	20 Jan 2003 11:34:34 -0000	1.4.2.5
+++ placement.cpp	29 Jan 2003 05:17:06 -0000
@@ -113,7 +113,7 @@ void Placement::placeSmart(Client* c)
     long int overlap, min_overlap = 0;
     int x_optimal, y_optimal;
     int possible;
-    int desktop = c->desktop() == 0 || c->isSticky() ? m_WorkspacePtr->currentDesktop() : c->desktop();
+    int desktop = c->desktop() == 0 || c->isOnAllDesktops() ? m_WorkspacePtr->currentDesktop() : c->desktop();
 
     int cxl, cxr, cyt, cyb;     //temp coords
     int  xl,  xr,  yt,  yb;     //temp coords
@@ -265,7 +265,7 @@ void Placement::placeCascaded (Client* c
     const int delta_x = 24;
     const int delta_y = 24;
 
-    const int dn = c->desktop() == 0 || c->isSticky() ? (m_WorkspacePtr->currentDesktop() - 1) : (c->desktop() - 1);
+    const int dn = c->desktop() == 0 || c->isOnAllDesktops() ? (m_WorkspacePtr->currentDesktop() - 1) : (c->desktop() - 1);
 
     // get the maximum allowed windows space and desk's origin
     //    (CT 20Nov1999 - is this common to all desktops?)
Index: workspace.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/workspace.cpp,v
retrieving revision 1.398.2.10
diff -u -b -t -p -r1.398.2.10 workspace.cpp
--- workspace.cpp	27 Jan 2003 13:32:35 -0000	1.398.2.10
+++ workspace.cpp	29 Jan 2003 05:17:12 -0000
@@ -149,7 +149,7 @@ Client* Workspace::clientFactory( WId w 
         {
             XLowerWindow( qt_xdisplay(), w );
             Client * c = new NoBorderClient( this, w);
-            c->setSticky( TRUE ); // TODO remove this?
+            c->setOnAllDesktops( TRUE ); // TODO remove this?
             return c;
         }
 
@@ -993,13 +993,13 @@ void Workspace::iconifyOrDeiconifyTransi
 
 
 /*!
-  Sets the client \a c's transient windows' sticky property to \a sticky.
+  Sets the client \a c's transient windows' on_all_desktops property to \a on_all_desktops.
  */
-void Workspace::setStickyTransientsOf( Client* c, bool sticky )
+void Workspace::setOnAllDesktopsTransientsOf( Client* c, bool on_all_desktops )
 {
     for ( ClientList::ConstIterator it = clients.begin(); it != clients.end(); ++it) {
-        if ( (*it)->transientFor() == c->window() && (*it)->isSticky() != sticky )
-            (*it)->setSticky( sticky );
+        if ( (*it)->transientFor() == c->window() && (*it)->isOnAllDesktops() != on_all_desktops )
+            (*it)->setOnAllDesktops( on_all_desktops );
     }
 }
 
@@ -1199,8 +1199,8 @@ void Workspace::performWindowOperation( 
     case Options::ShadeOp:
         c->setShade( !c->isShade() );
         break;
-    case Options::StickyOp:
-        c->setSticky( !c->isSticky() );
+    case Options::OnAllDesktopsOp:
+        c->setOnAllDesktops( !c->isOnAllDesktops() );
         break;
     case Options::KeepAboveOp:
         c->setKeepAbove( !c->keepAbove() );
@@ -1268,7 +1268,7 @@ void Workspace::cascadeDesktop()
     for (; it != stacking_order.end(); ++it) {
         if((!(*it)->isOnDesktop(currentDesktop())) ||
            ((*it)->isIconified())                  ||
-           ((*it)->isSticky())                     ||
+           ((*it)->isOnAllDesktops())              ||
            (!(*it)->isMovable()) )
             continue;
         initPositioning->placeCascaded(*it, re_init_cascade_at_first_client);
@@ -1288,7 +1288,7 @@ void Workspace::unclutterDesktop()
     for (; it != clients.end(); --it) {
         if((!(*it)->isOnDesktop(currentDesktop())) ||
            ((*it)->isIconified())                  ||
-           ((*it)->isSticky())                     ||
+           ((*it)->isOnAllDesktops())              ||
            (!(*it)->isMovable()) )
             continue;
         initPositioning->placeSmart(*it);
@@ -1467,7 +1467,7 @@ void Workspace::setCurrentDesktop( int n
 
         ObscuringWindows obs_wins;
 
-        if (movingClient && !movingClient->isSticky())
+        if (movingClient && !movingClient->isOnAllDesktops())
         {
             movingClient->setDesktop(-1); // All desktops
         }
@@ -1487,7 +1487,7 @@ void Workspace::setCurrentDesktop( int n
             }
         }
 
-        if (movingClient && !movingClient->isSticky())
+        if (movingClient && !movingClient->isOnAllDesktops())
         {
             movingClient->setDesktop(new_desktop);
         }
@@ -1509,7 +1509,7 @@ void Workspace::setCurrentDesktop( int n
 
         if ( !c ) {
             for( ClientList::ConstIterator it = focus_chain.fromLast(); it != focus_chain.end(); --it) {
-                if ( (*it)->isVisible() && !(*it)->isSticky() ) {
+                if ( (*it)->isVisible() && !(*it)->isOnAllDesktops() ) {
                     c = *it;
                     break;
                 }
@@ -1537,7 +1537,7 @@ void Workspace::setCurrentDesktop( int n
     }
 
     //if "unreasonable focus policy"
-    // and active_client is sticky and under mouse (hence == old_active_client),
+    // and active_client is on_all_desktops and under mouse (hence == old_active_client),
     // conserve focus (thanks to Volker Schatz <V.Schatz at thphys.uni-heidelberg.de>)
     else if( active_client && active_client->isVisible() )
       c= active_client;
@@ -1629,7 +1629,7 @@ void Workspace::setNumberOfDesktops( int
         for( ClientList::ConstIterator it = clients.begin();
               it != clients.end();
               ++it) {
-            if( !(*it)->isSticky() && (*it)->desktop() > numberOfDesktops())
+            if( !(*it)->isOnAllDesktops() && (*it)->desktop() > numberOfDesktops())
                 sendClientToDesktop( *it, numberOfDesktops());
         }
     }
@@ -2009,10 +2009,10 @@ void Workspace::slotWindowRaiseOrLower()
         raiseOrLowerClient( active_client );
 }
 
-void Workspace::slotWindowSticky()
+void Workspace::slotWindowOnAllDesktops()
 {
     if( active_client )
-        active_client->toggleSticky();
+        active_client->toggleOnAllDesktops();
 }
 
 void Workspace::slotWindowStaysOnTop()
@@ -2150,7 +2150,7 @@ void Workspace::desktopPopupAboutToShow(
 
     desk_popup->clear();
     desk_popup->insertItem( i18n("&All Desktops"), 0 );
-    if ( active_client && active_client->isSticky() )
+    if ( active_client && active_client->isOnAllDesktops() )
         desk_popup->setItemChecked( 0, TRUE );
     desk_popup->insertSeparator( -1 );
     int id;
@@ -2167,7 +2167,7 @@ void Workspace::desktopPopupAboutToShow(
                 i
         );
         if ( active_client &&
-             !active_client->isSticky() && active_client->desktop()  == i )
+             !active_client->isOnAllDesktops() && active_client->desktop()  == i )
             desk_popup->setItemChecked( id, TRUE );
     }
 }
@@ -2250,8 +2250,8 @@ void Workspace::sendToDesktop( int desk 
 {
     if ( !popup_client )
         return;
-    if ( desk == 0 ) { // the 'sticky' menu entry
-        popup_client->setSticky( !popup_client->isSticky() );
+    if ( desk == 0 ) { // the 'on_all_desktops' menu entry
+        popup_client->setOnAllDesktops( !popup_client->isOnAllDesktops() );
         return;
     }
 
@@ -2729,7 +2729,7 @@ void Workspace::storeSession( KConfig* c
         config->writeEntry( QString("maximize")+n, (int) c->maximizeMode() );
         config->writeEntry( QString("desktop")+n, c->desktop() );
         config->writeEntry( QString("iconified")+n, c->isIconified() );
-        config->writeEntry( QString("sticky")+n, c->isSticky() );
+        config->writeEntry( QString("onAllDesktops")+n, c->isOnAllDesktops() );
         config->writeEntry( QString("shaded")+n, c->isShade() );
         // the config entry is called "staysOnTop" for back. comp. reasons
         config->writeEntry( QString("staysOnTop")+n, c->keepAbove() );
@@ -2768,7 +2768,8 @@ void Workspace::loadSessionInfo()
         info->maximize = config->readNumEntry( QString("maximize")+n, 0 );
         info->desktop = config->readNumEntry( QString("desktop")+n, 0 );
         info->iconified = config->readBoolEntry( QString("iconified")+n, FALSE );
-        info->sticky = config->readBoolEntry( QString("sticky")+n, FALSE );
+        info->onAllDesktops = config->readBoolEntry( QString("sticky")+n, FALSE ); //CT will be deprecated after 3.2
+        info->onAllDesktops = config->readBoolEntry( QString("onAllDesktops")+n, FALSE );
         info->shaded = config->readBoolEntry( QString("shaded")+n, FALSE );
         info->keepAbove = config->readBoolEntry( QString("staysOnTop")+n, FALSE  );
         info->keepBelow = config->readBoolEntry( QString("keepBelow")+n, FALSE  );
@@ -2797,7 +2798,8 @@ void Workspace::loadFakeSessionInfo()
         info->maximize = config->readNumEntry( QString("maximize")+n, 0 );
         info->desktop = config->readNumEntry( QString("desktop")+n, 0 );
         info->iconified = config->readBoolEntry( QString("iconified")+n, FALSE );
-        info->sticky = config->readBoolEntry( QString("sticky")+n, FALSE );
+        info->onAllDesktops = config->readBoolEntry( QString("sticky")+n, FALSE ); //CT will be deprecated after 3.2
+        info->onAllDesktops = config->readBoolEntry( QString("onAllDesktops")+n, FALSE );
         info->shaded = config->readBoolEntry( QString("shaded")+n, FALSE );
         info->keepAbove = config->readBoolEntry( QString("staysOnTop")+n, FALSE  );
         info->keepBelow = config->readBoolEntry( QString("keepBelow")+n, FALSE  );
@@ -2822,7 +2824,7 @@ void Workspace::storeFakeSessionInfo( Cl
     info->maximize = (int)c->maximizeMode();
     info->desktop = c->desktop();
     info->iconified = c->isIconified();
-    info->sticky = c->isSticky();
+    info->onAllDesktops = c->isOnAllDesktops();
     info->shaded = c->isShade();
     info->keepAbove = c->keepAbove();
     info->keepBelow = c->keepBelow();
@@ -2848,7 +2850,7 @@ void Workspace::writeFakeSessionInfo()
         config->writeEntry( QString("maximize")+n, info->maximize );
         config->writeEntry( QString("desktop")+n, info->desktop );
         config->writeEntry( QString("iconified")+n, info->iconified );
-        config->writeEntry( QString("sticky")+n, info->sticky );
+        config->writeEntry( QString("onAllDesktops")+n, info->onAllDesktops );
         config->writeEntry( QString("shaded")+n, info->shaded );
         config->writeEntry( QString("staysOnTop")+n, info->keepAbove );
         config->writeEntry( QString("keepBelow")+n, info->keepBelow );
@@ -3006,7 +3008,7 @@ void Workspace::updateClientArea( bool f
         QRect r = (*it)->adjustedClientArea( all );
         if( r == all )
             continue;
-        if( (*it)->isSticky())
+        if( (*it)->isOnAllDesktops())
             for( int i = 1;
                  i <= numberOfDesktops();
                  ++i )
Index: workspace.h
===================================================================
RCS file: /home/kde/kdebase/kwin/workspace.h,v
retrieving revision 1.128.2.8
diff -u -b -t -p -r1.128.2.8 workspace.h
--- workspace.h	27 Jan 2003 13:32:35 -0000	1.128.2.8
+++ workspace.h	29 Jan 2003 05:17:13 -0000
@@ -71,7 +71,7 @@ struct SessionInfo
     int maximize;
     int desktop;
     bool iconified;
-    bool sticky;
+    bool onAllDesktops;
     bool shaded;
     bool keepAbove;
     bool skipTaskbar;
@@ -212,7 +212,7 @@ public:
     void showWindowMenu( QPoint pos, Client* cl );
 
     void iconifyOrDeiconifyTransientsOf( Client* );
-    void setStickyTransientsOf( Client*, bool sticky );
+    void setOnAllDesktopsTransientsOf( Client*, bool on_all_desktops );
 
     bool hasCaption( const QString& caption );   // ### make const in KDE 4
 
@@ -276,7 +276,7 @@ public slots:
     void slotWindowMove();
     void slotWindowResize();
     void slotWindowStaysOnTop();
-    void slotWindowSticky();
+    void slotWindowOnAllDesktops();
 
     void slotWindowToNextDesktop();
     void slotWindowToPreviousDesktop();
Index: clients/b2/b2client.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/clients/b2/b2client.cpp,v
retrieving revision 1.33
diff -u -b -t -p -r1.33 b2client.cpp
--- clients/b2/b2client.cpp	2 Jan 2003 23:41:27 -0000	1.33
+++ clients/b2/b2client.cpp	29 Jan 2003 05:17:15 -0000
@@ -383,7 +383,7 @@ B2Client::B2Client( Workspace *ws, WId w
     : Client( ws, w, parent, name, WResizeNoErase | WRepaintNoErase ),
       bar_x_ofs(0), in_unobs(0)
 {
-    const QString tips[]= {i18n("Menu"), i18n("Sticky"), 
+    const QString tips[]= {i18n("Menu"), i18n("OnAllDesktops"),
                            i18n("Minimize"), i18n("Maximize"),
                            i18n("Close"), i18n("Help") };
 
@@ -455,15 +455,15 @@ void B2Client::addButtons(const QString&
                     titleLayout->addWidget(button[BtnMenu]);
                 }
                 break;
-            case 'S':  // Sticky button
-                if (!button[BtnSticky]) {
-                    button[BtnSticky] = new B2Button(this, tb, tips[BtnSticky]);
-                    button[BtnSticky]->setPixmaps(P_PINUP);
-                    button[BtnSticky]->setToggle();
-                    button[BtnSticky]->setDown(isSticky());
-                    connect(button[BtnSticky], SIGNAL(clicked()),
-                            this, SLOT(toggleSticky()));
-                    titleLayout->addWidget(button[BtnSticky]);
+            case 'S':  // on_all_desktops button
+                if (!button[BtnOnAllDesktops]) {
+                    button[BtnOnAllDesktops] = new B2Button(this, tb, tips[BtnOnAllDesktops]);
+                    button[BtnOnAllDesktops]->setPixmaps(P_PINUP);
+                    button[BtnOnAllDesktops]->setToggle();
+                    button[BtnOnAllDesktops]->setDown(isOnAllDesktops());
+                    connect(button[BtnOnAllDesktops], SIGNAL(clicked()),
+                            this, SLOT(toggleOnAllDesktops()));
+                    titleLayout->addWidget(button[BtnOnAllDesktops]);
                 }
                 break;
             case 'H':  // Help button
@@ -519,8 +519,8 @@ void B2Client::iconChange()
 void B2Client::calcHiddenButtons()
 {
     // Hide buttons in this order:
-    // Sticky, Help, Maximize, Minimize, Close, Menu
-    B2Button* btnArray[] = { button[BtnSticky], button[BtnHelp],
+    // OnAllDesktops, Help, Maximize, Minimize, Close, Menu
+    B2Button* btnArray[] = { button[BtnOnAllDesktops], button[BtnHelp],
                              button[BtnMax], button[BtnIconify],
                              button[BtnClose], button[BtnMenu] };
     int minWidth = 120; 
@@ -746,7 +746,7 @@ void B2Client::titleMoveRel(int xdiff)
     titleMoveAbs(bar_x_ofs + xdiff);
 }
 
-void B2Client::stickyChange(bool on)
+void B2Client::onAllDesktopsChange(bool on)
 {
     if (button[BtnSticky]) {
         button[BtnSticky]->setDown(on);
Index: clients/b2/b2client.h
===================================================================
RCS file: /home/kde/kdebase/kwin/clients/b2/b2client.h,v
retrieving revision 1.21
diff -u -b -t -p -r1.21 b2client.h
--- clients/b2/b2client.h	27 Aug 2002 18:08:18 -0000	1.21
+++ clients/b2/b2client.h	29 Jan 2003 05:17:15 -0000
@@ -101,7 +101,7 @@ protected:
     void showEvent( QShowEvent* );
     void windowWrapperShowEvent( QShowEvent* );
     void captionChange( const QString& name );
-    void stickyChange(bool on);
+    void onAllDesktopsChange(bool on);
     void activeChange(bool on);
     void maximizeChange(bool m);
     void iconChange();
@@ -116,7 +116,7 @@ private:
                     B2Titlebar* tb, QBoxLayout* titleLayout);
     void positionButtons();
     void calcHiddenButtons();
-    enum ButtonType{BtnMenu=0, BtnSticky, BtnIconify, BtnMax, BtnClose,
+    enum ButtonType{BtnMenu=0, BtnOnAllDesktops, BtnIconify, BtnMax, BtnClose,
         BtnHelp, BtnCount};
     B2Button* button[BtnCount];
     QGridLayout *g;
Index: clients/keramik/keramik.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/clients/keramik/keramik.cpp,v
retrieving revision 1.17
diff -u -b -t -p -r1.17 keramik.cpp
--- clients/keramik/keramik.cpp	16 Nov 2002 00:05:16 -0000	1.17
+++ clients/keramik/keramik.cpp	29 Jan 2003 05:17:18 -0000
@@ -149,8 +149,8 @@ KeramikHandler::KeramikHandler()
 
         // Create the button deco bitmaps
         buttonDecos[ Menu ]     = new QBitmap( 17, 17, menu_bits,       true );
-        buttonDecos[ Sticky ]   = new QBitmap( 17, 17, sticky_on_bits,  true );
-        buttonDecos[ Unsticky ] = new QBitmap( 17, 17, sticky_off_bits, true );
+        buttonDecos[ OnAllDesktops ]    = new QBitmap( 17, 17, sticky_on_bits,  true );
+        buttonDecos[ NotOnAllDesktops ] = new QBitmap( 17, 17, sticky_off_bits, true );
         buttonDecos[ Help ]     = new QBitmap( 17, 17, help_bits,       true );
         buttonDecos[ Iconify ]  = new QBitmap( 17, 17, iconify_bits,    true );
         buttonDecos[ Maximize ] = new QBitmap( 17, 17, maximize_bits,   true );
@@ -602,7 +602,7 @@ KeramikButton::KeramikButton( Client* pa
         setBackgroundMode( NoBackground );
         setFixedSize( 17, 17 );
 
-        setToggleButton( (button == StickyButton) );
+        setToggleButton( (button == OnAllDesktopsButton) );
 }
 
 
@@ -652,7 +652,7 @@ void KeramikButton::drawButton( QPainter
         const QBitmap *deco;
 
         // Get the bevel from the client handler
-        if ( button == MenuButton || button == StickyButton || button == HelpButton ) 
+        if ( button == MenuButton || button == OnAllDesktopsButton || button == HelpButton )
                 pix = clientHandler->roundButton();
         else
                 pix = clientHandler->squareButton();
@@ -679,8 +679,8 @@ void KeramikButton::drawButton( QPainter
                         deco = clientHandler->buttonDeco( Menu );
                         break;
 
-                case StickyButton:
-                        deco = clientHandler->buttonDeco( isOn() ? Unsticky : Sticky );
+                case OnAllDesktopsButton:
+                        deco = clientHandler->buttonDeco( isOn() ? NotOnAllDesktops : OnAllDesktops );
                         break;
 
                 case HelpButton:
@@ -839,12 +839,12 @@ void KeramikClient::addButtons( QBoxLayo
                                 }
                                 break;
 
-                        // Sticky button
+                        // OnAllDesktops button
                         case 'S' :
-                                if ( !button[StickyButton] ) {
-                                        button[StickyButton] = new KeramikButton( this, "sticky", StickyButton, i18n("Sticky") );
-                                        connect( button[StickyButton], SIGNAL( clicked() ), SLOT( toggleSticky() ) );
-                                        layout->addWidget( button[StickyButton] );
+                                if ( !button[OnAllDesktopsButton] ) {
+                                        button[OnAllDesktopsButton] = new KeramikButton( this, "on_all_desktops", OnAllDesktopsButton, i18n("On All Dekstops") );
+                                        connect( button[OnAllDesktopsButton], SIGNAL( clicked() ), SLOT( toggleOnAllDesktops() ) );
+                                        layout->addWidget( button[OnAllDesktopsButton] );
                                 }
                                 break;
                                 
@@ -1192,10 +1192,10 @@ void KeramikClient::maximizeChange( bool
 }
 
 
-void KeramikClient::stickyChange( bool on )
+void KeramikClient::onAllDesktopsChange( bool on )
 {
-        if ( button[ StickyButton ] )
-                button[ StickyButton ]->setTipText( on ? i18n("Un-Sticky") : i18n("Sticky") );
+        if ( button[ OnAllDesktopsButton ] )
+                button[ OnAllDesktopsButton ]->setTipText( on ? i18n("Not On All Desktops") : i18n("On All Desktops") );
 }
 
 
Index: clients/keramik/keramik.h
===================================================================
RCS file: /home/kde/kdebase/kwin/clients/keramik/keramik.h,v
retrieving revision 1.7
diff -u -b -t -p -r1.7 keramik.h
--- clients/keramik/keramik.h	1 Sep 2002 22:50:34 -0000	1.7
+++ clients/keramik/keramik.h	29 Jan 2003 05:17:18 -0000
@@ -41,10 +41,10 @@ namespace Keramik {
                                            GrabBarLeft, GrabBarCenter, GrabBarRight,
                            BorderLeft, BorderRight, NumTiles };
 
-        enum Button      { MenuButton=0, StickyButton, HelpButton, MinButton,
+        enum Button      { MenuButton=0, OnAllDesktopsButton, HelpButton, MinButton,
                            MaxButton, CloseButton, NumButtons };
 
-        enum ButtonDeco  { Menu=0, Sticky, Unsticky, Help, Iconify, Maximize,
+        enum ButtonDeco  { Menu=0, OnAllDesktops, NotOnAllDesktops, Help, Iconify, Maximize,
                            Restore, Close, NumButtonDecos };
 
         struct SettingsCache
@@ -159,7 +159,7 @@ namespace Keramik {
                         void iconChange();
                         void activeChange( bool );
                         void maximizeChange( bool );
-                        void stickyChange( bool );
+                        void onAllDesktopsChange( bool );
                         void resizeEvent( QResizeEvent *);
                         void paintEvent( QPaintEvent *);
                         void mouseDoubleClickEvent( QMouseEvent * );
Index: kcmkwin/kwindecoration/buttons.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/kcmkwin/kwindecoration/buttons.cpp,v
retrieving revision 1.4
diff -u -b -t -p -r1.4 buttons.cpp
--- kcmkwin/kwindecoration/buttons.cpp	25 Aug 2001 15:44:31 -0000	1.4
+++ kcmkwin/kwindecoration/buttons.cpp	29 Jan 2003 05:17:20 -0000
@@ -23,7 +23,7 @@
 // General purpose button globals (I know I shouldn't use them :)
 //===============================================================
 
-enum Buttons{ BtnMenu=0, BtnSticky, BtnSpacer, BtnHelp,
+enum Buttons{ BtnMenu=0, BtnOnAllDesktops, BtnSpacer, BtnHelp,
                           BtnMinimize, BtnMaximize, BtnClose, BtnCount };
 QListBoxPixmap* buttons[ BtnCount ];
 QPixmap*                pixmaps[ BtnCount ];
@@ -74,7 +74,7 @@ static int btnIndex( char btn )
                         return BtnMenu;
                         break;
                 case 'S':
-                        return BtnSticky;
+                        return BtnOnAllDesktops;
                         break;
                 case '_':
                         return BtnSpacer;
@@ -117,7 +117,7 @@ ButtonSource::ButtonSource( QWidget* par
 {
         // Create the listbox pixmaps
         pixmaps[ BtnMenu ]              = new QPixmap( button_menu_xpm );
-        pixmaps[ BtnSticky ]    = new QPixmap( button_sticky_xpm );
+        pixmaps[ BtnOnAllDesktops ] = new QPixmap( button_on_all_desktops_xpm );
         pixmaps[ BtnSpacer ]    = new QPixmap( button_spacer_xpm );
         pixmaps[ BtnHelp ]              = new QPixmap( button_help_xpm );
         pixmaps[ BtnMinimize ]  = new QPixmap( button_minimize_xpm );
@@ -127,7 +127,7 @@ ButtonSource::ButtonSource( QWidget* par
 
         // Add all possible button/spacer types to the list box.
         buttons[ BtnMenu ]              = new QListBoxPixmap( this, *pixmaps[BtnMenu], i18n("Menu") );
-        buttons[ BtnSticky]     = new QListBoxPixmap( this, *pixmaps[BtnSticky], i18n("Sticky") );
+        buttons[ BtnOnAllDesktops] = new QListBoxPixmap( this, *pixmaps[BtnOnAllDesktops], i18n("On All Desktops") );
         buttons[ BtnSpacer ]    = new QListBoxPixmap( this, *pixmaps[BtnSpacer], i18n("Spacer") );
         buttons[ BtnHelp ]              = new QListBoxPixmap( this, *pixmaps[BtnHelp], i18n("Help") );
         buttons[ BtnMinimize ]  = new QListBoxPixmap( this, *pixmaps[BtnMinimize], i18n("Minimize") );
@@ -155,8 +155,8 @@ void ButtonSource::hideAllButtons()
         // Hide all listbox items which are visible
         if (index( buttons[BtnMenu] ) != -1)
                 takeItem( buttons[BtnMenu] );
-        if (index( buttons[BtnSticky] )!= -1)
-                takeItem( buttons[BtnSticky] );
+        if (index( buttons[BtnOnAllDesktops] )!= -1)
+                takeItem( buttons[BtnOnAllDesktops] );
         if (index( buttons[BtnHelp] ) != -1)
                 takeItem( buttons[BtnHelp] );
         if (index( buttons[BtnMinimize] ) != -1)
@@ -176,8 +176,8 @@ void ButtonSource::showAllButtons()
         // Hide all listbox items which are visible
         if (index( buttons[BtnMenu] ) == -1)
                 insertItem( buttons[BtnMenu] );
-        if (index( buttons[BtnSticky] )== -1)
-                insertItem( buttons[BtnSticky] );
+        if (index( buttons[BtnOnAllDesktops] )== -1)
+                insertItem( buttons[BtnOnAllDesktops] );
         if (index( buttons[BtnHelp] ) == -1)
                 insertItem( buttons[BtnHelp] );
         if (index( buttons[BtnMinimize] ) == -1)
@@ -242,7 +242,7 @@ char ButtonSource::convertToChar( QStrin
         // Convert the item to its character representation
         if (s == i18n("Menu"))
                 return 'M';
-        else if (s == i18n("Sticky"))
+        else if (s == i18n("On All Desktops"))
                 return 'S';
         else if (s == i18n("Spacer"))
                 return '_';
Index: kcmkwin/kwindecoration/kwindecoration.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/kcmkwin/kwindecoration/kwindecoration.cpp,v
retrieving revision 1.34
diff -u -b -t -p -r1.34 kwindecoration.cpp
--- kcmkwin/kwindecoration/kwindecoration.cpp	29 Oct 2002 12:43:45 -0000	1.34
+++ kcmkwin/kwindecoration/kwindecoration.cpp	29 Jan 2003 05:17:20 -0000
@@ -341,7 +341,7 @@ void KWinDecorationModule::readConfig( K
 
         // Buttons tab
         // ============
-        // Menu and sticky buttons are default on LHS
+        // Menu and onAllDesktops buttons are default on LHS
         dropSite->buttonsLeft  = conf->readEntry("ButtonsOnLeft", "MS");
         // Help, Minimize, Maximize and Close are default on RHS
         dropSite->buttonsRight = conf->readEntry("ButtonsOnRight", "HIAX");
Index: kcmkwin/kwindecoration/pixmaps.h
===================================================================
RCS file: /home/kde/kdebase/kwin/kcmkwin/kwindecoration/pixmaps.h,v
retrieving revision 1.2
diff -u -b -t -p -r1.2 pixmaps.h
--- kcmkwin/kwindecoration/pixmaps.h	6 Jun 2001 10:04:21 -0000	1.2
+++ kcmkwin/kwindecoration/pixmaps.h	29 Jan 2003 05:17:21 -0000
@@ -226,7 +226,7 @@ const char * button_minimize_xpm[] = {
 
 
 /* XPM */
-const char * button_sticky_xpm[] = {
+const char * button_on_all_desktops_xpm[] = {
 "20 20 17 1",
 "       c None",
 ".      c #F3F3F3",
