diff --git a/panelManager.js b/panelManager.js
index 9a713f5..7397af3 100755
--- a/panelManager.js
+++ b/panelManager.js
@@ -55,7 +55,12 @@ var dtpPanelManager = new Lang.Class({
},
enable: function(reset) {
- let dtpPrimaryMonitor = Main.layoutManager.monitors[(Main.layoutManager.primaryIndex + this._dtpSettings.get_int('primary-monitor')) % Main.layoutManager.monitors.length];
+ let dtpPrimaryIndex = this._dtpSettings.get_int('primary-monitor');
+ if(dtpPrimaryIndex < 0 || dtpPrimaryIndex >= Main.layoutManager.monitors.length)
+ dtpPrimaryIndex = Main.layoutManager.primaryIndex;
+
+ let dtpPrimaryMonitor = Main.layoutManager.monitors[dtpPrimaryIndex];
+
this.proximityManager = new Proximity.ProximityManager();
this.primaryPanel = new Panel.dtpPanelWrapper(this, dtpPrimaryMonitor, Main.panel, Main.layoutManager.panelBox);
diff --git a/po/cs.po b/po/cs.po
index 32d00f5..4e7af17 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -28,8 +28,8 @@ msgid "Reset to defaults"
msgstr "Nastavit výchozí hodnoty"
#: prefs.js:431
-msgid "Primary monitor"
-msgstr "Primární monitor"
+msgid "Default (Primary monitor)"
+msgstr "Default (Primární monitor)"
#: prefs.js:434
msgid "Monitor "
diff --git a/po/fr.po b/po/fr.po
index 03d3809..da1c041 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -29,8 +29,8 @@ msgid "Reset to defaults"
msgstr "Restaurer paramètres"
#: prefs.js:431
-msgid "Primary monitor"
-msgstr "Écran principal"
+msgid "Default (Primary monitor)"
+msgstr "Default (Écran principal)"
#: prefs.js:434
msgid "Monitor "
diff --git a/po/hu.po b/po/hu.po
index f03e0a9..a0fbbc4 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -29,8 +29,8 @@ msgid "Reset to defaults"
msgstr "Visszaállítás az alapértékekre"
#: prefs.js:431
-msgid "Primary monitor"
-msgstr "Elsődleges kijelző"
+msgid "Default (Primary monitor)"
+msgstr "Default (Elsődleges kijelző)"
#: prefs.js:434
msgid "Monitor "
diff --git a/po/it.po b/po/it.po
index 8557e5a..1c9bddc 100644
--- a/po/it.po
+++ b/po/it.po
@@ -28,8 +28,8 @@ msgid "Reset to defaults"
msgstr "Ripristina predefiniti"
#: prefs.js:431
-msgid "Primary monitor"
-msgstr "Monitor principale"
+msgid "Default (Primary monitor)"
+msgstr "Default (Monitor principale)"
#: prefs.js:434
msgid "Monitor "
diff --git a/po/ja.po b/po/ja.po
index 8cc6c79..6a99b54 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -840,7 +840,7 @@ msgid "Reset to defaults"
msgstr "デフォルトに戻す"
#: prefs.js:431
-msgid "Primary monitor"
+msgid "Default (Primary monitor)"
msgstr "プライマリーモニター"
#: prefs.js:434
diff --git a/po/pl.po b/po/pl.po
index 9cce8f2..5d262d9 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -29,8 +29,8 @@ msgid "Reset to defaults"
msgstr "Przywróć domyślne"
#: prefs.js:431
-msgid "Primary monitor"
-msgstr "Główny monitor"
+msgid "Default (Primary monitor)"
+msgstr "Default (Główny monitor)"
#: prefs.js:434
msgid "Monitor "
diff --git a/po/ru_RU.po b/po/ru_RU.po
index ef119ee..6f3e7bd 100755
--- a/po/ru_RU.po
+++ b/po/ru_RU.po
@@ -30,7 +30,7 @@ msgid "Reset to defaults"
msgstr "По умолчанию"
#: prefs.js:431
-msgid "Primary monitor"
+msgid "Default (Primary monitor)"
msgstr "Основной монитор"
#: prefs.js:434
diff --git a/po/tr.po b/po/tr.po
index 1751175..5cc016e 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -30,8 +30,8 @@ msgid "Reset to defaults"
msgstr "Varsayılanlara dön"
#: prefs.js:431
-msgid "Primary monitor"
-msgstr "Birincil ekran"
+msgid "Default (Primary monitor)"
+msgstr "Default (Birincil ekran)"
#: prefs.js:434
msgid "Monitor "
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 7cb8a61..0d79feb 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -28,7 +28,7 @@ msgid "Reset to defaults"
msgstr "恢复默认值"
#: prefs.js:431
-msgid "Primary monitor"
+msgid "Default (Primary monitor)"
msgstr "主显示器"
#: prefs.js:434
diff --git a/prefs.js b/prefs.js
index 3d1f66d..9eae1fe 100644
--- a/prefs.js
+++ b/prefs.js
@@ -426,12 +426,12 @@ const Settings = new Lang.Class({
}));
//multi-monitor
- let monitors = [Gdk.Screen.get_default().get_primary_monitor()]; //always 0 in GDK
+ let monitors = [-1];
- this._builder.get_object('multimon_primary_combo').append_text(_('Primary monitor'));
+ this._builder.get_object('multimon_primary_combo').append_text(_('Default (Primary monitor)'));
- for (let i = 1, monitorNum = Gdk.Screen.get_default().get_n_monitors(); i < monitorNum; ++i) {
- this._builder.get_object('multimon_primary_combo').append_text(_('Monitor ') + i);
+ for (let i = 0, monitorNum = Gdk.Screen.get_default().get_n_monitors(); i < monitorNum; ++i) {
+ this._builder.get_object('multimon_primary_combo').append_text(_('Monitor ') + (i+1));
monitors.push(i);
}
diff --git a/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml b/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml
index 8ae3332..5be9cda 100644
--- a/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml
+++ b/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml
@@ -425,9 +425,9 @@
When the applications are ungrouped, this defines if running applications stay separate from the favorite icons.
- 0
+ -1
Primary monitor index
- Specifies the index of the primary monitor.
+ Specifies the index of the primary monitor (-1 = GNOME Primary Monitor).
true