Outliner keyboard navigation fails on MacOS

Jason Sun ds653 at cornell.edu
Fri Jan 10 21:07:01 UTC 2020


I am working on a patch as of now.

On Fri, Dec 27, 2019 at 9:39 PM Scott Kostyshak <skostysh at lyx.org> wrote:

> On Sat, Jun 29, 2019 at 05:33:04PM -0400, Jason Sun wrote:
> > Let me check again. I have been working on another larger extension these
> > days.
> >
> > On Sat, Jun 29, 2019 at 1:22 PM Stephan Witt <st.witt at gmx.net> wrote:
> >
> > > Am 25.06.2019 um 18:33 schrieb Richard Kimberly Heck <rikiheck at lyx.org
> >:
> > > >
> > > > Can we get this tested on MacOS?
> > >
> > > I’ve tried to paste the snippet into the TocWidget.cpp …
> > > I had to change the TocWidget.h too, then it compiles.
> > >
> > > But I cannot see the improvement in behavior. I’m on master.
> > >
> > > Stephan
> > >
> > > >
> > > > On 6/19/19 4:52 PM, Jason Sun wrote:
> > > >> This problem is resolved by inserting the  following code to the
> > > TocWidget.cpp file
> > > >>
> > > >> void TocWidget::keyPressEvent(QKeyEvent *event)
> > > >> {
> > > >>     if(event->key() == Qt::Key_Return)
> > > >>     {
> > > >>         QModelIndex const & curIdx = tocTV->currentIndex();
> > > >>         goTo(curIdx);
> > > >>         gui_view_.setFocus();
> > > >>         gui_view_.activateWindow();
> > > >>     }
> > > >> }
> > > >> Will be pushing a fix to the branch soon.
> > > >>
> > > >> On Wed, Jun 19, 2019 at 3:21 PM Jason Sun <ds653 at cornell.edu>
> wrote:
> > > >> I use MacOX High Sierra 10.13.6 and LyX 2.3.2.
> > > >>
> > > >> The problem is the outline items(sections in the document) can only
> be
> > > selected by mouse click. However, the same LyX 2.3.2 on RollApp(cloud
> > > version of LyX) doesn’t not have this problem.
> > > >>
> > > >> After looking at the source code, I thought of two solutions but
> none
> > > of them worked.
> > > >>
> > > >> Solution 1. I added the following function to the TocWidget.cpp
> file to
> > > specifically handle the keyPressEvent:
> > > >>
> > > >>
> > > >>
> > >
> ---------------------------------------------------------------------------------------------------------------
> > > >> void TocWidget::keyPressEvent(QKeyEvent *event)
> > > >> {
> > > >>      if(event->key() == Qt::Key_Enter)
> > > >>      {
> > > >>              QModelIndex const & curIdx = tocTV->currentIndex();
> > > >>              goTo(curIdx);
> > > >>              gui_view_.setFocus();
> > > >>              gui_view_.activateWindow();
> > > >>      }
> > > >> }
> > > >>
> > >
> ---------------------------------------------------------------------------------------------------------------
> > > >>
> > > >> But it doesn’t work after compiling against Qt5
> > > >>
> > > >>
> > > >>
> > > >> Solution 2. I tried to hack the original function on_tocTV_pressed
> by
> > > adding a keyboardModifier flag check:
> > > >>
> > > >> ___________________________________________________________________
> > > >> void TocWidget::on_tocTV_pressed(QModelIndex const & index)
> > > >> {
> > > >>
> > > >>      Qt::MouseButtons const button = QApplication::mouseButtons();
> > > >>      Qt::KeyboardModifiers const modifier =
> > > QApplication::keyboardModifiers();
> > > >>      if ((button & Qt::LeftButton) ||
> > > modifier.testFlag(Qt::ShiftModifier)) {
> > > >>              goTo(index);
> > > >>              gui_view_.setFocus();
> > > >>              gui_view_.activateWindow();
> > > >>      }
> > > >> }
> > > >> ___________________________________________________________________
> > > >>
> > > >> But still to no avail. I am not sure what is the problem here. I
> need
> > > some help/guidance in making this work on MacOS since this is the only
> > > place that requires mouse input. If this could be solved, I can 100%
> write
> > > my document mouse free which is a huge improvement considering the
> going
> > > back and forth in a large document using a mouse causes some
> inconvenience.
> > > >>
> > > >> I also tried the same thing on 2.4 development build and the problem
> > > persists. I don’t even know how to debug the program. It would be very
> > > helpful if someone can tell me how to see(or print to status bar) all
> the
> > > variables or at least the QtIndices when navigating through the tocTV
> > > variable on GUI.
> > > >>
> > > >>
> > > >>
> > > >> Jason Sun
> > > >> Ph.D Candidate
> > > >> Department of Statistical Science
> > > >> Cornell University
> > > >> 105 Malott Hall
> > > >> Ithaca, NY 14853-3201
> > > >>
> > > >>
> > > >>
> > > >>
> > > >> --
> > > >> Daqian Sun
> > > >> Tel:607-379-5149
> > > >> Department of Mathematics
> > > >> Department of Economics
> > > >> Cornell University
> > > >>
> > > >
> > > >
> > >
> > >
>
> Is this issue still pending?
>
> Scott
>


-- 
*Daqian Sun*

*Tel:607-379-5149*
*Department of Mathematics *
*Department of Economics*
*Cornell University*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lyx.org/pipermail/lyx-devel/attachments/20200110/fb8925bd/attachment.html>


More information about the lyx-devel mailing list