summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* properties-window: Stop using NautilusMimeApplicationChooser classApoorv Sachan2020-08-052-11/+384
| | | | | | | | | | | | | | | | The template UI definition has the Open With tab empty. This is because its contents come from the NautilusMimeApplicationChooser widget. But a separate abstraction for choosing appications based on MIME types isn't required as GTK provides GtkAppChooser. The other widgets can be neatly tucked away in the UI built using XML templates to achieve the same results, and at the same time allowing the open-with page to be customizable in Glade. Some functions are adapted from mime-application-chooser.c, but modified to remove any dependency on that class.
* properties-window: Add "Open With" tab to templateApoorv Sachan2020-08-052-10/+33
| | | | | | This commit only creates outer container of the Open With tab. Inner widgets are ported in the next commit.
* properties-window: Port "Change Permissions..." dialog to GtkBuilderApoorv Sachan2020-08-053-41/+190
| | | | | | | | | | | | "Change Permissions of Enclosed Files" dialog is now built using XML UI definition. This is present as a seperate .ui file apart from nautilus-properties-window.ui because a .ui file file containing a widget declared as a template cannot have other external widgets to be built independently from the template. This .ui file is not produced or editable usingg Glade as it doesn't recognize "action" type children as found in GtkDialog. This issue is already reported in https://gitlab.gnome.org/GNOME/glade/-/issues/392
* properties-window: Populate remaining grid rows from templateApoorv Sachan2020-08-052-56/+174
| | | | | The dialog the "Change Permissions for Enclosed Files…" button opens is going to be ported in the next commit.
* properties-window: Populate Owner, Group and Others rows from templateApoorv Sachan2020-08-052-78/+503
| | | | | | | | | | | | | | | | | | Combo boxes are empty in the template. Their models and renderers are still handled programatically, because porting them posed many issues: - User lists and groups lists are not staic. - Permissions list stores have a column for permissions enum. While we can use the enum value symbol in C, we would have to use a numeric value in Glade, which is going to be quite obscure and hard to document. - Porting the models to GtkBuilder UI definition isn’t really improving hackability / design-ability much because of how Glade handles it. - The comboBox itself is already defined in the .ui file, so it’s possible to tweak the design even if the comboBoxes look empty It would make things more complicated, so it’s more reasonable to let the code handle this.
* properties-window: Add conditional prompt labels to the templateApoorv Sachan2020-08-052-10/+59
| | | | Also document the code generating label text containing file names.
* properties-window: Add Permissions tab outer containers to templateApoorv Sachan2020-08-052-25/+57
| | | | Internal widgets will be populated from template in the next commits.
* properties-window: Add volume usage grid to templateApoorv Sachan2020-08-052-123/+222
| | | | | | The skeleton, layouting of grid cells, and styling of widgets inside the volume usage widget is done in the template. Only the GtkDrawing areas are drawn using code, in callbacks for ::draw.
* properties-window: Populate all rows in templateApoorv Sachan2020-08-052-142/+537
| | | | Exception: the usage widget continues to be constructed in our own code.
* properties-window: Populate Name row from templateApoorv Sachan2020-08-052-83/+73
| | | | | | | | | | | We have been creating either an entry or a label for the name field, depending on whether we were able to edit the name or not. In GtkBuilder UI definitions we cannot do this anymore, as we have to define and build both the entry and the label. So, in order to only show the one we want on each situation, we are introducing a GtkStack to contain both.
* properties-window: Define icon widget in templateApoorv Sachan2020-08-052-40/+57
| | | | | | | | | | | The GtkImage that displays the window icon may or may not be contained by a GtkButton, depending on whether we were able to set a custom icon. In GtkBuilder UI definitions we cannot do this anymore, as we have to set a parent for the image widget from the start. So, define both a simple image and a button with an image, and pack them in a GtkStack to only show the button when appropriate.
* properties-window: Add Basic tab containers to templateApoorv Sachan2020-08-052-18/+92
| | | | | | | | | This commit obtains the outer containers of the Basic page from the widget template UI definition. A new GtkBox to pack the icon widget is included. The inner widgets are ported to the UI definition in the next commits.
* properties-window: Add composite widget templateApoorv Sachan2020-08-053-19/+64
| | | | | | | | | For now, only the outermost containers, GtkWindow down to GtkNotebook, have been defined in the GtkBuilder UI file. The Basic, Permissions, and Open With tabs, along with their content, are still built and inserted programaically. They are going to be ported accross the next series commits.
* properties-window: Restore close on press 'Esc' functionalityApoorv Sachan2020-08-051-0/+7
| | | | | | | | | | NautilusPropertiesWindow usec to be a GtkDialog subclass, inheriting the "close" signal, which was leveraged to implement close on Esc. However as GtkWindow doesn't feature a "close" signal natively, and NautilusPropertiesWindow now subclasses GtkWindow, it needs to be seperately defined and attached to a signal handler to restore the functionality.
* properties-window: Inherit from GtkWindow instead of GtkDialogApoorv Sachan2020-08-052-29/+8
| | | | | | | | | | | | | | The properties window has been subclassing GtkDialog since long ago. GtkDialog features an action area where, historically, the properties window added Help and Close action buttons. These action were dropped when a headerbar was adopted.[1] Moreover, we want to port the Properties window to a GtkBuilder UI definition, which GtkDialog makes harder to achive. Subclassing GtkWindow fits this use case much better. [1] d8a8ab3b66a0a4849e2f9cd17e96f86f85541dee
* progress-info: Prevent crashes when job is cancelledOndrej Holy2020-08-041-36/+10
| | | | | | | | | | | | In order to prevent deadlock when cancelling operations, new thread were added by commit 2db9a295. However, this introduce various races. One of them has been fixed by commit 45c7c967. However, I am convinced that there is still a race when finalizing. One way to fix it is the usage of g_thread_join. But I think that it would be better to avoid the deadlock another way. Let's instead remove the problematic thread and call g_cancellable_cancel without the lock held. Fixes: https://gitlab.gnome.org/GNOME/nautilus/issues/124
* Update Persian translationDanial Behzadi2020-07-291-221/+221
|
* triage-policies: Drop @mentionsAntónio Fernandes2020-07-251-2/+0
| | | I get an email anyway, and Carlos is not working on nautilus nowadays.
* Update Brazilian Portuguese translationRafael Fontenelle2020-07-241-738/+772
|
* Update Catalan translationJordi Mas2020-07-231-5/+5
|
* Update Chinese (China) translationBoyuan Yang2020-07-211-27/+27
|
* file-operations: don't auto-escape semicolonignapk2020-07-131-1/+1
| | | | | | | | | Nowadays fat filesystems are usually mounted with vfat driver that supports long filenames, which allow semicolon. Since there is no easy way to determine which driver was used and msdos is a corner case, make the assumption so the character is not auto-escaped when not necessary.
* file-operations: auto-escape filenames on fuseblk mountsignapk2020-07-131-0/+5
| | | | | | | | | | | Currently when copying files that have reserved characters in their names to NTFS or exFAT filesystems mounted using FUSE, the process will fail. The fuseblk filesystem type could be of any type in theory, but in practice is usually NTFS or exFAT, so make the assumption in pragmatic way to solve this issue. Closes #1343
* file-operations: auto-escape filenames on native ntfs mountsignapk2020-07-121-0/+1
| | | | | | | | | | | Currently when copying to NTFS filesystem files that have reserved characters in their names, the process will fail. There is already code in place to handle this situation for FAT by replacing invalid characters with underscores, so handle this situation in similar fashion for NTFS as well. Closes #1343
* Updated Lithuanian translationAurimas Černius2020-07-121-742/+775
|
* window-slot: Use accessor function to get current locationSachin Daluja2020-07-121-5/+8
| | | | | | | | In function update_search_information() which may be called when the slot is in the process of updating it's location. Use the location accessor function nautilus_window_slot_get_current_location() which returns the correct location when the slot is in the process of updating it's location related data structures.
* window, window-slot: Save and restore navigation historySachin Daluja2020-07-123-7/+138
| | | | | | | | | | When a new window slot instance replaces the existing one to handle the new location. This allows back and forward history lists to be preserved when the window switches between instances of different window slot classes. Closes https://gitlab.gnome.org/GNOME/nautilus/-/issues/32
* window-slot: Rename RestoreTabData to NautilusNavigationStateSachin Daluja2020-07-123-23/+28
| | | | | | | This struct is going to be used to also restore navigation state when replacing the active window slot in order to handle other-locations:// Also enhance it to also save and restore the current location bookmark.
* window: Streamline RestoreTabData memory managementAntónio Fernandes2020-07-123-20/+18
| | | | | | | | | | When restoring the back and forward lists, we make a deep copy only to free the data immediately afterwards. Instead of reallocating the lists unnecessarily, let's just steal them. Also, use g_queue_free_full() to make free_restore_tab_data() a proper GDestroyNotify; also define it in window-slot.c, where it belongs.
* Update Friulian translationFabio Tomat2020-07-121-742/+759
|
* files-view: Remove custom signal handler disconnectionJoshua Lee2020-07-081-43/+10
| | | | | | | GLib's new g_clear_signal_handler() allows us to concisely disconnect signal handlers, negating the need for custom functions to do the same. Fixes: #1522
* general: Clean up signal handler disconnectionJoshua Lee2020-07-0814-116/+38
| | | | | | | Make use of GLib's new g_clear_signal_handler() function to simplify nautilus' signal handler disconnection and reduce unneccessary code. Fixes: #1522
* build: Bump GLib versionJoshua Lee2020-07-081-1/+1
| | | | This is required to avail of g_clear_signal_handler().
* Update Turkish translationEmin Tufan Çetin2020-07-061-60/+60
|
* gtk: Update to the latest codesOndrej Holy2020-07-033-2/+9
| | | | | | | | GTK-based codes are not up-to-date. Let's run gtk-code-generator.sh to update them. But also update the script to remove the unwanted marshalers. Finally, this doesn't bring any functional changes, but it adapts our script to the latest GTK codes. Let's add a comment in meson.build to not forget doing this regularly...
* Release version 3.37.33.37.3Ondrej Holy2020-07-033-2/+7
|
* Update Kazakh translationBaurzhan Muftakhidinov2020-07-021-684/+690
|
* Update Kazakh translationBaurzhan Muftakhidinov2020-06-261-686/+683
| | | | (cherry picked from commit 7d59c2cb8bb59d6261450596781f863e79c15132)
* file: Ability to change file-owner in admin:/// backendApoorv Sachan2020-06-241-2/+2
| | | | | | | | Running nautilus as root is no longer recommended/supported. Priviledged operations like changing file owner, while running as non-root are supported by the admin backend. Closes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1534
* Update Chinese (China) translationBoyuan Yang2020-06-231-1511/+1847
|
* Updated Slovenian translationMatej Urbančič2020-06-221-681/+704
|
* Fixed bad French translationClaude Paroz2020-06-191-1/+1
| | | | Fixes https://gitlab.gnome.org/Teams/Translation/fr/-/issues/6
* Update Kazakh translationBaurzhan Muftakhidinov2020-06-151-863/+927
|
* appdata: Update outdated release listOndrej Holy2020-06-132-5/+2
| | | | | | | | The list of releases is outdated, which is probably why GNOME Software and "flatpak info" shows version 3.32.1 for our nightly bundles, although the About dialog shows something completely different. Let's replace the list of outdated releases with just the current one. Also add comment in meson.build to not forget about it next time.
* appdata: Use mailing list address as update contactOndrej Holy2020-06-131-1/+1
| | | | | The update contact points to our previous maintainer. Let's use the mailing list address instead to be always valid...
* Update Indonesian translationKukuh Syafaat2020-05-301-798/+821
|
* Release version 3.37.23.37.2Ondrej Holy2020-05-292-1/+9
|
* search-engine-tracker: Expand macro as stringAntónio Fernandes2020-05-291-1/+1
| | | | | | | | | | | We have changed the FILENAME_RANK constant from being used as a format string argument to be concatenated as a string during compilation, as detailed in 7f00ede9b410e88106cef34c634cb46e46015e37 However, I have forgotten to quote the constant, which otherwise cannot be treated as a string to concatenate. Fix that now.
* Revert "Fixing the bug from the issue #1412"António Fernandes2020-05-291-2/+2
| | | | | | | This reverts commit 01392db750bf6d9b94665e5507b7785924a276c4. Unwanted changes from another branch that I've pushed together with the desired fixm from the previous commit.
* search-engine-tracker: Fix broken query under some localesCristiano Nunes2020-05-291-4/+3
| | | | | | | | | | | | | | | | We set a 5.0 rank for filename matches in the SPARQL query as a float argument in a format string. However, the floats in format strings are translated with the decimal separator from the locale. This means in some locales the rank has a comma instead of a dot, which results in a query error. In turn, this effectively broke the shell search provider. Instead of using a format specifier and passing the value as an argument, we should just use compile-time concatenation to insert '5.0' in the query unmodified. Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/1412 and #1437