]> Dogcows Code - chaz/openbox/blobdiff - src/client.cc
dont wrap pointerassassin
[chaz/openbox] / src / client.cc
index 706714423adb4c9b51d259add622eab4920be808..618277343cc5e6eaa04a10afe130c316f8e17a00 100644 (file)
@@ -581,7 +581,7 @@ void Client::updateWMHints(bool initstate)
   if (ur != _urgent) {
     _urgent = ur;
 #ifdef DEBUG
-    printf("DEBUG: Urgent Hint for 0x%lx: %s\n",
+    printf("Urgent Hint for 0x%lx: %s\n",
            (long)_window, _urgent ? "ON" : "OFF");
 #endif
     // fire the urgent callback if we're mapped, otherwise, wait until after
@@ -708,7 +708,6 @@ void Client::updateIcons()
   unsigned long num = (unsigned) -1;
   unsigned long *data;
   unsigned long w, h, i = 0;
-  bool freeit = false;
 
   for (int j = 0; j < _nicons; ++j)
     delete [] _icons[j].data;
@@ -716,38 +715,32 @@ void Client::updateIcons()
     delete [] _icons;
   _nicons = 0;
 
-  if (!otk::Property::get(_window, otk::Property::atoms.net_wm_icon,
+  if (otk::Property::get(_window, otk::Property::atoms.net_wm_icon,
                           otk::Property::atoms.cardinal, &num, &data)) {
-    // use default icon(s)
-    num = openbox->screen(_screen)->config().icon_length;
-    data = openbox->screen(_screen)->config().default_icon;
-  } else
-    freeit = true;
-  
-  // figure out how man valid icons are in here
-  while (num - i > 2) {
-    w = data[i++];
-    h = data[i++];
-    i += w * h;
-    if (i > num) break;
-    ++_nicons;
-  }
-
-  _icons = new Icon[_nicons];
+    // figure out how man valid icons are in here
+    while (num - i > 2) {
+      w = data[i++];
+      h = data[i++];
+      i += w * h;
+      if (i > num) break;
+      ++_nicons;
+    }
 
-  // store the icons
-  i = 0;
-  for (int j = 0; j < _nicons; ++j) {
-    w = _icons[j].w = data[i++];
+    _icons = new Icon[_nicons];
+    
+    // store the icons
+    i = 0;
+    for (int j = 0; j < _nicons; ++j) {
+      w = _icons[j].w = data[i++];
       h = _icons[j].h = data[i++];
       _icons[j].data = new unsigned long[w * h];
       ::memcpy(_icons[j].data, &data[i], w * h * sizeof(unsigned long));
       i += w * h;
       assert(i <= num);
-  }
+    }
 
-  if (freeit)
     delete [] data;
+  }
 
   if (_nicons <= 0) {
     _nicons = 1;
@@ -1237,9 +1230,9 @@ const Icon *Client::icon(const otk::Size &s) const
       li = i;
     }
   }
-  if (smallest == 0xffffffff) // didnt find one bigger than us...
-    return &_icons[li];
-  return &_icons[si];
+  if (largest == 0) // didnt find one smaller than the requested size
+    return &_icons[si];
+  return &_icons[li];
 }
 
 void Client::move(int x, int y)
@@ -1717,8 +1710,6 @@ bool Client::focus()
   // visible on the screen
   if (!(frame->visible() && (_can_focus || _focus_notify))) return false;
 
-  if (_focused) return true;
-
   // do a check to see if the window has already been unmapped or destroyed
   // do this intelligently while watching out for unmaps we've generated
   // (ignore_unmaps > 0)
@@ -1762,8 +1753,6 @@ bool Client::focus()
 
 void Client::unfocus() const
 {
-  if (!_focused) return;
-
   assert(openbox->focusedClient() == this);
   openbox->setFocusedClient(0);
 }
This page took 0.028961 seconds and 4 git commands to generate.