Project

General

Profile

Bug #1258

Принудительная обработка скачанных сущностей.

Added by Mellon about 7 years ago. Updated about 7 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
09/12/2013
Due date:
% Done:

0%

Estimated time:
Reported in:
master

Description

На данный момент происходит принудительная автоматическая обработка скачанных и сохраненных на фс по произвольному пути через cstp сущностей, вне зависимости от наличия более развитых средств инициирования обработки таких сущностей.

Expected result:
При наличии модулей AN, Kinotify и при срабатывании правила на событие завершения загрузки, автоматическая обработка загруженной сущности должна подавляться отдавая преимущество обработке этой сущности по запросу от пользователя путём нажатия на кнопку "Handle..." в уведомлении.

В общем, если уж так и нужна автоматическая обработка и раз ещё до скачивания известно mime-type сущности, то можно же предлагать не только её сохранение, но и автоматическое открытие внутренним или внешним хендлером на выбор, которое будет подразумевать
скачивание во временный кэш (без запроса у пользователя пути сохраняемого файла) + его автоматическую обработку.

Одновременно можно вести редактируемый из настроек список mime-types и выбранных для их обработки хендлеров, если в диалоге скачивания отмечено "Запомнить выбор" и, соотвественно, более не переспрашивать запомненные соответствия.

Actual result:
После сохранения на фс по произвольному пути сущности для которой имеется внутренний хендлер происходит инициализация её обработки, заключающееся либо в обработке соответствующим хендлером. либо в открытии диалога по выбору хендлера в то время как наличие кнопки "Handle..." в уведомлении подразумевает, что такая обработка будет происходить только по запросу от пользователя.

STR:
Примеры.
Открыть список литературы с прямыми ссылками на pdf-файлы из какой-нить статьи.
Прощелкать по десятку ссылок и поставить их на загрузку.
Огрести десяток открытых вкладок монокля, или десяток окон с предложением открыть эти файлы в монокле.
или
Открыть ссылку на пдф-документ в онлайн-просмотрщике, прочитать её и убедиться, что статья полезная и нужно её схоронить.
Сохранить её на диске
Огрести вкладку монокля, или окно с предложением открыть статью.

System information:
LeechCraft 0.5.95-2375-g1a7be78
Built with Qt 4.8.5, running with Qt 4.8.5
Running on: NAME=Gentoo x86_64 3.10.5-gentoo-r1 #1 SMP PREEMPT Thu Aug 8 16:39:36 MSK 2013

#1

Updated by 0xd34df00d about 7 years ago

Проблема в том, что с точки зрения ядра AN/Kinotify, выводящие уведомление в ответ на скачанный файл, и Monocle, открывающий свой таб в ответ на скачанный файл, технически не различаются — и те, и те просто обрабатывают новую появившуюся сущность. И мне не приходит сходу в голову способ построить достаточно общее и абстрагированное разделение, чтобы и указанный случай корректно разделялся.

#2

Updated by 0xd34df00d about 7 years ago

Ну и да, кроме того, mime-тип до скачивания известен сильно не всегда, и опыт показывает, что опираться на него решительным образом невозможно — часто встречается application/octet-stream для торрентов, mobi и вообще всего подряд, application/ms-word по любому поводу с гуглодокса, xml-типы для FictionBook, и так далее. Кроме того, и LC не оперирует mime-типами при выборе обработчика, предпочитая более глубокую инспекцию.

В сущностях личкрафтов, впрочем, есть флаг IsDownloaded, который выставляется для только что скачанных файлов. Например, вместо добавления опции в ядро можно добавить опцию в Monocle — do not handle just downloaded files.

Но мне такое решение не нравится, пахнет костылем. Нужно больше абстракций.

Also available in: Atom PDF