On Fri, Jul 28, 2017 at 11:31:42PM +0200, Enrico Forestieri wrote: > On Tue, Jul 25, 2017 at 09:16:15PM +0200, Enrico Forestieri wrote: > > > I am also investigating the possibility of attaching a context menu to > > the red icon in the status bar. > > This is now done in the attached patch. Hovering with the mouse over the > red icon a warning is shown, and right clicking shows a popup menu that > allows to disable the shell escape option for the current document.
I'm trying to test the patch with respect to d3b2cb09, because I could not compile current master for some reason. I get linker errors. I attach the errors from both CMake and autotools. If you think my problems are due to using an older commit or something else specific to my system, please don't spend time on it. I'll figure out soon why I cannot compile current master on CMake. Maybe that will somehow fix the issue. Scott
/home/scott/lyxbuilds/master/repo/src/Buffer.cpp:984: undefined reference to `lyx::ShellEscapeSection::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' liblyxcore.a(Converter.o): In function `lyx::Converters::checkAuth(lyx::Converter const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)': /home/scott/lyxbuilds/master/repo/src/Converter.cpp:360: undefined reference to `lyx::ShellEscapeSection::findAuth(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' /home/scott/lyxbuilds/master/repo/src/Converter.cpp:360: undefined reference to `lyx::AuthFilesSection::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' /home/scott/lyxbuilds/master/repo/src/Converter.cpp:367: undefined reference to `lyx::ShellEscapeSection::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)' /home/scott/lyxbuilds/master/repo/src/Converter.cpp:369: undefined reference to `lyx::AuthFilesSection::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' liblyxcore.a(LyX.o): In function `lyx::ShellEscapeSection::~ShellEscapeSection()': /home/scott/lyxbuilds/master/repo/src/Session.h:347: undefined reference to `vtable for lyx::ShellEscapeSection' /home/scott/lyxbuilds/master/repo/src/Session.h:347: undefined reference to `vtable for lyx::ShellEscapeSection' /home/scott/lyxbuilds/master/repo/src/Session.h:347: undefined reference to `vtable for lyx::ShellEscapeSection' liblyxcore.a(Session.o): In function `lyx::ShellEscapeSection::ShellEscapeSection()': /home/scott/lyxbuilds/master/repo/src/Session.h:351: undefined reference to `vtable for lyx::ShellEscapeSection' liblyxcore.a(Session.o): In function `lyx::ShellEscapeSection::~ShellEscapeSection()': /home/scott/lyxbuilds/master/repo/src/Session.h:347: undefined reference to `vtable for lyx::ShellEscapeSection' frontends/qt4/liblyxqt4.a(GuiView.o): In function `lyx::frontend::GuiView::disableShellEscape()': /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiView.cpp:661: undefined reference to `lyx::ShellEscapeSection::remove(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' frontends/qt4/liblyxqt4.a(GuiDocument.o): In function `lyx::frontend::GuiDocument::shellescapeChanged()': /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiDocument.cpp:1550: undefined reference to `lyx::ShellEscapeSection::remove(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiDocument.cpp:1551: undefined reference to `lyx::ShellEscapeSection::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiDocument.cpp:1552: undefined reference to `lyx::ShellEscapeSection::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)' collect2: error: ld returned 1 exit status Makefile:2125: recipe for target 'lyx' failed make[4]: *** [lyx] Error 1 make[4]: Leaving directory '/home/scott/lyxbuilds/master/repo/src' Makefile:2467: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/home/scott/lyxbuilds/master/repo/src' Makefile:1703: recipe for target 'all' failed make[2]: *** [all] Error 2 make[2]: Leaving directory '/home/scott/lyxbuilds/master/repo/src' Makefile:575: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/scott/lyxbuilds/master/repo' Makefile:470: recipe for target 'all' failed make: *** [all] Error 2
CMakeFiles/lyx.dir/Session.cpp.o: In function `lyx::ShellEscapeSection::ShellEscapeSection()': /home/scott/lyxbuilds/master/repo/src/Session.h:351: undefined reference to `vtable for lyx::ShellEscapeSection' CMakeFiles/lyx.dir/Session.cpp.o: In function `lyx::ShellEscapeSection::~ShellEscapeSection()': /home/scott/lyxbuilds/master/repo/src/Session.h:347: undefined reference to `vtable for lyx::ShellEscapeSection' CMakeFiles/lyx.dir/Buffer.cpp.o: In function `lyx::Buffer::readHeader(lyx::Lexer&)': /home/scott/lyxbuilds/master/repo/src/Buffer.cpp:984: undefined reference to `lyx::ShellEscapeSection::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' CMakeFiles/lyx.dir/Converter.cpp.o: In function `lyx::Converters::checkAuth(lyx::Converter const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)': /home/scott/lyxbuilds/master/repo/src/Converter.cpp:360: undefined reference to `lyx::ShellEscapeSection::findAuth(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' /home/scott/lyxbuilds/master/repo/src/Converter.cpp:360: undefined reference to `lyx::AuthFilesSection::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' /home/scott/lyxbuilds/master/repo/src/Converter.cpp:367: undefined reference to `lyx::ShellEscapeSection::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)' /home/scott/lyxbuilds/master/repo/src/Converter.cpp:369: undefined reference to `lyx::AuthFilesSection::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../lib/libfrontend_qt.a(GuiView.cpp.o): In function `lyx::frontend::GuiView::disableShellEscape()': /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiView.cpp:661: undefined reference to `lyx::ShellEscapeSection::remove(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../lib/libfrontend_qt.a(GuiDocument.cpp.o): In function `lyx::frontend::GuiDocument::shellescapeChanged()': /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiDocument.cpp:1550: undefined reference to `lyx::ShellEscapeSection::remove(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiDocument.cpp:1551: undefined reference to `lyx::ShellEscapeSection::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' /home/scott/lyxbuilds/master/repo/src/frontends/qt4/GuiDocument.cpp:1552: undefined reference to `lyx::ShellEscapeSection::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)' collect2: error: ld returned 1 exit status src/CMakeFiles/lyx.dir/build.make:2826: recipe for target 'bin/lyx' failed make[2]: *** [bin/lyx] Error 1 make[2]: Leaving directory '/home/scott/lyxbuilds/master/CMakeBuild' CMakeFiles/Makefile2:561: recipe for target 'src/CMakeFiles/lyx.dir/all' failed make[1]: *** [src/CMakeFiles/lyx.dir/all] Error 2 make[1]: Leaving directory '/home/scott/lyxbuilds/master/CMakeBuild' Makefile:163: recipe for target 'all' failed make: *** [all] Error 2
signature.asc
Description: PGP signature