[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Re: Incubation Request: Kiview
From: christoph () cullmann ! io
Date: 2024-04-29 11:18:31
Message-ID: b61cd4e5e1939ed76367c37ece2a3e92 () cullmann ! io
[Download RAW message or body]
On 2024-04-29 09:21, Sune Vuorela wrote:
> On 2024-04-28, Méven <meven29@gmail.com> wrote:
>> The immediate goal with this application is to fill this request
>> feature
>> for dolphin :
>> https://bugs.kde.org/show_bug.cgi?id=272539
>> And we can imagine reusing it in many other places potentially.
>
> I just opened 'DocumentViewer' class and spent 5 minutes and got a bit
> scared.
>
> "instant" preview?
>
> Launching a background libreoffice?
> Doing weird command line parsing of libreoffice? and bash pipe grep ?
> Then throwing a generated pdf at qtwebengine and hoping the best?
>
> There is a lot of std::tsring to qstring and back again conversions
>
> There are plenty of std::string deepcopies.
>
> Who deletes ConversionThread ?
>
> If this class is in any way representative of the code quality of the
> app, I really think we should reconsider.
>
> If this class is not representative, then it definitely should be
> architecturally re-done.
Hi,
I gave it a quick look, too, it does stuff like
// Unfortunately this is the only way I've found to close
the Flatpak
// version of libreoffice.
std::string command =
R"(kill $( ps -aux | grep -F "/soffice.bin" | grep -F "
--headless --nolockcheck --norestore --convert-to pdf" | grep -F "
--outdir"| awk '{ print $2 }'))";
QProcess process;
process.setProgram(QStringLiteral("bash"));
process.setArguments(QStringList() << QStringLiteral("-c")
<< QString().fromStdString(command.c_str()));
That will just then kill any kind of libreoffice instances or perhaps
even inject other commands depending what this grep matches.
I tend to agree that this would rather need some major overhaul.
Greetings
Christoph
>
> /Sune
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic