Exemplo n.º 1
0
 public unsafe void GetViewRect(cef_browser_t *browser, cef_rect_t *rect)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, cef_rect_t *, void >)get_view_rect)(self, browser, rect);
     }
 }
Exemplo n.º 2
0
 internal unsafe CefRect(cef_rect_t *ptr)
 {
     this.x      = ptr->x;
     this.y      = ptr->y;
     this.width  = ptr->width;
     this.height = ptr->height;
 }
Exemplo n.º 3
0
 public unsafe void OnPopupSize(cef_browser_t *browser, [Immutable] cef_rect_t *rect)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, cef_rect_t *, void >)on_popup_size)(self, browser, rect);
     }
 }
Exemplo n.º 4
0
 internal unsafe void To(cef_rect_t *ptr)
 {
     ptr->x      = this.x;
     ptr->y      = this.y;
     ptr->width  = this.width;
     ptr->height = this.height;
 }
Exemplo n.º 5
0
 public unsafe int GetRootScreenRect(cef_browser_t *browser, cef_rect_t *rect)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         return(((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, cef_rect_t *, int >)get_root_screen_rect)(self, browser, rect));
     }
 }
        public static void invalidate(cef_browser_host_t *self, cef_rect_t *dirtyRect, CefPaintElementType type)
        {
            invalidate_delegate d;
            var p = self->_invalidate;

            if (p == _p1a)
            {
                d = _d1a;
            }
            else
            {
                d = (invalidate_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(invalidate_delegate));
                if (_p1a == IntPtr.Zero)
                {
                    _d1a = d; _p1a = p;
                }
            }
            d(self, dirtyRect, type);
        }
Exemplo n.º 7
0
        private void on_popup_size(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
        {
            CheckSelf(self);

            var m_browser = CefBrowser.FromNative(browser);
            var m_rect    = new CefRectangle(rect->x, rect->y, rect->width, rect->height);

            OnPopupSize(m_browser, m_rect);
        }
Exemplo n.º 8
0
 /// <summary>
 /// Set the printer printable area in device units.
 /// Some platforms already provide flipped area. Set |landscape_needs_flip|
 /// to false on those platforms to avoid double flipping.
 /// </summary>
 public void SetPrinterPrintableArea(cef_size_t *physical_size_device_units, cef_rect_t *printable_area_device_units, int landscape_needs_flip)
 {
     throw new NotImplementedException(); // TODO: CefPrintSettings.SetPrinterPrintableArea
 }
Exemplo n.º 9
0
        // void (*)(_cef_find_handler_t* self, _cef_browser_t* browser, int identifier, int count, const cef_rect_t* selectionRect, int activeMatchOrdinal, int finalUpdate)*
        private static unsafe void OnFindResultImpl(cef_find_handler_t *self, cef_browser_t *browser, int identifier, int count, cef_rect_t *selectionRect, int activeMatchOrdinal, int finalUpdate)
        {
            var instance = GetInstance((IntPtr)self) as CefFindHandler;

            if (instance == null || ((ICefFindHandlerPrivate)instance).AvoidOnFindResult())
            {
                ReleaseIfNonNull((cef_base_ref_counted_t *)browser);
                return;
            }
            instance.OnFindResult(CefBrowser.Wrap(CefBrowser.Create, browser), identifier, count, *(CefRect *)selectionRect, activeMatchOrdinal, finalUpdate != 0);
        }
        /// <summary>
        /// Called when the browser wants to show or hide the popup widget. The popup
        /// should be shown if |show| is true and hidden if |show| is false.
        /// </summary>
        // protected abstract void OnPopupShow(cef_browser_t* browser, int show);

        private void on_popup_size(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
        {
            CheckSelf(self);
            throw new NotImplementedException(); // TODO: CefRenderHandler.OnPopupSize
        }
Exemplo n.º 11
0
 public unsafe extern void OnImeCompositionRangeChanged(cef_browser_t *browser, [Immutable] cef_range_t *selected_range, UIntPtr character_boundsCount, [Immutable] cef_rect_t *character_bounds);
Exemplo n.º 12
0
        private int get_root_screen_rect(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
        {
            CheckSelf(self);

            var m_browser = CefBrowser.FromNative(browser);
            var m_rect    = new CefRectangle();

            var result = GetRootScreenRect(m_browser, ref m_rect);

            if (result)
            {
                rect->x      = m_rect.X;
                rect->y      = m_rect.Y;
                rect->width  = m_rect.Width;
                rect->height = m_rect.Height;
                return(1);
            }
            else
            {
                return(0);
            }
        }
 private int get_root_screen_rect(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
 {
     CheckSelf(self);
     throw new NotImplementedException(); // TODO: CefRenderHandler.GetRootScreenRect
 }
Exemplo n.º 14
0
 public unsafe void OnAcceleratedPaint(cef_browser_t *browser, CefPaintElementType type, UIntPtr dirtyRectsCount, [Immutable] cef_rect_t *dirtyRects, void *shared_handle)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, CefPaintElementType, UIntPtr, cef_rect_t *, void *, void >)on_accelerated_paint)(self, browser, type, dirtyRectsCount, dirtyRects, shared_handle);
     }
 }
