fix issue that text_editor may drop pasted text
This commit is contained in:
parent
dcdeba7d2e
commit
c8d0b2a621
@ -2346,9 +2346,13 @@ namespace nana{ namespace widgets
|
|||||||
{
|
{
|
||||||
auto text = system::dataexch{}.wget();
|
auto text = system::dataexch{}.wget();
|
||||||
|
|
||||||
//If it is required check the acceptable
|
if ((accepts::no_restrict == impl_->capacities.acceptive) || !impl_->capacities.pred_acceptive)
|
||||||
if ((accepts::no_restrict != impl_->capacities.acceptive) || impl_->capacities.pred_acceptive)
|
|
||||||
{
|
{
|
||||||
|
put(move(text));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Check if the input is acceptable
|
||||||
for (auto i = text.begin(); i != text.end(); ++i)
|
for (auto i = text.begin(); i != text.end(); ++i)
|
||||||
{
|
{
|
||||||
if (_m_accepts(*i))
|
if (_m_accepts(*i))
|
||||||
@ -2362,12 +2366,11 @@ namespace nana{ namespace widgets
|
|||||||
if (accepts::no_restrict != impl_->capacities.acceptive)
|
if (accepts::no_restrict != impl_->capacities.acceptive)
|
||||||
{
|
{
|
||||||
text.erase(i, text.end());
|
text.erase(i, text.end());
|
||||||
put(std::move(text));
|
put(move(text));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
void text_editor::enter(bool record_undo)
|
void text_editor::enter(bool record_undo)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user