I am including two patches for a couple bugs which are a
little bit annoying.
The first bug is that sometimes (I can not figure out just when, but it
happens to me 20% of the time) on exiting the program, LyX will delete the
temporary directory and then try to delete it once again.
By commenting the following line in filetools.C, LyX will exit
when told to do so. (And a kill is not necesary). I cannot see
why the inability to delete a non existent directory should stop
LyX from being able to exit gracefully.
patch 1:
Changelog: file support/filetools.C (DestroyTmpDir (string const & tmpdir, bool
Allfiles))
Allow LyX to exit if it cannot delete a temporary directory that
does not exist
---------------------------------------------------
--- support/filetools.C.bak Fri Jul 7 16:17:13 2000
+++ support/filetools.C Fri Jul 7 16:14:39 2000
@@ -412,7 +412,7 @@
if (rmdir(tmpdir.c_str())) {
WriteFSAlert(_("Error! Couldn't delete temporary directory:"),
tmpdir);
- return -1;
+ //return -1; //let the user exit without having kill and get a core
+dump.
}
return 0;
}
--------------------------------------------------
The second bug occurs when you have a main file with bunch of input file frames
and are constantly scrolling up and down with the wheel. It so happens that depending
on the
cursor position, LyX will open the "update_inset" dialog. This should never
happen on button4 or button5, and there is a line to that effect (if (button >= 2)
return;)
But when you move the wheel fast, a button release event may be generated with
button==0. If
the cursor is a top an input frame, bingo: you open the "update_inset" dialog.
This bug is easy to repeat, and the input files don't even have to exist (only
the input frames in the main lyx file).
patch 2:
Changelog: file BufferView_pimpl.C (void BufferView::Pimpl::workAreaButtonRelease(int
x, int y,
unsigned int button))
This lets LyX avoid action when it has a button release from button 0.
This event occurs randomly by using rapid motion of mouse wheel on linux 2.2.16 and
Xfree86
------------------------------------------------------
--- BufferView_pimpl.C.patch1 Fri Jul 7 13:00:36 2000
+++ BufferView_pimpl.C Fri Jul 7 17:16:09 2000
@@ -732,6 +732,7 @@
unsigned int button)
{
if (buffer_ == 0 || screen == 0) return;
+ if (button <= 0) return; // rapid wheel movement (button4+5) at times yields
+button==0
// If we hit an inset, we have the inset coordinates in these
// and inset_hit points to the inset. If we do not hit an
-------------------------------------------------------
--
saludos,
Edscott