Чому ...
У цій відповіді я зосереджуюсь на думці, оскільки ви вказали це як свою ключову заяву у питанні.
Дивлячись на вихідний код, діалогове вікно Save-As встановлює лише ім'я файлу за замовчуванням. Оскільки папка не визначена, бібліотеки GTK3 припускають, що нещодавно використовувані папки - це перша папка, яка відображатиметься в діалоговому вікні.
Програми GTK3 повинні явно встановити папку для першого пошуку в.
Особисто я думаю, що папку за замовчуванням для evince слід визначити - як таку слід подавати це на bugzilla як запит про помилку / список побажань.
Як ...
Нижче наведено один із способів примусити переконатись за замовчуванням до папки " Документи", а не попереднього використовуваного .
Підсумовуючи, джерело змінюється, щоб отримати папку « Документ за замовчуванням» і встановлювати це як папку за замовчуванням для діалогового вікна « Зберегти як» .
встановити основні інструменти розробки
sudo apt-get install devscripts build-essential fakeroot
отримати джерело
cd ~/Downloads
mkdir build
cd build
apt-get source evince
cd evince*
внести зміни
Відкрийте ev-window.c
gedit shell/ev-window.c
Скопіюйте та вставте наступне у файл у місці, показаному на зображенні
const gchar *folder;
folder = g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS);
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (fc),
folder ? folder : g_get_home_dir ());
Збережіть і закрийте gedit
дайте йому унікальну назву пакета
Гаразд, нам потрібно дати унікальну назву пакету, щоб запобігти заміні оновлень сховища зміненого пакета
gedit debian / changelog
тепер додайте +yourname
версію верхнього рядка та збережіть
тобто evince (3.2.1-0ubuntu2+fossfreedom)
складіть пакет
sudo apt-get build-dep evince
debuild -us -uc
Зверніть увагу: це завантажить залежність 161 Мб
Іди на каву ... і, мабуть, на обід!
cd ..
sudo dpkg -i evince_3.2*.deb
Як осторонь - щоб уникнути оновлення нової версії evince в майбутньому, використовуйте синаптичний, щоб закріпити цю версію evince.