office-gobmx/vcl
Gergő Mocsi e8504d9737 handle the empty URL case in file picker
Some extensions in the wild, for example Impress Photo Album Creator,
manage to call the file picker dialog with an empty URL. The resulting
error message is not very helpful: "Operation not supported" dialog.
Therefore we assign a default URL when empty URL is passed.

Change-Id: Icf71142411a79e1fe2d1d5918d2a400b174acc00
Reviewed-on: https://gerrit.libreoffice.org/2390
Reviewed-by: Andras Timar <atimar@suse.com>
Tested-by: Andras Timar <atimar@suse.com>
2013-03-19 13:30:55 +00:00
..
android AndroidSalInstance::RedrawWindows() is called from only one place 2013-03-17 17:34:15 +02:00
aqua/source removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings declarations 2013-03-19 10:48:30 +00:00
coretext trailing whitespaces 2013-03-19 01:30:44 +01:00
generic further OUString cleanup 2013-03-19 14:18:10 +01:00
headless
inc IsPrinterGraphics() and IsVirDevGraphics() were unused. 2013-03-18 19:29:01 +02:00
ios/source removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings declarations 2013-03-19 10:48:30 +00:00
null
qa tests cases for EDB-24743 2013-03-14 14:29:44 +00:00
quartz
source further OUString cleanup 2013-03-19 14:18:10 +01:00
test
uiconfig/ui
unx handle the empty URL case in file picker 2013-03-19 13:30:55 +00:00
win/source removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings declarations 2013-03-19 10:48:30 +00:00
workben automated removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings 2013-03-19 09:00:26 +00:00
AllLangResTarget_vcl.mk
CppunitTest_vcl_filters_test.mk
CustomTarget_afm_hash.mk
CustomTarget_kde4_moc.mk
CustomTarget_kde_moc.mk
CustomTarget_tde_moc.mk
Executable_kdefilepicker.mk
Executable_tdefilepicker.mk
Executable_ui-previewer.mk
Library_desktop_detector.mk
Library_vcl.mk Factor out the CoreText source files 2013-03-18 07:41:32 +02:00
Library_vclplug_gen.mk
Library_vclplug_gtk.mk
Library_vclplug_gtk3.mk
Library_vclplug_kde.mk
Library_vclplug_kde4.mk re-add support for KDE4 Qt+glib eventloop intergration 2013-03-12 20:05:56 +01:00
Library_vclplug_svp.mk
Library_vclplug_tde.mk Fix single core build when TDE integration is enabled 2013-03-19 06:58:18 +00:00
Makefile
Module_vcl.mk
Package_inc.mk
README
StaticLibrary_headless.mk
StaticLibrary_vclmain.mk
UI_vcl.mk
vcl.android.component
vcl.headless.component
vcl.ios.component
vcl.macosx.component
vcl.unx.component
vcl.windows.component
WinResTarget_vcl.mk
Zip_osxres.mk

Visual Components Library is responsible for the widgets (windowing, buttons, controls, file-pickers etc.) operating system abstraction, including basic rendering (e.g. the output device).

source/
	+ the main cross-platform chunk of source

inc/
	+ cross-platform abstraction headers
	vcl/
		+ public headers ("public" to the rest of LibreOffice, that is)

generic/
	+ shared helper code for *some* of the backends, actually built into vcl.

headless/
	+ a backend renderer that draws to bitmaps

android/
	+ Android backend (work in progress, does work to some extent)

aqua/
	+ OS X backend

ios/
	+ iOS backend (work in progres, does not work, needs re-think
	and re-write)

win/
	+ Windows backend

unx/
	+ X11 backend and its sub-platforms

	plugadapt/
		+ pluggable framework to select correct unx backend
	gtk/
		+ GTK2 support
	gtk3/
		+ GTK3.2+ support
	kde/
		+ KDE3 support
	kde4/
		+ KDE4 support
	generic/
		+ raw X11 support


How the platform abstraction works

	+ InitVCL calls 'CreateSalInstance'
		+ ths is implemented by the compiled-in platform backend
		+ it stores various bits of global state in the
		  'SalData' (inc/saldatabasic.hxx) structure but:
	+ the SalInstance vtable is the primary outward facing gateway
	  API for platform backends
		+ It is a factory for:
		  SalFrames, SalVirtualDevices, SalPrinters,
		  Timers, the SolarMutexe, Drag&Drop and other
		  objects, as well as the primary event loop wrapper.

Note: references to "SV" in the code mean StarView, which was a
portable C++ class library for GUIs, with very old roots, that was
developed by StarDivision. Nowadays it is not used by anything except
LibreOffice (and OpenOffice).