On Thu, Feb 20, 2014 at 4:02 AM, Jean-Marc Lasgouttes
<lasgout...@lyx.org> wrote:
> 19/02/2014 23:02, Scott Kostyshak:
>
>> I'm planning to commit these after 2.1 is released. If anyone has
>> comments or would like to see them in 2.1 let me know.
>
>
> Concerning menus, the Apple HIG says:
>
>   Ensure that a submenu's title is undimmed even when all its commands are
>   unavailable. As with menu titles, it's important for users to be able to
>   view a submenu's contents, even if none of them are available in the
>   current context.
>
> https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/AppleHIGuidelines/Menus/Menus.html#//apple_ref/doc/uid/TP30000356-TP6

This has a lot of good info. Thank you for the reference.
I gave a poor description of the patches. They disable the LFUNs and
only affect the menus indirectly. I was motivated by the following:
1. Open help > Introduction (it should be opened as read only).
2. Go to Insert > File > Plain Text and select a file

The file is inserted. This should not happen for read only.

> I did not look at what other HIGs might say, but in this case it is clear.
> And if one wants to disable submenus which contains only disabled entries,
> it can be done automatically in the Menus.cpp machinery.

As for the submenus not being accessible if all of the items are
disabled, attached is a patch.

Scott
From 59acad67ffb8c83de9e88171a7c7d13edf5cf59a Mon Sep 17 00:00:00 2001
From: Scott Kostyshak <skost...@lyx.org>
Date: Fri, 21 Feb 2014 10:26:36 -0500
Subject: [PATCH] Submenus now expand even if all items are disabled
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

As stated in the Apple HIG[1] (via JMarc):

  Ensure that a submenu’s title is undimmed even when all its commands
  are unavailable. As with menu titles, it’s important for users to be
  able to view a submenu’s contents, even if none of them are
  available in the current context.

[1]
https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/AppleHIGuidelines/Menus/Menus.html#//apple_ref/doc/uid/TP30000356-TP6
---
 src/frontends/qt4/Menus.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/frontends/qt4/Menus.cpp b/src/frontends/qt4/Menus.cpp
index cc07afc..486efe3 100644
--- a/src/frontends/qt4/Menus.cpp
+++ b/src/frontends/qt4/Menus.cpp
@@ -418,8 +418,7 @@ void MenuDefinition::addWithStatusCheck(MenuItem const & i)
                                // Only these kind of items affect the status 
of the submenu
                                if ((cit->kind() == MenuItem::Command
                                        || cit->kind() == MenuItem::Submenu
-                                       || cit->kind() == MenuItem::Help)
-                                   && cit->status().enabled()) {
+                                       || cit->kind() == MenuItem::Help)) {
                                        enabled = true;
                                        break;
                                }
-- 
1.8.3.2

Reply via email to