gecko/widget/os2/nsFilePicker.cpp
Brian R. Bondy 5000953110 Bug 679226 - Fold widget/src into widget. r=roc
--HG--
rename : widget/public/LookAndFeel.h => widget/LookAndFeel.h
rename : widget/public/WidgetTraceEvent.h => widget/WidgetTraceEvent.h
rename : widget/src/android/AndroidBridge.cpp => widget/android/AndroidBridge.cpp
rename : widget/src/android/AndroidBridge.h => widget/android/AndroidBridge.h
rename : widget/src/android/AndroidDirectTexture.cpp => widget/android/AndroidDirectTexture.cpp
rename : widget/src/android/AndroidDirectTexture.h => widget/android/AndroidDirectTexture.h
rename : widget/src/android/AndroidGraphicBuffer.cpp => widget/android/AndroidGraphicBuffer.cpp
rename : widget/src/android/AndroidGraphicBuffer.h => widget/android/AndroidGraphicBuffer.h
rename : widget/src/android/AndroidJNI.cpp => widget/android/AndroidJNI.cpp
rename : widget/src/android/AndroidJavaWrappers.cpp => widget/android/AndroidJavaWrappers.cpp
rename : widget/src/android/AndroidJavaWrappers.h => widget/android/AndroidJavaWrappers.h
rename : widget/src/android/GfxInfo.cpp => widget/android/GfxInfo.cpp
rename : widget/src/android/GfxInfo.h => widget/android/GfxInfo.h
rename : widget/src/android/Makefile.in => widget/android/Makefile.in
rename : widget/src/android/nsAppShell.cpp => widget/android/nsAppShell.cpp
rename : widget/src/android/nsAppShell.h => widget/android/nsAppShell.h
rename : widget/src/android/nsClipboard.cpp => widget/android/nsClipboard.cpp
rename : widget/src/android/nsClipboard.h => widget/android/nsClipboard.h
rename : widget/src/android/nsDeviceContextAndroid.cpp => widget/android/nsDeviceContextAndroid.cpp
rename : widget/src/android/nsDeviceContextAndroid.h => widget/android/nsDeviceContextAndroid.h
rename : widget/src/android/nsFilePicker.cpp => widget/android/nsFilePicker.cpp
rename : widget/src/android/nsFilePicker.h => widget/android/nsFilePicker.h
rename : widget/src/android/nsIAndroidBridge.idl => widget/android/nsIAndroidBridge.idl
rename : widget/src/android/nsIMEPicker.cpp => widget/android/nsIMEPicker.cpp
rename : widget/src/android/nsIMEPicker.h => widget/android/nsIMEPicker.h
rename : widget/src/android/nsIdleServiceAndroid.cpp => widget/android/nsIdleServiceAndroid.cpp
rename : widget/src/android/nsIdleServiceAndroid.h => widget/android/nsIdleServiceAndroid.h
rename : widget/src/android/nsLookAndFeel.cpp => widget/android/nsLookAndFeel.cpp
rename : widget/src/android/nsLookAndFeel.h => widget/android/nsLookAndFeel.h
rename : widget/src/android/nsPrintOptionsAndroid.cpp => widget/android/nsPrintOptionsAndroid.cpp
rename : widget/src/android/nsPrintOptionsAndroid.h => widget/android/nsPrintOptionsAndroid.h
rename : widget/src/android/nsScreenManagerAndroid.cpp => widget/android/nsScreenManagerAndroid.cpp
rename : widget/src/android/nsScreenManagerAndroid.h => widget/android/nsScreenManagerAndroid.h
rename : widget/src/android/nsWidgetFactory.cpp => widget/android/nsWidgetFactory.cpp
rename : widget/src/android/nsWindow.cpp => widget/android/nsWindow.cpp
rename : widget/src/android/nsWindow.h => widget/android/nsWindow.h
rename : widget/src/build/Makefile.in => widget/build/Makefile.in
rename : widget/src/build/nsWinWidgetFactory.cpp => widget/build/nsWinWidgetFactory.cpp
rename : widget/src/build/res/aliasb.cur => widget/build/res/aliasb.cur
rename : widget/src/build/res/cell.cur => widget/build/res/cell.cur
rename : widget/src/build/res/col_resize.cur => widget/build/res/col_resize.cur
rename : widget/src/build/res/copy.cur => widget/build/res/copy.cur
rename : widget/src/build/res/grab.cur => widget/build/res/grab.cur
rename : widget/src/build/res/grabbing.cur => widget/build/res/grabbing.cur
rename : widget/src/build/res/none.cur => widget/build/res/none.cur
rename : widget/src/build/res/row_resize.cur => widget/build/res/row_resize.cur
rename : widget/src/build/res/select.cur => widget/build/res/select.cur
rename : widget/src/build/res/vertical_text.cur => widget/build/res/vertical_text.cur
rename : widget/src/build/res/zoom_in.cur => widget/build/res/zoom_in.cur
rename : widget/src/build/res/zoom_out.cur => widget/build/res/zoom_out.cur
rename : widget/src/build/widget.rc => widget/build/widget.rc
rename : widget/src/cocoa/ComplexTextInputPanel.h => widget/cocoa/ComplexTextInputPanel.h
rename : widget/src/cocoa/ComplexTextInputPanel.mm => widget/cocoa/ComplexTextInputPanel.mm
rename : widget/src/cocoa/CustomCocoaEvents.h => widget/cocoa/CustomCocoaEvents.h
rename : widget/src/cocoa/GfxInfo.h => widget/cocoa/GfxInfo.h
rename : widget/src/cocoa/GfxInfo.mm => widget/cocoa/GfxInfo.mm
rename : widget/src/cocoa/Makefile.in => widget/cocoa/Makefile.in
rename : widget/src/cocoa/TextInputHandler.h => widget/cocoa/TextInputHandler.h
rename : widget/src/cocoa/TextInputHandler.mm => widget/cocoa/TextInputHandler.mm
rename : widget/src/cocoa/WidgetTraceEvent.mm => widget/cocoa/WidgetTraceEvent.mm
rename : widget/src/cocoa/crashtests/373122-1-inner.html => widget/cocoa/crashtests/373122-1-inner.html
rename : widget/src/cocoa/crashtests/373122-1.html => widget/cocoa/crashtests/373122-1.html
rename : widget/src/cocoa/crashtests/397209-1.html => widget/cocoa/crashtests/397209-1.html
rename : widget/src/cocoa/crashtests/403296-1.xhtml => widget/cocoa/crashtests/403296-1.xhtml
rename : widget/src/cocoa/crashtests/419737-1.html => widget/cocoa/crashtests/419737-1.html
rename : widget/src/cocoa/crashtests/435223-1.html => widget/cocoa/crashtests/435223-1.html
rename : widget/src/cocoa/crashtests/444260-1.xul => widget/cocoa/crashtests/444260-1.xul
rename : widget/src/cocoa/crashtests/444864-1.html => widget/cocoa/crashtests/444864-1.html
rename : widget/src/cocoa/crashtests/449111-1.html => widget/cocoa/crashtests/449111-1.html
rename : widget/src/cocoa/crashtests/460349-1.xhtml => widget/cocoa/crashtests/460349-1.xhtml
rename : widget/src/cocoa/crashtests/460387-1.html => widget/cocoa/crashtests/460387-1.html
rename : widget/src/cocoa/crashtests/464589-1.html => widget/cocoa/crashtests/464589-1.html
rename : widget/src/cocoa/crashtests/crashtests.list => widget/cocoa/crashtests/crashtests.list
rename : widget/src/cocoa/cursors/arrowN.tiff => widget/cocoa/cursors/arrowN.tiff
rename : widget/src/cocoa/cursors/arrowS.tiff => widget/cocoa/cursors/arrowS.tiff
rename : widget/src/cocoa/cursors/colResize.tiff => widget/cocoa/cursors/colResize.tiff
rename : widget/src/cocoa/cursors/help.tiff => widget/cocoa/cursors/help.tiff
rename : widget/src/cocoa/cursors/rowResize.tiff => widget/cocoa/cursors/rowResize.tiff
rename : widget/src/cocoa/cursors/sizeNE.tiff => widget/cocoa/cursors/sizeNE.tiff
rename : widget/src/cocoa/cursors/sizeNESW.tiff => widget/cocoa/cursors/sizeNESW.tiff
rename : widget/src/cocoa/cursors/sizeNS.tiff => widget/cocoa/cursors/sizeNS.tiff
rename : widget/src/cocoa/cursors/sizeNW.tiff => widget/cocoa/cursors/sizeNW.tiff
rename : widget/src/cocoa/cursors/sizeNWSE.tiff => widget/cocoa/cursors/sizeNWSE.tiff
rename : widget/src/cocoa/cursors/sizeSE.tiff => widget/cocoa/cursors/sizeSE.tiff
rename : widget/src/cocoa/cursors/sizeSW.tiff => widget/cocoa/cursors/sizeSW.tiff
rename : widget/src/cocoa/cursors/spin1.tiff => widget/cocoa/cursors/spin1.tiff
rename : widget/src/cocoa/cursors/spin2.tiff => widget/cocoa/cursors/spin2.tiff
rename : widget/src/cocoa/cursors/spin3.tiff => widget/cocoa/cursors/spin3.tiff
rename : widget/src/cocoa/cursors/spin4.tiff => widget/cocoa/cursors/spin4.tiff
rename : widget/src/cocoa/cursors/vtIBeam.tiff => widget/cocoa/cursors/vtIBeam.tiff
rename : widget/src/cocoa/cursors/zoomIn.tiff => widget/cocoa/cursors/zoomIn.tiff
rename : widget/src/cocoa/cursors/zoomOut.tiff => widget/cocoa/cursors/zoomOut.tiff
rename : widget/src/cocoa/mozView.h => widget/cocoa/mozView.h
rename : widget/src/cocoa/nsAppShell.h => widget/cocoa/nsAppShell.h
rename : widget/src/cocoa/nsAppShell.mm => widget/cocoa/nsAppShell.mm
rename : widget/src/cocoa/nsBidiKeyboard.h => widget/cocoa/nsBidiKeyboard.h
rename : widget/src/cocoa/nsBidiKeyboard.mm => widget/cocoa/nsBidiKeyboard.mm
rename : widget/src/cocoa/nsChangeObserver.h => widget/cocoa/nsChangeObserver.h
rename : widget/src/cocoa/nsChildView.h => widget/cocoa/nsChildView.h
rename : widget/src/cocoa/nsChildView.mm => widget/cocoa/nsChildView.mm
rename : widget/src/cocoa/nsClipboard.h => widget/cocoa/nsClipboard.h
rename : widget/src/cocoa/nsClipboard.mm => widget/cocoa/nsClipboard.mm
rename : widget/src/cocoa/nsCocoaFeatures.h => widget/cocoa/nsCocoaFeatures.h
rename : widget/src/cocoa/nsCocoaFeatures.mm => widget/cocoa/nsCocoaFeatures.mm
rename : widget/src/cocoa/nsCocoaUtils.h => widget/cocoa/nsCocoaUtils.h
rename : widget/src/cocoa/nsCocoaUtils.mm => widget/cocoa/nsCocoaUtils.mm
rename : widget/src/cocoa/nsCocoaWindow.h => widget/cocoa/nsCocoaWindow.h
rename : widget/src/cocoa/nsCocoaWindow.mm => widget/cocoa/nsCocoaWindow.mm
rename : widget/src/cocoa/nsCursorManager.h => widget/cocoa/nsCursorManager.h
rename : widget/src/cocoa/nsCursorManager.mm => widget/cocoa/nsCursorManager.mm
rename : widget/src/cocoa/nsDeviceContextSpecX.h => widget/cocoa/nsDeviceContextSpecX.h
rename : widget/src/cocoa/nsDeviceContextSpecX.mm => widget/cocoa/nsDeviceContextSpecX.mm
rename : widget/src/cocoa/nsDragService.h => widget/cocoa/nsDragService.h
rename : widget/src/cocoa/nsDragService.mm => widget/cocoa/nsDragService.mm
rename : widget/src/cocoa/nsFilePicker.h => widget/cocoa/nsFilePicker.h
rename : widget/src/cocoa/nsFilePicker.mm => widget/cocoa/nsFilePicker.mm
rename : widget/src/cocoa/nsIdleServiceX.h => widget/cocoa/nsIdleServiceX.h
rename : widget/src/cocoa/nsIdleServiceX.mm => widget/cocoa/nsIdleServiceX.mm
rename : widget/src/cocoa/nsLookAndFeel.h => widget/cocoa/nsLookAndFeel.h
rename : widget/src/cocoa/nsLookAndFeel.mm => widget/cocoa/nsLookAndFeel.mm
rename : widget/src/cocoa/nsMacCursor.h => widget/cocoa/nsMacCursor.h
rename : widget/src/cocoa/nsMacCursor.mm => widget/cocoa/nsMacCursor.mm
rename : widget/src/cocoa/nsMacDockSupport.h => widget/cocoa/nsMacDockSupport.h
rename : widget/src/cocoa/nsMacDockSupport.mm => widget/cocoa/nsMacDockSupport.mm
rename : widget/src/cocoa/nsMenuBarX.h => widget/cocoa/nsMenuBarX.h
rename : widget/src/cocoa/nsMenuBarX.mm => widget/cocoa/nsMenuBarX.mm
rename : widget/src/cocoa/nsMenuBaseX.h => widget/cocoa/nsMenuBaseX.h
rename : widget/src/cocoa/nsMenuGroupOwnerX.h => widget/cocoa/nsMenuGroupOwnerX.h
rename : widget/src/cocoa/nsMenuGroupOwnerX.mm => widget/cocoa/nsMenuGroupOwnerX.mm
rename : widget/src/cocoa/nsMenuItemIconX.h => widget/cocoa/nsMenuItemIconX.h
rename : widget/src/cocoa/nsMenuItemIconX.mm => widget/cocoa/nsMenuItemIconX.mm
rename : widget/src/cocoa/nsMenuItemX.h => widget/cocoa/nsMenuItemX.h
rename : widget/src/cocoa/nsMenuItemX.mm => widget/cocoa/nsMenuItemX.mm
rename : widget/src/cocoa/nsMenuUtilsX.h => widget/cocoa/nsMenuUtilsX.h
rename : widget/src/cocoa/nsMenuUtilsX.mm => widget/cocoa/nsMenuUtilsX.mm
rename : widget/src/cocoa/nsMenuX.h => widget/cocoa/nsMenuX.h
rename : widget/src/cocoa/nsMenuX.mm => widget/cocoa/nsMenuX.mm
rename : widget/src/cocoa/nsNativeThemeCocoa.h => widget/cocoa/nsNativeThemeCocoa.h
rename : widget/src/cocoa/nsNativeThemeCocoa.mm => widget/cocoa/nsNativeThemeCocoa.mm
rename : widget/src/cocoa/nsNativeThemeColors.h => widget/cocoa/nsNativeThemeColors.h
rename : widget/src/cocoa/nsPIWidgetCocoa.idl => widget/cocoa/nsPIWidgetCocoa.idl
rename : widget/src/cocoa/nsPrintDialogX.h => widget/cocoa/nsPrintDialogX.h
rename : widget/src/cocoa/nsPrintDialogX.mm => widget/cocoa/nsPrintDialogX.mm
rename : widget/src/cocoa/nsPrintOptionsX.h => widget/cocoa/nsPrintOptionsX.h
rename : widget/src/cocoa/nsPrintOptionsX.mm => widget/cocoa/nsPrintOptionsX.mm
rename : widget/src/cocoa/nsPrintSettingsX.h => widget/cocoa/nsPrintSettingsX.h
rename : widget/src/cocoa/nsPrintSettingsX.mm => widget/cocoa/nsPrintSettingsX.mm
rename : widget/src/cocoa/nsScreenCocoa.h => widget/cocoa/nsScreenCocoa.h
rename : widget/src/cocoa/nsScreenCocoa.mm => widget/cocoa/nsScreenCocoa.mm
rename : widget/src/cocoa/nsScreenManagerCocoa.h => widget/cocoa/nsScreenManagerCocoa.h
rename : widget/src/cocoa/nsScreenManagerCocoa.mm => widget/cocoa/nsScreenManagerCocoa.mm
rename : widget/src/cocoa/nsSound.h => widget/cocoa/nsSound.h
rename : widget/src/cocoa/nsSound.mm => widget/cocoa/nsSound.mm
rename : widget/src/cocoa/nsStandaloneNativeMenu.h => widget/cocoa/nsStandaloneNativeMenu.h
rename : widget/src/cocoa/nsStandaloneNativeMenu.mm => widget/cocoa/nsStandaloneNativeMenu.mm
rename : widget/src/cocoa/nsToolkit.h => widget/cocoa/nsToolkit.h
rename : widget/src/cocoa/nsToolkit.mm => widget/cocoa/nsToolkit.mm
rename : widget/src/cocoa/nsWidgetFactory.mm => widget/cocoa/nsWidgetFactory.mm
rename : widget/src/cocoa/nsWindowMap.h => widget/cocoa/nsWindowMap.h
rename : widget/src/cocoa/nsWindowMap.mm => widget/cocoa/nsWindowMap.mm
rename : widget/src/cocoa/resources/MainMenu.nib/classes.nib => widget/cocoa/resources/MainMenu.nib/classes.nib
rename : widget/src/cocoa/resources/MainMenu.nib/info.nib => widget/cocoa/resources/MainMenu.nib/info.nib
rename : widget/src/cocoa/resources/MainMenu.nib/keyedobjects.nib => widget/cocoa/resources/MainMenu.nib/keyedobjects.nib
rename : widget/src/crashtests/303901-1.html => widget/crashtests/303901-1.html
rename : widget/src/crashtests/303901-2.html => widget/crashtests/303901-2.html
rename : widget/src/crashtests/380359-1.xhtml => widget/crashtests/380359-1.xhtml
rename : widget/src/crashtests/crashtests.list => widget/crashtests/crashtests.list
rename : widget/src/gonk/Framebuffer.cpp => widget/gonk/Framebuffer.cpp
rename : widget/src/gonk/Framebuffer.h => widget/gonk/Framebuffer.h
rename : widget/src/gonk/Makefile.in => widget/gonk/Makefile.in
rename : widget/src/gonk/nsAppShell.cpp => widget/gonk/nsAppShell.cpp
rename : widget/src/gonk/nsAppShell.h => widget/gonk/nsAppShell.h
rename : widget/src/gonk/nsLookAndFeel.cpp => widget/gonk/nsLookAndFeel.cpp
rename : widget/src/gonk/nsLookAndFeel.h => widget/gonk/nsLookAndFeel.h
rename : widget/src/gonk/nsScreenManagerGonk.cpp => widget/gonk/nsScreenManagerGonk.cpp
rename : widget/src/gonk/nsScreenManagerGonk.h => widget/gonk/nsScreenManagerGonk.h
rename : widget/src/gonk/nsWidgetFactory.cpp => widget/gonk/nsWidgetFactory.cpp
rename : widget/src/gonk/nsWindow.cpp => widget/gonk/nsWindow.cpp
rename : widget/src/gonk/nsWindow.h => widget/gonk/nsWindow.h
rename : widget/src/gtk2/Makefile.in => widget/gtk2/Makefile.in
rename : widget/src/gtk2/WidgetTraceEvent.cpp => widget/gtk2/WidgetTraceEvent.cpp
rename : widget/src/gtk2/crashtests/673390-1.html => widget/gtk2/crashtests/673390-1.html
rename : widget/src/gtk2/crashtests/crashtests.list => widget/gtk2/crashtests/crashtests.list
rename : widget/src/gtk2/gtk2compat.h => widget/gtk2/gtk2compat.h
rename : widget/src/gtk2/gtk2drawing.c => widget/gtk2/gtk2drawing.c
rename : widget/src/gtk2/gtkdrawing.h => widget/gtk2/gtkdrawing.h
rename : widget/src/gtk2/maiRedundantObjectFactory.c => widget/gtk2/maiRedundantObjectFactory.c
rename : widget/src/gtk2/maiRedundantObjectFactory.h => widget/gtk2/maiRedundantObjectFactory.h
rename : widget/src/gtk2/mozcontainer.c => widget/gtk2/mozcontainer.c
rename : widget/src/gtk2/mozcontainer.h => widget/gtk2/mozcontainer.h
rename : widget/src/gtk2/nsAppShell.cpp => widget/gtk2/nsAppShell.cpp
rename : widget/src/gtk2/nsAppShell.h => widget/gtk2/nsAppShell.h
rename : widget/src/gtk2/nsBidiKeyboard.cpp => widget/gtk2/nsBidiKeyboard.cpp
rename : widget/src/gtk2/nsBidiKeyboard.h => widget/gtk2/nsBidiKeyboard.h
rename : widget/src/gtk2/nsCUPSShim.cpp => widget/gtk2/nsCUPSShim.cpp
rename : widget/src/gtk2/nsCUPSShim.h => widget/gtk2/nsCUPSShim.h
rename : widget/src/gtk2/nsClipboard.cpp => widget/gtk2/nsClipboard.cpp
rename : widget/src/gtk2/nsClipboard.h => widget/gtk2/nsClipboard.h
rename : widget/src/gtk2/nsDeviceContextSpecG.cpp => widget/gtk2/nsDeviceContextSpecG.cpp
rename : widget/src/gtk2/nsDeviceContextSpecG.h => widget/gtk2/nsDeviceContextSpecG.h
rename : widget/src/gtk2/nsDragService.cpp => widget/gtk2/nsDragService.cpp
rename : widget/src/gtk2/nsDragService.h => widget/gtk2/nsDragService.h
rename : widget/src/gtk2/nsFilePicker.cpp => widget/gtk2/nsFilePicker.cpp
rename : widget/src/gtk2/nsFilePicker.h => widget/gtk2/nsFilePicker.h
rename : widget/src/gtk2/nsGTKToolkit.h => widget/gtk2/nsGTKToolkit.h
rename : widget/src/gtk2/nsGtkCursors.h => widget/gtk2/nsGtkCursors.h
rename : widget/src/gtk2/nsGtkIMModule.cpp => widget/gtk2/nsGtkIMModule.cpp
rename : widget/src/gtk2/nsGtkIMModule.h => widget/gtk2/nsGtkIMModule.h
rename : widget/src/gtk2/nsGtkKeyUtils.cpp => widget/gtk2/nsGtkKeyUtils.cpp
rename : widget/src/gtk2/nsGtkKeyUtils.h => widget/gtk2/nsGtkKeyUtils.h
rename : widget/src/gtk2/nsIImageToPixbuf.h => widget/gtk2/nsIImageToPixbuf.h
rename : widget/src/gtk2/nsIdleServiceGTK.cpp => widget/gtk2/nsIdleServiceGTK.cpp
rename : widget/src/gtk2/nsIdleServiceGTK.h => widget/gtk2/nsIdleServiceGTK.h
rename : widget/src/gtk2/nsImageToPixbuf.cpp => widget/gtk2/nsImageToPixbuf.cpp
rename : widget/src/gtk2/nsImageToPixbuf.h => widget/gtk2/nsImageToPixbuf.h
rename : widget/src/gtk2/nsLookAndFeel.cpp => widget/gtk2/nsLookAndFeel.cpp
rename : widget/src/gtk2/nsLookAndFeel.h => widget/gtk2/nsLookAndFeel.h
rename : widget/src/gtk2/nsNativeKeyBindings.cpp => widget/gtk2/nsNativeKeyBindings.cpp
rename : widget/src/gtk2/nsNativeKeyBindings.h => widget/gtk2/nsNativeKeyBindings.h
rename : widget/src/gtk2/nsNativeThemeGTK.cpp => widget/gtk2/nsNativeThemeGTK.cpp
rename : widget/src/gtk2/nsNativeThemeGTK.h => widget/gtk2/nsNativeThemeGTK.h
rename : widget/src/gtk2/nsPSPrinters.cpp => widget/gtk2/nsPSPrinters.cpp
rename : widget/src/gtk2/nsPSPrinters.h => widget/gtk2/nsPSPrinters.h
rename : widget/src/gtk2/nsPaperPS.cpp => widget/gtk2/nsPaperPS.cpp
rename : widget/src/gtk2/nsPaperPS.h => widget/gtk2/nsPaperPS.h
rename : widget/src/gtk2/nsPrintDialogGTK.cpp => widget/gtk2/nsPrintDialogGTK.cpp
rename : widget/src/gtk2/nsPrintDialogGTK.h => widget/gtk2/nsPrintDialogGTK.h
rename : widget/src/gtk2/nsPrintOptionsGTK.cpp => widget/gtk2/nsPrintOptionsGTK.cpp
rename : widget/src/gtk2/nsPrintOptionsGTK.h => widget/gtk2/nsPrintOptionsGTK.h
rename : widget/src/gtk2/nsPrintSettingsGTK.cpp => widget/gtk2/nsPrintSettingsGTK.cpp
rename : widget/src/gtk2/nsPrintSettingsGTK.h => widget/gtk2/nsPrintSettingsGTK.h
rename : widget/src/gtk2/nsScreenGtk.cpp => widget/gtk2/nsScreenGtk.cpp
rename : widget/src/gtk2/nsScreenGtk.h => widget/gtk2/nsScreenGtk.h
rename : widget/src/gtk2/nsScreenManagerGtk.cpp => widget/gtk2/nsScreenManagerGtk.cpp
rename : widget/src/gtk2/nsScreenManagerGtk.h => widget/gtk2/nsScreenManagerGtk.h
rename : widget/src/gtk2/nsSound.cpp => widget/gtk2/nsSound.cpp
rename : widget/src/gtk2/nsSound.h => widget/gtk2/nsSound.h
rename : widget/src/gtk2/nsToolkit.cpp => widget/gtk2/nsToolkit.cpp
rename : widget/src/gtk2/nsWidgetFactory.cpp => widget/gtk2/nsWidgetFactory.cpp
rename : widget/src/gtk2/nsWindow.cpp => widget/gtk2/nsWindow.cpp
rename : widget/src/gtk2/nsWindow.h => widget/gtk2/nsWindow.h
rename : widget/src/gtkxtbin/Makefile.in => widget/gtkxtbin/Makefile.in
rename : widget/src/gtkxtbin/gtk2xtbin.c => widget/gtkxtbin/gtk2xtbin.c
rename : widget/src/gtkxtbin/gtk2xtbin.h => widget/gtkxtbin/gtk2xtbin.h
rename : widget/src/gtkxtbin/xembed.h => widget/gtkxtbin/xembed.h
rename : widget/public/nsEvent.h => widget/nsEvent.h
rename : widget/public/nsGUIEvent.h => widget/nsGUIEvent.h
rename : widget/public/nsGUIEventIPC.h => widget/nsGUIEventIPC.h
rename : widget/public/nsIAppShell.idl => widget/nsIAppShell.idl
rename : widget/public/nsIBaseWindow.idl => widget/nsIBaseWindow.idl
rename : widget/public/nsIBidiKeyboard.idl => widget/nsIBidiKeyboard.idl
rename : widget/public/nsIClipboard.idl => widget/nsIClipboard.idl
rename : widget/public/nsIClipboardDragDropHookList.idl => widget/nsIClipboardDragDropHookList.idl
rename : widget/public/nsIClipboardDragDropHooks.idl => widget/nsIClipboardDragDropHooks.idl
rename : widget/public/nsIClipboardHelper.idl => widget/nsIClipboardHelper.idl
rename : widget/public/nsIClipboardOwner.idl => widget/nsIClipboardOwner.idl
rename : widget/public/nsIDeviceContextSpec.h => widget/nsIDeviceContextSpec.h
rename : widget/public/nsIDragService.idl => widget/nsIDragService.idl
rename : widget/public/nsIDragSession.idl => widget/nsIDragSession.idl
rename : widget/public/nsIDragSessionGTK.h => widget/nsIDragSessionGTK.h
rename : widget/public/nsIDragSessionOS2.h => widget/nsIDragSessionOS2.h
rename : widget/public/nsIFilePicker.idl => widget/nsIFilePicker.idl
rename : widget/public/nsIFormatConverter.idl => widget/nsIFormatConverter.idl
rename : widget/public/nsIGfxInfo.idl => widget/nsIGfxInfo.idl
rename : widget/public/nsIGfxInfoDebug.idl => widget/nsIGfxInfoDebug.idl
rename : widget/public/nsIIMEPicker.idl => widget/nsIIMEPicker.idl
rename : widget/public/nsIIdleService.idl => widget/nsIIdleService.idl
rename : widget/public/nsIJumpListBuilder.idl => widget/nsIJumpListBuilder.idl
rename : widget/public/nsIJumpListItem.idl => widget/nsIJumpListItem.idl
rename : widget/public/nsIMacDockSupport.idl => widget/nsIMacDockSupport.idl
rename : widget/public/nsINativeKeyBindings.h => widget/nsINativeKeyBindings.h
rename : widget/public/nsINativeMenuService.h => widget/nsINativeMenuService.h
rename : widget/public/nsIPluginWidget.h => widget/nsIPluginWidget.h
rename : widget/public/nsIPrintDialogService.h => widget/nsIPrintDialogService.h
rename : widget/public/nsIPrintOptions.idl => widget/nsIPrintOptions.idl
rename : widget/public/nsIPrintSession.idl => widget/nsIPrintSession.idl
rename : widget/public/nsIPrintSettings.idl => widget/nsIPrintSettings.idl
rename : widget/public/nsIPrintSettingsService.idl => widget/nsIPrintSettingsService.idl
rename : widget/public/nsIPrintSettingsWin.idl => widget/nsIPrintSettingsWin.idl
rename : widget/public/nsIRollupListener.h => widget/nsIRollupListener.h
rename : widget/public/nsIRwsService.idl => widget/nsIRwsService.idl
rename : widget/public/nsIScreen.idl => widget/nsIScreen.idl
rename : widget/public/nsIScreenManager.idl => widget/nsIScreenManager.idl
rename : widget/public/nsISound.idl => widget/nsISound.idl
rename : widget/public/nsIStandaloneNativeMenu.idl => widget/nsIStandaloneNativeMenu.idl
rename : widget/public/nsITaskbarOverlayIconController.idl => widget/nsITaskbarOverlayIconController.idl
rename : widget/public/nsITaskbarPreview.idl => widget/nsITaskbarPreview.idl
rename : widget/public/nsITaskbarPreviewButton.idl => widget/nsITaskbarPreviewButton.idl
rename : widget/public/nsITaskbarPreviewController.idl => widget/nsITaskbarPreviewController.idl
rename : widget/public/nsITaskbarProgress.idl => widget/nsITaskbarProgress.idl
rename : widget/public/nsITaskbarTabPreview.idl => widget/nsITaskbarTabPreview.idl
rename : widget/public/nsITaskbarWindowPreview.idl => widget/nsITaskbarWindowPreview.idl
rename : widget/public/nsITransferable.idl => widget/nsITransferable.idl
rename : widget/public/nsIWidget.h => widget/nsIWidget.h
rename : widget/public/nsIWinTaskbar.idl => widget/nsIWinTaskbar.idl
rename : widget/public/nsNativeWidget.h => widget/nsNativeWidget.h
rename : widget/public/nsWidgetInitData.h => widget/nsWidgetInitData.h
rename : widget/public/nsWidgetsCID.h => widget/nsWidgetsCID.h
rename : widget/src/os2/Makefile.in => widget/os2/Makefile.in
rename : widget/src/os2/MozSounds.cmd => widget/os2/MozSounds.cmd
rename : widget/src/os2/README.firefox => widget/os2/README.firefox
rename : widget/src/os2/README.seamonkey => widget/os2/README.seamonkey
rename : widget/src/os2/README.thunderbird => widget/os2/README.thunderbird
rename : widget/src/os2/nsAppShell.cpp => widget/os2/nsAppShell.cpp
rename : widget/src/os2/nsAppShell.h => widget/os2/nsAppShell.h
rename : widget/src/os2/nsBidiKeyboard.cpp => widget/os2/nsBidiKeyboard.cpp
rename : widget/src/os2/nsBidiKeyboard.h => widget/os2/nsBidiKeyboard.h
rename : widget/src/os2/nsClipboard.cpp => widget/os2/nsClipboard.cpp
rename : widget/src/os2/nsClipboard.h => widget/os2/nsClipboard.h
rename : widget/src/os2/nsDeviceContextSpecOS2.cpp => widget/os2/nsDeviceContextSpecOS2.cpp
rename : widget/src/os2/nsDeviceContextSpecOS2.h => widget/os2/nsDeviceContextSpecOS2.h
rename : widget/src/os2/nsDragService.cpp => widget/os2/nsDragService.cpp
rename : widget/src/os2/nsDragService.h => widget/os2/nsDragService.h
rename : widget/src/os2/nsFilePicker.cpp => widget/os2/nsFilePicker.cpp
rename : widget/src/os2/nsFilePicker.h => widget/os2/nsFilePicker.h
rename : widget/src/os2/nsGfxDefs.h => widget/os2/nsGfxDefs.h
rename : widget/src/os2/nsIdleServiceOS2.cpp => widget/os2/nsIdleServiceOS2.cpp
rename : widget/src/os2/nsIdleServiceOS2.h => widget/os2/nsIdleServiceOS2.h
rename : widget/src/os2/nsLookAndFeel.cpp => widget/os2/nsLookAndFeel.cpp
rename : widget/src/os2/nsLookAndFeel.h => widget/os2/nsLookAndFeel.h
rename : widget/src/os2/nsOS2Uni.cpp => widget/os2/nsOS2Uni.cpp
rename : widget/src/os2/nsOS2Uni.h => widget/os2/nsOS2Uni.h
rename : widget/src/os2/nsPrintOS2.cpp => widget/os2/nsPrintOS2.cpp
rename : widget/src/os2/nsPrintOS2.h => widget/os2/nsPrintOS2.h
rename : widget/src/os2/nsPrintOptionsOS2.cpp => widget/os2/nsPrintOptionsOS2.cpp
rename : widget/src/os2/nsPrintOptionsOS2.h => widget/os2/nsPrintOptionsOS2.h
rename : widget/src/os2/nsPrintdOS2.h => widget/os2/nsPrintdOS2.h
rename : widget/src/os2/nsRwsService.cpp => widget/os2/nsRwsService.cpp
rename : widget/src/os2/nsRwsService.h => widget/os2/nsRwsService.h
rename : widget/src/os2/nsScreenManagerOS2.cpp => widget/os2/nsScreenManagerOS2.cpp
rename : widget/src/os2/nsScreenManagerOS2.h => widget/os2/nsScreenManagerOS2.h
rename : widget/src/os2/nsScreenOS2.cpp => widget/os2/nsScreenOS2.cpp
rename : widget/src/os2/nsScreenOS2.h => widget/os2/nsScreenOS2.h
rename : widget/src/os2/nsSound.cpp => widget/os2/nsSound.cpp
rename : widget/src/os2/nsSound.h => widget/os2/nsSound.h
rename : widget/src/os2/nsWidgetFactory.cpp => widget/os2/nsWidgetFactory.cpp
rename : widget/src/os2/nsWindow.cpp => widget/os2/nsWindow.cpp
rename : widget/src/os2/nsWindow.h => widget/os2/nsWindow.h
rename : widget/src/os2/os2FrameWindow.cpp => widget/os2/os2FrameWindow.cpp
rename : widget/src/os2/os2FrameWindow.h => widget/os2/os2FrameWindow.h
rename : widget/src/os2/res/aliasb.ptr => widget/os2/res/aliasb.ptr
rename : widget/src/os2/res/arrow_wait.ptr => widget/os2/res/arrow_wait.ptr
rename : widget/src/os2/res/cell.ptr => widget/os2/res/cell.ptr
rename : widget/src/os2/res/col_resize.ptr => widget/os2/res/col_resize.ptr
rename : widget/src/os2/res/copy.ptr => widget/os2/res/copy.ptr
rename : widget/src/os2/res/crosshair.ptr => widget/os2/res/crosshair.ptr
rename : widget/src/os2/res/dndtext.ico => widget/os2/res/dndtext.ico
rename : widget/src/os2/res/dndurl.ico => widget/os2/res/dndurl.ico
rename : widget/src/os2/res/grab.ptr => widget/os2/res/grab.ptr
rename : widget/src/os2/res/grabbing.ptr => widget/os2/res/grabbing.ptr
rename : widget/src/os2/res/help.ptr => widget/os2/res/help.ptr
rename : widget/src/os2/res/none.ptr => widget/os2/res/none.ptr
rename : widget/src/os2/res/row_resize.ptr => widget/os2/res/row_resize.ptr
rename : widget/src/os2/res/select.ptr => widget/os2/res/select.ptr
rename : widget/src/os2/res/vertical_text.ptr => widget/os2/res/vertical_text.ptr
rename : widget/src/os2/res/zoom_in.ptr => widget/os2/res/zoom_in.ptr
rename : widget/src/os2/res/zoom_out.ptr => widget/os2/res/zoom_out.ptr
rename : widget/src/os2/rws.h => widget/os2/rws.h
rename : widget/src/os2/rwserr.h => widget/os2/rwserr.h
rename : widget/src/os2/wdgtos2rc.h => widget/os2/wdgtos2rc.h
rename : widget/src/os2/widget.rc => widget/os2/widget.rc
rename : widget/src/qt/Makefile.in => widget/qt/Makefile.in
rename : widget/src/qt/faststartupqt/Makefile.in => widget/qt/faststartupqt/Makefile.in
rename : widget/src/qt/faststartupqt/mozqwidgetfast.cpp => widget/qt/faststartupqt/mozqwidgetfast.cpp
rename : widget/src/qt/faststartupqt/mozqwidgetfast.h => widget/qt/faststartupqt/mozqwidgetfast.h
rename : widget/src/qt/faststartupqt/nsFastStartupQt.cpp => widget/qt/faststartupqt/nsFastStartupQt.cpp
rename : widget/src/qt/faststartupqt/nsFastStartupQt.h => widget/qt/faststartupqt/nsFastStartupQt.h
rename : widget/src/qt/mozSwipeGesture.cpp => widget/qt/mozSwipeGesture.cpp
rename : widget/src/qt/mozSwipeGesture.h => widget/qt/mozSwipeGesture.h
rename : widget/src/qt/moziqwidget.h => widget/qt/moziqwidget.h
rename : widget/src/qt/mozqorientationsensorfilter.cpp => widget/qt/mozqorientationsensorfilter.cpp
rename : widget/src/qt/mozqorientationsensorfilter.h => widget/qt/mozqorientationsensorfilter.h
rename : widget/src/qt/mozqwidget.cpp => widget/qt/mozqwidget.cpp
rename : widget/src/qt/mozqwidget.h => widget/qt/mozqwidget.h
rename : widget/src/qt/nsAppShell.cpp => widget/qt/nsAppShell.cpp
rename : widget/src/qt/nsAppShell.h => widget/qt/nsAppShell.h
rename : widget/src/qt/nsBidiKeyboard.cpp => widget/qt/nsBidiKeyboard.cpp
rename : widget/src/qt/nsBidiKeyboard.h => widget/qt/nsBidiKeyboard.h
rename : widget/src/qt/nsClipboard.cpp => widget/qt/nsClipboard.cpp
rename : widget/src/qt/nsClipboard.h => widget/qt/nsClipboard.h
rename : widget/src/qt/nsCommonWidget.cpp => widget/qt/nsCommonWidget.cpp
rename : widget/src/qt/nsCommonWidget.h => widget/qt/nsCommonWidget.h
rename : widget/src/qt/nsDeviceContextSpecQt.cpp => widget/qt/nsDeviceContextSpecQt.cpp
rename : widget/src/qt/nsDeviceContextSpecQt.h => widget/qt/nsDeviceContextSpecQt.h
rename : widget/src/qt/nsDragService.cpp => widget/qt/nsDragService.cpp
rename : widget/src/qt/nsDragService.h => widget/qt/nsDragService.h
rename : widget/src/qt/nsFilePicker.cpp => widget/qt/nsFilePicker.cpp
rename : widget/src/qt/nsFilePicker.h => widget/qt/nsFilePicker.h
rename : widget/src/qt/nsIdleServiceQt.cpp => widget/qt/nsIdleServiceQt.cpp
rename : widget/src/qt/nsIdleServiceQt.h => widget/qt/nsIdleServiceQt.h
rename : widget/src/qt/nsLookAndFeel.cpp => widget/qt/nsLookAndFeel.cpp
rename : widget/src/qt/nsLookAndFeel.h => widget/qt/nsLookAndFeel.h
rename : widget/src/qt/nsMFilePicker.cpp => widget/qt/nsMFilePicker.cpp
rename : widget/src/qt/nsMFilePicker.h => widget/qt/nsMFilePicker.h
rename : widget/src/qt/nsNativeThemeQt.cpp => widget/qt/nsNativeThemeQt.cpp
rename : widget/src/qt/nsNativeThemeQt.h => widget/qt/nsNativeThemeQt.h
rename : widget/src/qt/nsPrintDialogQt.cpp => widget/qt/nsPrintDialogQt.cpp
rename : widget/src/qt/nsPrintDialogQt.h => widget/qt/nsPrintDialogQt.h
rename : widget/src/qt/nsPrintOptionsQt.cpp => widget/qt/nsPrintOptionsQt.cpp
rename : widget/src/qt/nsPrintOptionsQt.h => widget/qt/nsPrintOptionsQt.h
rename : widget/src/qt/nsPrintSettingsQt.cpp => widget/qt/nsPrintSettingsQt.cpp
rename : widget/src/qt/nsPrintSettingsQt.h => widget/qt/nsPrintSettingsQt.h
rename : widget/src/qt/nsQtKeyUtils.cpp => widget/qt/nsQtKeyUtils.cpp
rename : widget/src/qt/nsQtKeyUtils.h => widget/qt/nsQtKeyUtils.h
rename : widget/src/qt/nsScreenManagerQt.cpp => widget/qt/nsScreenManagerQt.cpp
rename : widget/src/qt/nsScreenManagerQt.h => widget/qt/nsScreenManagerQt.h
rename : widget/src/qt/nsScreenQt.cpp => widget/qt/nsScreenQt.cpp
rename : widget/src/qt/nsScreenQt.h => widget/qt/nsScreenQt.h
rename : widget/src/qt/nsSound.cpp => widget/qt/nsSound.cpp
rename : widget/src/qt/nsSound.h => widget/qt/nsSound.h
rename : widget/src/qt/nsWidgetFactory.cpp => widget/qt/nsWidgetFactory.cpp
rename : widget/src/qt/nsWindow.cpp => widget/qt/nsWindow.cpp
rename : widget/src/qt/nsWindow.h => widget/qt/nsWindow.h
rename : widget/src/shared/Makefile.in => widget/shared/Makefile.in
rename : widget/src/shared/WidgetUtils.cpp => widget/shared/WidgetUtils.cpp
rename : widget/src/shared/WidgetUtils.h => widget/shared/WidgetUtils.h
rename : widget/src/shared/nsShmImage.cpp => widget/shared/nsShmImage.cpp
rename : widget/src/shared/nsShmImage.h => widget/shared/nsShmImage.h
rename : widget/src/shared/x11/Makefile.in => widget/shared/x11/Makefile.in
rename : widget/src/shared/x11/keysym2ucs.c => widget/shared/x11/keysym2ucs.c
rename : widget/src/shared/x11/keysym2ucs.h => widget/shared/x11/keysym2ucs.h
rename : widget/src/windows/AudioSession.cpp => widget/windows/AudioSession.cpp
rename : widget/src/windows/AudioSession.h => widget/windows/AudioSession.h
rename : widget/src/windows/GfxInfo.cpp => widget/windows/GfxInfo.cpp
rename : widget/src/windows/GfxInfo.h => widget/windows/GfxInfo.h
rename : widget/src/windows/IEnumFE.cpp => widget/windows/IEnumFE.cpp
rename : widget/src/windows/IEnumFE.h => widget/windows/IEnumFE.h
rename : widget/src/windows/JumpListBuilder.cpp => widget/windows/JumpListBuilder.cpp
rename : widget/src/windows/JumpListBuilder.h => widget/windows/JumpListBuilder.h
rename : widget/src/windows/JumpListItem.cpp => widget/windows/JumpListItem.cpp
rename : widget/src/windows/JumpListItem.h => widget/windows/JumpListItem.h
rename : widget/src/windows/KeyboardLayout.cpp => widget/windows/KeyboardLayout.cpp
rename : widget/src/windows/KeyboardLayout.h => widget/windows/KeyboardLayout.h
rename : widget/src/windows/LSPAnnotator.cpp => widget/windows/LSPAnnotator.cpp
rename : widget/src/windows/Makefile.in => widget/windows/Makefile.in
rename : widget/src/windows/TaskbarPreview.cpp => widget/windows/TaskbarPreview.cpp
rename : widget/src/windows/TaskbarPreview.h => widget/windows/TaskbarPreview.h
rename : widget/src/windows/TaskbarPreviewButton.cpp => widget/windows/TaskbarPreviewButton.cpp
rename : widget/src/windows/TaskbarPreviewButton.h => widget/windows/TaskbarPreviewButton.h
rename : widget/src/windows/TaskbarTabPreview.cpp => widget/windows/TaskbarTabPreview.cpp
rename : widget/src/windows/TaskbarTabPreview.h => widget/windows/TaskbarTabPreview.h
rename : widget/src/windows/TaskbarWindowPreview.cpp => widget/windows/TaskbarWindowPreview.cpp
rename : widget/src/windows/TaskbarWindowPreview.h => widget/windows/TaskbarWindowPreview.h
rename : widget/src/windows/WidgetTraceEvent.cpp => widget/windows/WidgetTraceEvent.cpp
rename : widget/src/windows/WinTaskbar.cpp => widget/windows/WinTaskbar.cpp
rename : widget/src/windows/WinTaskbar.h => widget/windows/WinTaskbar.h
rename : widget/src/windows/WindowHook.cpp => widget/windows/WindowHook.cpp
rename : widget/src/windows/WindowHook.h => widget/windows/WindowHook.h
rename : widget/src/windows/nsAppShell.cpp => widget/windows/nsAppShell.cpp
rename : widget/src/windows/nsAppShell.h => widget/windows/nsAppShell.h
rename : widget/src/windows/nsBidiKeyboard.cpp => widget/windows/nsBidiKeyboard.cpp
rename : widget/src/windows/nsBidiKeyboard.h => widget/windows/nsBidiKeyboard.h
rename : widget/src/windows/nsClipboard.cpp => widget/windows/nsClipboard.cpp
rename : widget/src/windows/nsClipboard.h => widget/windows/nsClipboard.h
rename : widget/src/windows/nsDataObj.cpp => widget/windows/nsDataObj.cpp
rename : widget/src/windows/nsDataObj.h => widget/windows/nsDataObj.h
rename : widget/src/windows/nsDataObjCollection.cpp => widget/windows/nsDataObjCollection.cpp
rename : widget/src/windows/nsDataObjCollection.h => widget/windows/nsDataObjCollection.h
rename : widget/src/windows/nsDeviceContextSpecWin.cpp => widget/windows/nsDeviceContextSpecWin.cpp
rename : widget/src/windows/nsDeviceContextSpecWin.h => widget/windows/nsDeviceContextSpecWin.h
rename : widget/src/windows/nsDragService.cpp => widget/windows/nsDragService.cpp
rename : widget/src/windows/nsDragService.h => widget/windows/nsDragService.h
rename : widget/src/windows/nsFilePicker.cpp => widget/windows/nsFilePicker.cpp
rename : widget/src/windows/nsFilePicker.h => widget/windows/nsFilePicker.h
rename : widget/src/windows/nsIMM32Handler.cpp => widget/windows/nsIMM32Handler.cpp
rename : widget/src/windows/nsIMM32Handler.h => widget/windows/nsIMM32Handler.h
rename : widget/src/windows/nsIdleServiceWin.cpp => widget/windows/nsIdleServiceWin.cpp
rename : widget/src/windows/nsIdleServiceWin.h => widget/windows/nsIdleServiceWin.h
rename : widget/src/windows/nsImageClipboard.cpp => widget/windows/nsImageClipboard.cpp
rename : widget/src/windows/nsImageClipboard.h => widget/windows/nsImageClipboard.h
rename : widget/src/windows/nsLookAndFeel.cpp => widget/windows/nsLookAndFeel.cpp
rename : widget/src/windows/nsLookAndFeel.h => widget/windows/nsLookAndFeel.h
rename : widget/src/windows/nsNativeDragSource.cpp => widget/windows/nsNativeDragSource.cpp
rename : widget/src/windows/nsNativeDragSource.h => widget/windows/nsNativeDragSource.h
rename : widget/src/windows/nsNativeDragTarget.cpp => widget/windows/nsNativeDragTarget.cpp
rename : widget/src/windows/nsNativeDragTarget.h => widget/windows/nsNativeDragTarget.h
rename : widget/src/windows/nsNativeThemeWin.cpp => widget/windows/nsNativeThemeWin.cpp
rename : widget/src/windows/nsNativeThemeWin.h => widget/windows/nsNativeThemeWin.h
rename : widget/src/windows/nsPrintOptionsWin.cpp => widget/windows/nsPrintOptionsWin.cpp
rename : widget/src/windows/nsPrintOptionsWin.h => widget/windows/nsPrintOptionsWin.h
rename : widget/src/windows/nsPrintSettingsWin.cpp => widget/windows/nsPrintSettingsWin.cpp
rename : widget/src/windows/nsPrintSettingsWin.h => widget/windows/nsPrintSettingsWin.h
rename : widget/src/windows/nsScreenManagerWin.cpp => widget/windows/nsScreenManagerWin.cpp
rename : widget/src/windows/nsScreenManagerWin.h => widget/windows/nsScreenManagerWin.h
rename : widget/src/windows/nsScreenWin.cpp => widget/windows/nsScreenWin.cpp
rename : widget/src/windows/nsScreenWin.h => widget/windows/nsScreenWin.h
rename : widget/src/windows/nsSound.cpp => widget/windows/nsSound.cpp
rename : widget/src/windows/nsSound.h => widget/windows/nsSound.h
rename : widget/src/windows/nsTextStore.cpp => widget/windows/nsTextStore.cpp
rename : widget/src/windows/nsTextStore.h => widget/windows/nsTextStore.h
rename : widget/src/windows/nsToolkit.cpp => widget/windows/nsToolkit.cpp
rename : widget/src/windows/nsToolkit.h => widget/windows/nsToolkit.h
rename : widget/src/windows/nsUXThemeConstants.h => widget/windows/nsUXThemeConstants.h
rename : widget/src/windows/nsUXThemeData.cpp => widget/windows/nsUXThemeData.cpp
rename : widget/src/windows/nsUXThemeData.h => widget/windows/nsUXThemeData.h
rename : widget/src/windows/nsWinGesture.cpp => widget/windows/nsWinGesture.cpp
rename : widget/src/windows/nsWinGesture.h => widget/windows/nsWinGesture.h
rename : widget/src/windows/nsWindow.cpp => widget/windows/nsWindow.cpp
rename : widget/src/windows/nsWindow.h => widget/windows/nsWindow.h
rename : widget/src/windows/nsWindowDbg.cpp => widget/windows/nsWindowDbg.cpp
rename : widget/src/windows/nsWindowDbg.h => widget/windows/nsWindowDbg.h
rename : widget/src/windows/nsWindowDefs.h => widget/windows/nsWindowDefs.h
rename : widget/src/windows/nsWindowGfx.cpp => widget/windows/nsWindowGfx.cpp
rename : widget/src/windows/nsWindowGfx.h => widget/windows/nsWindowGfx.h
rename : widget/src/windows/nsdefs.h => widget/windows/nsdefs.h
rename : widget/src/windows/resource.h => widget/windows/resource.h
rename : widget/src/windows/tests/Makefile.in => widget/windows/tests/Makefile.in
rename : widget/src/windows/tests/TestWinDND.cpp => widget/windows/tests/TestWinDND.cpp
rename : widget/src/xpwidgets/GfxDriverInfo.cpp => widget/xpwidgets/GfxDriverInfo.cpp
rename : widget/src/xpwidgets/GfxDriverInfo.h => widget/xpwidgets/GfxDriverInfo.h
rename : widget/src/xpwidgets/GfxInfoBase.cpp => widget/xpwidgets/GfxInfoBase.cpp
rename : widget/src/xpwidgets/GfxInfoBase.h => widget/xpwidgets/GfxInfoBase.h
rename : widget/src/xpwidgets/GfxInfoCollector.h => widget/xpwidgets/GfxInfoCollector.h
rename : widget/src/xpwidgets/GfxInfoWebGL.cpp => widget/xpwidgets/GfxInfoWebGL.cpp
rename : widget/src/xpwidgets/GfxInfoWebGL.h => widget/xpwidgets/GfxInfoWebGL.h
rename : widget/src/xpwidgets/GfxInfoX11.cpp => widget/xpwidgets/GfxInfoX11.cpp
rename : widget/src/xpwidgets/GfxInfoX11.h => widget/xpwidgets/GfxInfoX11.h
rename : widget/src/xpwidgets/Makefile.in => widget/xpwidgets/Makefile.in
rename : widget/src/xpwidgets/PuppetWidget.cpp => widget/xpwidgets/PuppetWidget.cpp
rename : widget/src/xpwidgets/PuppetWidget.h => widget/xpwidgets/PuppetWidget.h
rename : widget/src/xpwidgets/nsAppShellSingleton.h => widget/xpwidgets/nsAppShellSingleton.h
rename : widget/src/xpwidgets/nsBaseAppShell.cpp => widget/xpwidgets/nsBaseAppShell.cpp
rename : widget/src/xpwidgets/nsBaseAppShell.h => widget/xpwidgets/nsBaseAppShell.h
rename : widget/src/xpwidgets/nsBaseClipboard.cpp => widget/xpwidgets/nsBaseClipboard.cpp
rename : widget/src/xpwidgets/nsBaseClipboard.h => widget/xpwidgets/nsBaseClipboard.h
rename : widget/src/xpwidgets/nsBaseDragService.cpp => widget/xpwidgets/nsBaseDragService.cpp
rename : widget/src/xpwidgets/nsBaseDragService.h => widget/xpwidgets/nsBaseDragService.h
rename : widget/src/xpwidgets/nsBaseFilePicker.cpp => widget/xpwidgets/nsBaseFilePicker.cpp
rename : widget/src/xpwidgets/nsBaseFilePicker.h => widget/xpwidgets/nsBaseFilePicker.h
rename : widget/src/xpwidgets/nsBaseWidget.cpp => widget/xpwidgets/nsBaseWidget.cpp
rename : widget/src/xpwidgets/nsBaseWidget.h => widget/xpwidgets/nsBaseWidget.h
rename : widget/src/xpwidgets/nsClipboardHelper.cpp => widget/xpwidgets/nsClipboardHelper.cpp
rename : widget/src/xpwidgets/nsClipboardHelper.h => widget/xpwidgets/nsClipboardHelper.h
rename : widget/src/xpwidgets/nsClipboardPrivacyHandler.cpp => widget/xpwidgets/nsClipboardPrivacyHandler.cpp
rename : widget/src/xpwidgets/nsClipboardPrivacyHandler.h => widget/xpwidgets/nsClipboardPrivacyHandler.h
rename : widget/src/xpwidgets/nsFilePickerProxy.cpp => widget/xpwidgets/nsFilePickerProxy.cpp
rename : widget/src/xpwidgets/nsFilePickerProxy.h => widget/xpwidgets/nsFilePickerProxy.h
rename : widget/src/xpwidgets/nsHTMLFormatConverter.cpp => widget/xpwidgets/nsHTMLFormatConverter.cpp
rename : widget/src/xpwidgets/nsHTMLFormatConverter.h => widget/xpwidgets/nsHTMLFormatConverter.h
rename : widget/src/xpwidgets/nsIdleService.cpp => widget/xpwidgets/nsIdleService.cpp
rename : widget/src/xpwidgets/nsIdleService.h => widget/xpwidgets/nsIdleService.h
rename : widget/src/xpwidgets/nsNativeTheme.cpp => widget/xpwidgets/nsNativeTheme.cpp
rename : widget/src/xpwidgets/nsNativeTheme.h => widget/xpwidgets/nsNativeTheme.h
rename : widget/src/xpwidgets/nsPrimitiveHelpers.cpp => widget/xpwidgets/nsPrimitiveHelpers.cpp
rename : widget/src/xpwidgets/nsPrimitiveHelpers.h => widget/xpwidgets/nsPrimitiveHelpers.h
rename : widget/src/xpwidgets/nsPrintOptionsImpl.cpp => widget/xpwidgets/nsPrintOptionsImpl.cpp
rename : widget/src/xpwidgets/nsPrintOptionsImpl.h => widget/xpwidgets/nsPrintOptionsImpl.h
rename : widget/src/xpwidgets/nsPrintSession.cpp => widget/xpwidgets/nsPrintSession.cpp
rename : widget/src/xpwidgets/nsPrintSession.h => widget/xpwidgets/nsPrintSession.h
rename : widget/src/xpwidgets/nsPrintSettingsImpl.cpp => widget/xpwidgets/nsPrintSettingsImpl.cpp
rename : widget/src/xpwidgets/nsPrintSettingsImpl.h => widget/xpwidgets/nsPrintSettingsImpl.h
rename : widget/src/xpwidgets/nsTransferable.cpp => widget/xpwidgets/nsTransferable.cpp
rename : widget/src/xpwidgets/nsTransferable.h => widget/xpwidgets/nsTransferable.h
rename : widget/src/xpwidgets/nsXPLookAndFeel.cpp => widget/xpwidgets/nsXPLookAndFeel.cpp
rename : widget/src/xpwidgets/nsXPLookAndFeel.h => widget/xpwidgets/nsXPLookAndFeel.h
rename : widget/src/xremoteclient/Makefile.in => widget/xremoteclient/Makefile.in
rename : widget/src/xremoteclient/XRemoteClient.cpp => widget/xremoteclient/XRemoteClient.cpp
rename : widget/src/xremoteclient/XRemoteClient.h => widget/xremoteclient/XRemoteClient.h
rename : widget/src/xremoteclient/XRemoteClientFactory.cpp => widget/xremoteclient/XRemoteClientFactory.cpp
rename : widget/src/xremoteclient/mozilla-xremote-client.cpp => widget/xremoteclient/mozilla-xremote-client.cpp
rename : widget/src/xremoteclient/nsRemoteClient.h => widget/xremoteclient/nsRemoteClient.h
2012-01-03 22:09:29 -05:00

