Fixes issues following merge with 'dev'
- External Editor: App icon not correctly managed in RTImage - Favorite preferences: Fixes widget sizes - Other fix: With some versions of Glib/Glibmm library on MacOS, Glib::KeyFile "load_from_file" function does not raise a Glib::Error but another exception. This causes crash opening preferences panel due to missing dynamic profiles configuration
This commit is contained in:
@@ -23,6 +23,7 @@
|
||||
#include <glibmm/regex.h>
|
||||
#include <glibmm/miscutils.h>
|
||||
#include <glibmm/keyfile.h>
|
||||
#include <glibmm/fileutils.h>
|
||||
|
||||
#include "rtengine.h"
|
||||
#include "../rtgui/options.h"
|
||||
@@ -173,9 +174,12 @@ bool DynamicProfileRules::loadRules()
|
||||
{
|
||||
dynamicRules.clear();
|
||||
Glib::KeyFile kf;
|
||||
const Glib::ustring fileName = Glib::build_filename (Options::rtdir, "dynamicprofile.cfg");
|
||||
|
||||
try {
|
||||
if (!kf.load_from_file (Glib::build_filename (Options::rtdir, "dynamicprofile.cfg"))) {
|
||||
if (Glib::file_test(fileName, Glib::FILE_TEST_EXISTS)) {
|
||||
kf.load_from_file (fileName);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} catch (Glib::Error &e) {
|
||||
|
@@ -92,8 +92,8 @@ ExternalEditorPreferences::getEditors() const
|
||||
auto children = list_model->children();
|
||||
|
||||
for (auto rowIter = children.begin(); rowIter != children.end(); rowIter++) {
|
||||
const Gio::Icon *const icon = rowIter->get_value(model_columns.icon).get();
|
||||
const auto &icon_serialized = icon == nullptr ? "" : icon->serialize().print();
|
||||
const auto icon = rowIter->get_value(model_columns.icon);
|
||||
const auto &icon_serialized = !icon ? "" : icon->serialize().print();
|
||||
editors.push_back(ExternalEditorPreferences::EditorInfo(
|
||||
rowIter->get_value(model_columns.name),
|
||||
rowIter->get_value(model_columns.command),
|
||||
|
@@ -74,7 +74,7 @@ RTImage::RTImage (const Glib::RefPtr<const Gio::Icon>& gIcon, const Gtk::IconSiz
|
||||
Gtk::Image(),
|
||||
size(iconSize),
|
||||
icon_name(""),
|
||||
g_icon(Glib::RefPtr<const Gio::Icon>())
|
||||
g_icon(gIcon)
|
||||
{
|
||||
// Configure RTImage based on g_icon
|
||||
set(this->g_icon, this->size);
|
||||
|
@@ -734,7 +734,7 @@ ToolLocationPreference::ToolLocationPreference(Options &options) :
|
||||
Gtk::Box *favorites_box = Gtk::manage(new Gtk::Box());
|
||||
Gtk::ScrolledWindow *favorites_list_scrolled_window =
|
||||
Gtk::manage(new Gtk::ScrolledWindow());
|
||||
favorites_list_scrolled_window->set_min_content_width(RTScalable::scalePixelSize(300));
|
||||
favorites_list_scrolled_window->set_min_content_width(RTScalable::scalePixelSize(400));
|
||||
layout_grid->attach_next_to(*favorites_frame, Gtk::PositionType::POS_RIGHT, 1, 1);
|
||||
favorites_box->pack_start(impl->favoritesListEditButtons, false, false);
|
||||
favorites_box->pack_start(*favorites_list_scrolled_window, false, false);
|
||||
|
Reference in New Issue
Block a user