Exemplo n.º 15
0
 public unsafe void OnImeCompositionRangeChanged(cef_browser_t *browser, [Immutable] cef_range_t *selected_range, UIntPtr character_boundsCount, [Immutable] cef_rect_t *character_bounds)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, cef_range_t *, UIntPtr, cef_rect_t *, void >)on_ime_composition_range_changed)(self, browser, selected_range, character_boundsCount, character_bounds);
     }
 }
Exemplo n.º 16
0
 public unsafe extern void OnPaint(cef_browser_t *browser, CefPaintElementType type, UIntPtr dirtyRectsCount, [Immutable] cef_rect_t *dirtyRects, [Immutable] void *buffer, int width, int height);
Exemplo n.º 17
0
 public unsafe void OnPaint(cef_browser_t *browser, CefPaintElementType type, UIntPtr dirtyRectsCount, [Immutable] cef_rect_t *dirtyRects, [Immutable] void *buffer, int width, int height)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, CefPaintElementType, UIntPtr, cef_rect_t *, void *, int, int, void >)on_paint)(self, browser, type, dirtyRectsCount, dirtyRects, buffer, width, height);
     }
 }
Exemplo n.º 18
0
 public unsafe extern void SetPrinterPrintableArea([Immutable] cef_size_t *physical_size_device_units, [Immutable] cef_rect_t *printable_area_device_units, int landscape_needs_flip);
Exemplo n.º 19
0
 public unsafe extern void GetViewRect(cef_browser_t *browser, cef_rect_t *rect);
Exemplo n.º 20
0
 public unsafe extern int GetRootScreenRect(cef_browser_t *browser, cef_rect_t *rect);
Exemplo n.º 21
0
        private void on_accelerated_paint(cef_render_handler_t *self, cef_browser_t *browser, CefPaintElementType type, UIntPtr dirtyRectsCount, cef_rect_t *dirtyRects, void *shared_handle)
        {
            CheckSelf(self);

            var m_browser = CefBrowser.FromNative(browser);

            // TODO: reuse arrays?
            var m_dirtyRects = new CefRectangle[(int)dirtyRectsCount];

            var count = (int)dirtyRectsCount;
            var rect  = dirtyRects;

            for (var i = 0; i < count; i++)
            {
                m_dirtyRects[i].X      = rect->x;
                m_dirtyRects[i].Y      = rect->y;
                m_dirtyRects[i].Width  = rect->width;
                m_dirtyRects[i].Height = rect->height;

                rect++;
            }

            OnAcceleratedPaint(m_browser, type, m_dirtyRects, (IntPtr)shared_handle);
        }
