summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael R Sweet <michael.r.sweet@gmail.com>2001-12-17 18:40:44 +0000
committerMichael R Sweet <michael.r.sweet@gmail.com>2001-12-17 18:40:44 +0000
commit0542106cc247f5385388348cb4282b4018dfcc92 (patch)
treef11a49d9bd449303b589f68e5f350d7ea660077a
parenta5c9bdac5d9dcc659c712eecc0eb867e9ac81c12 (diff)
Fl_File_Chooser wasn't calling Fl_Window::hotspot() prior to showing, so
you got the chooser centered where the mouse pointer was when your application first created it. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1869 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--CHANGES3
-rw-r--r--src/Fl_File_Chooser.cxx3
-rw-r--r--src/Fl_File_Chooser.fl11
3 files changed, 11 insertions, 6 deletions
diff --git a/CHANGES b/CHANGES
index e87a53592..ab2e39585 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
CHANGES IN FLTK 1.1.0b8
+ - The Fl_File_Chooser widget now uses hotspot() to
+ position the dialog under the mouse pointer prior to
+ showing it.
- Added a configure check for *BSD - use -pthread option
instead of -lpthread.
- Fl_Text_Display could get in an infinite loop when
diff --git a/src/Fl_File_Chooser.cxx b/src/Fl_File_Chooser.cxx
index ab5ea30d9..ac62bc549 100644
--- a/src/Fl_File_Chooser.cxx
+++ b/src/Fl_File_Chooser.cxx
@@ -209,7 +209,8 @@ const char * Fl_File_Chooser::label() {
}
void Fl_File_Chooser::show() {
- window->show();
+ window->hotspot(fileList);
+window->show();
fileList->deselect();
}
diff --git a/src/Fl_File_Chooser.fl b/src/Fl_File_Chooser.fl
index 215a81fc5..456e5af00 100644
--- a/src/Fl_File_Chooser.fl
+++ b/src/Fl_File_Chooser.fl
@@ -150,15 +150,16 @@ rescan();} {}
}
decl {void rescan();} {public
}
- Function {show()} {return_type void
+ Function {show()} {open return_type void
} {
- code {window->show();
-fileList->deselect();} {}
+ code {window->hotspot(fileList);
+window->show();
+fileList->deselect();} {selected
+ }
}
Function {shown()} {return_type int
} {
- code {return window->shown();} {selected
- }
+ code {return window->shown();} {}
}
Function {textcolor(Fl_Color c)} {return_type void
} {