[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/work/kfontinst/dbus
From: Craig Drummond <craig () kde ! org>
Date: 2009-09-08 12:54:23
Message-ID: 1252414463.251624.23970.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1021169 by craig:
Poll fontconfig every 10 seconds looking for changes.
M +29 -12 FontInst.cpp
M +4 -2 FontInst.h
--- branches/work/kfontinst/dbus/FontInst.cpp #1021168:1021169
@@ -56,7 +56,8 @@
static bool isSystem=false;
static Folder theFolders[FontInst::FOLDER_COUNT];
static const int constSystemReconfigured=-1;
-static const int constTimeout = 5*60*1000;
+static const int constConnectionsTimeout = 5*60*1000;
+static const int constFontListTimeout = 10 * 1000;
typedef void (*SignalHandler)(int);
@@ -126,9 +127,13 @@
}
registerSignalHandler(signalHander);
- itsTimer=new QTimer(this);
- connect(itsTimer, SIGNAL(timeout()), SLOT(timeout()));
- itsTimer->start(constTimeout);
+ itsConnectionsTimer=new QTimer(this);
+ itsFontListTimer=new QTimer(this);
+ connect(itsConnectionsTimer, SIGNAL(timeout()), SLOT(connectionsTimeout()));
+ connect(itsFontListTimer, SIGNAL(timeout()), SLOT(fontListTimeout()));
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
+
for(int i=0; i<(Misc::root() ? 1 : FOLDER_COUNT); ++i)
theFolders[i].init(0==i);
@@ -154,7 +159,8 @@
if(0==folders || folders&(1<<i))
fonts+=theFolders[i].list();
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
emit fontList(pid, fonts);
}
@@ -273,7 +279,8 @@
emit status(pid, result);
}
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
}
void FontInst::uninstall(const QString &family, quint32 style, bool fromSystem, int \
pid, unsigned int xid, bool checkConfig) @@ -349,7 +356,8 @@
emit status(pid, result);
}
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
}
void FontInst::uninstall(const QString &name, bool fromSystem, int pid, unsigned int \
xid, bool checkConfig) @@ -409,7 +417,8 @@
}
}
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
}
void FontInst::move(const Families &families, const QString &dest, bool toSystem, \
int uid, int gid, int pid) @@ -594,7 +603,8 @@
}
}
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
//
// If the system font list has been modified, we cant update our list of fonts \
(or inform the caller) until // the system daemon has completed its reconfigure.
@@ -621,7 +631,7 @@
theFolders[i].saveDisabled();
}
-void FontInst::timeout()
+void FontInst::connectionsTimeout()
{
bool canExit(true);
@@ -640,10 +650,16 @@
if(canExit)
qApp->exit(0);
else // Try again later...
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
}
}
+void FontInst::fontListTimeout()
+{
+ updateFontList(true);
+ itsFontListTimer->start(constFontListTimeout);
+}
+
void FontInst::systemStatus(int pid, int value)
{
KFI_DBUG;
@@ -1047,7 +1063,8 @@
emit status(pid, result);
}
- itsTimer->start(constTimeout);
+ itsConnectionsTimer->start(constConnectionsTimeout);
+ itsFontListTimer->start(constFontListTimeout);
}
void FontInst::addModifedSysFolders(const Family &family)
--- branches/work/kfontinst/dbus/FontInst.h #1021168:1021169
@@ -133,7 +133,8 @@
private Q_SLOTS:
- void timeout();
+ void connectionsTimeout();
+ void fontListTimeout();
void systemStatus(int pid, int value);
void systemFontsAdded(const KFI::Families &families);
void systemFontsRemoved(const KFI::Families &families);
@@ -171,7 +172,8 @@
private:
OrgKdeFontinstInterface *itsSystemInterface;
- QTimer *itsTimer;
+ QTimer *itsConnectionsTimer,
+ *itsFontListTimer;
QSet<int> itsConnections;
QList<int> itsSystemActivePids;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic