Exemplo n.º 1
0
PassRefPtr<DocumentFragment> DragData::asFragment(Frame* frame, Range&, bool, bool&) const
{
    /*
     * Order is richest format first. On OSX this is:
     * * Web Archive
     * * Filenames
     * * HTML
     * * RTF
     * * TIFF
     * * PICT
     */

    if (m_platformDragData) {
        if (containsFilenames(m_platformDragData)) {
            if (PassRefPtr<DocumentFragment> fragment = fragmentFromFilenames(frame->document(), m_platformDragData))
                return fragment;
        }

        if (containsHTML(m_platformDragData)) {
            if (PassRefPtr<DocumentFragment> fragment = fragmentFromHTML(frame->document(), m_platformDragData))
                return fragment;
        }
    } else {
        if (containsFilenames(&m_dragDataMap)) {
            if (PassRefPtr<DocumentFragment> fragment = fragmentFromFilenames(frame->document(), &m_dragDataMap))
                return fragment;
        }

        if (containsHTML(&m_dragDataMap)) {
            if (PassRefPtr<DocumentFragment> fragment = fragmentFromHTML(frame->document(), &m_dragDataMap))
                return fragment;
        }
    }
    return 0;
}
Exemplo n.º 2
0
bool DragData::containsCompatibleContent() const
{
    return containsPlainText() || containsURL(0)
           || ((m_platformDragData) ? (containsHTML(m_platformDragData) || containsFilenames(m_platformDragData))
               : (containsHTML(&m_dragDataMap) || containsFilenames(&m_dragDataMap)))
           || containsColor();
}
Exemplo n.º 3
0
bool DragData::containsCompatibleContent() const
{
    return containsPlainText() || containsURL() 
        || containsHTML(m_platformDragData) 
        || containsFilenames(m_platformDragData) 
        || containsColor();
}
Exemplo n.º 4
0
static RefPtr<DocumentFragment> createFragmentFromPlatformData(PlatformDragData& platformDragData, Frame& frame)
{
    if (containsFilenames(&platformDragData)) {
        if (PassRefPtr<DocumentFragment> fragment = fragmentFromFilenames(frame.document(), &platformDragData))
            return fragment;
    }

    if (containsHTML(&platformDragData)) {
        if (RefPtr<DocumentFragment> fragment = fragmentFromHTML(frame.document(), &platformDragData))
            return fragment;
    }
    return nullptr;
}
Exemplo n.º 5
0
PassRefPtr<DocumentFragment> DragData::asFragment(Document* doc) const
{     
    /*
     * Order is richest format first. On OSX this is:
     * * Web Archive
     * * Filenames
     * * HTML
     * * RTF
     * * TIFF
     * * PICT
     */
        
     if (containsFilenames(m_platformDragData))
         if (PassRefPtr<DocumentFragment> fragment = fragmentFromFilenames(doc, m_platformDragData))
             return fragment;

     if (containsHTML(m_platformDragData))
         if (PassRefPtr<DocumentFragment> fragment = fragmentFromHTML(doc, m_platformDragData))
             return fragment;

     return 0;
}