832 lines
28 KiB
C++

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is the Mozilla browser.
*
* The Initial Developer of the Original Code is
* Netscape Communications Corporation.
* Portions created by the Initial Developer are Copyright (C) 2000
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
* Stuart Parmenter <pavlov@netscape.com>
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
#include "nsCOMPtr.h"
#include "nsReadableUtils.h"
#include "nsNetUtil.h"
#include "nsIServiceManager.h"
#include "nsIPlatformCharset.h"
#include "nsILocalFile.h"
#include "nsIURL.h"
#include "nsIStringBundle.h"
#include "nsEnumeratorUtils.h"
#include "nsCRT.h"
#include "nsIWidget.h"
#include "nsOS2Uni.h"
#include "nsFilePicker.h"
#ifndef MAX_PATH
#define MAX_PATH CCHMAXPATH
#endif
/* Item structure */
typedef struct _MyData
{
PAPSZ papszIFilterList;
ULONG ulCurExt;
ULONG ulNumFilters;
}MYDATA, *PMYDATA;
NS_IMPL_ISUPPORTS1(nsFilePicker, nsIFilePicker)
char nsFilePicker::mLastUsedDirectory[MAX_PATH+1] = { 0 };
static char* gpszFDSaveCaption = 0;
static char* gpszFDFileExists = 0;
static char* gpszFDFileReadOnly = 0;
MRESULT EXPENTRY DirDialogProc( HWND hwndDlg, ULONG msg, MPARAM mp1, MPARAM mp2);
MRESULT EXPENTRY FileDialogProc( HWND hwndDlg, ULONG msg, MPARAM mp1, MPARAM mp2);
//-------------------------------------------------------------------------
//
// nsFilePicker constructor
//
//-------------------------------------------------------------------------
nsFilePicker::nsFilePicker()
{
mWnd = NULL;
mUnicodeEncoder = nsnull;
mUnicodeDecoder = nsnull;
mSelectedType = 0;
}
//-------------------------------------------------------------------------
//
// nsFilePicker destructor
//
//-------------------------------------------------------------------------
nsFilePicker::~nsFilePicker()
{
mFilters.Clear();
mTitles.Clear();
NS_IF_RELEASE(mUnicodeEncoder);
NS_IF_RELEASE(mUnicodeDecoder);
}
/* static */ void
nsFilePicker::ReleaseGlobals()
{
if (gpszFDSaveCaption) {
free(gpszFDSaveCaption);
free(gpszFDFileExists);
free(gpszFDFileReadOnly);
}
}
//-------------------------------------------------------------------------
//
// Show - Display the file dialog
//
//-------------------------------------------------------------------------
NS_IMETHODIMP nsFilePicker::Show(PRInt16 *retval)
{
NS_ENSURE_ARG_POINTER(retval);
bool result = false;
nsCAutoString fileBuffer;
char *converted = ConvertToFileSystemCharset(mDefault);
if (nsnull == converted) {
LossyCopyUTF16toASCII(mDefault, fileBuffer);
}
else {
fileBuffer.Assign(converted);
nsMemory::Free( converted );
}
char *title = ConvertToFileSystemCharset(mTitle);
if (nsnull == title)
title = ToNewCString(mTitle);
nsCAutoString initialDir;
if (mDisplayDirectory)
mDisplayDirectory->GetNativePath(initialDir);
// If no display directory, re-use the last one.
if(initialDir.IsEmpty())
initialDir = mLastUsedDirectory;
mFile.Truncate();
FILEDLG filedlg;
memset(&filedlg, 0, sizeof(FILEDLG));
filedlg.cbSize = sizeof(FILEDLG);
filedlg.pszTitle = title;
if (mMode == modeGetFolder) {
PL_strncat(filedlg.szFullFile, initialDir.get(), MAX_PATH);
PL_strncat(filedlg.szFullFile, "\\", 1);
PL_strncat(filedlg.szFullFile, "^", 1);
filedlg.fl = FDS_OPEN_DIALOG | FDS_CENTER;
filedlg.pfnDlgProc = DirDialogProc;
DosError(FERR_DISABLEHARDERR);
WinFileDlg(HWND_DESKTOP, mWnd, &filedlg);
DosError(FERR_ENABLEHARDERR);
char* tempptr = strchr(filedlg.szFullFile, '^');
if (tempptr)
*tempptr = '\0';
if (filedlg.lReturn == DID_OK) {
result = true;
if (!mDisplayDirectory)
mDisplayDirectory = do_CreateInstance("@mozilla.org/file/local;1");
if (mDisplayDirectory)
mDisplayDirectory->InitWithNativePath(nsDependentCString(filedlg.szFullFile));
mFile.Assign(filedlg.szFullFile);
}
}
else {
PL_strncpy(filedlg.szFullFile, initialDir.get(), MAX_PATH);
PL_strncat(filedlg.szFullFile, "\\", 1);
PL_strncat(filedlg.szFullFile, fileBuffer.get(), MAX_PATH);
filedlg.fl = FDS_CENTER;
if (mMode == modeSave) {
filedlg.fl |= FDS_SAVEAS_DIALOG | FDS_ENABLEFILELB;
} else if (mMode == modeOpenMultiple) {
filedlg.fl |= FDS_MULTIPLESEL | FDS_OPEN_DIALOG;
} else {
filedlg.fl |= FDS_OPEN_DIALOG;
}
PMYDATA pmydata;
pmydata = (PMYDATA)calloc(1, sizeof(MYDATA));
filedlg.ulUser = (ULONG)pmydata;
filedlg.pfnDlgProc = FileDialogProc;
PRUint32 i;
PSZ *apszTypeList;
apszTypeList = (PSZ *)malloc(mTitles.Length()*sizeof(PSZ)+1);
for (i = 0; i < mTitles.Length(); i++)
{
const nsString& typeWide = mTitles[i];
nsAutoCharBuffer buffer;
PRInt32 bufLength;
WideCharToMultiByte(0, typeWide.get(), typeWide.Length(),
buffer, bufLength);
apszTypeList[i] = ToNewCString(nsDependentCString(buffer.Elements()));
}
apszTypeList[i] = 0;
filedlg.papszITypeList = (PAPSZ)apszTypeList;
PSZ *apszFilterList;
apszFilterList = (PSZ *)malloc(mFilters.Length()*sizeof(PSZ)+1);
for (i = 0; i < mFilters.Length(); i++)
{
const nsString& filterWide = mFilters[i];
apszFilterList[i] = ToNewCString(filterWide);
}
apszFilterList[i] = 0;
pmydata->papszIFilterList = (PAPSZ)apszFilterList;
pmydata->ulCurExt = mSelectedType;
bool fileExists = true;
do {
DosError(FERR_DISABLEHARDERR);
WinFileDlg(HWND_DESKTOP, mWnd, &filedlg);
DosError(FERR_ENABLEHARDERR);
if ((filedlg.lReturn == DID_OK) && (mMode == modeSave)) {
PRFileInfo64 fileinfo64;
PRStatus status = PR_GetFileInfo64(filedlg.szFullFile, &fileinfo64);
if (status == PR_SUCCESS) {
fileExists = true;
} else {
fileExists = false;
}
if (fileExists) {
if (!gpszFDSaveCaption) {
HMODULE hmod;
char LoadError[CCHMAXPATH];
char loadedString[256];
int length;
DosLoadModule(LoadError, CCHMAXPATH, "PMSDMRI", &hmod);
length = WinLoadString((HAB)0, hmod, 1110, 256, loadedString);
gpszFDSaveCaption = (char*)malloc(length+1);
strcpy(gpszFDSaveCaption, loadedString);
length = WinLoadString((HAB)0, hmod, 1135, 256, loadedString);
gpszFDFileExists = (char*)malloc(length+1);
strcpy(gpszFDFileExists, loadedString);
length = WinLoadString((HAB)0, hmod, 1136, 256, loadedString);
gpszFDFileReadOnly = (char*)malloc(length+1);
strcpy(gpszFDFileReadOnly, loadedString);
int i;
for (i=0;i<256 && gpszFDFileExists[i];i++ ) {
if (gpszFDFileExists[i] == '%') {
gpszFDFileExists[i+1] = 's';
break;
}
}
for (i=0;i<256 && gpszFDFileReadOnly[i];i++ ) {
if (gpszFDFileReadOnly[i] == '%') {
gpszFDFileReadOnly[i+1] = 's';
break;
}
}
DosFreeModule(hmod);
}
char pszFullText[256+CCHMAXPATH];
FILESTATUS3 fsts3;
ULONG ulResponse;
DosQueryPathInfo( filedlg.szFullFile, FIL_STANDARD, &fsts3, sizeof(FILESTATUS3));
if (fsts3.attrFile & FILE_READONLY) {
sprintf(pszFullText, gpszFDFileReadOnly, filedlg.szFullFile);
ulResponse = WinMessageBox(HWND_DESKTOP, mWnd, pszFullText,
gpszFDSaveCaption, 0,
MB_OK | MB_MOVEABLE | MB_WARNING);
} else {
sprintf(pszFullText, gpszFDFileExists, filedlg.szFullFile);
ulResponse = WinMessageBox(HWND_DESKTOP, mWnd, pszFullText,
gpszFDSaveCaption, 0,
MB_YESNO | MB_MOVEABLE | MB_WARNING);
}
if (ulResponse == MBID_YES) {
fileExists = false;
}
}
}
} while (mMode == modeSave && fileExists && filedlg.lReturn == DID_OK);
if (filedlg.lReturn == DID_OK) {
result = true;
if (mMode == modeOpenMultiple) {
nsresult rv;
if (filedlg.papszFQFilename) {
for (ULONG i=0;i<filedlg.ulFQFCount;i++) {
nsCOMPtr<nsILocalFile> file = do_CreateInstance("@mozilla.org/file/local;1", &rv);
NS_ENSURE_SUCCESS(rv,rv);
rv = file->InitWithNativePath(nsDependentCString(*(filedlg.papszFQFilename)[i]));
NS_ENSURE_SUCCESS(rv,rv);
rv = mFiles.AppendObject(file);
NS_ENSURE_SUCCESS(rv,rv);
}
WinFreeFileDlgList(filedlg.papszFQFilename);
} else {
nsCOMPtr<nsILocalFile> file = do_CreateInstance("@mozilla.org/file/local;1", &rv);
NS_ENSURE_SUCCESS(rv,rv);
rv = file->InitWithNativePath(nsDependentCString(filedlg.szFullFile));
NS_ENSURE_SUCCESS(rv,rv);
rv = mFiles.AppendObject(file);
NS_ENSURE_SUCCESS(rv,rv);
}
} else {
mFile.Assign(filedlg.szFullFile);
}
mSelectedType = (PRInt16)pmydata->ulCurExt;
}
for (i = 0; i < mTitles.Length(); i++)
{
nsMemory::Free(*(filedlg.papszITypeList[i]));
}
free(filedlg.papszITypeList);
for (i = 0; i < mFilters.Length(); i++)
{
nsMemory::Free(*(pmydata->papszIFilterList[i]));
}
free(pmydata->papszIFilterList);
free(pmydata);
}
if (title)
nsMemory::Free( title );
if (result) {
PRInt16 returnOKorReplace = returnOK;
nsresult rv;
// Remember last used directory.
nsCOMPtr<nsILocalFile> file(do_CreateInstance("@mozilla.org/file/local;1", &rv));
NS_ENSURE_SUCCESS(rv, rv);
file->InitWithNativePath(mFile);
nsCOMPtr<nsIFile> dir;
if (NS_SUCCEEDED(file->GetParent(getter_AddRefs(dir)))) {
nsCOMPtr<nsILocalFile> localDir(do_QueryInterface(dir));
if (localDir) {
nsCAutoString newDir;
localDir->GetNativePath(newDir);
if(!newDir.IsEmpty())
PL_strncpyz(mLastUsedDirectory, newDir.get(), MAX_PATH+1);
// Update mDisplayDirectory with this directory, also.
// Some callers rely on this.
if (!mDisplayDirectory)
mDisplayDirectory = do_CreateInstance("@mozilla.org/file/local;1");
if (mDisplayDirectory)
mDisplayDirectory->InitWithNativePath( nsDependentCString(mLastUsedDirectory) );
}
}
if (mMode == modeSave) {
// Windows does not return resultReplace,
// we must check if file already exists
bool exists = false;
file->Exists(&exists);
if (exists)
returnOKorReplace = returnReplace;
}
*retval = returnOKorReplace;
}
else {
*retval = returnCancel;
}
return NS_OK;
}
NS_IMETHODIMP nsFilePicker::GetFile(nsILocalFile **aFile)
{
NS_ENSURE_ARG_POINTER(aFile);
if (mFile.IsEmpty())
return NS_OK;
nsCOMPtr<nsILocalFile> file(do_CreateInstance("@mozilla.org/file/local;1"));
NS_ENSURE_TRUE(file, NS_ERROR_FAILURE);
file->InitWithNativePath(mFile);
NS_ADDREF(*aFile = file);
return NS_OK;
}
//-------------------------------------------------------------------------
NS_IMETHODIMP nsFilePicker::GetFileURL(nsIURI **aFileURL)
{
*aFileURL = nsnull;
nsCOMPtr<nsILocalFile> file;
nsresult rv = GetFile(getter_AddRefs(file));
if (!file)
return rv;
return NS_NewFileURI(aFileURL, file);
}
NS_IMETHODIMP nsFilePicker::GetFiles(nsISimpleEnumerator **aFiles)
{
NS_ENSURE_ARG_POINTER(aFiles);
return NS_NewArrayEnumerator(aFiles, mFiles);
}
//-------------------------------------------------------------------------
//
// Get the file + path
//
//-------------------------------------------------------------------------
NS_IMETHODIMP nsFilePicker::SetDefaultString(const nsAString& aString)
{
mDefault = aString;
//First, make sure the file name is not too long!
PRInt32 nameLength;
PRInt32 nameIndex = mDefault.RFind("\\");
if (nameIndex == kNotFound)
nameIndex = 0;
else
nameIndex ++;
nameLength = mDefault.Length() - nameIndex;
if (nameLength > CCHMAXPATH) {
PRInt32 extIndex = mDefault.RFind(".");
if (extIndex == kNotFound)
extIndex = mDefault.Length();
//Let's try to shave the needed characters from the name part
PRInt32 charsToRemove = nameLength - CCHMAXPATH;
if (extIndex - nameIndex >= charsToRemove) {
mDefault.Cut(extIndex - charsToRemove, charsToRemove);
}
}
//Then, we need to replace illegal characters.
//Windows has the following statement:
//At this stage, we cannot replace the backslash as the string might represent a file path.
//But it is not correct - Windows assumes this is not a path as well,
//as one of the FILE_ILLEGAL_CHARACTERS is a colon (:)
mDefault.ReplaceChar("\"", '\'');
mDefault.ReplaceChar("<", '(');
mDefault.ReplaceChar(">", ')');
mDefault.ReplaceChar(FILE_ILLEGAL_CHARACTERS, '_');
return NS_OK;
}
NS_IMETHODIMP nsFilePicker::GetDefaultString(nsAString& aString)
{
return NS_ERROR_FAILURE;
}
//-------------------------------------------------------------------------
//
// The default extension to use for files
//
//-------------------------------------------------------------------------
NS_IMETHODIMP nsFilePicker::GetDefaultExtension(nsAString& aExtension)
{
aExtension = mDefaultExtension;
return NS_OK;
}
NS_IMETHODIMP nsFilePicker::SetDefaultExtension(const nsAString& aExtension)
{
mDefaultExtension = aExtension;
return NS_OK;
}
//-------------------------------------------------------------------------
//
// Set the filter index
//
//-------------------------------------------------------------------------
NS_IMETHODIMP nsFilePicker::GetFilterIndex(PRInt32 *aFilterIndex)
{
*aFilterIndex = mSelectedType;
return NS_OK;
}
NS_IMETHODIMP nsFilePicker::SetFilterIndex(PRInt32 aFilterIndex)
{
mSelectedType = aFilterIndex;
return NS_OK;
}
//-------------------------------------------------------------------------
void nsFilePicker::InitNative(nsIWidget *aParent,
const nsAString& aTitle,
PRInt16 aMode)
{
mWnd = (HWND) ((aParent) ? aParent->GetNativeData(NS_NATIVE_WINDOW) : 0);
mTitle.Assign(aTitle);
mMode = aMode;
}
//-------------------------------------------------------------------------
void nsFilePicker::GetFileSystemCharset(nsCString & fileSystemCharset)
{
static nsCAutoString aCharset;
nsresult rv;
if (aCharset.Length() < 1) {
nsCOMPtr <nsIPlatformCharset> platformCharset = do_GetService(NS_PLATFORMCHARSET_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv))
rv = platformCharset->GetCharset(kPlatformCharsetSel_FileName, aCharset);
NS_ASSERTION(NS_SUCCEEDED(rv), "error getting platform charset");
if (NS_FAILED(rv))
aCharset.AssignLiteral("IBM850");
}
fileSystemCharset = aCharset;
}
//-------------------------------------------------------------------------
char * nsFilePicker::ConvertToFileSystemCharset(const nsAString& inString)
{
char *outString = nsnull;
nsresult rv = NS_OK;
// get file system charset and create a unicode encoder
if (nsnull == mUnicodeEncoder) {
nsCAutoString fileSystemCharset;
GetFileSystemCharset(fileSystemCharset);
nsCOMPtr<nsICharsetConverterManager> ccm =
do_GetService(NS_CHARSETCONVERTERMANAGER_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = ccm->GetUnicodeEncoderRaw(fileSystemCharset.get(), &mUnicodeEncoder);
}
}
// converts from unicode to the file system charset
if (NS_SUCCEEDED(rv)) {
PRInt32 inLength = inString.Length();
const nsAFlatString& flatInString = PromiseFlatString(inString);
PRInt32 outLength;
rv = mUnicodeEncoder->GetMaxLength(flatInString.get(), inLength,
&outLength);
if (NS_SUCCEEDED(rv)) {
outString = static_cast<char*>(nsMemory::Alloc( outLength+1 ));
if (nsnull == outString) {
return nsnull;
}
rv = mUnicodeEncoder->Convert(flatInString.get(), &inLength, outString,
&outLength);
if (NS_SUCCEEDED(rv)) {
outString[outLength] = '\0';
}
}
}
return NS_SUCCEEDED(rv) ? outString : nsnull;
}
//-------------------------------------------------------------------------
PRUnichar * nsFilePicker::ConvertFromFileSystemCharset(const char *inString)
{
PRUnichar *outString = nsnull;
nsresult rv = NS_OK;
// get file system charset and create a unicode encoder
if (nsnull == mUnicodeDecoder) {
nsCAutoString fileSystemCharset;
GetFileSystemCharset(fileSystemCharset);
nsCOMPtr<nsICharsetConverterManager> ccm =
do_GetService(NS_CHARSETCONVERTERMANAGER_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = ccm->GetUnicodeDecoderRaw(fileSystemCharset.get(), &mUnicodeDecoder);
}
}
// converts from the file system charset to unicode
if (NS_SUCCEEDED(rv)) {
PRInt32 inLength = strlen(inString);
PRInt32 outLength;
rv = mUnicodeDecoder->GetMaxLength(inString, inLength, &outLength);
if (NS_SUCCEEDED(rv)) {
outString = static_cast<PRUnichar*>(nsMemory::Alloc( (outLength+1) * sizeof( PRUnichar ) ));
if (nsnull == outString) {
return nsnull;
}
rv = mUnicodeDecoder->Convert(inString, &inLength, outString, &outLength);
if (NS_SUCCEEDED(rv)) {
outString[outLength] = 0;
}
}
}
NS_ASSERTION(NS_SUCCEEDED(rv), "error charset conversion");
return NS_SUCCEEDED(rv) ? outString : nsnull;
}
NS_IMETHODIMP
nsFilePicker::AppendFilter(const nsAString& aTitle, const nsAString& aFilter)
{
if (aFilter.EqualsLiteral("..apps"))
mFilters.AppendElement(NS_LITERAL_STRING("*.exe;*.cmd;*.com;*.bat"));
else
mFilters.AppendElement(aFilter);
mTitles.AppendElement(aTitle);
return NS_OK;
}
MRESULT EXPENTRY DirDialogProc( HWND hwndDlg, ULONG msg, MPARAM mp1, MPARAM mp2)
{
switch ( msg ) {
case WM_INITDLG:
{
SWP swpFileST;
SWP swpDirST;
SWP swpDirLB;
SWP swpDriveST;
SWP swpDriveCB;
SWP swpDriveCBEF;
SWP swpOK;
SWP swpCancel;
HWND hwndFileST;
HWND hwndDirST;
HWND hwndDirLB;
HWND hwndDriveST;
HWND hwndDriveCB;
HWND hwndOK;
HWND hwndCancel;
HENUM henum;
HWND hwndNext;
ULONG ulCurY, ulCurX;
LONG lScreenX, lScreenY, lDlgFrameX, lDlgFrameY, lTitleBarY;
lScreenX = WinQuerySysValue(HWND_DESKTOP, SV_CXSCREEN);
lScreenY = WinQuerySysValue(HWND_DESKTOP, SV_CYSCREEN);
lDlgFrameX = WinQuerySysValue(HWND_DESKTOP, SV_CXDLGFRAME);
lDlgFrameY = WinQuerySysValue(HWND_DESKTOP, SV_CYDLGFRAME);
lTitleBarY = WinQuerySysValue(HWND_DESKTOP, SV_CYTITLEBAR);
hwndFileST = WinWindowFromID(hwndDlg, DID_FILENAME_TXT);
hwndDirST = WinWindowFromID(hwndDlg, DID_DIRECTORY_TXT);
hwndDirLB = WinWindowFromID(hwndDlg, DID_DIRECTORY_LB);
hwndDriveST = WinWindowFromID(hwndDlg, DID_DRIVE_TXT);
hwndDriveCB = WinWindowFromID(hwndDlg, DID_DRIVE_CB);
hwndOK = WinWindowFromID(hwndDlg, DID_OK);
hwndCancel = WinWindowFromID(hwndDlg, DID_CANCEL);
#define SPACING 10
// Reposition drives combobox
ulCurY = SPACING;
ulCurX = SPACING + lDlgFrameX;
WinQueryWindowPos(hwndOK, &swpOK);
WinSetWindowPos(hwndOK, 0, ulCurX, ulCurY, 0, 0, SWP_MOVE);
ulCurY += swpOK.cy + SPACING;
WinQueryWindowPos(hwndCancel, &swpCancel);
WinSetWindowPos(hwndCancel, 0, ulCurX+swpOK.cx+10, SPACING, 0, 0, SWP_MOVE);
WinQueryWindowPos(hwndDirLB, &swpDirLB);
WinSetWindowPos(hwndDirLB, 0, ulCurX, ulCurY, swpDirLB.cx, swpDirLB.cy, SWP_MOVE | SWP_SIZE);
ulCurY += swpDirLB.cy + SPACING;
WinQueryWindowPos(hwndDirST, &swpDirST);
WinSetWindowPos(hwndDirST, 0, ulCurX, ulCurY, swpDirST.cx, swpDirST.cy, SWP_MOVE | SWP_SIZE);
ulCurY += swpDirST.cy + SPACING;
WinQueryWindowPos(hwndDriveCB, &swpDriveCB);
WinQueryWindowPos(WinWindowFromID(hwndDriveCB, CBID_EDIT), &swpDriveCBEF);
WinSetWindowPos(hwndDriveCB, 0, ulCurX, ulCurY-(swpDriveCB.cy-swpDriveCBEF.cy)+5,
swpDirLB.cx,
swpDriveCB.cy,
SWP_SIZE | SWP_MOVE);
ulCurY += swpDriveCBEF.cy + SPACING;
WinQueryWindowPos(hwndDriveST, &swpDriveST);
WinSetWindowPos(hwndDriveST, 0, ulCurX, ulCurY, swpDriveST.cx, swpDriveST.cy, SWP_MOVE | SWP_SIZE);
ulCurY += swpDriveST.cy + SPACING;
WinQueryWindowPos(hwndFileST, &swpFileST);
WinSetWindowPos(hwndFileST, 0, ulCurX, ulCurY, swpFileST.cx, swpFileST.cy, SWP_MOVE | SWP_SIZE);
ulCurY += swpFileST.cy + SPACING;
// Hide unused stuff
henum = WinBeginEnumWindows(hwndDlg);
while ((hwndNext = WinGetNextWindow(henum)) != NULLHANDLE)
{
USHORT usID = WinQueryWindowUShort(hwndNext, QWS_ID);
if (usID != DID_FILENAME_TXT &&
usID != DID_DIRECTORY_TXT &&
usID != DID_DIRECTORY_LB &&
usID != DID_DRIVE_TXT &&
usID != DID_DRIVE_CB &&
usID != DID_OK &&
usID != DID_CANCEL &&
usID != FID_TITLEBAR &&
usID != FID_SYSMENU &&
usID != FID_MINMAX)
{
WinShowWindow(hwndNext, FALSE);
}
}
WinSetWindowPos(hwndDlg,
HWND_TOP,
(lScreenX/2)-((swpDirLB.cx+2*SPACING+2*lDlgFrameX)/2),
(lScreenY/2)-((ulCurY+2*lDlgFrameY+lTitleBarY)/2),
swpDirLB.cx+2*SPACING+2*lDlgFrameX,
ulCurY+2*lDlgFrameY+lTitleBarY,
SWP_MOVE | SWP_SIZE);
}
break;
case WM_CONTROL:
{
PFILEDLG pfiledlg;
pfiledlg = (PFILEDLG)WinQueryWindowPtr(hwndDlg, QWL_USER);
HPS hps;
SWP swp;
HWND hwndST;
RECTL rectlString = {0,0,1000,1000};
char *ptr = NULL;
int iHalfLen;
int iLength;
CHAR szString[CCHMAXPATH];
hwndST = WinWindowFromID(hwndDlg, DID_FILENAME_TXT);
strcpy(szString, pfiledlg->szFullFile);
iLength = strlen(pfiledlg->szFullFile);
/* If we are not just a drive */
if (iLength > 3) {
if (szString[iLength-1] == '\\') {
szString[iLength-1] = '\0';
iLength--;
}
}
hps = WinGetPS(hwndST);
WinQueryWindowPos(hwndST, &swp);
WinDrawText(hps, iLength, szString,
&rectlString, 0, 0,
DT_BOTTOM | DT_QUERYEXTENT | DT_TEXTATTRS);
while(rectlString.xRight > swp.cx)
{
iHalfLen = iLength / 2;
if(iHalfLen == 2)
break;
ptr = szString + iHalfLen;
memmove(ptr - 1, ptr, strlen(ptr) + 1);
szString[iHalfLen - 2] = '.';
szString[iHalfLen - 1] = '.';
szString[iHalfLen] = '.';
iLength = strlen(szString);
rectlString.xLeft = rectlString.yBottom = 0;
rectlString.xRight = rectlString.yTop = 1000;
WinDrawText(hps, iLength, szString,
&rectlString, 0, 0,
DT_BOTTOM | DT_QUERYEXTENT | DT_TEXTATTRS);
}
WinReleasePS(hps);
WinSetWindowText(hwndST, szString);
}
break;
}
return WinDefFileDlgProc(hwndDlg, msg, mp1, mp2);
}
MRESULT EXPENTRY FileDialogProc( HWND hwndDlg, ULONG msg, MPARAM mp1, MPARAM mp2)
{
MRESULT mr;
PFILEDLG pfiledlg;
HWND hwndTypeCombo;
INT i;
SWP swp;
PMYDATA pmydata;
switch ( msg ) {
case WM_INITDLG:
/* Create another dropdown that we manage */
mr = WinDefFileDlgProc(hwndDlg, msg, mp1, mp2);
hwndTypeCombo = WinWindowFromID(hwndDlg, DID_FILTER_CB);
WinQueryWindowPos(hwndTypeCombo, &swp);
WinSetWindowPos(hwndTypeCombo, NULLHANDLE, 0, 0, 0, 0, SWP_HIDE);
hwndTypeCombo = WinCreateWindow( hwndDlg, WC_COMBOBOX, "",
WS_VISIBLE | WS_PARENTCLIP | WS_SYNCPAINT | WS_TABSTOP | CBS_DROPDOWNLIST,
swp.x, swp.y,
swp.cx, swp.cy, hwndDlg, swp.hwndInsertBehind, 290,
NULL, NULL );
WinSendMsg( hwndTypeCombo, LM_DELETEALL, (MPARAM)0, (MPARAM)0 );
pfiledlg = (PFILEDLG)WinQueryWindowULong( hwndDlg, QWL_USER );
pmydata = (PMYDATA)pfiledlg->ulUser;
i = 0;
while (*(pfiledlg->papszITypeList[i]) != NULL) {
WinSendMsg( hwndTypeCombo, LM_INSERTITEM, (MPARAM)LIT_END, (MPARAM)*(pfiledlg->papszITypeList[i]) );
i++;
}
WinSendMsg( hwndTypeCombo, LM_SELECTITEM, (MPARAM)pmydata->ulCurExt, (MPARAM)TRUE );
return mr;
case WM_CONTROL:
{
if ((SHORT1FROMMP(mp1) == 290) &&
(SHORT2FROMMP(mp1) == CBN_LBSELECT)) {
hwndTypeCombo = WinWindowFromID(hwndDlg, 290);
pfiledlg = (PFILEDLG)WinQueryWindowULong( hwndDlg, QWL_USER );
pmydata = (PMYDATA)pfiledlg->ulUser;
pmydata->ulCurExt = (ULONG)WinSendMsg( hwndTypeCombo, LM_QUERYSELECTION, (MPARAM)LIT_FIRST, (MPARAM)0 );
if (pfiledlg->fl & FDS_OPEN_DIALOG) {
WinSetWindowText(WinWindowFromID(hwndDlg,DID_FILENAME_ED), *(pmydata->papszIFilterList[pmydata->ulCurExt]));
WinSendMsg(WinWindowFromID(hwndDlg,DID_FILENAME_ED), EM_SETSEL, MPFROM2SHORT(0, 32000), (MPARAM)0 );
WinSendMsg(hwndDlg, WM_CONTROL, MPFROM2SHORT(DID_FILTER_CB, CBN_LBSELECT), (MPARAM)0 );
}
return (MRESULT)TRUE;
}
}
break;
}
return WinDefFileDlgProc(hwndDlg, msg, mp1, mp2);
}