summaryrefslogtreecommitdiffstats
path: root/src/ui
diff options
context:
space:
mode:
authorbuliabyak <>2013-10-13 17:13:28 +0000
committerbuliabyak <>2013-10-13 17:13:28 +0000
commitd3522575b38c92296da452062d36d1048f18f859 (patch)
tree56dbca6e98f40d1ea33b75b586577b71f5da1865 /src/ui
parentcppcheck (diff)
downloadinkscape-d3522575b38c92296da452062d36d1048f18f859.tar.gz
inkscape-d3522575b38c92296da452062d36d1048f18f859.zip
we don't have nondocked dialogs, so rewrite restoring dialogs on startup via DialogManager; do not grab focus when restoring
(bzr r12682)
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/dialog/dialog-manager.cpp9
-rw-r--r--src/ui/dialog/dialog-manager.h4
2 files changed, 7 insertions, 6 deletions
diff --git a/src/ui/dialog/dialog-manager.cpp b/src/ui/dialog/dialog-manager.cpp
index 17f6ae74d..6d32e3aa8 100644
--- a/src/ui/dialog/dialog-manager.cpp
+++ b/src/ui/dialog/dialog-manager.cpp
@@ -243,14 +243,14 @@ Dialog *DialogManager::getDialog(GQuark name) {
/**
* Shows the named dialog, creating it if necessary.
*/
-void DialogManager::showDialog(gchar const *name) {
- showDialog(g_quark_from_string(name));
+void DialogManager::showDialog(gchar const *name, bool grabfocus) {
+ showDialog(g_quark_from_string(name), grabfocus);
}
/**
* Shows the named dialog, creating it if necessary.
*/
-void DialogManager::showDialog(GQuark name) {
+void DialogManager::showDialog(GQuark name, bool grabfocus) {
bool wantTiming = Inkscape::Preferences::get()->getBool("/dialogs/debug/trackAppear", false);
GTimer *timer = (wantTiming) ? g_timer_new() : 0; // if needed, must be created/started before getDialog()
Dialog *dialog = getDialog(name);
@@ -261,7 +261,8 @@ void DialogManager::showDialog(GQuark name) {
tracker->setAutodelete(true);
timer = 0;
}
- dialog->present();
+ if (grabfocus)
+ dialog->present();
}
if ( timer ) {
diff --git a/src/ui/dialog/dialog-manager.h b/src/ui/dialog/dialog-manager.h
index 33b166aa1..15573f760 100644
--- a/src/ui/dialog/dialog-manager.h
+++ b/src/ui/dialog/dialog-manager.h
@@ -44,8 +44,8 @@ public:
void registerFactory(GQuark name, DialogFactory factory);
Dialog *getDialog(gchar const* dlgName);
Dialog *getDialog(GQuark dlgName);
- void showDialog(gchar const *name);
- void showDialog(GQuark name);
+ void showDialog(gchar const *name, bool grabfocus=true);
+ void showDialog(GQuark name, bool grabfocus=true);
protected:
DialogManager(DialogManager const &d); // no copy