86cc16d15d
gui: IPCPreviewWorker(): Don't allocate mapfunctor on heap
2022-05-29 10:44:19 +02:00
69c2956a1f
gui: Add label showing total number of preview pages
2022-05-29 10:44:19 +02:00
82a4205c23
gui: mainwindow: Fix preview page number calculation
...
The paging now works on the actual pages to be rendered.
2022-05-29 10:44:19 +02:00
8d96f6e4ce
ipc: Place socket in /tmp/.looqs/, remove ipc path settings
2022-05-29 10:44:19 +02:00
d39157b58d
gui: main: Enable exile.h for IPC preview generation
2022-05-29 10:44:19 +02:00
a43ab169b5
gui: Begin simple IPC error reporting
2022-05-29 10:44:19 +02:00
ee19692a7a
gui: Open files/previews directly without IPC again
...
Since the main GUI process is not sandboxed again
2022-05-29 10:44:19 +02:00
773325f2de
gui: ipc: Support cancellation of preview generation
2022-05-29 10:44:19 +02:00
065dcf8906
gui: main: Kill IPCServer process on exit
2022-05-29 10:44:19 +02:00
13f28c37c6
gui: mainwindow: Use new IPCPreviewClient
2022-05-29 10:44:19 +02:00
8f2e77b152
gui: Introduce IPCPreviewClient
2022-05-29 10:44:19 +02:00
3bdcb76d8e
gui: PreviewResult: Add serialization() methods for IPC
2022-05-27 09:29:28 +02:00
ee18142e36
gui: PreviewGenerator*: Wrap PreviewResult in QSharedPointer
2022-05-27 09:28:21 +02:00
3e03fed1a2
gui: IpcServer: Use IPCPreviewWorker
2022-05-27 09:26:37 +02:00
6439adffc6
gui: Begin IPCPreviewWorker
2022-05-27 09:26:03 +02:00
02642a147a
gui: Retire IPCClient and PreviewWorker
2022-05-27 09:24:42 +02:00
fe29641d0a
IpcServer: Remove docOpen(), fileOpen(). MainWindow will do it
...
As it is no longer subject to sandboxing as a whole, it is not
restricted and thus, should call these functions itself
2022-05-17 19:23:03 +02:00
830226ae59
RenderConfig: Add serialization, basically for IPC
2022-05-17 19:20:06 +02:00
6a5cb69e27
gui: Add RenderTarget struct, an IPC helper class
2022-05-17 19:19:02 +02:00
b137dec434
gui: indexer tab: Show filepicker dialog when corresponding button clicked
2022-05-03 16:20:06 +02:00
f67a37bc21
GUI: Disable general sandbox due to inpracticability
...
Qt is usually built with Accessibility and D-Bus. If D-Bus
connections work, a bypass should be considered trivial.
If we block D-Bus, we experience quite some slowdowns in
certain contexts. That's because Qt makes D-Bus connections
for accessibility features etc. They appear to run into timeouts,
but this slows down things. Sandboxing also makes things
like showing (native) file picker dialogs harder.
Sandboxing efforts will focus on the critical paths such as
the existing Indexer sandbox and the to be implemented sandboxing
for preview generation.
We keep no_new_privs for now as chances are that this shouldn't hurt.
2022-05-03 15:56:08 +02:00
4a492fb356
shared: ParallelDirScanner: Remove leftover debug output
2022-04-28 23:45:56 +02:00
9d160ed7a0
gui: Add icon
...
Not the best on dark themes, better than nothing for now.
2022-04-28 09:13:34 +02:00
def766ba67
shared: common: On first start, try to set a rasonable pdfviewer value
...
May not be users default, but better than nothing for now.
Issue: #27
2022-04-25 23:01:11 +02:00
0d01fa977d
shared: LooqsQuery: Consider " a part of the loneword
...
Strictly speaking a hack, and we may probably need to
add more chars here.
This mainly fixes the difference between:
"one two"
and c:("one two")
In the first case they are "lonewords", the " does
not get picked up. Then, the search results are something
not expected.
2022-04-25 22:27:46 +02:00
b229d9a68d
cli: CommandUpdate: Add missing clear of files vector
2022-04-25 22:22:40 +02:00
a0ced3f7d0
add LICENSE
2022-04-24 20:07:25 +02:00
a8184191b3
cli: Exit explicitly on unknown command
2022-04-24 19:40:43 +02:00
a132485924
gui: enableSandbox: Don't unshare network due to slowdowns
...
The indexer is quite slow with unshared network namespaces. It appears something in
Qt needs it as IPC or whatever. Seeing also dbus-related errors:
Issue: #33
So disable it for now.
2022-04-24 19:40:43 +02:00
9b51e00737
Rename leftovers that were forgotten in 645903ed6b
2022-04-24 19:40:43 +02:00
d2d576e617
gui: Call enableSandboxing() after ensureConfigured() so all paths are guaranteed to exist
2022-04-24 19:40:43 +02:00
30414e3da3
Cli: CommandAdd: Correct progress print
2022-04-24 19:40:43 +02:00
8734d56d09
update README
2022-04-24 19:40:43 +02:00
08da6b4349
gui: main: Remove vows from exile policy
...
SandboxedProcessor is not launched via IPCServer at this point.
The vow set is already very big and SandboxedProcessor
would require exec too.
So use exile default policy and add some path permisisons.
Once SandboxedProcessor is handled by IPC and preview generation
is also exiled separately, it has to be reevaluated whether
it makes sense for vows to return.
2022-04-24 19:40:43 +02:00
629c1efba5
IpcServer: Add addFile()
2022-04-24 15:52:20 +02:00
d73674937d
gui: Begin support to also preview results in plain text files
2022-04-24 15:52:20 +02:00
59aa02f0cd
gui: MainWindow: handleSearchResults: Use PreviewGenerator::get
2022-04-24 15:52:20 +02:00
1536781bda
gui: PreviewGeneratorMapFunctor: Use PreviewGenerator::get()
2022-04-24 15:52:20 +02:00
57bb5c48c8
gui: PreviewGenerator: Add get()
2022-04-24 15:52:20 +02:00
84e13e432b
shared: common: Introduce ipcSocketPath()
2022-04-24 15:52:20 +02:00
e8f095f821
shared: sqlitedbservice: Call prepare(), don't pass query in constructor for consistency
2022-04-24 15:52:20 +02:00
c99827e854
shared: FileScanWorker: Catch correct exception type
2022-04-24 15:52:20 +02:00
4d0d9ba9c6
main: sandbox: Add clone vow, Use exile_vows_from_str()
...
Fresh ubuntu 22.04 uses clone3(). thread vow is not enough anymore.
Maybe Qt uses it now, who knows, let's just allow it for the time being.
2022-04-24 15:52:20 +02:00
e3440beae7
shared: sqlitesearch: Avoid joining content table more than once
2022-04-24 15:52:20 +02:00
8194476fa6
shared: sqlitesearch: Only order by rank if token is FILTER_CONTENT_CONTAINS
2022-04-24 15:52:20 +02:00
2a024a9b40
gui: Improve conditions where progressbar visible, minor useability improvemnets
2022-04-24 15:52:20 +02:00
0503325c47
gui: Indexer tab: Save/Restore paths to/from settings
2022-04-24 15:52:20 +02:00
62d3eac498
gui: Properly restore other widgets after index has finished
2022-04-24 15:52:20 +02:00
45de97d8fb
gui: Begin cancellation of Indexer
2022-04-24 15:52:20 +02:00
622916db04
gui: Implement 'Delete' button in Indexer tab
2022-04-15 21:06:56 +02:00