Currently, Nautilus is able to save the last window position when it’s
closed. That is broken in certain cases (#197 and multi-monitor setups
in general) and therefore window placement is best left to the window
manager.
This commit does the following:
* Canonicalize the style:
* Use two-space indentations.
* Un-Autotools-ify option names.
* Don’t align arguments, simply increase indentation.
* Don’t add a space before opening parenthesis in calls.
* Remove unused variables.
* Remove unused dependencies.
* Remove config.h.meson.
* Optimize dependencies.
* Use disabler functionality for libselinux dependency, to save lines.
Currently, the process for getting the common prefix of a list of file
names is a tad too greedy:
1. Find the common prefix of all the strings.
2. Strip the extension from the prefix.
3. Strip trailing punctuation.
Step 2 may strip dots if there’s trailing whitespace and step 3 may
strip useful punctuation (e.g. parentheses). This commit reworks the
process as such:
1. Strip the extension from all the file names.
2. Find the common prefix of all the strings.
3. Trim trailing whitespace.
Fixes#174.
As the eel_gtk_message_dialog_set_details_label function is only used once,
we can safely remove it and do everything inside of nautilus-file-operations.c.
Thus, we deleted the eel function and we do everything inside the
do_run_simple_dialog function and remove the function header from the header
file. We add the label straight into the content_area of the dialog box.
https://bugzilla.gnome.org/show_bug.cgi?id=598671
Creating directories within read-only ones is not allowed and appropriate
error messages pop up.
Trying to create a directory within a read-only directory opens a window
showing the error. Within the window, an expander shows the error details.
Whenever the expander is clicked, the window moves unexpectedly.
We need to fix this as the behaviour is not normal and doesn't look good.
In order to fix the issue, we removed the expander and included the error
details as a label inside the dialog box itself.
https://bugzilla.gnome.org/show_bug.cgi?id=786212
This patch avoids the use of gdk_screen_get_width,
gdk_screen_get_height,gdk_screen_width,gdk_screen_height, functions
which are deprecated since 3.22 version of GDK library.
Also deletes the eel_pop_up_context_menu function since is not used
in the source code.
https://bugzilla.gnome.org/show_bug.cgi?id=780283
Since it’s 2017 already, Nautilus should use a build system that doesn’t
take longer to set up the build than it takes to actually build. An
observed build time using Ninja of roughly one-fifth of what it took
Autotools is more than reason enough to add support for Meson. Along
with that, this commit adds a convenience script to generate a tarball
for releases, since we use libgd as a submodule and Meson does not
handle source distributions.
https://bugzilla.gnome.org/show_bug.cgi?id=778167
This commit removes git.mk and adds hand-written gitignore files. That
is needed to ignore build/, which is the directory of choice for Meson
builds.
https://bugzilla.gnome.org/show_bug.cgi?id=778167
'Other locations' is already listed in the sidebar. So there is no
need for allowing the user to bookmark 'Other Locations'.
This commit makes the bookmark button in toolbar insensitive for
'Other Locations'.
https://bugzilla.gnome.org/show_bug.cgi?id=771163
If a file had the extensions .tar.bz or .tar.xz, the function
eel_filename_get_extension_offset would identify only .bz or .xz as
an extension.
To fix this, .xz and .bz were added among the other special cases.
https://bugzilla.gnome.org/show_bug.cgi?id=771018
And make the style of Nautilus the same for all files.
Hopefully we can fix all the style issues we can find in the next days,
so expect a little of movement on this.
https://bugzilla.gnome.org/show_bug.cgi?id=770564
New Folder with Selection currently doesn't offer a folder name. It
would be better if it suggested a folder name based on the files that
are selected.
With this change, it now looks for a common filename prefix of the
selected files, and pre-populates the folder name entry with that. If no
common prefix is found that is greater than 3 characters long, the
folder name entry will be left blank.
https://bugzilla.gnome.org/show_bug.cgi?id=747907
AtkComponentIface's {add,remove}_focus_handler should not be overridden,
since ATK 2.9.4, as atk_component_{add,remove}_focus_handler() are
deprecated.
This commit removes deprecated virtual function overrides.
https://bugzilla.gnome.org/show_bug.cgi?id=762236
Some GdkDisplay operations have been deprecated in GDK 3.20.
This commit replaces the deprecated code in eel_canvas_item_grab() and
eel_canvas_item_ungrab() functions with new GdkSeat operations.
https://bugzilla.gnome.org/show_bug.cgi?id=762235
Vim and emacs modelines are used to specify some of the code style in the code.
However, this is misleading and poorly supported since nautilus had a mix of
code style for some time.
Also, the mode lines doesn't specify the whole code style, so we will need to
use a different tool as well to specify the whole code style.
For that, we can just use a different tool for everything.
So remove the mode lines, and in a short future we will reestyle the nautilus
code to have a single code style, and use a tool like editorconfig to specify
the whole code style.
This seems no longer necessary. It looks like it was done to avoid
flashing when redrawing, but probably this was fixed sometime in the
past, so a transparent background in a widget doesn't flash anymore.
https://bugzilla.gnome.org/show_bug.cgi?id=761965
Instead of a generic function to filter GLists, implement a simpler
and clearer filter function for file lists, since it was the only
use of that function.
In this way the ownership of files and directories are clearer
since it always returns a new allocated nautilus file list, and also
it always uses nautilus_file_ref instead of the generic g_object_ref
to match what we do everywhere else in nautilus, so it's not confusing
when breaking at nautilus_file_ref/unref for ref counting debugging.
This change fixes multiple leaks on nautilus files catched by valgrind.
GtkMisc is deprecated since 3.14 release, being replaced
by GtkWidget's halign & valign, and GtkLabel's xalign &
yalign.
Nautilus, however, did not updated its codebase to match
the new deprecations.
Remove any reminescent gtk_misc* calls from the codebase.
We already depend on automake 1.9, so using the replacement of
INCLUDES (AM_CPPFLAGS) won't hurt, especially now that it is
a warning shown by default since automake 1.13, as evidenced by
this build log of mine:
Makefile.am: installing './INSTALL'
eel/Makefile.am:5: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
eel/Makefile.am: installing './depcomp'
parallel-tests: installing './test-driver'
libnautilus-extension/Makefile.am:7: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
libnautilus-private/Makefile.am:5: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
nautilus-sendto-extension/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/Makefile.am:13: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
test/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Signed-off-by: Alexander Larsson <alexl@redhat.com>
Add another input-only child to the parent GdkWindow's for events and
imcontext. Since we will be painted in a GtkLayout, using only one
input-only window won't work well with scrolling, but this way we can
ensure that whatever GdkWindow the XIM engine will try to ensure native,
it won't be our (floating) drawing window.
https://bugzilla.gnome.org/show_bug.cgi?id=686053
Use the same behavior of GtkEntry i.e. create an input only GdkWindow
for the text area. This avoids the text area becoming black when it's
used together with the XIM module.
https://bugzilla.gnome.org/show_bug.cgi?id=686053
Clean up a11y code and make sure inheritance for
EelCanvasAccessible->NautilusIconContainerAccessible and for
EelCanvasItemAccessible->NautilusIconCanvasItemAccessible work properly.
This makes the ATK state machinery in EelCanvasItemAccessible work
again, which fixes
https://bugzilla.gnome.org/show_bug.cgi?id=677509
If the final class does not override the get_accessible method, it will
inherit it from the parent class; what we're interested in is the first
class for which get_accessible is != from our class get_accessible.
For EelEditableLabel, we need to create an object derived from the
accessible type of the parent class; since that will be a
GtkWidgetAccessible, which is private, we can't just subclass it using
the regular GObject mechanisms.
This functions creates a derived GType by peeking at the parent
accessible class and type.
https://bugzilla.gnome.org/show_bug.cgi?id=672498
Ignore button press/release events for mouse buttons greater
than 5 so allowing forward and backward mouse buttons to work
over icons.
Part of bug 660006
Signed-off-by: Nelson Benitez Leon <nbenitezl@gmail.com>
Not queueing resizes may play oddly with the size request caches in
GTK+, resulting in gtk_widget_get_preferred_width/height returning
0 even after the canvas was populated.
https://bugzilla.gnome.org/show_bug.cgi?id=667831