Kaydet (Commit) 38a47bc3 authored tarafından Mike Kaganski's avatar Mike Kaganski

Revert "tdf#119747 FileSaveDialog: Windows dialog shows only one extension."

This reverts commit 1b50fa88.

Change-Id: Ide94c1be6a265cee2e70c319578d816efa1d2eb9
Reviewed-on: https://gerrit.libreoffice.org/64655Reviewed-by: 's avatarMike Kaganski <mike.kaganski@collabora.com>
Tested-by: 's avatarMike Kaganski <mike.kaganski@collabora.com>
üst 1d427cd7
...@@ -119,7 +119,7 @@ void SAL_CALL VistaFilePicker::appendFilter(const OUString& sTitle , ...@@ -119,7 +119,7 @@ void SAL_CALL VistaFilePicker::appendFilter(const OUString& sTitle ,
{ {
RequestRef rRequest(new Request()); RequestRef rRequest(new Request());
rRequest->setRequest (VistaFilePickerImpl::E_APPEND_FILTER); rRequest->setRequest (VistaFilePickerImpl::E_APPEND_FILTER);
rRequest->setArgument(PROP_FILTER_TITLE, sTitle); rRequest->setArgument(PROP_FILTER_TITLE, sTitle );
rRequest->setArgument(PROP_FILTER_VALUE, sFilter); rRequest->setArgument(PROP_FILTER_VALUE, sFilter);
m_aAsyncExecute.triggerRequestThreadAware(rRequest, AsyncRequests::NON_BLOCKED); m_aAsyncExecute.triggerRequestThreadAware(rRequest, AsyncRequests::NON_BLOCKED);
......
...@@ -360,22 +360,11 @@ void VistaFilePickerImpl::impl_sta_appendFilter(const RequestRef& rRequest) ...@@ -360,22 +360,11 @@ void VistaFilePickerImpl::impl_sta_appendFilter(const RequestRef& rRequest)
{ {
const OUString sTitle = rRequest->getArgumentOrDefault(PROP_FILTER_TITLE, OUString()); const OUString sTitle = rRequest->getArgumentOrDefault(PROP_FILTER_TITLE, OUString());
const OUString sFilter = rRequest->getArgumentOrDefault(PROP_FILTER_VALUE, OUString()); const OUString sFilter = rRequest->getArgumentOrDefault(PROP_FILTER_VALUE, OUString());
// SYNCHRONIZED-> // SYNCHRONIZED->
::osl::ResettableMutexGuard aLock(m_aMutex); ::osl::ResettableMutexGuard aLock(m_aMutex);
const sal_Int32 idx = sTitle.indexOf("(."); m_lFilters.addFilter(sTitle, sFilter);
if (idx > 0)
{
const OUString sTitle_ = sTitle.copy(0, idx);
m_mapRealFilter[sTitle_] = std::make_pair(sTitle, sFilter);
m_lFilters.addFilter(sTitle_, sFilter);
}
else
{
m_mapRealFilter[sTitle] = std::make_pair(sTitle, sFilter);
m_lFilters.addFilter(sTitle, sFilter);
}
} }
...@@ -395,20 +384,7 @@ void VistaFilePickerImpl::impl_sta_appendFilterGroup(const RequestRef& rRequest) ...@@ -395,20 +384,7 @@ void VistaFilePickerImpl::impl_sta_appendFilterGroup(const RequestRef& rRequest)
for (i=0; i<c; ++i) for (i=0; i<c; ++i)
{ {
const css::beans::StringPair& rFilter = aFilterGroup[i]; const css::beans::StringPair& rFilter = aFilterGroup[i];
const OUString sTitle = rFilter.First; m_lFilters.addFilter(rFilter.First, rFilter.Second);
const OUString sFilter = rFilter.Second;
const sal_Int32 idx = sTitle.indexOf("(.");
if (idx > 0)
{
const OUString sTitle_ = sTitle.copy(0, idx);
m_mapRealFilter[sTitle_] = std::make_pair(sTitle, sFilter);
m_lFilters.addFilter(sTitle_, sFilter);
}
else
{
m_mapRealFilter[sTitle] = std::make_pair(sTitle, sFilter);
m_lFilters.addFilter(sTitle, sFilter);
}
} }
} }
...@@ -441,15 +417,10 @@ void VistaFilePickerImpl::impl_sta_getCurrentFilter(const RequestRef& rRequest) ...@@ -441,15 +417,10 @@ void VistaFilePickerImpl::impl_sta_getCurrentFilter(const RequestRef& rRequest)
OUString sTitle; OUString sTitle;
::sal_Int32 nRealIndex = (nIndex-1); // COM dialog base on 1 ... filter container on 0 .-) ::sal_Int32 nRealIndex = (nIndex-1); // COM dialog base on 1 ... filter container on 0 .-)
if ( if (
(nRealIndex >= 0) && (nRealIndex >= 0 ) &&
(m_lFilters.getFilter(nRealIndex, sTitle)) (m_lFilters.getFilter(nRealIndex, sTitle))
) )
{
if (m_mapRealFilter.find(sTitle) != m_mapRealFilter.end())
sTitle = m_mapRealFilter[sTitle].first;
rRequest->setArgument(PROP_FILTER_TITLE, sTitle); rRequest->setArgument(PROP_FILTER_TITLE, sTitle);
}
else if ( nRealIndex == -1 ) // Dialog not visible yet else if ( nRealIndex == -1 ) // Dialog not visible yet
{ {
sTitle = m_lFilters.getCurrentFilter(); sTitle = m_lFilters.getCurrentFilter();
......
...@@ -37,7 +37,6 @@ ...@@ -37,7 +37,6 @@
#include <osl/thread.hxx> #include <osl/thread.hxx>
#include <osl/conditn.hxx> #include <osl/conditn.hxx>
#include <rtl/ustring.hxx> #include <rtl/ustring.hxx>
#include <map>
namespace fpicker{ namespace fpicker{
namespace win32{ namespace win32{
...@@ -306,7 +305,6 @@ class VistaFilePickerImpl : private ::cppu::BaseMutex ...@@ -306,7 +305,6 @@ class VistaFilePickerImpl : private ::cppu::BaseMutex
/// @todo document me /// @todo document me
CFilterContainer m_lFilters; CFilterContainer m_lFilters;
std::map<OUString, std::pair<OUString, OUString>> m_mapRealFilter;
/** help us to handle dialog events and provide them to interested office /** help us to handle dialog events and provide them to interested office
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment