message: Fix up the location/detection of icon/cursor themes. They just changes it upstream to dump all of them in the same directory, so need to be careful about detecting them now.
diff: @@ -83,8 +83,8 @@ QStringList LTHEME::availableSystemIcons(){ //returns: [name] for each item
  tmpthemes = dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name);
  for(int j=0; j<tmpthemes.length(); j++){
  if(tmpthemes[j].startsWith("default")){ continue; }
  - if(QFile::exists(dir.absoluteFilePath(tmpthemes[j]+"/index.theme")) ||
  - QFile::exists(dir.absoluteFilePath(tmpthemes[j]+"/index.desktop")) ){ themes << tmpthemes[j]; }
  + if( (QFile::exists(dir.absoluteFilePath(tmpthemes[j]+"/index.theme")) ||
  + QFile::exists(dir.absoluteFilePath(tmpthemes[j]+"/index.desktop")) ) ){ themes << tmpthemes[j]; }
  }
  }
  }
  @@ -94,19 +94,30 @@ QStringList LTHEME::availableSystemIcons(){ //returns: [name] for each item
  }
  QStringList LTHEME::availableSystemCursors(){ //returns: [name] for each item
  - QStringList paths; paths << LOS::SysPrefix()+"lib/X11/icons/" << LOS::AppPrefix()+"lib/X11/icons/";
  - QStringList out;
  + QStringList paths;
  + paths << QDir::homePath()+"/.icons";
  + QStringList xdd = QString(getenv("XDG_DATA_HOME")).split(":");
  + xdd << QString(getenv("XDG_DATA_DIRS")).split(":");
  + for(int i=0; i<xdd.length(); i++){
  + if(QFile::exists(xdd[i]+"/icons")){
  + paths << xdd[i]+"/icons";
  + }
  + }
  + //Now get all the icon themes in these directories
  + QStringList themes, tmpthemes;
  + QDir dir;
  for(int i=0; i<paths.length(); i++){
  - if( !QFile::exists(paths[i]) ){ continue; }
  - QDir dir(paths[i]);
  - QStringList tmp = dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name);
  - for(int j=0; j<tmp.length(); j++){
  - if(QFile::exists(paths[i]+tmp[j]+"/cursors")){
  - out << tmp[j]; //good theme - save it to the output list
  + if(dir.cd(paths[i])){
  + tmpthemes = dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name);
  + for(int j=0; j<tmpthemes.length(); j++){
  + if(tmpthemes[j].startsWith("default")){ continue; }
  + if( QFile::exists(dir.absoluteFilePath(tmpthemes[j]+"/cursors")) ){ themes << tmpthemes[j]; }
  }
  }
  }
  - return out;
  + themes.removeDuplicates();
  + themes.sort();
  + return themes;
  }
  //Save a new theme/color file
  