Hello,

On Fri, 26 Jul 2002, Joao Luis M. Assirati wrote:
> When starting the xserver
> with 100 dpi fonts (with option option -dpi 100) the minibuffer doesn't
> show any text (but you can see the cursor moving as you type in).

I discovered that the problem is a bug (feature???) in 
xforms: fl_add_input cannot display text higher that its height. So, when
I changed dpi in my screen, the default font -*-helvetica-medium-r became
bigger than the minibuffer. Changing from helvetica to lucida (which is
smaller), for instance, solves the problem.

In case somebody else reproduced this bug, and you find it is worth fixing
it (keeping in mind that the xforms frontend is broken with 100 dpi
anyway, because some forms don't have place for bigger fonts) I provide
the patch against 1.2.1cvs below. The original minibuffer was 25 and I
changed it to 28 - the minimun to allow displaying of the default font, at
least in my system. Maybe with other fonts/xservers this value will not be
sufficient?

Regards,

Joćo.


Index: src/XFormsView.C
===================================================================
RCS file: /cvs/lyx/lyx-devel/src/Attic/XFormsView.C,v
retrieving revision 1.9.2.3
diff -u -r1.9.2.3 XFormsView.C
--- src/XFormsView.C    2002/06/18 10:07:45     1.9.2.3
+++ src/XFormsView.C    2002/07/27 19:30:47
@@ -137,6 +137,7 @@
        // Parameters for the appearance of the main form
        int const air = 2;
        int const bw = abs(fl_get_border_width());
+       int const mbh = 28;

        //
        // THE MENUBAR
@@ -157,7 +158,7 @@
        //

        int const ywork = 60 + 2 * air + bw;
-       int const workheight = height - ywork - (25 + 2 * air);
+       int const workheight = height - ywork - (mbh + 2 * air);

        ::current_view = bufferview = new BufferView(this, air, ywork,
                                                     width - 3 * air,
@@ -167,8 +168,8 @@
        // MINIBUFFER
        //

-       minibuffer = new MiniBuffer(this, air, height - (25 + air),
-                                   width - (2 * air), 25);
+       minibuffer = new MiniBuffer(this, air, height - (mbh + air),
+                                   width - (2 * air), mbh);

        //
        // TIMERS

Attachment: XFormsView.C.diff.gz
Description: Binary data

Reply via email to