From fc627fc19cc145a86383b221416422709bd03d9d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Philipp=20H=C3=B6rist?= <forenjunkie@chello.at>
Date: Fri, 24 Nov 2017 18:54:30 +0100
Subject: [PATCH] Use appmenu only if system supports it

---
 gajim/common/app.py       |  8 ++++++++
 gajim/gajim.py            |  3 +--
 gajim/gui_menu_builder.py | 12 ++++++------
 3 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/gajim/common/app.py b/gajim/common/app.py
index 3b212ed5df..f88d8f591c 100644
--- a/gajim/common/app.py
+++ b/gajim/common/app.py
@@ -28,6 +28,7 @@
 ##
 
 import os
+import sys
 import logging
 import locale
 import uuid
@@ -500,3 +501,10 @@ def get_priority(account, show):
 def log(domain):
     root = 'gajim.'
     return logging.getLogger(root + domain)
+
+def prefers_app_menu():
+    if sys.platform == 'darwin':
+        return True
+    if sys.platform == 'win32':
+        return False
+    return app.prefers_app_menu()
diff --git a/gajim/gajim.py b/gajim/gajim.py
index dcd0998da1..9801d66a57 100644
--- a/gajim/gajim.py
+++ b/gajim/gajim.py
@@ -215,10 +215,9 @@ class GajimApplication(Gtk.Application):
         builder.add_from_file(path)
         menubar = builder.get_object("menubar")
         appmenu = builder.get_object("appmenu")
-        if os.name != 'nt':
+        if app.prefers_app_menu():
             self.set_app_menu(appmenu)
         else:
-            # Dont set Application Menu for Windows
             # Add it to the menubar instead
             menubar.prepend_submenu('Gajim', appmenu)
         self.set_menubar(menubar)
diff --git a/gajim/gui_menu_builder.py b/gajim/gui_menu_builder.py
index 3b0b8308fb..bb51dcb5fb 100644
--- a/gajim/gui_menu_builder.py
+++ b/gajim/gui_menu_builder.py
@@ -767,9 +767,9 @@ def get_account_menu(account):
 def build_accounts_menu():
     menubar = app.app.get_menubar()
     # Accounts Submenu
-    menu_position = 0
-    if os.name == 'nt':
-        menu_position = 1
+    menu_position = 1
+    if app.prefers_app_menu():
+        menu_position = 0
 
     acc_menu = menubar.get_item_link(menu_position, 'submenu')
     acc_menu.remove_all()
@@ -796,9 +796,9 @@ def build_bookmark_menu(account):
     if not bookmark_menu:
         return
 
-    menu_position = 0
-    if os.name == 'nt':
-        menu_position = 1
+    menu_position = 1
+    if app.prefers_app_menu():
+        menu_position = 0
 
     # Accounts Submenu
     acc_menu = menubar.get_item_link(menu_position, 'submenu')
-- 
GitLab