https://bugs.kde.org/show_bug.cgi?id=403751

Thomas Fischer <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|defbd6867137ca1669911601594 |https://commits.kde.org/kbi
                   |5e81fcad99b2c               |btex/388b867499d03403c7b60f
                   |                            |fed8b6b9ee12993eca
   Version Fixed In|                            |0.9

--- Comment #4 from Thomas Fischer <[email protected]> ---
Git commit 388b867499d03403c7b60ffed8b6b9ee12993eca by Thomas Fischer.
Committed on 27/02/2019 at 19:49.
Pushed by thomasfischer into branch 'kbibtex/0.9'.

Avoid accessing configuration file all the time

In commit 36040dc280ccb3ad, a first step towards a centralized configuration
system was undertaken. A single static function in a central class became
available to probe whether the current bibliography system was BibTeX or
BibLaTeX.
To allow for synchronization between multiple instances of KBibTeX programs and
KParts, configuration values were read from configuration files every time this
setting got queried.
This approach introduced a noticeable performance penalty as reported in bug
report 403751, requiring a rewrite of this code section.

To avoid reading/writing from/to configuration files at every function call got
avoided by making use of KConfigWatcher, a DBUS-based solution to notify other
processes' instances of a KSharedConfig object about changes made to the
configuration. Only if such notifications get received a re-read from
configuration
files is necessary, otherwise a cached setting value is used.

Those changes also required to refactor previously static functions of class
Preferences to become regular functions called on a singleton instance of
Preferences.
FIXED-IN: 0.9

M  +1    -1    CMakeLists.txt
M  +2    -2    src/config/bibtexentries.cpp
M  +2    -2    src/config/bibtexfields.cpp
M  +85   -18   src/global/preferences.cpp
M  +22   -6    src/global/preferences.h
M  +2    -2    src/gui/config/entrylayout.cpp
M  +2    -2    src/gui/element/elementwidgets.cpp
M  +2    -2    src/gui/element/findpdfui.cpp
M  +3    -3    src/gui/preferences/settingsgeneralwidget.cpp
M  +2    -2    src/io/fileimporterris.cpp
M  +2    -2    src/networking/associatedfiles.cpp

https://commits.kde.org/kbibtex/388b867499d03403c7b60ffed8b6b9ee12993eca

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to