Exemplo n.º 22
0
        /// <summary>
        /// Called to retrieve the simulated screen rectangle. Return true if the
        /// rectangle was provided.
        /// </summary>
        private int get_screen_rect(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
        {
            ThrowIfObjectDisposed();

            var     m_browser = CefBrowser.From(browser);
            CefRect m_rect;

            var handled = this.GetScreenRect(m_browser, out m_rect);

            if (handled)
            {
                m_rect.To(rect);
            }

            return(handled ? 1 : 0);
        }
Exemplo n.º 23
0
        private void on_ime_composition_range_changed(cef_render_handler_t *self, cef_browser_t *browser, cef_range_t *selected_range, UIntPtr character_boundsCount, cef_rect_t *character_bounds)
        {
            CheckSelf(self);

            // TODO: reuse array/special list for rectange - this method called only from one thread and can be reused

            var m_browser       = CefBrowser.FromNative(browser);
            var m_selectedRange = new CefRange(selected_range->from, selected_range->to);

            CefRectangle[] m_characterBounds;
            if (character_boundsCount == UIntPtr.Zero)
            {
                m_characterBounds = s_emptyRectangleArray;
            }
            else
            {
                var m_characterBoundsCount = checked ((int)character_boundsCount);
                m_characterBounds = new CefRectangle[m_characterBoundsCount];
                for (var i = 0; i < m_characterBoundsCount; i++)
                {
                    m_characterBounds[i] = new CefRectangle(
                        character_bounds[i].x,
                        character_bounds[i].y,
                        character_bounds[i].width,
                        character_bounds[i].height
                        );
                }
            }

            OnImeCompositionRangeChanged(m_browser, m_selectedRange, m_characterBounds);
        }
Exemplo n.º 24
0
 public unsafe extern void OnPopupSize(cef_browser_t *browser, [Immutable] cef_rect_t *rect);
Exemplo n.º 25
0
        private void get_view_rect(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
        {
            CheckSelf(self);

            var          m_browser = CefBrowser.FromNative(browser);
            CefRectangle m_rect;

            GetViewRect(m_browser, out m_rect);

            rect->x      = m_rect.X;
            rect->y      = m_rect.Y;
            rect->width  = m_rect.Width;
            rect->height = m_rect.Height;
        }
Exemplo n.º 26
0
 internal unsafe static CefRect From(cef_rect_t *ptr)
 {
     return(new CefRect(ptr));
 }
        /// <summary>
        /// Called to retrieve the root window rectangle in screen coordinates. Return
        /// true if the rectangle was provided.
        /// </summary>
        // protected abstract int GetRootScreenRect(cef_browser_t* browser, cef_rect_t* rect);

        private int get_view_rect(cef_render_handler_t *self, cef_browser_t *browser, cef_rect_t *rect)
        {
            CheckSelf(self);
            throw new NotImplementedException(); // TODO: CefRenderHandler.GetViewRect
        }
Exemplo n.º 28
0
        public static void set_printer_printable_area(cef_print_settings_t *self, cef_size_t *physical_size_device_units, cef_rect_t *printable_area_device_units, int landscape_needs_flip)
        {
            set_printer_printable_area_delegate d;
            var p = self->_set_printer_printable_area;

            if (p == _p8)
            {
                d = _d8;
            }
            else
            {
                d = (set_printer_printable_area_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(set_printer_printable_area_delegate));
                if (_p8 == IntPtr.Zero)
                {
                    _d8 = d; _p8 = p;
                }
            }
            d(self, physical_size_device_units, printable_area_device_units, landscape_needs_flip);
        }
        /// <summary>
        /// Called when the browser wants to move or resize the popup widget. |rect|
        /// contains the new location and size in view coordinates.
        /// </summary>
        // protected abstract void OnPopupSize(cef_browser_t* browser, cef_rect_t* rect);

        private void on_paint(cef_render_handler_t *self, cef_browser_t *browser, CefPaintElementType type, UIntPtr dirtyRectsCount, cef_rect_t *dirtyRects, void *buffer, int width, int height)
        {
            CheckSelf(self);
            throw new NotImplementedException(); // TODO: CefRenderHandler.OnPaint
        }
Exemplo n.º 30
0
 public unsafe extern void OnAcceleratedPaint(cef_browser_t *browser, CefPaintElementType type, UIntPtr dirtyRectsCount, [Immutable] cef_rect_t *dirtyRects, void *shared_handle);