emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-24 r117373: Document the behavior of file selection


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-24 r117373: Document the behavior of file selection dialogs on Windows 7 (bug #17950).
Date: Sat, 12 Jul 2014 09:26:32 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117373
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/17950
committer: Eli Zaretskii <address@hidden>
branch nick: emacs-24
timestamp: Sat 2014-07-12 12:25:29 +0300
message:
  Document the behavior of file selection dialogs on Windows 7 (bug #17950).
  
   etc/PROBLEMS: Mention the problem from bug #17950.
  
   src/w32fns.c (Fx_file_dialog): Mention in the doc string the
   behavior on Windows 7 and later when the function is repeatedly
   invoked with the same value of DIR.
   src/xfns.c (Fx_file_dialog) [USE_MOTIF, USE_GTK]: Update the doc
   string to match the one in w32fns.c.
modified:
  etc/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1485
  etc/PROBLEMS                   problems-20091113204419-o5vbwnq5f7feedwu-1498
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/w32fns.c                   w32fns.c-20091113204419-o5vbwnq5f7feedwu-945
  src/xfns.c                     xfns.c-20091113204419-o5vbwnq5f7feedwu-274
=== modified file 'etc/ChangeLog'
--- a/etc/ChangeLog     2014-07-04 07:35:22 +0000
+++ b/etc/ChangeLog     2014-07-12 09:25:29 +0000
@@ -1,3 +1,7 @@
+2014-07-12  Eli Zaretskii  <address@hidden>
+
+       * PROBLEMS: Mention the problem from bug #17950.
+
 2014-07-04  Eli Zaretskii  <address@hidden>
 
        * TODO: Remove items that were already done.  Rearrange a few

=== modified file 'etc/PROBLEMS'
--- a/etc/PROBLEMS      2014-07-12 09:08:41 +0000
+++ b/etc/PROBLEMS      2014-07-12 09:25:29 +0000
@@ -1961,6 +1961,26 @@
 switch, which will force Emacs to load libgcc_s_dw2-1.dll on startup,
 ahead of any optional DLLs loaded on-demand later in the session.
 
+** File selection dialog opens in incorrect directories
+
+Invoking the file selection dialog on Windows 7 or later shows a
+directory that is different from what was passed to `read-file-name'
+or `x-file-dialog' via their arguments.
+
+This is due to a deliberate change in behavior of the file selection
+dialogs introduced in Windows 7.  It is explicitly described in the
+MSDN documentation of the GetOpenFileName API used by Emacs to pop up
+the file selection dialog.  For the details, see
+
+  
http://msdn.microsoft.com/en-us/library/windows/desktop/ms646839%28v=vs.85%29.aspx
+
+The dialog shows the last directory in which the user selected a file
+in a previous invocation of the dialog with the same initial
+directory.
+
+You can reset this "memory" of that directory by invoking the file
+selection dialog with a different initial directory.
+
 ** PATH can contain unexpanded environment variables
 
 Old releases of TCC (version 9) and 4NT (up to version 8) do not correctly

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-07-08 15:12:39 +0000
+++ b/src/ChangeLog     2014-07-12 09:25:29 +0000
@@ -1,3 +1,12 @@
+2014-07-12  Eli Zaretskii  <address@hidden>
+
+       * w32fns.c (Fx_file_dialog): Mention in the doc string the
+       behavior on Windows 7 and later when the function is repeatedly
+       invoked with the same value of DIR.  (Bug#17950)
+
+       * xfns.c (Fx_file_dialog) [USE_MOTIF, USE_GTK]: Update the doc
+       string to match the one in w32fns.c.
+
 2014-07-08  Eli Zaretskii  <address@hidden>
 
        * xdisp.c (move_it_to): Adjust calculation of line_start_x to what

=== modified file 'src/w32fns.c'
--- a/src/w32fns.c      2014-05-20 16:28:39 +0000
+++ b/src/w32fns.c      2014-07-12 09:25:29 +0000
@@ -6436,7 +6436,11 @@
 
 This function is only defined on NS, MS Windows, and X Windows with the
 Motif or Gtk toolkits.  With the Motif toolkit, ONLY-DIR-P is ignored.
-Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.  */)
+Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.
+On Windows 7 and later, the file selection dialog "remembers" the last
+directory where the user selected a file, and will open that directory
+instead of DIR on subsequent invocations of this function with the same
+value of DIR as in previous invocations; this is standard Windows behavior.  
*/)
   (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, 
Lisp_Object mustmatch, Lisp_Object only_dir_p)
 {
   /* Filter index: 1: All Files, 2: Directories only  */

=== modified file 'src/xfns.c'
--- a/src/xfns.c        2014-07-04 15:15:02 +0000
+++ b/src/xfns.c        2014-07-12 09:25:29 +0000
@@ -5658,7 +5658,11 @@
 
 This function is only defined on NS, MS Windows, and X Windows with the
 Motif or Gtk toolkits.  With the Motif toolkit, ONLY-DIR-P is ignored.
-Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.  */)
+Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.
+On Windows 7 and later, the file selection dialog "remembers" the last
+directory where the user selected a file, and will open that directory
+instead of DIR on subsequent invocations of this function with the same
+value of DIR as in previous invocations; this is standard Windows behavior.  
*/)
   (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename,
    Lisp_Object mustmatch, Lisp_Object only_dir_p)
 {
@@ -5830,7 +5834,11 @@
 
 This function is only defined on NS, MS Windows, and X Windows with the
 Motif or Gtk toolkits.  With the Motif toolkit, ONLY-DIR-P is ignored.
-Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.  */)
+Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.
+On Windows 7 and later, the file selection dialog "remembers" the last
+directory where the user selected a file, and will open that directory
+instead of DIR on subsequent invocations of this function with the same
+value of DIR as in previous invocations; this is standard Windows behavior.  
*/)
   (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, 
Lisp_Object mustmatch, Lisp_Object only_dir_p)
 {
   struct frame *f = SELECTED_FRAME ();


reply via email to

[Prev in Thread] Current Thread [Next in Thread]