summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-10-23Refactor notification code to remove duplicate functionlukefromdc2-32/+4
The desktop icon eject code required a function in libcaja-private so we no longer need it in caja-application.c
2016-10-22GtkApplication: Notify when ejected volumes safe to unpluglukefromdc3-4/+66
Notify users when an external drive is still writing data on attempt to eject, and again when drive is safe to unmount. Notifications behave as they do in Nemo when ejecting/unmounting a flash drive. Tested with GTK 3.22 and a known slow flash drive. This is in GtkApplication builds only, code is from Nemo. FIXME: build system does not limit libnotify dependency to GtkApplication builds and is rather improvised. Adding libnotify to CORE_MODULES via configure.ac did not work, and using Nemo's changes put -lnotify into CORE rather than ALL libs and that caused build failures on failure to link.
2016-10-22GtkApplication: fix "caja 3.0" messagelukefromdc1-1/+1
This text was borrowed from Nautilus 3.0 commits used in GtkApplication port, where all Nautilus references were changed to Caja
2016-10-16support back and forward mouse buttons to navigateMartin Matuska3-0/+38
Fixes https://github.com/mate-desktop/caja/issues/78 Co-Authored-By: Oliver Joos <[email protected]> Co-Authored-By: Nelson Benitez Leon <[email protected]>
2016-10-14GTK2: Use emanuele-f 's patch for build failure, fix build w/o libuniquelukefromdc12-70/+71
Apply https://github.com/mate-desktop/caja/pull/658/commits/4b36a91af42d8efe0f594a95d28ab8448fd73b31 then fix the selectors in source files to use the boolean selectors for libunique
2016-10-14Fix missed selector change for separating GTK3 and libunique build optionslukefromdc2-1/+3
One selector was not updated in caja-location-bar.c to follow use or nonuse of libunique in GTK3 builds. Fixing this revealed need for a 3-way selector in one place in caja-application.c
2016-10-11Fix accessible object inherritance when used with GTK 3Luke Yelavich1-0/+48
Also disable eel accessibility code that is not needed. Fixes https://github.com/mate-desktop/caja/issues/590
2016-10-09GtkApplication: Disable session management when root/not in MATElukefromdc1-10/+0
Limit session management to non-root sessions within MATE to stop restart loops in root sessions and inablity to kill off Caja in non-mate sessions such as XFCE. Also remove the autostarted hold-in previously used to stop restart loops. egg_sm_client_set_mode only works when called before the main loop starts, thus it cannot be used in GtkApplication startup functions or otherwise later in the program. Note that this commit restores the Caja 3.16 and earlier restart loop in normal mate sessions if a user disables icons on the desktop, then sets exit_with_last_window. The combination is the default for root/not in mate sessions though, so without the ability to set "no restart" later than the start of the main loop, session management outside of MATE and in root sessions has to be disabled.
2016-10-08GTK3: port libunique ->GtkApplication as build time optionlukefromdc13-109/+1253
Add --disable-libunique configuration option for GTK3 builds. This builds a port from libunique to GtkApplication. keep GTK2 builds unchanged Caja can now be build with GTK2 and libunique, GTK3 and libunique, or GTK3 without libunique using GtkApplication instead GtkApplication port Based on cherrypicked nautilus commits from https://github.com/GNOME/nautilus/commit/a8481ee4bd8d34e792d63598fa5efb47736f9de4 main: adapt to GtkApplication changes through https://github.com/GNOME/nautilus/commit/c3382e0415d51082545f277c380d37be160e8d2d application: move nautilus_application_new() to its own function GTK3/GtkApplication builds: add --force-desktop option This is useful for other DE's All: StartupNotify=false in .desktop files, as caja never connects to notification daemons and in GtkApplication builds this causes busy spinning curors
2016-10-08Stop warnings on window-close and 3 warnings on exitlukefromdc2-2/+8
Fix the gsignal warnings on window-close based on https://github.com/mate-desktop/atril/commit/fda33fbeedc0aab64d9479850047d0817d0b38be "Check if handler_id is connected before disconnect" from Atril Also Fix "Source ID XXX was not found..." warnings on closing Caja These three gsources are already gone when Caja exits, their ID's still exist but they cannot be found to remove. The warnings indicate double removal so this code block is just a source of errors. Leave it in place but commented out for now.
2016-10-04GTK3: fix warnings cause by GtkGridlukefromdc1-52/+3
Apply https://github.com/itzexor/nemo/commit/2c60a3edaef10e9ef331740d55d3c45dd366c5db window: remove custom get_preferred_width/height implementation We already take care of the default size when we create the window, and these only break assumptions of the default GtkWindow's handlers. in turn from https://github.com/GNOME/nautilus/commit/da06dfc438e578405d616c48e8e3809d37c908bb Nautilus commit is from Feb 17, 2014 prior to release of GTK 3.14. Could not build against GTK 3.14 over GTK 3.22 system due to mate-desktop errors but should work as Nautilus used it with 3.14. Test builds with GTK 3.16 and 3.22 worked fine, no issues with saved or command line geometry
2016-09-15Fix for #492bl0ckeduser1-0/+3
2016-09-06GTK3.20:fix statusbar deprecation warninglukefromdc1-1/+7
2016-09-06GTK3: Fix last pathbar warninglukefromdc1-27/+18
Replace size request code with padding code borrowed from Nemo. For some reason gtk_widget_set_margin_start(or end) does not throw GTK warnings when called on GTK_WIDGET(button_date->label) while gtk_widget_set_size_request does throw warnings. Neither generates a build warning.
2016-09-05GTK3: Fix pathbar "w/o calling gtk_widget get preferred width" warningslukefromdc1-3/+12
Stop the "allocating size of GtkButton <xxxx> without calling gtk_widget get preferred width/height()" warnings from caja-pathbar's slider buttons
2016-09-05GTK3: fix pathbar pango warningslukefromdc1-1/+9
Fix gtk_widget_create_pango_layout: assertion 'GTK_IS_WIDGET (widget)' failed warning and those descending from it. This does NOT fix the gtk_widget_set_size_request: assertion 'GTK_IS_WIDGET (widget)' failed, which occurs because recent GTK3 versions warn that button_data is not a GtkWidget but still succeed in setting the size. Since GTK 3.22 will be the LAST version of GTK3 this won't break until GTK4 if ever. Taking this out caused the pathbar buttons to jump on bold text so it had to be retained
2016-08-27Update caja-actions.hbkerlin1-1/+0
Duplicate define of "CAJA_ACTION_UP_ACCEL" removed.
2016-08-22drop a large amount of completely unused codemonsta5-49/+0
2016-08-12GTK+-3 property-browser: port GtkTable to GtkGridraveit651-1/+61
2016-08-12GTK+-3 window: port GtkTable to GtkGridraveit654-2/+53
2016-08-10Fix background change crashlukefromdc1-0/+24
Apply https://gist.github.com/raveit65/51b40a20f8836562369fc155a828edc4 to add a "finalize" function to the desktop window and stop background-change crashes after turning icons off-or off and back on. Also match tab styling to that in rest of file, the one difference here from the patchfile.
2016-08-08Fix background rendering in noncomposited caselukefromdc2-36/+126
Apply Alberts Muktupāvels' https://bugzilla.gnome.org/attachment.cgi?id=332444&action=diff to Caja, it just plain works. Remove previous fallback background code. Add GTK 3.21 selectors missed in caja_desktop_window_class_init, clean up a couple tabs
2016-08-04GTK3.21:fix desktop redraw (fm-list-view.c)lukefromdc1-0/+6
2016-08-04GTK3.21:fix desktop redraw (fm-icon-view.c)lukefromdc1-2/+10
2016-08-04GTK3.21:fix desktop redraw (fm-directory-view.c)lukefromdc1-5/+14
2016-08-04GTK3.21:fix desktop redraw (fm-desktop-icon-view.c)lukefromdc1-0/+13
2016-08-04GTK3.21:fix desktop redraw (caja-desktop-window.c)lukefromdc1-2/+16
2016-07-30use GtkAbout instead of MateAboutraveit652-15/+12
2016-07-20GTK 3.21: stop properties window going full heightlukefromdc1-1/+4
Stop the properties window from ballooning to full screen height when built and run with GTK 3.21/22. In GTK 3.21 the "emblems" tab's scrolled window will expand to the entire height of the screen attempting to accomodate all icons unless this is explicitly limited using the new command gtk_scrolled_window_set_max_content_height(). Unfortunately that command is GTK 3.21 and later only, so this forces GTK 3.21 builds to be run only with Gtk 3.21 and later. Thus this is put behind a GTK 3.21 selector and packages built from it must depend on GTK 3.21 and later. Fortunately no distro is going to ship any file manager built with newer GTK 3 than they ship. A GTK 3.21 build of this will actually open in 3.20 but hit the undefined symbol and crash if you select "properties" on any item, exactly as I would expect it to so.
2016-07-14GTK+-3 pathbar: always show the slidersraveit651-2/+2
taken from: https://git.gnome.org/browse/nautilus/commit/src?id=6f6bfde
2016-07-14GTK+-3 pathbar: add slider-button class to slidersraveit651-0/+4
taken from: https://git.gnome.org/browse/nautilus/commit/src?id=00257f2
2016-07-14GTK+-3 pathpar: add image-button class to iconic buttonsraveit651-0/+8
taken from: https://git.gnome.org/browse/nautilus/patch/src?id=4b2753d
2016-07-14GTK+-3 pathbar: use text-button style class for pathbar buttonsraveit651-0/+4
This will give it more horizontal spacing, like we do for text buttons in main toolbars. taken from: https://git.gnome.org/browse/nautilus/commit/src?id=fe45b63
2016-07-14GTK+-3 pathbar: fix allocation offset for the down slider buttonraveit651-3/+2
We want the down slider button to be linked visually to the rest of the pathbar. https://bugzilla.gnome.org/show_bug.cgi?id=680916 inspired from: https://git.gnome.org/browse/nautilus/commit/src?id=71db3de
2016-07-14GTK+-3 pathbar: do not use deprecated gtk_arrow_newraveit651-7/+26
use instead a symbolic icon taken from: https://git.gnome.org/browse/nautilus/commit/src?id=25c898b
2016-07-14GTK+-3 pathbar: do not use deprecated gtk_alignment_newraveit651-7/+5
inspired from: https://git.gnome.org/browse/nautilus/commit/src?id=d808c2d
2016-07-14GTK+-3 pathbar: refresh label size request every time it changesraveit651-15/+34
Or we might end up with buttons having the wrong size if a folder on the pathbar changes name. https://bugzilla.gnome.org/show_bug.cgi?id=671865 taken from: https://git.gnome.org/browse/nautilus/commit/?h=gnome-3-6&id=7358824778
2016-07-12remove some unused includesmonsta3-3/+0
2016-07-12fix minor build warningmonsta1-1/+3
2016-07-11location-bar: don't pack an useless box in the barraveit651-14/+4
The bar is an horizontal box already, no need to pack another hbox in it. This also fixes content not expanding in the available width, as noted in https://bugzilla.gnome.org/show_bug.cgi?id=654389. taken from: https://git.gnome.org/browse/nautilus/commit/?h=gnome-3-2&id=7596049
2016-07-11location-bar: fix deprecated GTK_TYPE_HBOX usageraveit651-1/+4
2016-07-11navigation-bar: remove useless abstract classraveit657-403/+152
Merge the useful pieces into CajaLocationBar itself, which is the only implementor anyway. taken from: https://git.gnome.org/browse/nautilus/commit/?h=gnome-3-6&id=ca1fa0c https://git.gnome.org/browse/nautilus/commit/?h=gnome-3-0&id=66c46dd
2016-07-11Revert "GTK+-3 spatial-window: avoid deprecated gtk_vbox_new"raveit651-1/+0
This reverts commit d866d7a3a5b778cbd413eaa67ad69c80e9277c6b. This commit breaks desktop drawing, revert fixes https://github.com/mate-desktop/caja/issues/591
2016-07-11GTK+-3 spatial-window: avoid deprecated gtk_vbox_newraveit651-0/+1
2016-07-08GTK+-3.20 view-as-action: avoid deprecated gtk_combo_box_set_focus_on_clickraveit651-0/+4
2016-07-06GTK+-3 connect-server-dialog: use widget properties instead of GtkAlignmentraveit651-2/+15
2016-07-06GTK+-3 searchbar: use widget properties instead of GtkAlignmentraveit651-0/+11
2016-07-06GTK+-3 fm-properties-window: use widget properties instead of GtkAlignmentraveit651-5/+18
taken from: https://git.gnome.org/browse/nautilus/commit/?id=ba52f92
2016-07-06GTK+-3 fm-list-view: use widget properties instead of GtkAlignmentraveit651-0/+9
taken from: https://git.gnome.org/browse/nautilus/commit/?id=f81188e
2016-07-06notebook: cleanup an old workaroundraveit651-66/+0
There should be no need for all these roundtrips here. We can assume if we got an event on the notebook, it will be within a GtkNotebook. taken from: https://git.gnome.org/browse/nautilus/commit/src?id=bbd77ce